VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationObjectEditorComponentSystemDatabase.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
7 
8 #pragma once
9 
12 
13 #include <map>
14 
16 
20 {
21 private:
23 
27 
28 public:
31 
35  virtual bool loadSystemDefinition(const DtFilename& definitionFilename,
36  const DtVariableBindingsList& variableBindings, DtSimulationModelSet* sms, bool inMasterSMS,
38 
40  virtual bool isInMasterSMS(const DtFilename& definitionFilename) const;
41  virtual bool isInMasterSMS(const DtComponentSystemDefinition*) const;
42 
43  virtual void setIsInMasterSMS(const DtComponentSystemDefinition* def, bool b);
44  virtual void setIsInMasterSMS(const DtFilename& definitionFilename, bool b);
45 
47  virtual bool isDeleted(const DtFilename& definitionFilename) const;
48  virtual bool isDeleted(const DtComponentSystemDefinition*) const;
49 
51  virtual void setIsNew(const DtComponentSystemDefinition*def, bool);
52  virtual void setIsNew(const DtFilename&, bool);
53 
54  virtual bool isNew(const DtFilename& definitionFilename) const;
55  virtual bool isNew(const DtComponentSystemDefinition*) const;
56 
58  virtual void changeSystemFilename(const DtFilename& oldFilename, const DtFilename& newFilename);
59 
61  virtual bool removeSystem(const DtFilename& definitionFilename);
62 
64  virtual DtSimulationModelSet* simulationModelSetFor(const DtFilename& definitionFilename) const;
65  virtual DtSimulationModelSet* simulationModelSetFor(const DtComponentSystemDefinition*) const;
66 
67  virtual void setSimulationModelSet(const DtComponentSystemDefinition*def, DtSimulationModelSet*);
68  virtual void setSimulationModelSet(const DtFilename&, DtSimulationModelSet*);
69 
70  virtual bool saveSystem(const DtFilename& systemFile);
71 
73  virtual void setDeleted(const DtComponentSystemDefinition*def, bool);
74  virtual void setDeleted(const DtFilename&, bool);
75 
76  virtual DtVariableBindingsList& variableBindingsFor(const DtComponentSystemDefinition*);
77  virtual const DtVariableBindingsList& variableBindingsFor(const DtComponentSystemDefinition*) const;
78 
79  virtual std::map<DtString, DtString> variableSubstitutionsFor(const DtComponentSystemDefinition*) const;
80 
81  virtual DtVariableBindingsList& variableBindingsFor(const DtFilename&);
82  virtual const DtVariableBindingsList& variableBindingsFor(const DtFilename&) const;
83 
86  virtual DtComponentSystemDefinition* addSystem(const DtFilename&, const DtComponentSystemDefinition&);
87 
89  virtual DtComponentSystemDefinition* addSystem(const DtString&, const DtFilename&);
90 
92  virtual void resetVariableBindings(const DtComponentSystemDefinition*);
93  virtual void resetVariableBindings(const DtFilename&);
94 
95  virtual bool anyNew() const;
96  virtual bool anyDeleted() const;
97 
98 protected:
100  {
101  AdditionalSystemInformation() : inMasterSMS(false), sms(0), deleted(false), isNew(false) {};
103  inMasterSMS(orig.inMasterSMS), sms(orig.sms), deleted(orig.deleted), isNew(orig.isNew) {};
104 
105  bool inMasterSMS;
106  bool deleted;
107  bool isNew;
110  };
111 
112  typedef std::map<DtFilename, AdditionalSystemInformation> AdditionalSystemInformationMap;
114 
116 };
117 
DtVariableBindingsList myEmptyBindings
Definition: simulationObjectEditorComponentSystemDatabase.h:115
virtual void changeSystemFilename(const DtFilename &oldFilename, const DtFilename &newFilename)
Changes the filename for the given system to the new filename.
DtComponentSystemDatabase & operator=(const DtComponentSystemDatabase &orig)
Definition: simulationObjectEditorComponentSystemDatabase.h:99
virtual bool loadSystemDefinition(const DtFilename &definitionFilename, const DtVariableBindingsList &variableBindings, const DtReaderWriter::SearchPaths &searchPaths=DtReaderWriter::SearchPaths())
Loads the system definition specified, and adds the system to the database.
bool deleted
Definition: simulationObjectEditorComponentSystemDatabase.h:106
DtComponentSystemDefinition.
Definition: componentSystemDefinition.h:25
AdditionalSystemInformationMap myAdditionalSystemInformationMap
Definition: simulationObjectEditorComponentSystemDatabase.h:113
virtual bool saveSystem(const DtFilename &)
Saves the system that is represented by the given filename.
AdditionalSystemInformation(const AdditionalSystemInformation &orig)
Definition: simulationObjectEditorComponentSystemDatabase.h:102
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
This class extends the component system database to add a bit more information that the simulation ob...
Definition: simulationObjectEditorComponentSystemDatabase.h:19
std::map< DtFilename, AdditionalSystemInformation > AdditionalSystemInformationMap
Definition: simulationObjectEditorComponentSystemDatabase.h:112
AdditionalSystemInformation()
Definition: simulationObjectEditorComponentSystemDatabase.h:101
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
bool isNew
Definition: simulationObjectEditorComponentSystemDatabase.h:107
virtual DtComponentSystemDefinition * addSystem(const DtFilename &, const DtComponentSystemDefinition &)
Adds the system given the filename and component definition, which will be cloned and then taken cont...
This class maintains a database of a set of DtComponentSystemDefinition instances.
Definition: componentSystemDatabase.h:40
DtVariableBindingsList variableBindings
Definition: simulationObjectEditorComponentSystemDatabase.h:108
DtSimulationModelSet * sms
Definition: simulationObjectEditorComponentSystemDatabase.h:109
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:32
virtual bool removeSystem(const DtFilename &definitionFilename)
Removes the specified system from the database.

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)