VR-Forces 4.2 Class Documentation
detonationCtlr.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
15 #include "vrfutil/vlClock.h"
16 #include <vl/hostStructs.h>
17 #include "vrfutil/simMunition.h"
18 #include <vlpi/disEnums.h>
19 
26 class DtSimManager;
27 class DtSimMessage;
29 
38 {
39 
40 public:
41 
44  DtDetonationController(const DtString& name,
45  DtVrfObject* owner,
46  DtSimManager* simManager,
47  DtComponentDescriptor* desc = 0,
48  DtReaderWriterRegistry* parentRegistry = 0);
49 
51  virtual ~DtDetonationController();
52 
56  virtual bool postAddComponentsInit();
57 
60  virtual DtString type() const;
61 
64  virtual bool init();
65 
73  virtual void preFirstTickInit();
74 
76  virtual void tick();
77 
80  virtual bool createTriggerPort();
81  virtual DtBooleanOutputPort * triggerPort() const;
82 
83  virtual bool createQuantityOutputPort();
84  virtual DtIntegerOutputPort* quantityOutputPort() const;
85 
86  virtual void setDetonationTime(DtTime detTime);
87  virtual DtTime detonationTime() const;
88 
92  virtual void detonate();
93 
96  virtual void beginSensing();
97 
100  virtual bool tripped(const DtRwSensorContactInfo * potentialVictim);
101 
103  virtual bool setMunitionToDetonate( DtSimMunition& munition );
104 
108  static void setDetonationCallback(DtSimMessage* msg, void* usrData);
109 
110  virtual void processSetDetonation(DtSimMessage* msg);
111 
113  static void setArmedCallback(DtSimMessage * msg, void * usr);
114 
115  virtual void processSetArmed(DtSimMessage* msg);
116 
117  static void setRestoreCallback(DtSimMessage * msg, void * usrData);
118 
119  virtual void processSetRestore(DtSimMessage * msg);
120 
122  virtual DtDetonatorFuze fuseStringToEnum(const DtString & fuseString);
123 
125  virtual DtString fuseStringToEnum(DtDetonatorFuze fuse);
126 
130  static DtSimComponent * creator(const DtString& name,
131  DtVrfObject* owner,
132  DtSimManager* simManager,
133  DtComponentDescriptor* desc = 0,
134  DtReaderWriterRegistry* parentRegistry = 0);
135 
136 protected:
137 
139  virtual bool createPorts();
140 
141  virtual bool createTypesToDetectPort();
142 
150  virtual void lookupAndCacheProcessSR();
151 
153  virtual void registerRadioMessageCallbacks();
154 
155 protected:
158 
161 
164  orig);
165 
166 protected:
167 
169 
171 
179 
187 
194 
202 
204 
207  DtDetonatorFuze myCurrentFuze;
209  bool myAmArmed;
210 
212 
219 
221 };

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)