VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
radioTransmitterPublisherDIS.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #ifndef radioTransmitterPublisherDIS_H_
11 #define radioTransmitterPublisherDIS_H_
12 
13 #if DtDIS
14 
15 
16 #include "pdu.h"
17 #include "objectPublisherDIS.h"
21 #include <vlutil/vlPrint.h>
22 
23 
30 {
31  public:
32 
35  typedef DtRadioTransmitterRepository* (*DtStateRepCreator)();
36 
37 public:
38 
41  DtRadioTransmitterRepository* stateRepToUse,
42  DtExerciseConn* conn,
43  const DtObjectId& entityId = DtObjectId::defaultId());
44 
47  DtExerciseConn* conn,
48  const DtObjectId& entityId = DtObjectId::defaultId(),
49  int radioId = 1);
50 
52  virtual ~DtRadioTransmitterPublisher();
53 
59  virtual bool tick();
60 
63  virtual DtRadioTransmitterRepository* radioXmitRep();
64 
66  virtual DtRadioTransmitterRepository* tsr();
67 
71  virtual DtRadioTransmitterDecoder* decoder();
72 
75  virtual DtRadioTransmitterEncoder* encoder();
76 
78  virtual const DtObjectId& id() const;
79 
81  virtual const DtObjectId& localId() const;
82 
84  virtual const DtGlobalObjectDesignator& globalId() const;
85 
87  virtual int radioId() const;
88 
92  virtual void sendFinalPduOnDestruction(bool onOff);
93 
96  virtual void forceUpdate();
97 
99  virtual void setHeartbeatMoveTimer(DtTime time);
100 
102  virtual DtTime heartbeatMoveTimer() const;
103 
105  virtual DtTime transmitterTimeThreshold() const;
106 
112  virtual void setAntennaLocationThreshold(double threshold);
113 
119  virtual double antennaLocationThreshold() const;
120 
125  virtual void setAntennaOrientationThreshold(double threshold);
126 
132  virtual double antennaOrientationThreshold() const;
133 
134 public:
135 
137  static void setStateRepCreator(DtStateRepCreator creator);
138  static DtStateRepCreator stateRepCreator(void);
139 
142  static void setUseMovingThresholdFlag(bool flag);
143 
146  static bool useMovingThresholdFlag();
147 
148  static void setClassDfltTimeThreshold(DtTime threshold);
149 
150 protected:
151 
153  void sendFinalPdu();
154 
156  void init(const DtEntityIdentifier& vehId);
157 
160 
162  DtRadioTransmitterPublisher& operator=
163  (const DtRadioTransmitterPublisher& orig);
164 
165 protected:
166 
172 
173 protected:
174  static DtStateRepCreator theStateRepCreator;
178 };
179 
180 
182 {
183  return static_cast<DtRadioTransmitterRepository*>(myStateRep);
184 }
185 
186 #endif
187 #endif
188 
DtStateRepository * myStateRep
Definition: objectPublisherDIS.h:193
DtRadioTransmitterEncoder * myEncoder
Definition: radioTransmitterPublisherDIS.h:169
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
static bool theClassDfltIsSetFlag
Definition: radioTransmitterPublisherDIS.h:177
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
static const DtEntityIdentifier & defaultId()
Returns a reference to an instance of -1:-1:-1.
This file contains the declaration of the class DtRadioTransmitterEncoder.
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherDIS.h:36
Functions in vlPrint.h provide an error and print facility for vrlink.
virtual void forceUpdate()=0
For publisher to send PDU on next tick.
This class handles encoding of Transmitter PDUs.
Definition: radioTransmitterEncoderDIS.h:25
virtual const DtObjectId & id() const =0
The id is the same as the globalId, a DtEntityIdentifier unique to this object.
Instances of the class DtRadioTransmitterDecoder decode Radio Transmitter PDU&#39;s into DtRadioTransmitt...
Definition: radioTransmitterDecoderDIS.h:21
bool mySendFinalInDtor
Definition: radioTransmitterPublisherDIS.h:170
static bool theUseMovingThresholdFlag
Definition: radioTransmitterPublisherDIS.h:175
DtTime myHeartbeatMoveTimer
Definition: radioTransmitterPublisherDIS.h:171
Instances of DtRadioTransmitterRepository are used to store state information for objects which are r...
Definition: radioTransmitterRepository.h:29
virtual const DtGlobalObjectDesignator & globalId() const =0
The entityIdentifier unique to this object.
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
DtObjectId myId
Definition: radioTransmitterPublisherDIS.h:167
DtRadioTransmitterDecoder * myDecoder
Definition: radioTransmitterPublisherDIS.h:168
This class declares the DIS version of DtObjectPublisher.
static DtStateRepCreator theStateRepCreator
Definition: radioTransmitterPublisherDIS.h:174
Instances of DtRadioTransmitterPublisher are used for local or source simulations of radio transmitte...
Definition: radioTransmitterPublisherDIS.h:29
virtual bool tick()=0
Tick (update) this object.
static DtTime theClassDfltTimeThreshold
Definition: radioTransmitterPublisherDIS.h:176
virtual const DtObjectId & localId() const =0
The localId is the same as the globalId, a DtEntityIdentifier unique to this object.
virtual DtRadioTransmitterRepository * tsr()
Synonym for environmentProcessStateRep()
Definition: radioTransmitterPublisherDIS.h:181

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)