VR-Vantage API Documentation
vrfExtensions.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: vrfExtensions.h,v $ $Revision: 1.15 $ $State: Exp $
7 *******************************************************************************/
8 
9 // Extensions applied to basic state repositories
10 
11 #ifndef VRFEXTENSIONS_H
12 #define VRFEXTENSIONS_H
13 
14 #include <vlutil/vlString.h>
15 
18 
19 class DtIfVrfObjectData;
20 class DtObjectType;
21 class DtVector;
22 
24 {
25 public:
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 
110  virtual void setBoundingVolume(const DtVector&);
111  virtual const DtVector& boundingVolume() const;
112 
113  virtual void setBoundingVolumeOffset(const DtVector&);
114  virtual const DtVector& boundingVolumeOffset() const;
116 
117 public:
118  // createVrfObjectDataMessage()
119  // allocates myVrfObjectDataMessage, a DtIfVrfObjectData
120  // used by VR-Forces as extended vrf object data message information
121  virtual bool createVrfObjectDataMessage();
122 
123  // vrfObjectDataMessage()
124  // returns the myVrfObjectDataMessage for inspection by
125  // the caller. If myVrfObjectDataMessage is NULL, it is created.
126  virtual DtIfVrfObjectData* vrfObjectDataMessage() const;
127 
128 protected:
129  // Used internally to signal that this structure has been modified. By default does nothing
130  virtual void extensionModified();
131 
132 protected:
133  DtString myName;
135 };
136 
137 #endif
138 


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