![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: vectorDataReader.h,v $ $Revision: 1.11 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef vectorDataReader_H_ 00009 #define vectorDataReader_H_ 00010 00011 #include "gdb/gdbDefines.h" 00012 #include <vlutil/vlFilename.h> 00013 00014 class DtSpecificationManager; 00015 class DtTerrainDatabase; 00016 class DtVectorDataInitializer; 00017 class DtVectorNetwork; 00018 00019 // Simple terrain database builder 00020 class DT_DLL_gdb DtVectorDataReader 00021 { 00022 public: 00023 // constructor 00024 DtVectorDataReader(); 00025 00026 // destructor 00027 virtual ~DtVectorDataReader(); 00028 00029 // Import vector data into the gdb 00030 virtual bool importVectorData(const DtFilename &path, 00031 DtTerrainDatabase* terrain, 00032 DtVectorDataInitializer* myInit) = 0; 00033 00034 virtual DtString dataType() = 0; 00035 00036 virtual DtTerrainDatabase* terrainDb(); 00037 00038 virtual int optionalFileFlags(const DtFilename& filename) 00039 { 00040 return 0; 00041 } 00042 00043 protected: 00044 00045 // is called inside of importVectorData to set the myTerrainDatabase variable 00046 virtual void init(DtTerrainDatabase* terrain); 00047 00048 virtual bool postProcessVectorData(DtVectorNetwork*& unprocessedVectorNetwork, 00049 DtVectorDataInitializer& vectorInitializer); 00050 00051 virtual bool clipVectorData( DtVectorNetwork& unclippedVectorNetwork, 00052 DtVectorNetwork& clippedVectorNetwork); 00053 00054 protected: 00055 00056 DtTerrainDatabase* myTerrainDatabase; 00057 00058 }; 00059 00060 inline DtTerrainDatabase* DtVectorDataReader::terrainDb() 00061 { 00062 return myTerrainDatabase; 00063 } 00064 00065 #endif