VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
f18/vehicleSim.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2014 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vl/exerciseConn.h>
13 #include <vl/reflectedEntityList.h>
15 #include <vl/entityPublisher.h>
17 #include <vl/topoView.h>
19 #include <vl/fireInteraction.h>
20 
22 
26 {
27 public:
28 
31  DtVehicleSim( double refLat, double refLon,
33  const DtEntityIdentifier& id, const DtEntityType& type,
34  const char* name, const char* markings,
35  const DtDeadReckonTypes alg, bool haveArtParts );
36 
38  virtual ~DtVehicleSim();
39 
41  virtual void init( DtConstVector initPos, double initSpeed,
42  double initHeading, double initTRadius,
43  double initPitch, bool autoRoll, double initRoll );
44 
46  virtual void simTick( DtTime dt );
47 
49  virtual void fireMunition( const DtGlobalObjectDesignator& tg );
50  virtual void fireMunition();
51  virtual void detonateMunition();
52  virtual void munitionTick();
53 
55  virtual void processDetonation( DtDetonationInteraction* inter );
56  virtual int checkDetonation( DtDetonationInteraction* inter );
57  virtual void reactToDamage();
58  virtual bool isDestroyed();
59  virtual DtTime timeDestroyed();
60 
62  virtual void toggleEmissions();
63  virtual void enableEmissions();
64  virtual void disableEmissions();
65  virtual void emissionsTick( double dt );
66 
67 public:
68 
69  static void setLethalDetonationRange( double range );
70  static void setMunitionFlightTime( DtTime time );
71 
72 protected:
73 
74  virtual void moveArtParts( DtTime dt );
75 
76  static void emitterSystemUpdateCallback(DtReflectedEmitterSystem* obj, void* usr );
77  static void emitterSystemAdditionCallback(DtReflectedEmitterSystem* obj, void* usr );
78  static void emitterSystemRemovalCallback(DtReflectedEmitterSystem* obj, void* usr );
79  static bool emitterSystemDiscoveryCondition(DtReflectedObject* refObj, void* usr);
80 
85 
86 protected:
87 
88  static void theDetonationCb( DtDetonationInteraction*, void* );
89 
90 protected:
91 
100 
101  float mySpeed;
103  float myTurnRate;
105 
111 
112  float myTurretAz;
114  float myGunElev;
116 
121 
124 
125 protected:
126 
129 
130 };

Document ID: Generated on Fri Dec 2 02:42:08 EST 2016 from SVN revision 171416
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)