VR-Forces 4.1.1 Class Documentation
attributesManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <mtl/lispEnv.h>
12 #include <vrfGuiCore/vrfGuiCore.h>
15 #include <libxml/xmlmemory.h>
16 #include <libxml/parser.h>
17 
18 #include <vector>
19 #include <string>
20 
21 namespace makVrf
22 {
24  {
25  public:
26  DtAttributeValuePair() : myBitPosition(0) {};
28  myAttributeName(orig.myAttributeName), myAttributeValue(orig.myAttributeValue), myBitPosition(orig.myBitPosition) {};
29 
30  std::string myAttributeName;
31  std::string myAttributeValue;
33  };
34 
35  typedef std::vector<DtAttributeValuePair> DtAttributeValues;
36 
38  {
39  public:
42  virtual DtAttributeValueInfo& operator=(const DtAttributeValueInfo& info);
43 
44  public:
46  std::string myAttributeName;
48  std::vector<std::string> myAttributeValues;
49  };
50 
52  {
53  public:
56  myAttributeValues(orig.myAttributeValues) {};
57 
60  virtual void addAttributeItems(const DtlObjPtr& tailPtr);
61 
64  virtual void addAttributeItems(xmlNodePtr);
65 
69  virtual void valuesFromMask(unsigned int mask, DtAttributeValues& result) const;
70 
71  virtual const std::vector<DtAttributeValueInfo>& attributeValues() const;
72 
73  DtAttributeInfo* clone() const { return new DtAttributeInfo(*this); };
74 
77  virtual void parseAttribute(const DtlObjPtr& attribute);
78 
81  virtual void parseAttribute(xmlNodePtr);
82 
83  protected:
84 
87  virtual void insertAttributeValue(const DtAttributeValueInfo& value);
88 
89  protected:
90  std::vector<DtAttributeValueInfo> myAttributeValues;
91  };
92 
94  {
95  public:
97  virtual ~DtAttributesManager();
98 
99  virtual bool init(const std::string& file);
100 
101  static DtlObjPtr parseAttribute(const DtlObjPtr& args, const DtlObjPtr& env);
102 
104  virtual void parseAttribute(const DtlObjPtr& args);
105 
106  virtual bool addAttributeInfo(DtAttributeInfo* info);
107 
112  virtual void valuesFromMask(const DtEntityMapperKey& type, unsigned int mask,
113  DtAttributeValues& result) const;
114 
115  virtual DtAttributeInfo* attributeInfo(const DtEntityMapperKey& key) const;
116 
118  virtual bool parseSISOFileForAttributes(const std::string& file);
119 
122  virtual void addSIDOUidToEntityTypeMapping(int, const DtEntityType&);
123 
124  protected:
126  virtual char* attributeString() const = 0;
127 
129  virtual DtAttributeInfo* createAttributeInfo(const DtEntityMapperKey& key) const;
130 
132  virtual bool parseAttribute(xmlNodePtr root);
133 
134  protected:
136 
137  typedef std::map<int, DtEntityType> UIDToEntityTypeMap;
139  };
140 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)