![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: rwLifeformStaticPosture.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 #ifndef rwLifeformStaticPosture_H_ 00019 #define rwLifeformStaticPosture_H_ 00020 00021 #include "vrfutil/lifeformStaticPostures.h" 00022 #include "vrfutil/rdrWritr.h" 00023 00024 #include <map> 00025 00026 class DtReaderWriterRegistry; 00027 00031 #include "vrfutil/vrfutilDefines.h" 00032 class DT_DLL_vrfutil DtRwLifeformStaticPosture : public DtReaderWriter 00033 { 00034 public: 00036 DtRwLifeformStaticPosture(); 00037 00039 DtRwLifeformStaticPosture(const DtString& name, DtReaderWriterRegistry* const 00040 parentRegistry = NULL); 00041 00042 DtRwLifeformStaticPosture(const DtSymbolString& name, DtReaderWriterRegistry* const 00043 parentRegistry = NULL); 00044 00046 DtRwLifeformStaticPosture(const DtRwLifeformStaticPosture& orig, 00047 DtReaderWriterRegistry* const parentRegistry = NULL); 00048 00050 const DtRwLifeformStaticPosture & operator=(const DtRwLifeformStaticPosture& orig); 00051 00052 virtual ~DtRwLifeformStaticPosture(); 00053 00054 00056 00058 virtual operator const DtLifeformStaticPosture() const; 00059 00061 DtLifeformStaticPosture operator=(DtLifeformStaticPosture orig); 00062 00063 virtual int operator==(DtLifeformStaticPosture rhs) const; 00064 virtual int operator!=(DtLifeformStaticPosture rhs) const; 00065 00066 virtual DtLifeformStaticPosture value() const; 00067 virtual void setValue(DtLifeformStaticPosture value); 00068 00069 virtual void putData(FILE* fp, int indentLevel = 0); 00070 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00071 const DtVariableBindingsList& variableBindings); 00072 00076 virtual const char* readerWriterType() const; 00077 00078 static std::map<DtString, int>* postureMap(); 00079 static void addPosture(const DtString&, DtLifeformStaticPosture); 00080 00082 static bool hasValue(int); 00083 00085 static DtString stringFromValue(int); 00086 static DtLifeformStaticPosture valueFromString(const DtString&); 00087 00089 static void initializeMap(); 00090 00091 protected: 00092 00093 static std::map<DtString, int> theStaticPostureMap; 00094 static bool theMapInitialized; 00095 00096 DtLifeformStaticPosture myValue; 00097 }; 00098 00099 #endif