![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2008 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: remoteConfigurationMapEntry.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 *********************************************************************/ 00008 00009 #ifndef DtRemoteConfigurationMapEntry_H_ 00010 #define DtRemoteConfigurationMapEntry_H_ 00011 00014 00016 #include "vrfutil/rdrWritr.h" 00017 #include "vrfutil/rwObjType.h" 00018 00019 #include "vrfutil/rwString.h" 00020 00021 #include <vector> 00022 00023 #include <vlpi/entityIdentifier.h> 00024 00026 #include "vrfutil/vrfutilDefines.h" 00027 class DT_DLL_vrfutil DtRemoteConfigurationMapEntry : public DtReaderWriter 00028 { 00029 public: 00030 00032 enum AttachByType 00033 { 00034 UnspecifiedType = 0, 00035 ObjectType, 00036 EntityIdType, 00037 MarkingTextType 00038 }; 00039 00040 public: 00042 DtRemoteConfigurationMapEntry(); 00043 00045 DtRemoteConfigurationMapEntry(const DtString& name, 00046 DtReaderWriterRegistry* parentRegistry = NULL, 00047 bool readonly = false); 00048 00050 DtRemoteConfigurationMapEntry(const DtSymbolString& name, 00051 DtReaderWriterRegistry* parentRegistry = NULL, 00052 bool readonly = false); 00053 00055 DtRemoteConfigurationMapEntry(const DtRemoteConfigurationMapEntry& orig); 00056 00058 DtRemoteConfigurationMapEntry(const DtString& name, 00059 const DtRemoteConfigurationMapEntry& orig, 00060 DtReaderWriterRegistry* parentRegistry = NULL); 00061 00063 DtRemoteConfigurationMapEntry(const DtSymbolString& name, 00064 const DtRemoteConfigurationMapEntry& orig, 00065 DtReaderWriterRegistry* parentRegistry = NULL); 00066 00068 virtual ~DtRemoteConfigurationMapEntry(); 00069 00071 virtual DtRemoteConfigurationMapEntry* clone() const; 00072 00074 DtRemoteConfigurationMapEntry& operator=(const DtRemoteConfigurationMapEntry& orig); 00075 00076 public: 00077 00078 static DtRemoteConfigurationMapEntry* create(); 00079 00080 public: 00081 00084 DtRemoteConfigurationMapEntry::AttachByType attachByType() const; 00085 void setAttachByType(AttachByType atype); 00087 00090 const DtString& configurationKeyName() const; 00091 void setConfigurationKeyName(const DtString& keyname); 00093 00096 const DtEntityIdentifier& entityIdentifier() const; 00097 void setEntityIdentifier(const DtEntityIdentifier& eid); 00099 00102 const std::vector<unsigned>& forceFilters() const; 00103 virtual void setForceFilters(const std::vector<unsigned>& filters); 00105 00108 const DtString& markingText() const; 00109 void setMarkingText(const char *pStr); 00110 void setMarkingText(const DtString& sStr); 00112 00115 const DtObjectType& objectType() const; 00116 virtual void setObjectType(const DtObjectType& otype); 00118 00119 protected: 00120 00122 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00123 const DtVariableBindingsList& variableBindings); 00124 00127 virtual void parseAttachByField(DtlObjPtr dtlObjPtr); 00128 00130 virtual void parseForceFilterField(DtlObjPtr dtlObjPtr); 00131 00133 virtual void putData(FILE *fp, int indentLevel = 0); 00134 00138 virtual void writeAttachBy(FILE *fp, int indentLevel = 0); 00139 00141 virtual void writeForceFilter(FILE *fp, int indentLevel = 0); 00142 00143 protected: 00144 00146 AttachByType myAttachByType; 00147 00150 DtRwString myConfigurationKeyName; 00151 00153 DtEntityIdentifier myEntityIdentifier; 00154 00156 std::vector<unsigned> myForceFilters; 00157 00159 DtString myMarkingText; 00160 00162 DtRwObjectType myObjectType; 00163 }; 00164 00165 inline DtRemoteConfigurationMapEntry::AttachByType DtRemoteConfigurationMapEntry::attachByType() const{return (myAttachByType);} 00166 inline void DtRemoteConfigurationMapEntry::setAttachByType(AttachByType atype){myAttachByType = atype;} 00167 00168 inline const DtString& DtRemoteConfigurationMapEntry::configurationKeyName() const {return (myConfigurationKeyName);} 00169 inline void DtRemoteConfigurationMapEntry::setConfigurationKeyName(const DtString& keyname) {myConfigurationKeyName = keyname;} 00170 00171 inline const DtEntityIdentifier& DtRemoteConfigurationMapEntry::entityIdentifier() const {return (myEntityIdentifier);} 00172 inline void DtRemoteConfigurationMapEntry::setEntityIdentifier(const DtEntityIdentifier& eid) {myEntityIdentifier = eid;} 00173 00174 inline const std::vector<unsigned>& DtRemoteConfigurationMapEntry::forceFilters() const {return (myForceFilters);} 00175 00176 inline const DtString& DtRemoteConfigurationMapEntry::markingText() const {return (myMarkingText);} 00177 inline void DtRemoteConfigurationMapEntry::setMarkingText(const char *pStr) {myMarkingText = pStr;} 00178 inline void DtRemoteConfigurationMapEntry::setMarkingText(const DtString& sStr) {myMarkingText = sStr;} 00179 00180 inline const DtObjectType& DtRemoteConfigurationMapEntry::objectType() const {return (myObjectType);} 00181 00182 #endif /* DtRemoteConfigurationMapEntry_H_ */