16 #include <vl/objectPublisherHLA.h>
17 #include <vl/rtiCompatibility.h>
21 class DtStateRepository;
26 class DtLgrHlaSimulationManager;
30 class DT_DLL_LGRSIM DtHLAGenericPublisher :
public DtObjectPublisher ,
31 public DtLgrPublisherInterface
39 (DtLgrHlaSimulationManager& simMgr,
40 DtLgrHlaHandle loggerObjectId, DtLgrHlaHandle loggerClassHandle,
41 RTI::ObjectClassHandle classHandle,
42 const char* objName,
const DtDDMRegionSet* regionSetToUse,
43 double hbtime,
bool waitForRegionData,
bool staticRegion,
bool immediatePublish),
44 (DtLgrHlaSimulationManager& simMgr,
45 DtLgrHlaHandle loggerObjectId, DtLgrHlaHandle loggerClassHandle,
46 RTI::ObjectClassHandle classHandle,
47 const char* objName,
const DtDDMRegionSet* regionSetToUse,
48 double hbtime=0.0,
bool waitForRegionData=
false,
49 bool staticRegion=
true,
bool immediatePublish=
true))
52 virtual ~DtHLAGenericPublisher();
57 DtHLAGenericPublisher(const DtHLAGenericPublisher &other);
60 DtHLAGenericPublisher &operator=(const DtHLAGenericPublisher &other);
66 virtual DtStateRepository* genericStateRep();
69 virtual DtStateRepository* gsr();
72 virtual
void update(const DtStateMsg& msg, const
DtAbsoluteTime& updateTime,
73 bool isTimeFromPast,
bool isStateUpdate,
double scaling,
bool isStatic,
bool sendFlag=true);
76 virtual DtObjectPublisher* objPublisher();
79 virtual
void tick(
double scaling,
bool isStatic);
86 virtual
void setPublish(
bool makePublished);
89 virtual
bool isPublished();
93 virtual
void sendRequestedAttrs(
double scaling,
bool isStatic);
96 virtual
void send(const DtStateMsg& msg);
100 virtual
void sendUpdateAtScaleChangePoint(
double oldScale,
double newScale,
bool wasStatic,
bool isStatic);
103 virtual
void setRegion(const DtDDMRegionSet& region);
106 virtual const DtDDMRegionSet& publishingRegions() const;
109 virtual
bool publishingToRegion( DtDDMRegionSP region );
114 virtual DtHlaObjectWithStateRep* pubHlaObject();
117 virtual
void sendTheseAttrs(const RTI::AttributeHandleSet& attrs,
double scaling,
bool isStatic );
121 virtual
bool makeObjectPublished(RTI::ObjectClassHandle classHandle, const
char* objName);
124 virtual
void makeObjectUnpublished(RTI::ObjectClassHandle classHandle, const
char* objName);
133 double myHeartbeatInterval;
136 double myLastHeartbeatTime;
139 RTI::AttributeHandleSet* myAttrsToSend;
#define DT_VIRTUAL_CTR_DEFAULTS(CLASS_NAME, ARG_TYPES_LIST, ARG_DEFAULTS_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR_DEFAULTS(CLASS_NAME,ARG_TYPES_LIST,ARG_DEFAULTS_LIST) Where CLASS_NAME = the name of the class being declared Where ARG_TYPES_LIST = a list (ie in side parentheses) of comma seperated types Where ARG_DEFAULTS_LIST = a list (ie in side parentheses) of comma seperated types with default values specified.
Definition: virtualConstructor.h:63
#define DT_DLL_LGRSIM
Definition: lgrSim.h:21
Contains MAKLogger::DtLgrPublisherInterface class.
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22