![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 1999 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: feature.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *********************************************************************/ 00008 00009 #ifndef feature_H_ 00010 #define feature_H_ 00011 00012 #include "gdb/gdbDefines.h" 00013 #include "gdb/group.h" 00014 #include <vlutil/vlMachineTypes.h> 00015 00016 00017 typedef unsigned int DtFeatureId; 00018 00019 // class DtFeature: 00020 // 00021 // DtFeature is an abstract base class that supports cultural 00022 // features(buildings, bridges), terrain features (rail road 00023 // networks, mine fields), and natural features (tree canopy, 00024 // forest). 00025 00026 class DT_DLL_gdb DtFeature : public DtGroup 00027 { 00028 public: 00029 00030 // destructor 00031 virtual ~DtFeature(); 00032 00033 // set/get feature id. 00034 virtual void setFeatureId(DtFeatureId id); 00035 virtual DtFeatureId featureId() const; 00036 00037 // prints out the contents of the object 00038 virtual void dump(int indentLevel) const; 00039 00040 virtual int sizeInBytes() const; 00041 00042 protected: 00043 00044 // default constructor 00045 DtFeature(); 00046 00047 // additional constructor 00048 DtFeature(DtFeatureId id); 00049 00050 // copy constructor 00051 DtFeature(const DtFeature& orig); 00052 00053 // assignment operator 00054 DtFeature& operator=(const DtFeature& orig); 00055 00056 protected: 00057 00058 DtFeatureId myId; 00059 00060 protected: 00061 00062 static DtFeatureId theNullId; 00063 00064 00065 }; 00066 00067 inline void DtFeature::setFeatureId(DtFeatureId id) 00068 { 00069 myId = id; 00070 } 00071 00072 inline DtFeatureId DtFeature::featureId() const 00073 { 00074 return myId; 00075 } 00076 00077 #endif