21 #include <boost/serialization/access.hpp>
22 #include <boost/serialization/nvp.hpp>
23 #include <boost/serialization/list.hpp>
24 #include <boost/serialization/map.hpp>
25 #include <boost/serialization/vector.hpp>
26 #include <boost/serialization/string.hpp>
41 typedef std::map<std::string, BuildConfigurationMap>
PlatformMap;
44 typedef std::map<std::string, PlatformMap>
PluginMap;
56 virtual bool load(
const std::string& file);
59 virtual bool save(
const std::string& file);
62 virtual const std::string& file()
const;
67 virtual std::string name()
const;
70 virtual bool rename(
const std::string& newName);
72 void setAutoSave(
bool);
73 bool autoSave()
const;
76 void setApplication(
const std::string& application);
77 virtual const std::string& application()
const;
79 void setPlatform(
const std::string& platform);
80 virtual const std::string& platform()
const;
82 void setTransport(
const std::string& transport);
83 virtual const std::string& transport()
const;
85 void setConfiguration(
const std::string&);
86 virtual const std::string& configuration()
const;
88 virtual std::string value(
const std::string& key)
const;
89 virtual std::string value(
const std::string& application,
90 const std::string& platform,
const std::string& configuration,
const std::string& transport,
const std::string& key)
const;
92 virtual std::string plugin()
const;
93 virtual std::string plugin(
const std::string& application,
94 const std::string& platform,
const std::string& configuration,
const std::string& transport)
const;
96 virtual bool loadPlugin()
const;
97 virtual bool loadPlugin(
const std::string& application,
98 const std::string& platform,
const std::string& configuration,
const std::string& transport)
const;
100 virtual void setPlugin(
const std::string&);
101 virtual void setPlugin(
const std::string& application,
102 const std::string& platform,
const std::string& configuration,
const std::string& transport,
const std::string& plugin);
106 virtual PluginData pluginData(
const std::string& application,
107 const std::string& platform,
const std::string& configuration,
const std::string& transport)
const;
109 virtual void setPluginData(
const std::string& key,
const std::string& value);
110 virtual void setPluginData(
const std::string& application,
111 const std::string& platform,
const std::string& configuration,
const std::string& transport,
const std::string& key,
112 const std::string& value);
116 virtual bool removePlugin();
117 virtual bool removePlugin(
const std::string& application,
118 const std::string& platform,
const std::string& configuration,
const std::string& transport);
122 virtual bool addPlugin(
const std::string& application,
123 const std::string& platform,
const std::string& configuration,
const std::string& transport);
127 virtual bool removePluginData(
const std::string& key);
128 virtual bool removePluginData(
const std::string& application,
129 const std::string& platform,
const std::string& configuration,
const std::string& transport,
const std::string& key);
131 const PluginMap& pluginStructure()
const;
135 virtual bool load()
const;
138 friend class boost::serialization::access;
143 template<
class Archive>
144 void serialize(Archive & ar,
const unsigned int version)
146 ar & BOOST_SERIALIZATION_NVP(myPluginData);
147 ar & BOOST_SERIALIZATION_NVP(myLoad);
std::string myTransport
Definition: vrfPluginRecord.h:155
std::string myApplication
Definition: vrfPluginRecord.h:156
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 2)
std::string myFile
Definition: vrfPluginRecord.h:157
std::string myConfiguration
Definition: vrfPluginRecord.h:154
std::map< std::string, PlatformMap > PluginMap
Map by application (vrfSim, vrfGui, etc.)
Definition: vrfPluginRecord.h:44
std::map< std::string, BuildConfigurationMap > PlatformMap
Map by platform (windows, irix, linux, etc.)
Definition: vrfPluginRecord.h:41
std::string myPlatform
Definition: vrfPluginRecord.h:153
bool myAutoSave
Definition: vrfPluginRecord.h:160
PluginMap myPluginData
Definition: vrfPluginRecord.h:151
class DtVrfPluginRecord:
Definition: vrfPluginRecord.h:28
bool myLoad
Definition: vrfPluginRecord.h:159
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
std::map< std::string, std::string > PluginData
Plugin data map (keyword/value pairs)
Definition: vrfPluginRecord.h:32
std::map< std::string, TransportConfigurationMap > BuildConfigurationMap
Map by build configuration (release, debug or any)
Definition: vrfPluginRecord.h:38
std::map< std::string, PluginData > TransportConfigurationMap
Map by protocol (DIS, HLA13, HLA1516 or Independent)
Definition: vrfPluginRecord.h:35
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the & operator is defined similar to <<...
Definition: vrfPluginRecord.h:144