VR-Forces 4.2 Class Documentation
scriptVrfObject.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
9 
10 #include "vrfobjcore/vrfObject.h"
11 #include <vrfutil/scriptGeometry.h>
12 #include <string>
14 #include "vrfcore/simMgr.h"
15 #include <stdexcept>
16 
19 
21 {
22 public:
23  DtScriptVrfObject(const DtString& name, DtVrfObject* const vrfObject);
25 
26  DtScriptVrfObject& operator=(const DtScriptVrfObject &orig);
27 
29 
30  bool operator==(const DtScriptVrfObject& orig);
31 
34 
36  virtual DtLocation3D getLocation3D() const;
37 
39  virtual double getSpeed() const;
40 
47  virtual DtVector3D getDirection3D() const;
48 
51  virtual DtVector3D getVelocity3D() const;
53 
56  virtual double getHeightAboveTerrain() const;
57 
62  virtual bool hasLosToObject(const DtScriptVrfObject &target,
63  bool & dataAvailable) const;
64 
72  virtual bool isPointInside(const DtLocation3D &point) const;
73 
78  virtual bool hasLosToLocation(DtLocation3D &targetLoc,
79  bool &dataAvailable) const;
80 
82  virtual std::string getEntityType() const;
83 
86  virtual bool isAggregate() const;
87 
90  virtual std::string getEchelonLevel() const;
91 
93  virtual std::string getForceType() const;
94 
96  virtual int getForceEnumeration() const;
97 
103  virtual std::string getDamageState() const;
104 
106  virtual unsigned getAppearance() const;
107 
109  virtual bool isDestroyed() const;
110 
112  virtual bool isEmbarked() const;
113 
114  virtual DtScriptVrfObject getEmbarkedOn() const;
115 
116  virtual std::list<DtScriptVrfObject> getEmbarkedObjects(void)const;
117 
120  virtual std::list<DtScriptVrfObject> getSubordinates(void) const;
121 
122  virtual std::list<DtScriptVrfObject> getCapableSubordinates(void) const;
123 
124  virtual std::list<DtLocation3D> getLocations3D(void)const;
125 
126  virtual std::string getName() const;
127 
128  virtual double getHeading() const;
129 
130  virtual double getDraft() const;
131 
133  void terrainSurfaceDebug();
134 
136  void deleteObject();
137 
139  bool isDeleted() const;
140  virtual bool isValid() const;
141 
143  virtual bool isLocal() const;
144 
146  virtual DtVectorOffset3D getBoundingVolume(DtVectorOffset3D& offset) const;
147 
150 
152  virtual void setSimManager(DtSimManager* simManager);
153 
154  virtual DtString objectType() const;
155 
158 
161  bool deserialize(const DtString& data);
162 
164  static DtAsciiSerializable* creator();
165 
167  DtVrfObject* vrfObject() const {return myObject;}
168 
170  void testValid() const;
171 
172 protected:
173 
175  void addObjectAboutToBeRemovedCallback();
176 
178  void removeObjectAboutToBeRemovedCallback();
179 
180  static void objectAboutToBeRemovedCallback(DtVrfObject*, void* usr);
181  virtual void processObjectAboutToBeRemoved(DtVrfObject*);
182 
183 protected:
186  bool myDeleted;
188 };
189 
190 DT_DLL_vrfobjcore std::ostream& operator<<(std::ostream&, const DtScriptVrfObject&);
191 
196 {
197 public:
198  DtScriptOwnshipObject(const DtString& name, DtVrfObject* const vrfobject);
201 
204 
205  void setLocation3D(const DtLocation3D &newloc);
206  void setHeading(const double heading);
207 
208  virtual std::list<std::string> getResourceNames(void)const;
209 
217  virtual double getResourceAmounts(const std::string& resourceName, double* fullAmount) const;
218 
220  virtual void depleteResource(const std::string& resourceName, double amount);
221 
223  virtual void replenishResource(const std::string& resourceName, double amount);
224 
227  virtual std::string getMunitionType(const std::string& resourceName);
228 
232  virtual bool addResource(const std::string& resourceType, const std::string& resourceName,
233  double currentAmount, double fullAmount);
234 
236  virtual void removeResource(const std::string& resourceName);
237 
239  virtual DtScriptComponentSystem* lookupSystem(const std::string& systemName);
240 
242  virtual std::list<std::string> getSystemNames();
243 
245  virtual bool isUnderFire() const;
246 
250  virtual std::list<DtScriptVrfObject> getObservedHostileContacts(void);
251 
257  virtual std::list<DtScriptVrfObject> getAllHostileContacts(void);
258 
263  virtual std::list<DtScriptVrfObject> getAllContacts(void);
264 
268  virtual bool registerDetonationInterest(double range,
269  const std::string& munitionType);
270 
276  virtual bool getLastDetonation(std::string& munitionType, DtLocation3D& location);
277 
280 
281 protected:
282 
285  static bool processDetonation(const DtDetonationContext& detonationContext, void* usr);
286  bool processDetonation(const DtDetonationContext& detonationContext);
288 
291 
294 };
295 

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)