00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef FDOGRFPRASTERIMAGEDEFINITION_H
00021 #define FDOGRFPRASTERIMAGEDEFINITION_H
00022
00023 #ifdef _WIN32
00024 #pragma once
00025 #endif //_WIN32
00026
00027 class FdoGrfpRasterExtents;
00028 class FdoGrfpRasterGeoreferenceLocation;
00029
00030
00031
00032
00033
00034 class FdoGrfpRasterImageDefinition : public FdoPhysicalElementMapping
00035 {
00036 typedef FdoPhysicalElementMapping BaseType;
00037 friend class FdoGrfpRasterBandDefinition;
00038
00039 public:
00040
00041
00042 FDOGRFP_API static FdoGrfpRasterImageDefinition* Create();
00043
00044
00045
00046 FDOGRFP_API FdoInt32 GetFrameNumber();
00047
00048
00049
00050
00051 FDOGRFP_API void SetFrameNumber(FdoInt32 frameNumber);
00052
00053
00054
00055 FDOGRFP_API FdoGrfpRasterGeoreferenceLocation * GetGeoreferencedLocation();
00056
00057
00058
00059
00060 FDOGRFP_API void SetGeoreferencedLocation (FdoGrfpRasterGeoreferenceLocation * location);
00061
00062 FDOGRFP_API bool GetBounds( double &minX, double &minY, double &maxX, double &maxY );
00063 FDOGRFP_API void SetBounds( double minX, double minY, double maxX, double maxY );
00064
00065
00066
00067
00068 FDOGRFP_API virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs);
00069 FDOGRFP_API virtual FdoXmlSaxHandler* XmlStartElement(
00070 FdoXmlSaxContext* context,
00071 FdoString* uri,
00072 FdoString* name,
00073 FdoString* qname,
00074 FdoXmlAttributeCollection* atts
00075 );
00076 FDOGRFP_API virtual FdoBoolean XmlEndElement(
00077 FdoXmlSaxContext* context,
00078 FdoString* uri,
00079 FdoString* name,
00080 FdoString* qname
00081 );
00082 FDOGRFP_API virtual void XmlCharacters(FdoXmlSaxContext*, FdoString*);
00083 FDOGRFP_API void _writeXml( FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags );
00084
00085 protected:
00086 FDOGRFP_API FdoGrfpRasterImageDefinition(void);
00087 FDOGRFP_API virtual ~FdoGrfpRasterImageDefinition(void);
00088 void Dispose(void);
00089
00090 private:
00091 FdoInt32 m_state;
00092 FdoInt32 m_frameNumber;
00093 FdoPtr<FdoGrfpRasterGeoreferenceLocation> m_geoReference;
00094
00095 bool m_haveBounds;
00096 double m_minX;
00097 double m_minY;
00098 double m_maxX;
00099 double m_maxY;
00100
00101
00102 };
00103
00104
00105 typedef FdoPtr<FdoGrfpRasterImageDefinition> FdoGrfpRasterImageDefinitionP;
00106
00107 #endif