17 #include <vl/rtiCompatibility.h>
18 #include <vl/aggregatePublisherHLA.h>
20 class DtBaseEntityStateRepository;
25 class DtLgrHlaAggregateStateRepository;
29 class DT_DLL_LGRSIM DtLgrHlaAggregatePublisher :
public DtAggregatePublisher,
30 public DtLgrPublisherInterface
38 (DtLgrHlaSimulationManager& simMgr,
39 DtLgrHlaHandle loggerObjectId, DtLgrHlaHandle loggerClassHandle,
40 RTI::ObjectClassHandle classHandle,
41 const char* objName,
const DtDDMRegionSet* regionSetToUse,
42 double hbtime,
bool waitForRegionData,
bool stat),
43 (DtLgrHlaSimulationManager& simMgr,
44 DtLgrHlaHandle loggerObjectId, DtLgrHlaHandle loggerClassHandle,
45 RTI::ObjectClassHandle classHandle,
46 const char* objName,
const DtDDMRegionSet* regionSetToUse,
47 double hbtime=0.0,
bool waitForRegionData=
false,
bool stat=
true))
50 virtual ~DtLgrHlaAggregatePublisher();
53 virtual
void update(const DtStateMsg& msg, const
DtAbsoluteTime& updateTime,
54 bool isTimeFromPast,
bool isStateUpdate,
double scaling,
bool isStatic,
bool sendFlag);
57 virtual DtObjectPublisher* objPublisher();
60 virtual
void tick(
double scale,
bool isStatic);
64 virtual
void sendUpdateAtScaleChangePoint(
double oldScale,
double newScale,
bool wasStatic,
bool isStatic);
66 virtual
void setRegion(const DtDDMRegionSet& region);
69 virtual const DtDDMRegionSet& publishingRegions() const;
71 virtual
bool publishingToRegion( DtDDMRegionSP region );
76 virtual DtHlaObjectWithStateRep* pubHlaObject();
80 virtual
void sendRequestedAttrs(
double scale,
bool isStatic);
84 virtual
void setPauseUpdateAttributes(
double &scale);
88 virtual
void generateScaledUpdate(const RTI::AttributeHandleSet& attrs,
double scale,
bool isStatic, DtStateMsg& msg);
92 virtual
void sendTheseAttrs(const RTI::AttributeHandleSet& attrs,
double scale,
bool isStatic);
94 virtual
void send(DtStateMsg& msg);
97 DtLgrHlaAggregatePublisher(const DtLgrHlaAggregatePublisher &other);
100 DtLgrHlaAggregatePublisher &operator=(const DtLgrHlaAggregatePublisher &other);
105 RTI::AttributeHandleSet* myAttrsToSend;
108 DtBaseEntityStateRepository* mySeenByAttrs;
111 DtLgrHlaAggregateStateRepository* myLgrAsr;
113 DtDeadReckoner* myDeadReckoner;
115 double myLastTimeScale;
119 bool myFrozenBeforePause;
123 bool myUnpausedOnThisSend;
125 DtDeadReckonTypes myOldDRType;
126 bool myDRTypeChanged;
128 double myHeartbeatInterval;
129 double myLastHeartbeatTime;
131 DtVector32 myLastUpdateVelocity;
132 DtVector32 myLastUpdateAcceleration;
133 DtVector32 myLastUpdateRotVel;
134 DtTaitBryan myLastUpdateOrientation;
135 DtVector myLastUpdateLocation;
#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...
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22