VR-Forces Development_Version Class 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 
21 {
22 public:
23  // Constructor
25 
26  virtual ~DtVrfExtensions();
27 
28  // copy constructor
29  DtVrfExtensions(const DtVrfExtensions& orig);
30 
31  // assignment operator
32  DtVrfExtensions& operator=(const DtVrfExtensions& orig);
33 
34  virtual const DtString& name() const;
35  virtual void setName(const DtString& n);
36 
37  virtual const DtString& vrfObjectLabel() const;
38  virtual void setVrfObjectLabel(const DtString& l);
39 
40  virtual const DtString& echelonId() const;
41  virtual void setEchelonId(const DtString& l);
42 
43  virtual const DtString& overlayParent() const;
44  virtual void setOverlayParent(const DtString& l);
45 
46  virtual bool isVrfSimulated() const;
47  virtual void setIsVrfSimulated(bool vrf);
48 
49  virtual DtU32 vrfSessionId() const;
50  virtual void setVrfSessionId(DtU32 id);
51 
52  virtual void setVrfMessageVersionSupported(DtU32 id);
53  virtual DtU32 vrfMessageVersionSupported() const;
54 
55  virtual void setObjectType(const DtObjectType&);
56  virtual const DtObjectType& objectType() const;
57 
58  virtual void setIsSubordinateOfForce(bool b);
59  virtual bool isSubordinateOfForce() const;
60 
61  // Independently tasked status (individual entities and aggregates
62  // only). Default is false.
63  // @{
64  virtual void setIndependentlyTasked(bool yesNo);
65  virtual bool independentlyTasked() const;
66  // @}
67 
68  virtual int superType() const;
69 
70  // Under fire status (individual entities and aggregates
71  // only). Default is false.
72  // @{
73  virtual void setUnderFire(bool yesNo);
74  virtual bool underFire() const;
75  // @}
76 
77  virtual void setHasPlan(bool yesNo);
78  virtual bool hasPlan() const;
79 
80  // Indicates whether the entity is executing a plan.
82  virtual void setExecutingPlan(bool yesNo);
83  virtual bool executingPlan() const;
85 
86  virtual void setIsCurrentlyTasked(bool yesNo);
87  virtual bool isCurrentlyTasked() const;
88 
89  virtual void setRulesOfEngagement(const DtString&);
90  virtual const DtString& rulesOfEngagement() const;
91 
92  // Sets up internal information based on session id and vrf object data. Returns true if
93  // anything has changed due to the new setting of information
94  virtual bool setupFromVrfObjectData(const DtIfVrfObjectData& data);
95 
97  //{@
98  virtual void addRangeItem(const DtRangeItem&);
99  virtual void removeRangeItem(int index);
100  virtual void setRangeItems(const DtRangeItems&);
101  const DtRangeItems& rangeItems() const;
103 
106  virtual void setExtendedData(const std::map<DtString, DtString>&);
107  virtual const std::map<DtString, DtString>& extendedData() const;
108  virtual void setExtendedData(const DtString& key, const DtString& value);
109  virtual DtString extendedData(const DtString&) const;
111 
115  virtual void setBoundingVolume(const DtVector32&);
116  virtual const DtVector32& boundingVolume() const;
117 
118  virtual void setBoundingVolumeOffset(const DtVector32&);
119  virtual const DtVector32& boundingVolumeOffset() const;
121 
122 public:
123  // createVrfObjectDataMessage()
124  // allocates myVrfObjectDataMessage, a DtIfVrfObjectData
125  // used by VR-Forces as extended vrf object data message information
126  virtual bool createVrfObjectDataMessage();
127 
128  // vrfObjectDataMessage()
129  // returns the myVrfObjectDataMessage for inspection by
130  // the caller. If myVrfObjectDataMessage is NULL, it is created.
131  virtual DtIfVrfObjectData* vrfObjectDataMessage() const;
132 
133 protected:
134  // Used internally to signal that this structure has been modified. By default does nothing
135  virtual void extensionModified();
136 
137 protected:
140 };

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)