VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
launcherController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 #include <vl/detonationInteraction.h>
16 
17 class DtLauncherControllerDescriptor;
19 class DtVectorOutputPort;
20 
56 {
57 
58 public:
59 
62  DtLauncherController(const DtString& name,
63  DtVrfObject* owner,
64  DtSimManager* simManager,
65  DtComponentDescriptor* desc = 0,
66  DtReaderWriterRegistry* parentRegistry = 0);
67 
69  virtual ~DtLauncherController();
70 
73  virtual bool init();
74 
77  virtual DtString type() const;
78 
83  virtual void preFirstTickInit();
84 
86  virtual void tick();
87 
102  virtual void tickMunitionLoader(const DtVrfObject* target);
103 
106  virtual bool createMissileIdPort();
107  virtual DtObjectIdOutputPort * missileIdPort() const;
108 
109  virtual bool createTargetPointPort();
110  virtual DtVectorOutputPort * targetPointPort() const;
111 
112  virtual bool createTargetEntityIdPort();
113  virtual DtObjectIdOutputPort * targetEntityIdPort() const;
114 
121  virtual void fire();
122 
129  virtual void missileDetonated(DtDetonationInteraction * detInter);
130 
134  static void detonationCallback(DtDetonationInteraction * detInter,
135  void * usr);
136 
145  virtual void disconnectMissileFromLauncher(const DtEntityIdentifier& missId);
146 
147  virtual void disconnectMissileFromLauncher(DtVrfObject *missile);
148 
150  virtual DtVrfObject* mostRecentMissileFired();
151 
152  virtual double abandonPassedMissileDistance();
153  virtual void setAbandonPassedMissileDistance(const double& distance);
154 
155 
159  static DtSimComponent * creator(const DtString& name,
160  DtVrfObject* owner,
161  DtSimManager* simManager,
162  DtComponentDescriptor* desc = 0,
163  DtReaderWriterRegistry* parentRegistry = 0);
164 
165 protected:
166 
168  virtual bool createPorts();
169 
172  virtual void removeMissileFromActiveList(const DtEntityIdentifier& removeId);
173 
174 protected:
175 
178 
181 
184  orig);
185 
186 
187 protected:
188 
191 
194 
201 
208 
215 
217 
222 };

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)