VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
formationTable.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <readerWriter/rwList.h>
14 #include <vlutil/vlHashlist.h>
16 #include "vrfutil/formation.h"
17 #include <readerWriter/rwBoolean.h>
18 
22 #include "vrfutil/vrfutilDefines.h"
24 {
25 public:
26 
28  {
30  const DtReaderWriter::SearchPaths& searchPaths, const DtVariableBindingsList& bindings)
31  : myFormations(formations)
32  , mySearchPaths(searchPaths)
33  , myBindings(bindings)
34  {
35 
36  }
37 
38  void operator()(DtReaderWriter* rwObject)
39  {
40  if (rwObject)
41  {
42  DtFormationTableEntry* entry = static_cast<DtFormationTableEntry*>(rwObject);
43  entry->formationFile().loadFile(mySearchPaths, myBindings);
44  myFormations->addFormationEntry(entry);
45  }
46  }
50  };
51 
54 
56  DtFormationTable(const DtString& writeName,
57  DtReaderWriterRegistry* parentRegistry = NULL);
58  DtFormationTable(const DtSymbolString& writeName,
59  DtReaderWriterRegistry* parentRegistry = NULL);
60 
62  virtual ~DtFormationTable();
63 
65  DtFormationTable(const DtString& writeName, const DtFormationTable&
66  orig, DtReaderWriterRegistry* parentRegistry = NULL);
67  DtFormationTable(const DtSymbolString& writeName, const DtFormationTable&
68  orig, DtReaderWriterRegistry* parentRegistry = NULL);
69  DtFormationTable(const DtFormationTable& orig, DtReaderWriterRegistry* parentRegistry = NULL);
70 
72  const DtFormationTable & operator=(const DtFormationTable & orig);
73 
74  virtual DtFormationTable* clone(const DtString& name,
75  DtReaderWriterRegistry* parentRegistry = NULL) const;
76  virtual DtFormationTable* clone(const DtSymbolString& name,
77  DtReaderWriterRegistry* parentRegistry = NULL) const;
78 
80  virtual DtFormation* getFormation(const DtString& formationName) const;
81 
83  virtual DtFormation* getDefaultFormation() const;
84 
86  virtual DtFormationTableEntry* getDefaultFormationEntry() const;
87 
90  virtual void setFormationToDefault(DtFormationTableEntry* entry);
91 
95  virtual void addFormation(const DtString& formationName, const DtFormation& formation);
96 
99  virtual bool removeFormation(const DtString& formationName);
100 
105  virtual void addFormationEntry(DtFormationTableEntry* entry);
106 
108  virtual DtFormationTableEntry* getFormationEntry(const DtString& formationName) const;
109 
111  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
112  const DtVariableBindingsList& variableBindings);
113 
117  virtual const char* readerWriterType() const;
118 
121  virtual void setAutoLayoutForGui(bool);
122  virtual bool autoLayoutForGui() const;
123 
125  bool operator==(const DtFormationTable&) const;
126  bool operator!=(const DtFormationTable&) const;
127 
130  virtual void putData(DtEnvironmentSP, DtEnvValueSP parent) const;
131  virtual void getData(const DtEnvironmentSP, const DtEnvValueSP value,
133  const DtVariableBindingsList& bindings = DtVariableBindingsList());
134 
136  static const char* theXmlType();
137 
138  virtual const char* xmlType() const
139  {
140  return theXmlType();
141  }
142 
144  virtual std::set<DtString> supportedXmlTypes() const;
146 
147 protected:
150  virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
151  const DtVariableBindingsList& variableBindings);
152 
155  void copyTable(const DtFormationTable& other);
158  void emptyTable();
159 
160 protected:
162 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)