VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtGenericTerrainRecord.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #ifndef DtGenericTerrainRecord_H_
11 #define DtGenericTerrainRecord_H_
12 
13 #pragma warning( push )
14 #pragma warning( disable : 4661 )
15 
18 
19 #include <boost/serialization/version.hpp>
20 #include <boost/serialization/set.hpp>
21 #include <boost/serialization/map.hpp>
22 #include <boost/config.hpp>
23 #include <map>
24 #include <string>
25 #include <set>
26 
27 namespace makArchives
28 {
35  {
36  public:
37 
38  //Global public empty string.
39  static const std::string theEmptyString;
40 
41  typedef std::map<std::string,std::string> ParameterMap;
42 
47  DtGenericTerrainRecord(const std::string& modelName = "");
48 
51 
53  DtGenericTerrainRecord(const std::string& modelName,const DtGenericTerrainRecord& copy);
54 
57 
58  bool operator==(const DtGenericTerrainRecord& orig) const;
59  bool operator!=(const DtGenericTerrainRecord& orig) const;
60 
63 
75 
81  void setParameter(const std::string& parameterName,
82  const std::string& parameterValue);
83 
88  bool clearParameter(const std::string& parameterName);
89 
94  const std::string& parameter(const std::string& parameterName) const;
95 
102  const std::string* findParameter(const std::string& parameterName) const;
103 
107  std::string* findParameter(const std::string& parameterName);
108 
110  const ParameterMap& parameters() const;
111 
113  const std::string& type() const;
114 
115  protected:
116 
117  static std::string cleanName(const std::string& name);
118 
120  {
121  public:
122  template <typename Archive>
123  void serialize(Archive& ar,unsigned int version)
124  {
126  }
127  };
128 
129  template <typename Archive>
130  void _serialize(Archive& ar,unsigned int version)
131  {
132  ar & DT_SERIALIZE_MEMBER(myType);
133  ar & DT_SERIALIZE_MEMBER(myParameters);
134  }
135 
136  std::string myType;
138 
139  };
140 }
141 
143 
144 #pragma warning( pop )
145 
146 #endif
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
#define DT_SERIALIZE_BASE(BASE_CLASS)
Serialize the base class implementation.
Definition: DtSerialize.h:161
DtGenericTerrainRecords allow the VR-Forces terrainInterface library to instantiate and configure the...
Definition: DtGenericTerrainRecord.h:34
static const std::string theEmptyString
Definition: DtGenericTerrainRecord.h:39
DT_DLL_terrainCS bool operator==(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
void _serialize(Archive &ar, unsigned int version)
Definition: DtGenericTerrainRecord.h:130
Contains DLL export macros.
void serialize(Archive &ar, unsigned int version)
Definition: DtGenericTerrainRecord.h:123
std::map< std::string, std::string > ParameterMap
Definition: DtGenericTerrainRecord.h:41
std::string myType
Definition: DtGenericTerrainRecord.h:136
SerializableParameterMap myParameters
Definition: DtGenericTerrainRecord.h:137
#define DT_DECLARE_ALL_serialize_FUNCTIONS
Definition: DtSerialize.h:134
DT_DLL_terrainCS bool operator!=(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
#define DT_SERIALIZE_MEMBER(NAME)
Serialize a Member whose name starts with &#39;my&#39; If your member does not have that name, use Dt_SERIALIZE.
Definition: DtSerialize.h:158
#define DT_DLL_MAKARCHIVES
Definition: makArchives.h:31

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)