VR-Forces 4.1 Class Documentation
iFireAct.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
11 #include "vrfmodel/weaponAct.h"
12 #include <vl/hostStructs.h>
13 
14 class DtSimManager;
19 
20 class DtAnalogInputPort;
21 class DtVectorInputPort;
22 
38 {
39 
40 public:
41 
44  DtIndirectFireActuator(const DtString& name,
45  DtVrfObject* owner,
46  DtSimManager* simManager,
47  DtComponentDescriptor* desc = 0,
48  DtReaderWriterRegistry* parentRegistry = 0);
49 
51  virtual ~DtIndirectFireActuator();
52 
55  virtual void preFirstTickInit();
56 
63  virtual void initPendingDetonations();
64 
67  virtual DtString type() const;
68 
76  virtual DtFireInteraction * createFireInteraction();
77 
85  virtual DtDetonationInteraction * createDetonationInteraction(DtTime&
86  detTime);
87 
91  virtual void scheduleDetonation(DtDetonationInteraction * detInter,
92  DtTime detTime);
93 
97  virtual void fireTheWeapon();
98 
99 
103  virtual DtVrfObject* createMissileObject();
104 
107  virtual double calculateAngleOfFire(double distanceToTarget,
108  double HeightDifference, double launchSpeed);
109 
114  virtual void addDispersion(DtVector& detLocation,
115  bool addHeightDispersion);
116 
118  static void detonationCallback(DtTimer * timer);
119 
123  static DtSimComponent * creator(const DtString& name,
124  DtVrfObject* owner,
125  DtSimManager* simManager,
126  DtComponentDescriptor* desc = 0,
127  DtReaderWriterRegistry* parentRegistry = 0);
128 
134  virtual DtDetonationInteraction * createDetonationInteraction(
135  const DtDetonationDescriptor& desc, DtTime& detTime);
136 
139  virtual DtDetonationDescriptor* createDetonationDescriptor(
140  DtDetonationInteraction* detInter, DtTime simTime);
141 
143  static void objectAddedCb(DtVrfObject * vrfObject, void * usr);
144 
149  virtual void processObjectAdded(DtVrfObject * vrfObject);
150 
151 protected:
152 
154  virtual bool createPorts();
155 
161  virtual bool createPSR();
162 
163 protected:
164 
167 
170 
173  const DtIndirectFireActuator & orig);
174 
175 
176 protected:
177 
180 
187 
194 
196 
198  DtList myTimerList;
200 
204 };

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)