![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: dtedTdb.h,v $ $Revision: 1.18 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifndef dtedTdb_H_ 00009 #define dtedTdb_H_ 00010 00011 #include "dted/dtedDefines.h" 00012 #include "gdb/terrainReader.h" 00013 00014 class DtList; 00015 class DtFilename; 00016 class DtSurfaceManager; 00017 class DtTerrainInitializer; 00018 class DtDtedInitializer; 00019 00020 // 00021 // Instances of DtDtedReader are a list of DtDtedCells. 00022 class DT_DLL_dted DtDtedReader : public DtTerrainReader 00023 { 00024 00025 public: 00026 00027 // constructor 00028 DtDtedReader(); 00029 00030 // destructor 00031 virtual ~DtDtedReader(); 00032 00033 virtual bool loadTerrain(const DtFilename& filename, DtTerrainDatabase* terrain); 00034 00035 virtual bool loadTerrain(const DtFilename& path, DtTerrainDatabase* terrain, 00036 const DtTerrainInitializer* initializer ); 00037 00038 // Returns "dted" 00039 virtual const DtString dataType() const; 00040 00041 static DtTerrainReader* create(); 00042 00043 // Returns only the coordinate system that would define this database. Should not load 00044 // any polygonal or vector information 00045 virtual Coordinate_System* coordinateSystem(const DtFilename& filename); 00046 00047 protected: 00048 00049 // copy constructor 00050 DtDtedReader(const DtDtedReader& orig); 00051 00052 // assignment operator 00053 DtDtedReader& operator=(const DtDtedReader& orig); 00054 00055 // Load a dted database (filename is the filename of a terrain metafile). 00056 // We need the path to this file in case the dted files specified in the 00057 // record are relative paths. 00058 virtual bool Load(const DtFilename& filename, const DtDtedInitializer* i); 00059 00060 bool testInvariant() const; 00061 00062 virtual int optionalFileFlags(const DtFilename& filename) 00063 { 00064 return 0; 00065 } 00066 00067 protected: 00068 00069 DtList* myDtedCellList; 00070 int myPostSpacing; 00071 00072 static const unsigned int theNumColorGradations; 00073 static const unsigned int theDefaultDt0Spacing; 00074 static const unsigned int theDefaultDt1Spacing; 00075 static const unsigned int theDefaultDt2Spacing; 00076 00077 }; 00078 00079 #endif