VR-Forces 4.1 Class Documentation
DtCigiEntityInfoRecord.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2009 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: DtCigiEntityInfoRecord.h,v $ $Revision: 1.1 $ $State: Exp $
7 *********************************************************************/
8 #ifndef DtCigiEntityInfoRecord_H_
9 #define DtCigiEntityInfoRecord_H_
10 
12 
13 namespace makArchives
14 {
18  {
19  public:
20 
23 
26 
29 
31  DtCigiEntityInfoRecord& operator=(const DtCigiEntityInfoRecord& orig);
32 
33  void setModelDefinition(const std::string& definition);
34  const std::string& modelDefinition() const;
35 
36  void setSchemaName(const std::string& name);
37  const std::string& schemaName() const;
38 
39  void setArtPartMap(const std::map<int, int>& mapping);
40  const std::map<int, int>& artPartMap() const;
41 
42  void setArtPartMapping(int cigiId, int disId);
43  void removeArtPartMapping(int cigiId);
44 
45  protected:
46 
48  friend class boost::serialization::access;
49 
53  template<class Archive>
54  void serialize(Archive & ar, const unsigned int version)
55  {
56  ar & BOOST_SERIALIZATION_NVP(myModelDefinition);
57  ar & BOOST_SERIALIZATION_NVP(mySchemaName);
58  ar & BOOST_SERIALIZATION_NVP(myArtPartMap);
59  }
60 
61  protected:
62  std::string myModelDefinition;
63  std::string mySchemaName;
64  std::map<int, int> myArtPartMap;
65  };
66 
70  {
71  public:
73 
75 
77 
79 
80  void setEntityTypeMap(const std::map<int, DtCigiEntityInfoRecord>& mapping);
81  const std::map<int, DtCigiEntityInfoRecord>& entityTypeMap() const;
82 
83  void removeEntityInfo(int entType);
84 
85  void setEntityTypeModelDefinition(int entType, const std::string& modelName);
86  const std::string& entityTypeModelDefinition(int entType) const;
87 
88  void setEntityTypeSchemaName(int entType, const std::string& schemaName);
89  const std::string& entityTypeSchemaName(int entType) const;
90 
91  void setArtPartMappingForEntityType(int entType, int cigiId, int disId);
92  void removeArtPartMappingForEntityType(int entType, int cigiId);
93 
96  virtual bool renameModelDefinition(const std::string& oldName, const std::string& newName);
97 
98  int findDisArtPartId(int entType, int cigiId) const;
99 
100  const DtCigiEntityInfoRecord* recordForEntityType(int entType) const;
101 
102  bool remapEntityType(int oldEntityType, int newEntityType);
103 
104  bool hasDefinition(const std::string& def) const;
105 
106  protected:
107 
109  friend class boost::serialization::access;
110 
114  template<class Archive>
115  void serialize(Archive & ar, const unsigned int version)
116  {
117  ar & BOOST_SERIALIZATION_NVP(myEntityTypeMapping);
118  }
119 
120  protected:
121  std::map<int, DtCigiEntityInfoRecord> myEntityTypeMapping;
123  };
124 
125 } //makArchives::
126 
127 
128 #endif

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)