16 #include <boost/serialization/version.hpp>
17 #include <boost/unordered_map.hpp>
18 #include <boost/thread/recursive_mutex.hpp>
20 #include <matrix/vlVector.h>
27 class DtModelDefinitionRecord;
32 class DtVirtualBaseClass;
110 setCachedData(name, 0);
118 void setParameter(
const std::string& parameterName,
119 const std::string& parameterValue);
125 bool clearParameter(
const std::string& parameterName);
131 const std::string& parameter(
const std::string& parameterName)
const;
139 const std::string* findParameter(
const std::string& parameterName)
const;
144 std::string* findParameter(
const std::string& parameterName);
147 const ParameterMap& parameters()
const;
150 const std::string& name()
const;
153 const std::string& fileName()
const;
156 const std::string& schema()
const;
160 const std::vector<std::string>& listOfSharedFiles()
const;
164 void addToListOfSharedFiles(
const std::string& sharedFile);
167 void setSchema(
const std::string& schemaStr);
170 void setFileName(
const std::string& fileNameStr);
173 void setPersistent(
bool persistent);
176 bool persistent()
const;
179 bool modified()
const;
180 void setModified(
bool);
182 bool duplicate()
const;
183 void setDuplicate(
bool);
186 const void getVectorParameter(
const std::string& parameterName,
DtVector& parameterVector)
const;
203 boost::recursive_mutex& modelLoadingMutex();
207 static std::string cleanName(
const std::string& name);
212 template <
typename Archive>
219 typedef boost::unordered_map<std::string, DtVirtualBaseClass*>
CacheMap;
221 template <
typename Archive>
239 myModifiedFlag =
false;
boost::recursive_mutex myModelLoadingMutex
Definition: DtModelDefinition.h:257
bool myDuplicateFlag
Definition: DtModelDefinition.h:255
#define DT_DECLARE_PORTABLE_serialize_FUNCTIONS
Definition: DtSerialize.h:129
Virtual base class.
Definition: DtVirtualBaseClass.h:19
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
std::string myFileName
Definition: DtModelDefinition.h:243
#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:253
bool myModifiedFlag
Definition: DtModelDefinition.h:254
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:38
A DtModelDefinitionRecord will serialize a terrain patch model definition.
Definition: DtModelDefinitionRecord.h:20
std::string myName
Definition: DtModelDefinition.h:242
SerializableParameterMap myParameters
Definition: DtModelDefinition.h:247
#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:209
boost::unordered_map< std::string, DtVirtualBaseClass * > CacheMap
Definition: DtModelDefinition.h:219
void _serialize(Archive &ar, unsigned int version)
Definition: DtModelDefinition.h:222
std::vector< std::string > myListOfSharedFiles
Definition: DtModelDefinition.h:246
bool operator==(const DtTextureAtlasIndexParser::StringOrFloatAttrib &lhs, const DtTextureAtlasIndexParser::StringOrFloatAttrib &rhs)
needed for search comparison code
Definition: DtTextureAtlasIndexParser.h:153
static const std::string theEmptyString
Definition: DtModelDefinition.h:43
Mixin that provides set of keywords functionality.
std::string mySchema
Definition: DtModelDefinition.h:245
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:252
void serialize(Archive &ar, unsigned int version)
Definition: DtModelDefinition.h:213
void deleteCachedData(const std::string &name)
Helper function for deleting cache.
Definition: DtModelDefinition.h:108
std::map< std::string, std::string > ParameterMap
Definition: DtModelDefinition.h:45
Contains DLL export macros.