VR-Vantage 3.0.3 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfExtensions.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2017 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
14 #include <vlutil/vlString.h>
15 #include <map>
16 
17 class DtObjectType;
18 class DtIfVrfObjectData;
19 
21 
23 {
24 public:
25 
26  // Constructor
28 
29  virtual ~DtVrfExtensions();
30 
31  // copy constructor
32  DtVrfExtensions(const DtVrfExtensions& orig);
33 
34  // assignment operator
35  DtVrfExtensions& operator=(const DtVrfExtensions& orig);
36 
37  virtual const DtString& name() const;
38  virtual void setName(const DtString& n);
39 
40  virtual const DtString& vrfObjectLabel() const;
41  virtual void setVrfObjectLabel(const DtString& l);
42 
43  virtual const DtString& echelonId() const;
44  virtual void setEchelonId(const DtString& l);
45 
46  virtual const DtString& overlayParent() const;
47  virtual void setOverlayParent(const DtString& l);
48 
49  virtual bool isVrfSimulated() const;
50  virtual void setIsVrfSimulated(bool vrf);
51 
52  virtual DtU32 vrfSessionId() const;
53  virtual void setVrfSessionId(DtU32 id);
54 
55  virtual void setVrfMessageVersionSupported(DtU32 id);
56  virtual DtU32 vrfMessageVersionSupported() const;
57 
58  virtual void setObjectType(const DtObjectType&);
59  virtual const DtObjectType& objectType() const;
60 
61  virtual void setIsSubordinateOfForce(bool b);
62  virtual bool isSubordinateOfForce() const;
63 
64  // Independently tasked status (individual entities and aggregates
65  // only). Default is false.
66  // @{
67  virtual void setIndependentlyTasked(bool yesNo);
68  virtual bool independentlyTasked() const;
69  // @}
70 
71  virtual int superType() const;
72 
73  // Under fire status (individual entities and aggregates
74  // only). Default is false.
75  // @{
76  virtual void setUnderFire(bool yesNo);
77  virtual bool underFire() const;
78  // @}
79 
80  virtual void setHasPlan(bool yesNo);
81  virtual bool hasPlan() const;
82 
83  // Indicates whether the entity is executing a plan.
85  virtual void setExecutingPlan(bool yesNo);
86  virtual bool executingPlan() const;
88 
89  virtual void setIsCurrentlyTasked(bool yesNo);
90  virtual bool isCurrentlyTasked() const;
91 
92  virtual void setRulesOfEngagement(const DtString&);
93  virtual const DtString& rulesOfEngagement() const;
94 
95  // Sets up internal information based on session id and vrf object data. Returns true if
96  // anything has changed due to the new setting of information
97  virtual bool setupFromVrfObjectData(const DtIfVrfObjectData& data);
98 
100  //{@
101  virtual void addRangeItem(const DtRangeItem&);
102  virtual void removeRangeItem(int index);
103  virtual void setRangeItems(const DtRangeItems&);
104  const DtRangeItems& rangeItems() const;
106 
109  virtual void setExtendedData(const std::map<DtString, DtString>&);
110  virtual const std::map<DtString, DtString>& extendedData() const;
111  virtual void setExtendedData(const DtString& key, const DtString& value);
112  virtual DtString extendedData(const DtString&) const;
114 
118  virtual void setBoundingVolume(const DtVector32&);
119  virtual const DtVector32& boundingVolume() const;
120 
121  virtual void setBoundingVolumeOffset(const DtVector32&);
122  virtual const DtVector32& boundingVolumeOffset() const;
124 
127  static void setExpectedVrfMessageVersion(DtU32 version);
128  static DtU32 expectedVrfMessageVersion();
130 
131 public:
132  // createVrfObjectDataMessage()
133  // allocates myVrfObjectDataMessage, a DtIfVrfObjectData
134  // used by VR-Forces as extended vrf object data message information
135  virtual bool createVrfObjectDataMessage();
136 
137  // vrfObjectDataMessage()
138  // returns the myVrfObjectDataMessage for inspection by
139  // the caller. If myVrfObjectDataMessage is NULL, it is created.
140  virtual DtIfVrfObjectData* vrfObjectDataMessage() const;
141 
142 protected:
143  // Used internally to signal that this structure has been modified. By default does nothing
144  virtual void extensionModified();
145 
146 protected:
149 
151 };


Copyright © 2005-2023 MAK Technologies. All Rights Reserved (www.mak.com)