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);
103 virtual const rti1516::LogicalTime& timestamp();
104 virtual void setTimestamp(
const rti1516::LogicalTime& federateTime);
107 virtual const rti1516::LogicalTimeInterval& lookahead();
108 virtual void setLookahead(
const rti1516::LogicalTimeInterval& lookaheadValue);
114 virtual const rti1516::LogicalTime& galt();
115 virtual void setGalt(
const rti1516::LogicalTime& federateTime);
117 #elif defined(DtIFSPEC1516E)
134 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();
174 virtual DtRtiMsg* nextMsg(
const rti1516::LogicalTime& timestamp);
177 virtual DtRtiMsg* nextTsoMsg(
const rti1516::LogicalTime& timestamp);
178 #elif defined(DtIFSPEC1516E)
186 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)
313 const rti1516::LogicalTime& federateTime)
314 #elif defined(DtIFSPEC1516E)
321 *myTime = federateTime;
326 #elif defined(DtIFSPEC1516E)
337 const rti1516::LogicalTimeInterval& lookaheadValue)
338 #elif defined(DtIFSPEC1516E)
345 *myLookahead = lookaheadValue;
350 #elif defined(DtIFSPEC1516E)
361 #elif defined(DtIFSPEC1516E)
367 *myGalt = federateTime;