VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
indirectFireActuator.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 #pragma once
12 #include <vl/hostStructs.h>
13 
14 class DtSimManager;
19 
20 class DtAnalogInputPort;
21 class DtVectorInputPort;
22 class DtBooleanInputPort;
23 class DtVectorOutputPort;
24 
40 {
41 
42 public:
43 
46  DtIndirectFireActuator(const DtString& name,
47  DtVrfObject* owner,
48  DtSimManager* simManager,
49  DtComponentDescriptor* desc = 0,
50  DtReaderWriterRegistry* parentRegistry = 0);
51 
53  virtual ~DtIndirectFireActuator();
54 
56  virtual bool postAddComponentsInit();
57 
60  virtual void preFirstTickInit();
61 
68  virtual void initPendingDetonations();
69 
72  virtual const char* type() const;
73 
81  virtual DtFireInteraction * createFireInteraction();
82 
90  virtual DtDetonationInteraction * createDetonationInteraction(DtTime&
91  detTime);
92 
96  virtual void scheduleDetonation(DtDetonationInteraction * detInter,
97  DtTime detTime);
98 
102  virtual void fireTheWeapon();
103 
104 
108  virtual DtVrfObject* createMissileObject();
109 
115  virtual double determineMuzzleSpeed(double range);
116 
121  virtual void addDispersion(DtVector& detLocation,
122  bool addHeightDispersion);
123 
125  static void detonationCallback(DtTimer * timer);
126 
130  static DtSimComponent * creator(const DtString& name,
131  DtVrfObject* owner,
132  DtSimManager* simManager,
133  DtComponentDescriptor* desc = 0,
134  DtReaderWriterRegistry* parentRegistry = 0);
135 
141  virtual DtDetonationInteraction * createDetonationInteraction(
142  const DtDetonationDescriptor& desc, DtTime& detTime);
143 
146  virtual DtDetonationDescriptor* createDetonationDescriptor(
147  DtDetonationInteraction* detInter, DtTime simTime);
148 
150  static void objectAddedCb(DtVrfObject * vrfObject, void * usr);
151 
156  virtual void processObjectAdded(DtVrfObject * vrfObject);
157 
158 protected:
159 
161  virtual bool createPorts();
162 
168  virtual bool createPSR();
169 
170 protected:
171 
174 
177 
180  const DtIndirectFireActuator & orig);
181 
182 
183 protected:
184 
187 
194 
201 
208 
216 
223 
225 
227  DtList myTimerList;
229 
233 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)