12 #ifndef DtRtiMsgQueue_H_
13 #define DtRtiMsgQueue_H_
17 #include <vlutil/vlHashlist.h>
21 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
90 virtual bool timeRegulating();
91 virtual void setTimeRegulating(
bool isTimeRegulating);
92 virtual bool timeConstrained();
93 virtual void setTimeConstrained(
bool isTimeConstrained);
94 virtual bool asynchronous();
95 virtual void setAsynchronous(
bool isAsynchronous);
96 virtual bool timeAvailable();
97 virtual void setTimeAvailable(
bool isTimeAvailable);
98 virtual bool timeAdvancing();
99 virtual void setTimeAdvancing(
bool isTimeAdvancing);
117 #elif defined(DtIFSPEC1516E)
118 virtual const rti1516e::LogicalTime& timestamp();
120 virtual void setTimestamp(
const rti1516e::LogicalTime& federateTime);
123 virtual const rti1516e::LogicalTimeInterval& lookahead();
124 virtual void setLookahead(
const rti1516e::LogicalTimeInterval& lookaheadValue);
130 virtual const rti1516e::LogicalTime& galt();
131 virtual void setGalt(
const rti1516e::LogicalTime& federateTime);
133 virtual const RTI::FedTime& timestamp();
135 virtual void setTimestamp(
const RTI::FedTime& federateTime);
138 virtual const RTI::FedTime& lookahead();
139 virtual void setLookahead(
const RTI::FedTime& lookaheadValue);
145 virtual const RTI::FedTime& galt();
146 virtual void setGalt(
const RTI::FedTime& federateTime);
154 virtual bool queueMsg(
DtRtiMsg const& msg);
157 virtual void restoreMsg(
DtRtiMsg const& msg);
170 virtual void deleteAll();
178 #elif defined(DtIFSPEC1516E)
179 virtual DtRtiMsg* nextMsg(
const rti1516e::LogicalTime& timestamp);
183 virtual DtRtiMsg* nextTsoMsg(
const rti1516e::LogicalTime& timestamp);
185 virtual DtRtiMsg* nextMsg(
const RTI::FedTime& timestamp);
189 virtual DtRtiMsg* nextTsoMsg(
const RTI::FedTime& timestamp);
193 virtual DtRtiMsg* removeNextTsoMsg();
199 inline unsigned int roQueueLength()
const;
202 virtual void clean();
205 virtual bool isDirty()
const;
221 virtual int evaluateSubscription(
DtRtiMsg const& msg);
236 std::auto_ptr <rti1516::LogicalTime> myTime;
237 std::auto_ptr <rti1516::LogicalTimeInterval> myLookahead;
238 std::auto_ptr <rti1516::LogicalTime> myGalt;
239 #elif defined(DtIFSPEC1516E)
240 std::auto_ptr <rti1516e::LogicalTime> myTime;
241 std::auto_ptr <rti1516e::LogicalTimeInterval> myLookahead;
242 std::auto_ptr <rti1516e::LogicalTime> myGalt;
302 #elif defined(DtIFSPEC1516E)
314 #elif defined(DtIFSPEC1516E)
316 const rti1516e::LogicalTime& federateTime)
321 *myTime = federateTime;
326 #elif defined(DtIFSPEC1516E)
338 #elif defined(DtIFSPEC1516E)
340 const rti1516e::LogicalTimeInterval& lookaheadValue)
345 *myLookahead = lookaheadValue;
350 #elif defined(DtIFSPEC1516E)
361 #elif defined(DtIFSPEC1516E)
367 *myGalt = federateTime;
bool myTimeAvailable
Definition: msgQueue.h:229
bool myIsDirty
Definition: msgQueue.h:231
virtual void setTimeConstrained(bool isTimeConstrained)
Definition: msgQueue.h:265
virtual bool timeRegulating()
Set/Get status of time regulation/constraint.
Definition: msgQueue.h:250
virtual bool operator<(const DtSortedListItem &) const
Sorted list for queueing messages in time stamped order.
Definition: msgQueue.h:81
DtInteractionMgr * myIntMgr
Definition: msgQueue.h:234
std::auto_ptr< RTI::FedTime > myGalt
Definition: msgQueue.h:246
bool myTimeRegulatingEnabled
Definition: msgQueue.h:227
unsigned int roQueueLength() const
Return the RO queue length.
Definition: msgQueue.h:370
!DtIFSPEC1516
Definition: fedTimeFactory.h:190
virtual bool timeAdvancing()
Definition: msgQueue.h:290
std::auto_ptr< RTI::FedTime > myLookahead
Definition: msgQueue.h:245
virtual void setTimeAdvancing(bool isTimeAdvancing)
Definition: msgQueue.h:295
virtual void printData()
Print data contents.
virtual DtSortedListItem * newItem(void *data)
Create a new sorted list item envelope for the data to be inserted into the list. ...
virtual bool timeAvailable()
Definition: msgQueue.h:280
DtObjectMgr * myObjMgr
Definition: msgQueue.h:233
virtual bool asynchronous()
Definition: msgQueue.h:270
virtual void setTimeRegulating(bool isTimeRegulating)
Definition: msgQueue.h:255
DtSortedListItem is an envelope class used by DtSortedList.
Definition: sortedList.h:24
virtual void setTimestamp(const RTI::FedTime &federateTime)
Definition: msgQueue.h:318
virtual bool operator==(const DtSortedListItem &) const
virtual void setGalt(const RTI::FedTime &federateTime)
Definition: msgQueue.h:364
MAKRti::DtList myRoList
Definition: msgQueue.h:225
Envelope used by DtMsgQueue to contain the messsage inserted into it.
Definition: msgQueue.h:40
Instances of DtInteractionMgr manage the sending and receiving of interactions.
Definition: interMgr.h:45
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:45
DtHandle DtFederateHandle
Definition: internalTypes.h:29
virtual DtSortedListItem * add(void *data)
Add element to the list in sorted order.
virtual bool timeConstrained()
Definition: msgQueue.h:260
bool myAsynchronous
Definition: msgQueue.h:228
virtual const RTI::FedTime & timestamp()
Set/Get current federate time.
Definition: msgQueue.h:305
virtual const RTI::FedTime & lookahead()
Set/Get current federate lookahead.
Definition: msgQueue.h:329
DtSortedList & operator=(const DtSortedList &orig)
Assignment operator.
Definition: LogicalTimeInterval.h:27
virtual const RTI::FedTime & galt()
Set/Get greatest allowed logical time When in the time advancing state messages with timestamps less ...
Definition: msgQueue.h:353
The object manager class processes the object management services.
Definition: objMgr.h:90
virtual void setTimeAvailable(bool isTimeAvailable)
Definition: msgQueue.h:285
bool myTimeConstrainedEnabled
Definition: msgQueue.h:226
Definition: internalTypes.h:63
virtual bool operator>(const DtSortedListItem &) const
virtual DtRtiMsg * msg()
Return pointer to data as a message.
Definition: msgQueue.h:74
DtLogicalTimeFactory * myLogicalTimeFactory
Definition: msgQueue.h:232
virtual bool operator<=(const DtSortedListItem &) const
Comparison operators for sorting.
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126
Definition: LogicalTime.h:27
std::auto_ptr< RTI::FedTime > myTime
Definition: msgQueue.h:244
DtRtiMsg * myMsg
Definition: msgQueue.h:70
The declaration of internal types.
bool myTimeAdvancing
Definition: msgQueue.h:230
DtLogicalTimeFactory * myLogicalTimeFactory
Definition: msgQueue.h:71
A DtSortedList is a list of elements of arbitrary type.
Definition: sortedList.h:98
virtual bool operator>=(const DtSortedListItem &) const
virtual void setLookahead(const RTI::FedTime &lookaheadValue)
Definition: msgQueue.h:342
virtual void setAsynchronous(bool isAsynchronous)
Definition: msgQueue.h:275