MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Protected Types | Protected Attributes | Private Member Functions
DtLatencyTest Class Referenceabstract

DtLatencyTest runs network latency tests between local RTI components. More...

+ Inheritance diagram for DtLatencyTest:
+ Collaboration diagram for DtLatencyTest:

Classes

struct  DtLatencyTestReportStruct
 Struct contains all report-worth details of a test. More...
 

Public Member Functions

 DtLatencyTest (DtTestManager *parent)
 Constructor. More...
 
 DtLatencyTest ()
 Default constructor. Not implemented. More...
 
virtual ~DtLatencyTest ()
 Destructor. More...
 
virtual bool tick ()
 Process test activities. More...
 
virtual void postJoinInit ()
 Perform initializations that will allow tests to be run (e.g., publish and subscribe to test interaction) More...
 
virtual void resign ()
 Perform clean up from test instrumentation. More...
 
virtual void addSendInteractionTimeStamp (unsigned int testID)=0
 called by testMgr More...
 
virtual void addNetSendTimeStamp (unsigned int testID, DtRtiMsg &msg)=0
 called by either test initiator or test recipient. More...
 
virtual void addNetReceiveTimeStamp (unsigned int testID, const DtRtiMsg &msg)=0
 called by either test initiator or test recipient. More...
 
virtual void addReceiveInteractionTimeStamp (unsigned int testID, MAKRti::DtTime timeToUse)=0
 called by either test initiator or test recipient. More...
 
virtual void addAsyncQueueMsgTimeStamp (unsigned int testID, const DtRtiMsg &msg)=0
 called by either test initiator or test recipient. More...
 
virtual void addTransportTypeForTestID (unsigned int testID, MAKRti::DtTransportType type)
 Add a mapping for this testID to this transport type. More...
 
virtual MAKRti::DtTransportType transportTypeForTestID (unsigned int testID) const
 look up the transport type for this testID. More...
 
virtual void removeKnowledgeOfTestId (unsigned int testID)
 Remove knowledge of this testID. More...
 
MAKRti::DtTime time () const
 

Protected Types

typedef std::multimap
< DtMetadataType,
MAKRti::DtTime > 
DtTimeStampMap
 
typedef std::map< unsigned int,
DtTimeStampMap
DtTestToTimeStampMap
 
typedef std::multimap
< DtFederateHandle, unsigned
int > 
DtFedHandleToTestMap
 

Protected Attributes

DtTestManagermyTestManager
 
DtTestToTimeStampMap myTestsInProgressTimeStamps
 TimeStamp storage (by testID) of all my known tests. More...
 
std::map< unsigned int,
MAKRti::DtTransportType > 
myTransportByTestID
 

Private Member Functions

 DtLatencyTest (DtLatencyTest const &orig)
 Copy Constructor - not allowed. More...
 
DtLatencyTestoperator= (DtLatencyTest const &orig)
 Assignment operator - not allowed. More...
 

Detailed Description

DtLatencyTest runs network latency tests between local RTI components.

Member Typedef Documentation

typedef std::multimap<DtFederateHandle, unsigned int> DtLatencyTest::DtFedHandleToTestMap
protected
typedef std::map<unsigned int, DtTimeStampMap > DtLatencyTest::DtTestToTimeStampMap
protected
typedef std::multimap<DtMetadataType, MAKRti::DtTime> DtLatencyTest::DtTimeStampMap
protected

Constructor & Destructor Documentation

DtLatencyTest::DtLatencyTest ( DtTestManager parent)

Constructor.

DtLatencyTest::DtLatencyTest ( )

Default constructor. Not implemented.

virtual DtLatencyTest::~DtLatencyTest ( )
virtual

Destructor.

DtLatencyTest::DtLatencyTest ( DtLatencyTest const &  orig)
private

Copy Constructor - not allowed.

Member Function Documentation

virtual void DtLatencyTest::addAsyncQueueMsgTimeStamp ( unsigned int  testID,
const DtRtiMsg msg 
)
pure virtual

called by either test initiator or test recipient.

Record the current time and associate it with the input test ID in myTestsInProgressTimeStamp with a async Queue Msg time stamp.

Implemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

virtual void DtLatencyTest::addNetReceiveTimeStamp ( unsigned int  testID,
const DtRtiMsg msg 
)
pure virtual

called by either test initiator or test recipient.

Record the current time and associate it with the input test ID in myTestsInProgressTimeStamp with a net receive metadata type.

Implemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

virtual void DtLatencyTest::addNetSendTimeStamp ( unsigned int  testID,
DtRtiMsg msg 
)
pure virtual

called by either test initiator or test recipient.

Record the current time and associate it with the input test ID in myTestsInProgressTimeStamp with a net send metadata type.

Implemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

virtual void DtLatencyTest::addReceiveInteractionTimeStamp ( unsigned int  testID,
MAKRti::DtTime  timeToUse 
)
pure virtual

called by either test initiator or test recipient.

Record the current time and associate it with the input test ID in myTestsInProgressTimeStamp with a receive Interaction metadata type.

Implemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

virtual void DtLatencyTest::addSendInteractionTimeStamp ( unsigned int  testID)
pure virtual

called by testMgr

called by either test initiator or test recipient. Record the current time and associate it with the input test ID in myTestsInProgressTimeStamp with a send Interaction metadata type.

Implemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

virtual void DtLatencyTest::addTransportTypeForTestID ( unsigned int  testID,
MAKRti::DtTransportType  type 
)
virtual

Add a mapping for this testID to this transport type.

DtLatencyTest& DtLatencyTest::operator= ( DtLatencyTest const &  orig)
private

Assignment operator - not allowed.

virtual void DtLatencyTest::postJoinInit ( )
virtual

Perform initializations that will allow tests to be run (e.g., publish and subscribe to test interaction)

virtual void DtLatencyTest::removeKnowledgeOfTestId ( unsigned int  testID)
virtual

Remove knowledge of this testID.

Typically called when we're stored time stamps for a received message and then later determined it was not addressed to us.

virtual void DtLatencyTest::resign ( )
virtual

Perform clean up from test instrumentation.

virtual bool DtLatencyTest::tick ( )
virtual

Process test activities.

Reimplemented in DtInitiatorLatencyTest, and DtRecipientLatencyTest.

MAKRti::DtTime DtLatencyTest::time ( ) const
virtual MAKRti::DtTransportType DtLatencyTest::transportTypeForTestID ( unsigned int  testID) const
virtual

look up the transport type for this testID.

Member Data Documentation

DtTestManager* DtLatencyTest::myTestManager
protected
DtTestToTimeStampMap DtLatencyTest::myTestsInProgressTimeStamps
protected

TimeStamp storage (by testID) of all my known tests.

Tests are removed by the test recipient on netSend and by the test initiator on receiveInteraction.

std::map<unsigned int, MAKRti::DtTransportType> DtLatencyTest::myTransportByTestID
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Thu May 11 15:55:32 EDT 2023 from SVN revision 254743
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)