VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createObjectCommand.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include "vrfplan/simCommand.h"
14 #include "vrfplan/vrfplanDefines.h"
15 #include <readerWriter/rwString.h>
17 #include "readerWriter/rwVector.h"
19 #include "vrfutil/rwForceType.h"
20 #include <readerWriter/rwReal.h>
21 #include <readerWriter/rwBoolean.h>
22 #include <readerWriter/rwInt.h>
23 #include "vrfutil/rwStringList.h"
26 #include "vrfutil/rwVectorList.h"
27 #include "vrfutil/rwUUID.h"
29 
30 class DtAdminContent;
32 
37 {
38 public:
41 
43  DtCreateObjectCommand(const DtString& writeName,
44  DtReaderWriterRegistry* parentRegistry = NULL);
45 
47  DtCreateObjectCommand(const DtString & writeName, const DtCreateObjectCommand& orig,
48  DtReaderWriterRegistry* parentRegistry = NULL);
49 
51  virtual ~DtCreateObjectCommand();
52 
55 
57  virtual const DtSimCommandMessageType& type() const;
58 
60  virtual DtSimCommand * clone(const DtString & name, DtReaderWriterRegistry *
61  parentRegistry = 0) const;
62 
66 
67  virtual DtString markingText() const;
68  virtual void setMarkingText(const DtString& name);
70 
72 
73  virtual DtObjectType objectType() const;
74  virtual void setObjectType(const DtObjectType& objectType);
76 
78 
79  virtual DtForceType forceType() const;
80  virtual void setForceType(const DtForceType& force);
82 
84  virtual void clearVertices();
87  virtual void addVertex(const DtVector& vertex);
89  virtual int numberOfVertices() const;
93  virtual DtVector vertex(unsigned int index) const;
94 
97 
98  virtual DtReal heading() const;
99  virtual void setHeading(DtReal heading);
100 
102  virtual bool headingSpecified() const;
104 
106 
107  virtual DtReal pitch() const;
108  virtual void setPitch(DtReal pitch);
109 
111  virtual bool pitchSpecified() const;
113 
116 
117  virtual bool closedFigure() const;
118  virtual void setClosedFigure(bool closed);
120 
123 
124  virtual bool projected() const;
125  virtual void setProjected(bool value);
127 
130 
131  virtual bool clampedToGround() const;
132  virtual void setClampedToGround(bool value);
134 
137 
138  virtual bool aggregated() const;
139  virtual void setAggregated(bool value);
141 
143  virtual DtString stringRep() const;
144 
146  virtual int netRepSize() const;
147 
149  virtual bool setFromNet(const char* contentBuffer,
150  unsigned contentSize);
151 
153  virtual bool setToNet();
154 
156  virtual const std::list<DtAdminContent*>& initialAdminContent() const;
157  virtual void setInitialAdminContent(std::list<DtAdminContent*> adminContent);
158  virtual void addInitialAdminContent(const DtAdminContent* adminContent);
159 
161  virtual const std::list<DtSimInterfaceContent*>& initialInterfaceContent() const;
162  virtual void setInitialInterfaceContent(std::list<DtSimInterfaceContent*> adminContent);
163  virtual void addInitialInterfaceContent(const DtSimInterfaceContent* adminContent);
164 
166  virtual void createAndAddAdminContentFromEncodedBuffer(const DtString&);
167 
169  virtual void setAppearance(int);
170  virtual int appearance() const;
171 
173  virtual void encodeAndAddAdminContent(const DtAdminContent*);
174 
176  virtual void createAndAddInterfaceContentFromEncodedBuffer(const DtString&);
177 
179  virtual void encodeAndAddInterfaceContent(const DtSimInterfaceContent*);
180 
182  virtual void setExtendedData(const std::map<DtString, DtString>&);
183  virtual void setExtendedData(const std::map<std::string, std::string>&);
184  virtual std::map<DtString, DtString> extendedData() const;
185 
187  virtual void setExtendedLabels(const std::map<int, DtString>&);
188  virtual std::map<int, DtString> extendedLabels() const;
189 
191  virtual void setUserData(const DtString&);
192  virtual void setUserData(const std::string&);
193  virtual const DtString& userData() const;
194 
196  virtual const DtUUID& uuid() const;
197  virtual void setUUID(const DtUUID&);
198 
200  static DtSimCommand* creator();
201 
202 protected:
203  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
204  const DtVariableBindingsList& variableBindings);
205 
206  virtual char* decodeBuffer(const DtString&) const;
207  virtual DtString encodeBuffer(const char* chr, int length) const;
208 
209 protected:
227 
229  std::list<DtAdminContent*> myAdditionalAdminContent;
230 
232  std::list<DtSimInterfaceContent*> myAdditionalInterfaceContent;
233 };
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
DtRwInt myAppearance
Definition: createObjectCommand.h:225
DtRwString myMarkingText
Definition: createObjectCommand.h:210
class DtRwObjectType:
Definition: rwObjectType.h:18
virtual bool setToNet()
Calls netRep() to create the network buffer. Casts the resulting myNetRep to type DtNetSimSimCommand*...
DtRwStringAttributeList myExtendedData
Definition: createObjectCommand.h:223
DtSimCommand subclass for creating a new VrfObjects. Used for both single and multi-point objects...
Definition: createObjectCommand.h:36
class DtRwIntegerAttributeList:
Definition: rwIntegerAttributeList.h:32
DtRwString myUserData
Definition: createObjectCommand.h:222
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwIntegerAttributeList myExtendedLabels
Definition: createObjectCommand.h:224
virtual DtString stringRep() const =0
Returns a human-readable string representation of the command. This string representation is used to ...
Definition: readerWriterRegistry.h:39
DtRwUUID myUUID
Definition: createObjectCommand.h:226
Contains the DtUUID class declaration.
std::list< DtSimInterfaceContent * > myAdditionalInterfaceContent
Local only. DtRwStringList keeps the string rep of all the commands.
Definition: createObjectCommand.h:232
Description: Readable, Writable uuid string. Use this class in order to convert from object marking t...
Definition: rwUUID.h:431
Definition: objectType.h:27
virtual int netRepSize() const
Returns the size in bytes of the network representation of the class. This is the size in bytes of th...
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
DtRwVectorList myVertices
Definition: createObjectCommand.h:213
virtual bool setFromNet(const char *contentBuffer, unsigned contentSize)
Sets mySubsimCommand member from the incoming contentBuffer (cast to type DtNetSimSimCommand). Derived classes should call down to this function first, and then extract their own data starting at the location contentBuffer + DtSimCommand::netRepSize().
Description: Readable, Writable int.
Definition: rwInt.h:25
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
const DtSimCommand & operator=(const DtSimCommand &orig)
assignment operator; same as copy constructor
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
DtRwObjectType myObjectType
Definition: createObjectCommand.h:211
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
std::list< DtAdminContent * > myAdditionalAdminContent
Local only. DtRwStringList keeps the string rep of all the commands.
Definition: createObjectCommand.h:229
Description: A readable, writable DtForceType.
Definition: rwForceType.h:26
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
virtual DtSimCommand * clone() const
Version of clone that preserves the existing name, and assigns a null parent registry.
DtAdminContent.
Definition: adminContent.h:23
DtRwForceType myForceType
Definition: createObjectCommand.h:212
DtRwBoolean myProjected
Definition: createObjectCommand.h:217
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal myPitch
Definition: createObjectCommand.h:215
DtRwBoolean myAggregated
Definition: createObjectCommand.h:219
DtRwReal myHeading
Definition: createObjectCommand.h:214
virtual const DtSimCommandMessageType & type() const =0
DtRwStringList myInterfaceContents
Definition: createObjectCommand.h:221
#define DT_DLL_vrfplan
This file is used to determine how to build.
Definition: vrfplanDefines.h:28
Definition: rwStringList.h:20
Definition: simInterfaceContent.h:45
DtRwBoolean myClosedFigure
Definition: createObjectCommand.h:216
DtRwBoolean myClampedToGround
Definition: createObjectCommand.h:218
class DtRwVectorList:
Definition: rwVectorList.h:22
DtRwStringList myAdminContents
Definition: createObjectCommand.h:220
class DtRwStringAttributeList:
Definition: rwStringAttributeList.h:29
File: rwVector.h.

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)