VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfEmitterSystem.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vlutil/vlList.h>
15 #include <vlpi/disEnums.h>
16 #include <vl/globalObjectDesignator.h>
17 #include <matrix/vlVector.h>
18 
19 class DtVrfObject;
21 class DtEmitterSystemPublisher;
23 
35 {
36 private:
40  DtVrfEmitterSystem& operator=(const DtVrfEmitterSystem& orig);
43 
44 public:
45  DtVrfEmitterSystem(DtVrfObject* hostEntity);
46  virtual ~DtVrfEmitterSystem();
47 
49  virtual void tick();
50 
52  bool init();
53 
54 
59  virtual void setOn(bool onOff);
60  virtual bool on() const;
61 
64  virtual void setDataFromEmitterSystemEntry(const DtEmitterSystemEntry& entry);
65 
68  virtual void setSystemId(DtU8 id);
69  virtual DtU8 systemId() const;
70 
72  virtual void setSystemName(DtEmitterSysName nameEnum);
73  virtual DtEmitterSysName systemName() const;
74 
75  virtual void setSystemFunction(DtEmissionFunc functionEnum);
76  virtual DtEmissionFunc systemFunction() const;
77 
78  virtual void setMountLocation(const DtVector &location);
79  virtual DtVector mountLocation() const;
80 
82  virtual void setUseHighDensityTracking(bool useHdMode);
83  virtual bool useHighDensityTracking() const;
84 
86  virtual void setUseHighDensityJamming(bool useHdMode);
87  virtual bool useHighDensityJamming() const;
88 
91  virtual void addTrackTarget(const DtGlobalObjectDesignator &globalId);
92 
95  virtual void removeTrackTarget(const DtGlobalObjectDesignator &globalId);
96 
99  virtual void addJamTarget(const DtGlobalObjectDesignator &globalId);
100 
103  virtual void removeJamTarget(const DtGlobalObjectDesignator &globalId);
104 
106  virtual void clearTrackTargets();
107 
109  virtual void clearJamTargets();
110 
112  virtual void clearTrackJamTargets();
113 
116  virtual DtEmitterBeamRepository* addBeam(DtU8 id);
117 
119  virtual void removeBeam(DtU8 id);
120 
122  virtual void removeAllBeams();
123 
126  virtual DtEmitterBeamRepository* beam(DtU8 id = 0);
127 
129  virtual int numBeams() const;
130 
132  virtual DtList* beamList();
133 
134  virtual DtString radarMode() const;
135 
138  virtual void setRadarMode(DtString mode, const DtEmitterSystemEntry& entry);
139 
140  virtual const DtList* radarModeList(const DtEmitterSystemEntry& entry);
141 
142 protected:
144  virtual bool createPublisher();
145 
147  virtual bool initEmitterSystem();
148 
150  virtual void addTrackJamTarget(const DtGlobalObjectDesignator &globalId, const bool& isJamTarget);
151 
153  virtual void removeTrackJamTarget(const DtGlobalObjectDesignator &globalId, const bool& isJamTarget);
154 
156  virtual void clearTrackJamTargets(const bool& clearTracking, const bool& clearJamming);
157 
160  void purgeOffBeamList();
161 
162 protected:
163  DtEmitterSystemPublisher *myEmitterSysPublisher;
165  bool myOn;
169 
174 };
175 

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)