MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
averagedLatencyTestReport.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2008 VT MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: averagedLatencyTestReport.h,v $ $Revision: 1.6 $ $State: Exp $
7 *******************************************************************************/
8 
13 
14 #ifndef DtAveragedLatencyTestReport_H_
15 #define DtAveragedLatencyTestReport_H_
16 
17 #include "rtiMsConfig.h"
18 #include <vlutil/vlString.h>
19 #include <queue>
20 #include "RIDparams.h"
21 
22 typedef int encodedTimeType;
23 
24 
26 {
41 
43 };
47 
49 {
50 public:
51 
53 
55 
57  virtual void decodeFromMsg( const unsigned char* data, unsigned int size );
58 
60  virtual void encodeToMsg( unsigned char* destPtr ) const;
61 
63  virtual unsigned int sizeRequiredToDecode() const;
64 
66  void getProcessingModel( DtRIDParameters::DtAsynchronousIOModeEnum& initiator,
68 
70  virtual void setInitiatorProcessingModel( DtRIDParameters::DtAsynchronousIOModeEnum initModel );
71 
73  virtual void setRecipientProcessingModel( DtRIDParameters::DtAsynchronousIOModeEnum recipModel );
74 
76  virtual unsigned int federationHandle() const;
77  virtual void setFederationHandle( unsigned int num );
78 
80  virtual unsigned int initiatorFedHandle() const;
81  virtual void setInitiatorFedHandle( unsigned int num );
82 
84  virtual unsigned int recipientFedHandle() const;
85  virtual void setRecipientFedHandle( unsigned int num );
86 
88  virtual void initiatorFedName( MAKRti::DtString& name ) const;
89  virtual void setInitiatorFedName( const MAKRti::DtString& name );
90 
92  virtual void recipientFedName( MAKRti::DtString& name ) const;
93  virtual void setRecipientFedName( const MAKRti::DtString& name );
94 
96  virtual unsigned int numCompletedBestEffortInteractions() const;
97  virtual void setNumCompletedBestEffortInteractions( unsigned int num );
98 
100  virtual unsigned int numCompletedReliableInteractions() const;
101  virtual void setNumCompletedReliableInteractions( unsigned int num );
102 
104  virtual unsigned int numDroppedBestEffortInteractions() const;
105  virtual void setNumDroppedBestEffortInteractions( unsigned int num );
106 
108  virtual unsigned int numDroppedReliableInteractions() const;
109  virtual void setNumDroppedReliableInteractions( unsigned int num );
110 
112  virtual unsigned int averageInitiatorTickTimeUsecs() const;
113  virtual void setAverageInitiatorTickTimeUsecs(unsigned int time );
114 
116  virtual unsigned int averageRecipientTickTimeUsecs() const;
117  virtual void setAverageRecipientTickTimeUsecs(unsigned int time);
118 
120  virtual unsigned int averageBestEffortRoundTripTime() const;
121  virtual void setAverageBestEffortRoundTripTime( unsigned int num );
122 
124  virtual unsigned int averageReliableRoundTripTime() const;
125  virtual void setAverageReliableRoundTripTime( unsigned int num );
126 
128  virtual void setAverageBestEffortInitiatorSendInteractionUSecs( encodedTimeType microSeconds );
129  virtual encodedTimeType averageBestEffortInitiatorSendInteractionUSecs() const;
130 
132  virtual void setAverageReliableInitiatorSendInteractionUSecs( encodedTimeType microSeconds );
133  virtual encodedTimeType averageReliableInitiatorSendInteractionUSecs() const;
134 
136  virtual void setAverageBestEffortRecipientMsgQueuedUsecs( encodedTimeType microSeconds );
137  virtual encodedTimeType averageBestEffortRecipientMsgQueuedUsecs() const;
138 
140  virtual void setAverageReliableRecipientMsgQueuedUsecs( encodedTimeType microSeconds );
141  virtual encodedTimeType averageReliableRecipientMsgQueuedUsecs() const;
142 
144  virtual void setAverageBestEffortRecipientReceiveInteractionUSecs( encodedTimeType microSeconds );
145  virtual encodedTimeType averageBestEffortRecipientReceiveInteractionUSecs() const;
146 
148  virtual void setAverageReliableRecipientReceiveInteractionUSecs( encodedTimeType microSeconds );
149  virtual encodedTimeType averageReliableRecipientReceiveInteractionUSecs() const;
150 
152  virtual void setAverageBestEffortRecipientEncodeDecodeInteractionUSecs( encodedTimeType microSeconds );
153  virtual encodedTimeType averageBestEffortRecipientEncodeDecodeInteractionUSecs() const;
154 
156  virtual void setAverageReliableRecipientEncodeDecodeInteractionUSecs( encodedTimeType microSeconds );
157  virtual encodedTimeType averageReliableRecipientEncodeDecodeInteractionUSecs() const;
158 
160  virtual void setAverageBestEffortRecipientSendInteractionUSecs( encodedTimeType microSeconds );
161  virtual encodedTimeType averageBestEffortRecipientSendInteractionUSecs() const;
162 
164  virtual void setAverageReliableRecipientSendInteractionUSecs( encodedTimeType microSeconds );
165  virtual encodedTimeType averageReliableRecipientSendInteractionUSecs() const;
166 
168  virtual void setAverageBestEffortInitiatorMsgQueuedUsecs( encodedTimeType microSeconds );
169  virtual encodedTimeType averageBestEffortInitiatorMsgQueuedUsecs() const;
170 
172  virtual void setAverageReliableInitiatorMsgQueuedUsecs( encodedTimeType microSeconds );
173  virtual encodedTimeType averageReliableInitiatorMsgQueuedUsecs() const;
174 
176  virtual void setAverageBestEffortInitiatorReceiveInteractionUSecs( encodedTimeType microSeconds );
177  virtual encodedTimeType averageBestEffortInitiatorReceiveInteractionUSecs() const;
178 
180  virtual void setAverageReliableInitiatorReceiveInteractionUSecs( encodedTimeType microSeconds );
181  virtual encodedTimeType averageReliableInitiatorReceiveInteractionUSecs() const;
182 
184  static bool requiresQueueMsgStamp( DtRIDParameters::DtAsynchronousIOModeEnum model );
185 
186 protected:
187 
189  virtual void setSingleTimeByType( DtAssistantReportTimeStampType,
190  encodedTimeType num );
191 
193  virtual encodedTimeType getSingleTimeByType( DtAssistantReportTimeStampType) const;
194 
195 
196 
198  static void setSingleTimeToPtr( DtAssistantReportTimeStampType type,
199  encodedTimeType time,
200  unsigned char** dataPtrPtr );
201 
203  static void getSingleTimeFromPtr( DtAssistantReportTimeStampType& type,
204  encodedTimeType& time,
205  const unsigned char** dataPtrPtr );
206 
207  static void writeUintAndAdvancePtr( unsigned int num,
208  unsigned char** dataPtrPtr );
209 
210  static void readUintAndAdvancePtr( unsigned int& num,
211  unsigned char** dataPtrPtr );
212 
213  static void writeFloatAndAdvancePtr( const float& num,
214  unsigned char** dataPtrPtr );
215 
216  static void readFloatAndAdvancePtr( float& num,
217  unsigned char** dataPtrPtr );
218 
219 
222  static void writeSizeAndStringAndAdvancePtr( const MAKRti::DtString& name,
223  unsigned char** dataPtrPtr );
224 
228  static void readSizeAndStringAndAdvancePtr( MAKRti::DtString& name,
229  unsigned char** dataPtrPtr,
230  unsigned int& encodedSize );
231 
233  static unsigned int determineSizeOfPaddedSting( const MAKRti::DtString& string );
234 
235 
236 
237 protected:
238 
239 
242 
253 
259 
260 
271 
277 
281 
283  // TODO: identify the forwarders?
284  //std::queue<std::pair<unsigned int, encodedTimeType> > myForwarderTimes;
285 
286 
288  MAKRti::DtString myInitiatorFederateName;
290  MAKRti::DtString myRecipientFederateName;
291 
293  unsigned int myFederation;
295  unsigned int myInitiatorFed;
297  unsigned int myRecipientFed;
305  unsigned int myNumDroppedReliable;
310 
315 
316 
318 
319 };
320 
321 
322 #endif
unsigned int myAverageInitiatorTickTime
The average tick time of the initiator.
Definition: averagedLatencyTestReport.h:314
Definition: averagedLatencyTestReport.h:38
encodedTimeType myAverageReliableInitiatorSendInteractionTime
The Reliable time between the sendInteraction call and the netSend for the Initiator.
Definition: averagedLatencyTestReport.h:262
encodedTimeType myAverageBestEffortInitiatorReceiveInteractionTime
The Best Effort time between the netRead and the receiveInteraction call for the Initiator.
Definition: averagedLatencyTestReport.h:252
Definition: averagedLatencyTestReport.h:33
Definition: averagedLatencyTestReport.h:36
unsigned int myBestEffortRoundTripTime
The calculated Best Effort latency.
Definition: averagedLatencyTestReport.h:307
DtAsynchronousIOModeEnum
0 == no Async IO 1 == Asynchronous IO, (same as old parameter RTI_asynchronousIO ) 2 == Asynchronous ...
Definition: RIDparams.h:111
MAKRti::DtString myRecipientFederateName
Name of the recipient federate.
Definition: averagedLatencyTestReport.h:290
encodedTimeType myAverageReliableRecipientReceiveInteractionTime
The Reliable time between the netRead and the receiveInteraction call for the Recipient.
Definition: averagedLatencyTestReport.h:264
Definition: averagedLatencyTestReport.h:30
unsigned int myReliableRoundTripTime
The calculated Reliable latency.
Definition: averagedLatencyTestReport.h:309
unsigned int myRecipientFed
The federate handle of the recipient.
Definition: averagedLatencyTestReport.h:297
encodedTimeType myAverageBestEffortRecipientQueueMsgTime
These are only necessary in DtAsynchronousMode and DtAsynchronousProcessMessage.
Definition: averagedLatencyTestReport.h:256
encodedTimeType myAverageReliableRecipientEncodeDecodeTime
The Reliable time between the recipient receiveInteraction and response sendInteraction call...
Definition: averagedLatencyTestReport.h:266
encodedTimeType myAverageReliableInitiatorReceiveInteractionTime
The Reliable time between the netRead and the receiveInteraction call for the Initiator.
Definition: averagedLatencyTestReport.h:270
Definition: averagedLatencyTestReport.h:27
unsigned int myAverageRecipientTickTime
The average tick time of the recipient.
Definition: averagedLatencyTestReport.h:312
int encodedTimeType
Definition: averagedLatencyTestReport.h:22
DtAveragedLatencyTestReport encodes and decodes reports from tests between local RTI components...
Definition: averagedLatencyTestReport.h:48
Definition: averagedLatencyTestReport.h:39
encodedTimeType myAverageBestEffortInitiatorSendInteractionTime
The following averages are expressed in whole number of microseconds.
Definition: averagedLatencyTestReport.h:244
Definition: averagedLatencyTestReport.h:29
unsigned int myNumDroppedBestEffort
The number of dropped Best Effort interactions in this test.
Definition: averagedLatencyTestReport.h:303
unsigned int myInitiatorFed
The federate handle of the initiator.
Definition: averagedLatencyTestReport.h:295
DtRIDParameters::DtAsynchronousIOModeEnum myRecipModel
The processing models of the recipient and initiator respectively.
Definition: averagedLatencyTestReport.h:279
Definition: averagedLatencyTestReport.h:37
Definition: averagedLatencyTestReport.h:35
Definition: averagedLatencyTestReport.h:42
unsigned int myNumReliableInteractions
The number of completed reliable interactions in this test.
Definition: averagedLatencyTestReport.h:301
unsigned int myNumDroppedReliable
The number of dropped Reliable interactions in this test.
Definition: averagedLatencyTestReport.h:305
DtAssistantReportTimeStampType
Definition: averagedLatencyTestReport.h:25
encodedTimeType myAverageBestEffortRecipientSendInteractionTime
The Best Effort time between the sendInteraction call and the netSend for the Recipient.
Definition: averagedLatencyTestReport.h:250
DtRIDParameters::DtAsynchronousIOModeEnum myInitModel
Definition: averagedLatencyTestReport.h:280
encodedTimeType myAverageBestEffortInitiatorQueueMsgTime
If necessary the time between AsyncQueueMsg and receiveInteraction for the Initiator.
Definition: averagedLatencyTestReport.h:258
encodedTimeType myAverageBestEffortRecipientEncodeDecodeTime
The Best Effort time between the recipient receiveInteraction and response sendInteraction call...
Definition: averagedLatencyTestReport.h:248
Definition: averagedLatencyTestReport.h:32
Definition: averagedLatencyTestReport.h:28
encodedTimeType myAverageReliableRecipientSendInteractionTime
The Reliable time between the sendInteraction call and the netSend for the Recipient.
Definition: averagedLatencyTestReport.h:268
unsigned int myNumBestEffortInteractions
The number of completed best effort interactions in this test.
Definition: averagedLatencyTestReport.h:299
Definition: averagedLatencyTestReport.h:34
#define DT_DLL_RTIUTIL
Definition: rtiMsConfig.h:127
encodedTimeType myAverageBestEffortRecipientReceiveInteractionTime
The Best Effort time between the netRead and the receiveInteraction call for the Recipient.
Definition: averagedLatencyTestReport.h:246
unsigned int myFederation
The federation handle.
Definition: averagedLatencyTestReport.h:293
encodedTimeType myAverageReliableInitiatorQueueMsgTime
If necessary the time between AsyncQueueMsg and receiveInteraction for the Initiator.
Definition: averagedLatencyTestReport.h:276
Definition: averagedLatencyTestReport.h:40
MAKRti::DtString myInitiatorFederateName
queue of pairs of forwarder times.
Definition: averagedLatencyTestReport.h:288
encodedTimeType myAverageReliableRecipientQueueMsgTime
These are only necessary in DtAsynchronousMode and DtAsynchronousProcessMessage.
Definition: averagedLatencyTestReport.h:274
static const encodedTimeType theInvalidEncodedTime
Definition: averagedLatencyTestReport.h:317
Definition: averagedLatencyTestReport.h:31

Document ID: Generated on Mon Sep 7 15:40:32 EDT 2020 from SVN revision 217499
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)