19 #include <vlutil/vlString.h>
21 #include <boost/unordered_map.hpp>
29 #define LATEST_MODEL_SET_VERSION 1
42 parentRegistry =
nullptr);
64 virtual bool load(
const DtFilename&, std::set<DtString>* iconLists = 0);
65 virtual bool save(
const DtFilename&);
79 virtual void setComment(
const DtString&);
80 virtual const DtString comment()
const;
91 virtual void emptyList();
95 virtual void entitiesForObjectType(
const DtObjectType& o, std::list<DtString>& list)
const;
112 virtual void loadFromDataFiles(
const std::string& directory,
const SearchPaths& paths, std::set<DtString>* iconLists = 0);
116 virtual const std::set<DtString>& categories()
const;
119 virtual const std::set<DtString>& categoriesForPalette(
const DtString& pal)
const;
122 virtual void loadEntityFiles(
const std::string&,
const SearchPaths& paths, std::set<DtString>* iconLists = 0);
125 virtual void loadSimulationObjectGroupFiles(
const std::string&, std::set<DtString>* iconLists = 0);
128 virtual const DtObjectType& nextAvailableSimulationObjectGroupObjectType()
const;
131 virtual const DtObjectType& nextAvailableRandomizedObjectObjectType()
const;
147 virtual void writeSelf(std::string& fp,
int i,
bool writeUnspecified,
148 const DtFilename& path);
156 virtual void addIconListsToIconList(
const DtModelSetEntry*, std::set<DtString>& iconLists)
const;
164 typedef boost::unordered_map<DtString, DtModelSetEntry*>
FastMap;
int version() const
Returns an entry given a unique ID.
Definition: modelSet.h:172
std::set< DtString > myCategories
Definition: modelSet.h:162
DtObjectType myNextRandomizedObjectObjectType
Definition: modelSet.h:167
A Readable, Writable version of DtList. This class cannot be used directly, but must be inherited to ...
Definition: rwList.h:26
#define DT_DLL_vrfobjparam
This file is used to determine how to build.
Definition: vrfobjparamDefines.h:28
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)=0
This method must be overridden by a subclass. Within this method, new instances of the DtReaderWriter...
std::map< DtString, std::set< DtString > > myCategoriesForPalette
Definition: modelSet.h:163
Definition: readerWriter.h:85
Definition: readerWriterRegistry.h:39
DtObjectType myNextSimulationObjectGroupObjectType
Definition: modelSet.h:166
virtual void writeSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in th...
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: simulationObjectGroupModelSetEntry.h:161
Definition: objectType.h:27
Definition: modelSetEntry.h:34
DtString myFilename
Definition: modelSet.h:159
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
Description: Readable, Writable int.
Definition: rwInt.h:25
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual DtListItem * add(DtReaderWriter *data)
Add element to the end of the list. Returns the DtListItem envelope object that contains your new ele...
FastMap myFastMap
Definition: modelSet.h:165
DtRwInt myVersion
Definition: modelSet.h:161
DtModelSet *(* DtModelSetCreatorFcn)(const DtString &, DtReaderWriterRegistry *parentRegistry)
Definition: modelSet.h:32
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.
boost::unordered_map< DtString, DtModelSetEntry * > FastMap
Definition: modelSet.h:164
static DtModelSetCreatorFcn theModelSetCreatorFcn
Definition: modelSet.h:168
DtString myComment
Definition: modelSet.h:160
Definition: modelSet.h:34