VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
emitterSystemPublisherDIS.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
10 
11 #ifndef DtDisEmitterSystemPublisher_H_
12 #define DtDisEmitterSystemPublisher_H_
13 
14 #if DtDIS
15 
16 
17 #include "objectPublisherDIS.h"
21 
22 
27 {
28 public:
29 
31  typedef DtEmitterSystemRepository* (*DtStateRepCreator)();
32 
33 public:
34 
38  DtEmitterSystemRepository* stateRepToUse,
39  DtExerciseConn* conn,
40  const DtObjectId& id = DtObjectId::defaultId());
41 
45  DtExerciseConn* conn,
46  const DtObjectId& id = DtObjectId::defaultId());
47 
51  DtExerciseConn* conn,
52  const char* name,
53  const DtObjectId& id = DtObjectId::defaultId());
54 
56  virtual ~DtEmitterSystemPublisher();
57 
58 
60  virtual void forceUpdate();
61 
63  virtual void tick();
64 
66  virtual DtEmitterSystemRepository* emitterSystemStateRep();
67  virtual DtEmitterSystemRepository* esr();
68 
70  virtual const DtObjectId& id() const;
71 
72  virtual const DtObjectId& localId() const;
73 
75  virtual const DtGlobalObjectDesignator& globalId() const;
76 
79  virtual void setBeamAzimuthThreshold(double threshold);
80 
82  virtual double beamAzimuthThreshold() const;
83 
86  virtual void setBeamElevationThreshold(double threshold);
87 
88 
90  virtual double beamElevationThreshold() const;
91 
93  void sendFinalPdu();
94 
95 public:
96 
98  static void setStateRepCreator(DtStateRepCreator creator);
99  static DtStateRepCreator stateRepCreator(void);
100 
101  static void setClassDfltTimeThreshold(DtTime threshold);
102 
103 protected:
104 
106  void init( const char* name,
107  const DtEntityIdentifier& id);
108 
111 
114 
115 protected:
116 
121 
122 
123 protected:
124  static DtStateRepCreator theStateRepCreator;
127  char *myName;
128 };
129 
131 {
132  return static_cast<DtEmitterSystemRepository*>(myStateRep);
133 }
134 
135 #endif
136 #endif
137 
DtStateRepository * myStateRep
Definition: objectPublisherDIS.h:176
Instances of DtEmitterSystemStateDecoder are used to take state information from an emission state PD...
Definition: emitterSystemStateDecoder.h:31
static bool theClassDfltIsSetFlag
Definition: emitterSystemPublisherDIS.h:126
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
static const DtEntityIdentifier & defaultId()
Returns a reference to an instance of -1:-1:-1.
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherDIS.h:36
virtual void forceUpdate()=0
For publisher to send PDU on next tick.
static DtStateRepCreator theStateRepCreator
Definition: emitterSystemPublisherDIS.h:124
DtEmitterSystemStateDecoder * myEmitterSystemDecoder
Definition: emitterSystemPublisherDIS.h:118
virtual const DtObjectId & id() const =0
The id is the same as the globalId, a DtEntityIdentifier unique to this object.
static DtTime theClassDfltTimeThreshold
Definition: emitterSystemPublisherDIS.h:125
char * myName
Definition: emitterSystemPublisherDIS.h:127
DtObjectId myId
Definition: emitterSystemPublisherDIS.h:117
This file declares the DIS version of DtEmitterSystemStateDecoder.
Contains the DtEmitterSystemStateEncoder class declaration.
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
DtObjectPublisher & operator=(const DtObjectPublisher &orig)
assignment operator – not implemented
DtEmitterSystemStateEncoder * myEmitterSystemEncoder
Definition: emitterSystemPublisherDIS.h:119
bool mySendFinalInDtor
Definition: emitterSystemPublisherDIS.h:120
Instances of DtEmitterSystemRepository are used to store state data for emitter systems in both HLA a...
Definition: emitterSystemRepository.h:29
This class declares the DIS version of DtObjectPublisher.
Instances of DtEmitterSystemPublisher are used to take care of the details associated with publishing...
Definition: emitterSystemPublisherDIS.h:26
virtual void tick()=0
Tick (update) this object.
virtual const DtObjectId & localId() const =0
The localId is the same as the globalId, a DtEntityIdentifier unique to this object.
Instances of DtEmitterSystemStateEncoder are used to take state information from a DtEmitterSystemRep...
Definition: emitterSystemStateEncoder.h:21
virtual DtEmitterSystemRepository * esr()
Definition: emitterSystemPublisherDIS.h:130

Document ID: Generated on Tue Aug 10 00:12:31 EDT 2021 from SVN revision 232765
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)