VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
localObjectCreateInformation.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
9 #include "vrfutil/rwUUID.h"
10 #include <vlpi/entityType.h>
11 #include "vlpi/entityIdentifier.h"
12 #include "matrix/vlVector.h"
13 #include "matrix/vlVector.h"
14 #include "vlpi/disEnums.h"
15 
16 #include <vector>
17 #include <list>
18 
20 class DtLocalObject;
21 class DtAdminContent;
23 
25 typedef bool(*DtVrfObjectUserInitFcn)(DtLocalObject* vrfObject, void* usr);
26 
27 namespace makVrf
28 {
29  class DtExternalCurrentFrameState;
30 }
31 
36 {
37 public:
40 
43 
46 
50 
53 
54  void setUUID(const DtUUID&);
55  const DtUUID& uuid() const;
56 
57  void setOverlay(const DtString&);
58  const DtString& overlay() const;
59 
60  void setObjectType(const DtEntityType&);
61  const DtEntityType& objectType() const;
62 
64  void setPublishFlag(int);
65  void setPublishObject(bool);
66  bool publishObject() const ;
67  int publishFlag() const;
68 
69  void setEntityIdentifier(const DtEntityIdentifier&);
70 
72  DtEntityIdentifier entityIdentifier() const;
73 
74  void setLabel(const DtString&);
75  const DtString& label() const;
76 
77  void setExtendedLabels(const std::map<int, DtString>&);
78  const std::map<int, DtString>& extendedLabels() const;
79 
81  void setPosition(const DtVector& geocLocation);
82 
84  DtVector position() const;
85  DtVector endPosition() const;
86 
87  const std::vector<DtVector>& vertices() const;
88  std::vector<DtVector>& vertices();
89 
91  void setVertices(const DtList&);
92  void setVertices(const std::vector<DtVector>&);
93  void addVertex(const DtVector&);
94 
95  const DtTaitBryan& orientation() const;
96  void setOrientation(const DtTaitBryan&);
97 
100  void setColor(int);
101  int color() const;
102  bool colorSet() const;
103  void clearColor();
105 
108  void setLineWidth(int);
109  int lineWidth() const;
110  bool lineWidthSet() const;
111  void clearLineWidth();
113 
116  void setPenStyle(int);
117  int penStyle() const;
118  bool penStyleSet() const;
119  void clearPenStyle();
121 
124  void setFillStyle(int);
125  int fillStyle() const;
126  bool fillStyleSet() const;
127  void clearFillStyle();
129 
132  void setWorldVelocity(const DtVector&);
133  const DtVector& worldVelocity() const;
134  bool worldVelocitySet() const;
135  void clearWorldVelocity();
136 
137  void setWorldOrientation(const DtTaitBryan&);
138  const DtTaitBryan& worldOrientation() const;
139  bool worldOrientationSet() const;
140  void clearWorldOrientation();
142 
143  void setAmClampedToGround(bool);
144  bool amClampedToGround() const;
145 
147  void setHeading(double rad);
148  double heading() const;
149 
151  void setPitch(double rad);
152  double pitch() const;
153 
155  void setRoll(double rad);
156  double roll() const;
157 
158  void setObjectName(const DtString&);
159  const DtString& objectName() const;
160 
162  void setObjectNamePrefix(const DtString&);
163  const DtString& objectNamePrefix() const;
164 
165  void setForceType(DtForceType);
166  DtForceType forceType() const;
167 
170  void setClampToGround(bool);
171  bool clampToGround() const;
172 
174  void setProjected(bool);
175  bool projected() const;
176 
178  void setIsClutterEntity(bool);
179  bool isClutterEntity() const;
180 
185  void setGlobalId(const DtString&);
186  const DtString& globalId() const;
187 
189  void setClosedFigure(bool);
190  bool closedFigure() const;
191 
193  void setAppearance(unsigned int);
194  unsigned int appearance() const;
195 
197  void setConnectToRadioNetwork(bool b);
198  bool connectToRadioNetwork() const;
199 
202  void setAddToOrbat(bool);
203  bool addToOrbat() const;
204 
206  void setCreateSubObjects(bool b);
207  bool createSubObjects() const;
208 
210  void setOrganized(bool);
211  bool organized() const;
212 
215  void setUserCallback(DtVrfObjectUserInitFcn, void*);
216  DtVrfObjectUserInitFcn callbackFunction() const;
217  void* callbackData() const;
218 
220  void setRequestId(unsigned long);
221  unsigned long requestId() const;
222 
225  void setStartingFormation(const DtString&);
226  const DtString& startingFormation() const;
227 
228  void setAggregateCreationMode(int);
229  int aggregateCreationMode() const;
231 
233  const std::map<std::string, std::string>& extendedData() const;
234  std::map<std::string, std::string>& extenedData();
235  void setExtendedData(const std::map<std::string, std::string>&);
236  void setExtendedData(const std::map<DtString, DtString>&);
237  void setExtendedData( const DtString& keyword, const DtString& data );
238 
241  const DtString& userData() const;
242  void setUserData(const DtString&);
243 
245  void setSuperior(const DtUUID&);
246  const DtUUID& superior() const;
247 
249  const std::list<DtAdminContent*>& initialAdminContent() const;
250 
252  std::list<DtAdminContent*>& initialAdminContent();
253 
254  void setInitialAdminContent(const std::list<DtAdminContent*>& adminContent);
255  void addInitialAdminContent(DtAdminContent* adminContent);
256  void clearInitialAdminContent();
257 
259  const std::list<DtSimInterfaceContent*>& initialInterfaceContent() const;
260 
262  std::list<DtSimInterfaceContent*>& initialInterfaceContent();
263 
264  void setInitialInterfaceContent(const std::list<DtSimInterfaceContent*>& adminContent);
265  void addInitialInterfaceContent(DtSimInterfaceContent* adminContent);
266  void clearInitialInterfaceContent();
267 
270  void addSubordinates(const std::vector<DtUUID>&);
271  void addSubordinate(const DtUUID&);
272  void renmoveSubordinate(const DtUUID&);
273  void clearSubordinates();
274  const std::vector<DtUUID>& subordinates() const;
275 
277  virtual bool isValid() const;
278 
279 protected:
281  void validateUUID();
282 
283 protected:
285  DtEntityType myObjectType;
290  std::map<int, DtString> myExtendedLabels;
296 
299 
302 
304  DtTaitBryan myOrientation;
305 
307  std::vector<DtVector> myVertices;
308 
311 
313  DtForceType myForceType;
314 
316  DtEntityIdentifier myEntityIdentifier;
317 
320 
323 
324  unsigned int myAppearance;
326 
327  unsigned long myRequestId;
328 
329  std::map<std::string, std::string> myExtendedData;
330 
331  std::list<DtAdminContent*> myAdminContent;
332  std::list<DtSimInterfaceContent*> myInterfaceContent;
333 
335 
337  DtVector myWorldVelocity;
339 
341  DtTaitBryan myWorldOrientation;
343 
345  std::vector<DtUUID> mySubordinates;
346 
347  int myColor;
349 
352 
355 
358 
360 
362 };
std::vector< DtVector > myVertices
The vertices (geocentric) used to create this object.
Definition: localObjectCreateInformation.h:307
UUID is a unique ID wrapper class.
Definition: uuid.h:59
bool myConnectToRadioNetwork
Definition: localObjectCreateInformation.h:325
The DtLocalObjectCreateInformation class is a subset of the information used in the DtIfCreateVrfObje...
Definition: localObjectCreateInformation.h:35
#define DT_DLL_vrfmsgs
This file is used to determine how to build.
Definition: vrfmsgsDefines.h:28
DtEntityType myObjectType
Definition: localObjectCreateInformation.h:285
DtTaitBryan myWorldOrientation
If this is specified, use this instead of the supplied orientation.
Definition: localObjectCreateInformation.h:341
DtString myStartingFormation
Definition: localObjectCreateInformation.h:297
DtString myUserData
Definition: localObjectCreateInformation.h:294
std::list< DtAdminContent * > myAdminContent
Definition: localObjectCreateInformation.h:331
DtString myGlobalId
Definition: localObjectCreateInformation.h:361
bool myClosedFigure
Default is false.
Definition: localObjectCreateInformation.h:322
DtUUID mySuperior
Definition: localObjectCreateInformation.h:334
std::map< int, DtString > myExtendedLabels
Definition: localObjectCreateInformation.h:290
bool(* DtVrfObjectUserInitFcn)(DtLocalObject *vrfObject, void *usr)
User action function definition for createAndInitVrfObject()
Definition: localObjectCreateInformation.h:25
Contains the DtUUID class declaration.
unsigned long myRequestId
Definition: localObjectCreateInformation.h:327
void * myUserInitData
Definition: localObjectCreateInformation.h:301
DtVector myWorldVelocity
World velocity to be set in the local object (only used if set)
Definition: localObjectCreateInformation.h:337
unsigned int myAppearance
Definition: localObjectCreateInformation.h:324
int myAggregateCreationMode
Definition: localObjectCreateInformation.h:298
bool myCreateSubObjects
Definition: localObjectCreateInformation.h:292
bool myIsClutterEntity
Definition: localObjectCreateInformation.h:359
bool myOrganized
Definition: localObjectCreateInformation.h:293
int myColor
Definition: localObjectCreateInformation.h:347
DtString myObjectName
Definition: localObjectCreateInformation.h:287
int myFillStyle
Definition: localObjectCreateInformation.h:356
std::vector< DtUUID > mySubordinates
Takes the UUIDs supplied, and, if the subordinates exist, adds them to the newly created object...
Definition: localObjectCreateInformation.h:345
DtString myOverlay
Definition: localObjectCreateInformation.h:289
int myLineWidth
Definition: localObjectCreateInformation.h:350
bool myLineWidthSet
Definition: localObjectCreateInformation.h:351
bool myClampToGround
Definition: localObjectCreateInformation.h:295
int myPublishFlag
Whether or not to publish this item on the network. Default is true.
Definition: localObjectCreateInformation.h:310
bool myPenStyleSet
Definition: localObjectCreateInformation.h:354
bool myProjected
Default is true.
Definition: localObjectCreateInformation.h:319
bool myWorldVelocitySet
Definition: localObjectCreateInformation.h:338
bool myWorldOrientationSet
Definition: localObjectCreateInformation.h:342
DtAdminContent.
Definition: adminContent.h:23
DtUUID myUUID
Definition: localObjectCreateInformation.h:284
DtString myObjectNamePrefix
Definition: localObjectCreateInformation.h:288
Definition: simInterfaceContent.h:45
bool myColorSet
Definition: localObjectCreateInformation.h:348
std::list< DtSimInterfaceContent * > myInterfaceContent
Definition: localObjectCreateInformation.h:332
DtString myLabel
Definition: localObjectCreateInformation.h:286
std::map< std::string, std::string > myExtendedData
Definition: localObjectCreateInformation.h:329
DtEntityIdentifier myEntityIdentifier
VR-Link specific – the entity identifier to use as a seed.
Definition: localObjectCreateInformation.h:316
DtVrfObjectUserInitFcn myUserInitFunction
Definition: localObjectCreateInformation.h:300
bool myFillStyleSet
Definition: localObjectCreateInformation.h:357
DtTaitBryan myOrientation
The topographic orientation to set for this object.
Definition: localObjectCreateInformation.h:304
DtForceType myForceType
Default is DtForceOther.
Definition: localObjectCreateInformation.h:313
bool myAddToOrbat
Definition: localObjectCreateInformation.h:291
int myPenStyle
Definition: localObjectCreateInformation.h:353
class DtIfCreateVrfObject:
Definition: ifCreateVrfObject.h:77
A locally simulated VRF object.
Definition: localObject.h:98

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)