13 #ifndef DtNerLbtsMsg_H_
14 #define DtNerLbtsMsg_H_
23 typedef void (*DtNerLbtsMsgCb)(
const DtNerLbtsMsg& msg,
void* usr);
30 DtNerLbtsMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
34 unsigned long nerCycleVal,
39 rti1516::LogicalTime
const & lbtsVal,
40 rti1516::LogicalTime
const & lagLbtsVal,
41 #elif defined(DtIFSPEC1516E)
42 rti1516e::LogicalTime
const & lbtsVal,
43 rti1516e::LogicalTime
const & lagLbtsVal,
45 RTI::FedTime
const & lbtsVal,
46 RTI::FedTime
const & lagLbtsVal,
48 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
51 DtNerLbtsMsg(
const DtNetNerLbts* netRepMsg,
52 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
55 virtual ~DtNerLbtsMsg();
62 unsigned long nerCycleVal,
67 rti1516::LogicalTime
const & lbtsVal,
68 rti1516::LogicalTime
const & lagLbtsVal);
69 #elif defined(DtIFSPEC1516E)
70 rti1516e::LogicalTime
const & lbtsVal,
71 rti1516e::LogicalTime
const & lagLbtsVal);
73 RTI::FedTime
const & lbtsVal,
74 RTI::FedTime
const & lagLbtsVal);
78 virtual void setNerCycle(
unsigned long nerCycleVal);
79 virtual unsigned long nerCycle()
const;
86 virtual void setIsNerPending(
bool nerAvailable);
87 virtual bool isNerPending()
const;
90 virtual void setIsLagNerPending(
bool nerAvailable);
91 virtual bool isLagNerPending()
const;
95 virtual void setTime(rti1516::LogicalTime
const & timeVal);
96 virtual rti1516::LogicalTime
const *
time(
98 #elif defined(DtIFSPEC1516E)
99 virtual void setTime(rti1516e::LogicalTime
const & timeVal);
100 virtual rti1516e::LogicalTime
const *
time(
103 virtual void setTime(RTI::FedTime
const & timeVal);
104 virtual RTI::FedTime
const *
time(
110 virtual void setLagLbts(rti1516::LogicalTime
const & lbtsVal);
111 virtual rti1516::LogicalTime
const * lagLbts(
113 #elif defined(DtIFSPEC1516E)
114 virtual void setLagLbts(rti1516e::LogicalTime
const & lbtsVal);
115 virtual rti1516e::LogicalTime
const * lagLbts(
118 virtual void setLagLbts(RTI::FedTime
const & lbtsVal);
119 virtual RTI::FedTime
const * lagLbts(
129 static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
133 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
137 DtNerLbtsMsgCb cb,
void *usr);
139 DtNerLbtsMsgCb cb,
void *usr);
147 virtual DtNetNerLbts* netNerLbtsMsg();
148 virtual const DtNetNerLbts* netNerLbtsMsg()
const;
152 virtual int minSize(rti1516::LogicalTime
const * lbtsVal=
NULL,
153 rti1516::LogicalTime
const * lagLbtsVal=
NULL)
const;
154 #elif defined(DtIFSPEC1516E)
155 virtual int minSize(rti1516e::LogicalTime
const * lbtsVal=
NULL,
156 rti1516e::LogicalTime
const * lagLbtsVal=
NULL)
const;
158 virtual int minSize(RTI::FedTime
const * lbtsVal=
NULL,
159 RTI::FedTime
const * lagLbtsVal=
NULL)
const;
163 virtual void setTimeSize(
int size);
164 virtual int timeSize()
const;
167 virtual char* timePtr();
170 virtual void setLagLbtsSize(
int size);
171 virtual int lagLbtsSize()
const;
174 virtual char* lagLbtsPtr();
177 virtual int timeFieldSize()
const;
180 virtual int lagLbtsFieldSize()
const;
183 virtual DtNerLbtsMsg*
self()
const;
188 rti1516::LogicalTime* myLagLbts;
189 #elif defined(DtIFSPEC1516E)
190 rti1516e::LogicalTime* myLagLbts;
192 RTI::FedTime* myLagLbts;
196 inline DtNerLbtsMsg* DtNerLbtsMsg::self()
const
198 return const_cast<DtNerLbtsMsg*
>( this );
DtRtiMsgKind
Definition: rtiMsgKind.h:9
!DtIFSPEC1516
Definition: fedTimeFactory.h:190
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
#define NULL
Definition: baseTypes13.h:8
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:60
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:45
DtHandle DtFederateHandle
Definition: internalTypes.h:29
virtual RTI::FedTime const * time(DtLogicalTimeFactory *fedTimeFactory) const
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
virtual void setTime(const RTI::FedTime &time)
Set/Get time Used in timestamped messages.
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126