VR-Forces 4.0.4 Class Documentation
include/vrfutil/remoteConfigurationMapEntry.h
Go to the documentation of this file.
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_ */

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)