VR-Forces 4.1.1 Class Documentation
emitterComp.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 
12 #pragma once
13 
14 
15 #include "vrfobjcore/simCmpnt.h"
16 
17 class DtString;
18 class DtSimManager;
19 class DtSimMessage;
20 class DtSimBaseRadio;
22 class DtEmitterPSR;
23 class DtVrfEmitterSystem;
24 class DtVrfObjectMessage;
26 
48 {
49 public:
50 
53  DtEmitterComponent(const DtString& name,
54  DtVrfObject* owner,
55  DtSimManager* simManager,
56  DtComponentDescriptor* desc = 0,
57  DtReaderWriterRegistry* parentRegistry = 0);
58 
60  virtual ~DtEmitterComponent();
61 
63  virtual void tick();
64 
68  virtual bool tickWhileDestroyed() const;
69 
71  bool init();
72 
75  virtual DtString type() const;
76 
80  static DtSimComponent * creator(const DtString& name,
81  DtVrfObject* owner,
82  DtSimManager* simManager,
83  DtComponentDescriptor* desc = 0,
84  DtReaderWriterRegistry* parentRegistry = 0);
85 
87  virtual void registerSetRequestMsgCallbacks();
88 
89  static void setEmitterRequestCallback(DtSimMessage* msg, void* usrData);
90  virtual void processSetEmitterRequestMessage(DtSimMessage* msg);
91 
92  static void setRadarModeRequestCallback(DtSimMessage* msg, void* usrData);
93  virtual void processSetRadarModeRequestMessage(DtSimMessage* msg);
94 
95  static void requestRadarModesAdminCallback(const DtVrfObjectMessage* msg, void* usr);
96  virtual void processRequestRadarModesAdmin(DtString receiver,
97  DtString sender,
98  bool isEchelonId,
99  const DtVrfObjectMessage* msg);
100 
101  static void setTargetRequestCallback(DtSimMessage* msg, void* usrData);
102  virtual void processSetTargetRequestMessage(DtSimMessage* msg);
103 
105  virtual void setSystemName(DtEmitterSysName nameEnum);
106  virtual DtEmitterSysName systemName() const;
107 
108  virtual void setSystemFunction(DtEmissionFunc functionEnum);
109  virtual DtEmissionFunc systemFunction() const;
110 
111  virtual void setMountLocation(const DtVector &location);
112  virtual DtVector mountLocation() const;
113 
119  virtual void setTargetingCapable(bool onOff);
120  virtual bool targetingCapable() const;
121 
124  virtual void setOn(bool onOff);
125  virtual bool on() const;
126 
129  virtual void addTrackTarget(const DtGlobalObjectDesignator &globalId);
130 
133  virtual void removeTrackTarget(const DtGlobalObjectDesignator &globalId);
134 
136  virtual void clearTrackTargets();
137 
140  virtual DtEmitterBeamRepository* addBeam(DtU8 id);
141 
143  virtual void removeBeam(DtU8 id);
144 
147  virtual DtEmitterBeamRepository* beam(DtU8 id = 0);
148 
150  virtual int numBeams() const;
151 
153  virtual DtList* beamList();
154 
160  virtual DtVrfEmitterSystem* emitterSystem();
161 
162 protected:
163  virtual void setRadio(DtSimBaseRadio * radio);
165  virtual DtSimBaseRadio * radio();
166 
168  virtual bool createAndInitEmitterSystem();
169 
171  virtual void updateFromDescriptor();
172 
178  virtual bool createPSR();
179 
180 private:
183 
186 
188  const DtEmitterComponent & operator=(const DtEmitterComponent & orig);
189 
190 
191 protected:
196 
200 
204 };
205 

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)