19 #include <boost/serialization/version.hpp>
20 #include <boost/unordered_map.hpp>
21 #include <boost/thread/recursive_mutex.hpp>
23 #include <matrix/vlVector.h>
31 class DtModelDefinitionRecord;
36 class DtVirtualBaseClass;
55 bool operator() (
const unsigned char& c1,
const unsigned char& c2)
const;
58 bool operator() (
const std::string& s1,
const std::string& s2)
const;
61 typedef std::map<std::string, std::string, CaseInsensitiveFunc>
ParameterMap;
127 setCachedData(name, 0);
135 void setParameter(
const std::string& parameterName,
136 const std::string& parameterValue);
142 bool clearParameter(
const std::string& parameterName);
148 const std::string& parameter(
const std::string& parameterName)
const;
156 const std::string* findParameter(
const std::string& parameterName)
const;
159 const ParameterMap& parameters()
const;
162 const std::string& name()
const;
165 const std::string& fileName()
const;
168 const std::string& schema()
const;
172 const std::vector<std::string>& listOfSharedFiles()
const;
176 void addToListOfSharedFiles(
const std::string& sharedFile);
179 void setSchema(
const std::string& schemaStr);
182 void setFileName(
const std::string& fileNameStr);
185 void setPersistent(
bool persistent);
188 bool persistent()
const;
191 bool modified()
const;
192 void setModified(
bool);
194 bool duplicate()
const;
195 void setDuplicate(
bool);
198 const void getVectorParameter(
const std::string& parameterName,
DtVector& parameterVector)
const;
215 boost::recursive_mutex& modelLoadingMutex();
218 virtual bool replaceParameter(
const std::string& findWhat,
const std::string& replaceWith);
227 virtual bool getAltitudeBasedScaleConfigurationRecordCollectionParameter(
const std::string& parameterName,
231 virtual bool getBoolean(
const std::string& parameterName,
bool& parameterValue)
const;
234 virtual bool getDouble(
const std::string& parameterName,
double& parameterValue)
const;
241 template <
typename Archive>
248 typedef boost::unordered_map<std::string, DtVirtualBaseClass*>
CacheMap;
250 template <
typename Archive>
268 myModifiedFlag =
false;
boost::recursive_mutex myModelLoadingMutex
Definition: DtModelDefinition.h:286
Contains the DtAltitudeBasedScaleConfigurationRecord class declaration.
bool myDuplicateFlag
Definition: DtModelDefinition.h:284
#define DT_DECLARE_PORTABLE_serialize_FUNCTIONS
Definition: DtSerialize.h:129
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
std::string myFileName
Definition: DtModelDefinition.h:272
#define DT_SERIALIZE_BASE(BASE_CLASS)
Serialize the base class implementation.
Definition: DtSerialize.h:161
The DtKeyword mixin is a mixin class (add funcionality by inheritence) for adding generic keywords to...
Definition: DtKeywordMixin.h:23
bool myPersistentFlag
Definition: DtModelDefinition.h:282
std::map< std::string, std::string, CaseInsensitiveFunc > ParameterMap
Definition: DtModelDefinition.h:61
bool myModifiedFlag
Definition: DtModelDefinition.h:283
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:42
A DtModelDefinitionRecord will serialize a terrain patch model definition.
Definition: DtModelDefinitionRecord.h:20
std::string myName
Definition: DtModelDefinition.h:271
SerializableParameterMap myParameters
Definition: DtModelDefinition.h:276
A helper structure used to contain a compare operator for use with a case insensitive std::map...
Definition: DtModelDefinition.h:51
#define DT_DECLARE_serialize_FUNCTIONS
Declare all the serialize functions to use.
Definition: DtSerialize.h:120
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Definition: DtModelDefinition.h:53
Definition: DtModelDefinition.h:238
boost::unordered_map< std::string, DtVirtualBaseClass * > CacheMap
Definition: DtModelDefinition.h:248
void _serialize(Archive &ar, unsigned int version)
Definition: DtModelDefinition.h:251
std::vector< std::string > myListOfSharedFiles
Definition: DtModelDefinition.h:275
bool operator==(const DtTextureAtlasIndexParser::StringOrFloatAttrib &lhs, const DtTextureAtlasIndexParser::StringOrFloatAttrib &rhs)
needed for search comparison code
Definition: DtTextureAtlasIndexParser.h:160
static const std::string theEmptyString
Definition: DtModelDefinition.h:47
Mixin that provides set of keywords functionality.
std::string mySchema
Definition: DtModelDefinition.h:274
DT_DLL_terrainCS bool operator!=(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
#define DT_SERIALIZE_MEMBER(NAME)
Serialize a Member whose name starts with 'my' If your member does not have that name, use Dt_SERIALIZE.
Definition: DtSerialize.h:158
CacheMap myRuntimeCache
std::set<std::string> myKeywords;
Definition: DtModelDefinition.h:281
std::vector< DtAltitudeBasedScaleConfigurationRecord > DtAltitudeBasedScaleConfigurationRecordCollection
Definition: DtAltitudeBasedScaleConfigurationRecord.h:45
void serialize(Archive &ar, unsigned int version)
Definition: DtModelDefinition.h:242
void deleteCachedData(const std::string &name)
Helper function for deleting cache.
Definition: DtModelDefinition.h:125
Contains DLL export macros.