![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: mtFltTdb.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00009 #ifndef mtFltTdb_H_ 00010 #define mtFltTdb_H_ 00011 00012 // 00013 // \file mtFltTdb.h 00014 // \brief Represents a metaflight terrain reader. 00015 // 00016 00017 #include "mtflt/mtfltDefines.h" 00018 #include "gdb/gdbTerrainReader.h" 00019 #include <libxml/xmlreader.h> 00020 00021 class DtList; 00022 class DtMetafileRecord; 00023 class DtFilename; 00024 class DtTerrainInitializer; 00025 00026 // \brief Represents a metaflight terrain reader. 00027 // This class represents a reader for the MetaFlight format. Metaflight files 00028 // describe the structure, organization, file naming and coordinate systems of 00029 // all the datasets that comprise a single, more complex database. 00030 class DT_DLL_mtflt DtMtFltReader : public DtTerrainReader 00031 { 00032 00033 public: 00034 00035 // Constructor 00036 DtMtFltReader(); 00037 00038 // Destructor 00039 virtual ~DtMtFltReader(); 00040 00041 // Save the database in dted format. 00042 virtual bool Save(const DtFilename& name); 00043 00044 // Loads terrain database file named filename, returning the data in 00045 // terrain. The terrain pointer passed in must be initialized before calling 00046 // loadTerrain. 00047 virtual bool loadTerrain(const DtFilename& filename, DtTerrainDatabase* terrain); 00048 00049 // Loads terrain database file named filename, returning the data in 00050 // terrain. The initializer object is used to pass in additional information 00051 // about the terrain to be loaded. The terrain pointer passed in must be 00052 // initialized before calling loadTerrain. 00053 virtual bool loadTerrain(const DtFilename& filename, DtTerrainDatabase* terrain, 00054 const DtTerrainInitializer* initializer); 00055 00056 // Returns "metaflight" 00057 virtual const DtString dataType() const; 00058 00059 static DtTerrainReader* create(); 00060 00061 // Returns only the coordinate system that would define this database. Should not load 00062 // any polygonal or vector information 00063 virtual Coordinate_System* coordinateSystem(const DtFilename& filename); 00064 00065 virtual int optionalFileFlags(const DtFilename& filename) 00066 { 00067 return 0; 00068 } 00069 00070 protected: 00071 00072 // copy constructor 00073 DtMtFltReader(const DtMtFltReader& orig); 00074 00075 // assignment operator 00076 DtMtFltReader& operator=(const DtMtFltReader& orig); 00077 00078 }; 00079 00080 #endif 00081