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


Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)