MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
netStatsRtiAmb1516.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #ifndef netStatsRtiAmb1516_h__
7 #define netStatsRtiAmb1516_h__
8 
9 
10 #ifdef DtIFSPEC1516
11 
12 #include "ambImp1516.h"
13 #include "netStatsMonitor.h"
14 #include <vlutil/vlTime.h>
15 
16 class DtNetStatsFedAmbWrapper;
17 
18 //
19 // The DtNetStatsRtiAmbImpl adds statistics gathering and logging
20 // capabilities to the DtRtiAmbassadorImplementor class
21 //
22 // DtNetStatsRtiAmbImpl overrides each RTI Ambassador API call
23 // to track its calls and cpu usage
24 //
25 class DtNetStatsRtiAmbImpl : public DtRtiAmbassadorImplementor
26 {
27 
28 protected:
29 
30  DtNetStatsRtiAmbImpl( rti1516::RTIambassador* topLevelAmbPtr,
31  const std::vector< std::wstring >& initArgs);
32 
33 public:
34 
35  // Set the handle to the Network Traffic Monitor
36  virtual void setTrafficMonitor( DtNetStatsMonitor* stats );
37 
38  // Over-ridden RTI API Calls
39 
40  virtual ~DtNetStatsRtiAmbImpl()
41  throw ();
42 
43  virtual bool netStatsEnabled() const;
44  virtual void setNetStatsEnabled(bool shouldEnable);
45 
46  // Initializes the high performance timer (must be paired with endTimerAndRecord)
47  virtual void startTimer();
48  virtual void startTimer() const;
49 
50  // Records the service and the elapsed time (must be paired with startTimer)
51  virtual void endTimerAndRecord(DtRtiAmbAPIType rtiAmbType);
52  virtual void endTimerAndRecord(DtRtiAmbAPIType rtiAmbType) const;
53 
55  // Federation Management Services //
57 
58  // 4.2
59  virtual void createFederationExecution
60  (std::wstring const & federationExecutionName,
61  std::wstring const & fullPathNameToTheFDDfile,
62  std::wstring const & logicalTimeImplementationName = L"")
63  throw (rti1516::FederationExecutionAlreadyExists,
64  rti1516::CouldNotOpenFDD,
65  rti1516::ErrorReadingFDD,
66  rti1516::RTIinternalError);
67 
68  // 4.3
69  virtual void destroyFederationExecution
70  (std::wstring const & federationExecutionName)
71  throw (rti1516::FederatesCurrentlyJoined,
72  rti1516::FederationExecutionDoesNotExist,
73  rti1516::RTIinternalError);
74 
75  // 4.4
76  virtual rti1516::FederateHandle joinFederationExecution
77  (std::wstring const & federateType,
78  std::wstring const & federationExecutionName,
79  rti1516::FederateAmbassador & federateAmbassador,
80  unsigned long flags)
81  throw (rti1516::FederateAlreadyExecutionMember,
82  rti1516::FederationExecutionDoesNotExist,
83  rti1516::SaveInProgress,
84  rti1516::RestoreInProgress,
85  rti1516::RTIinternalError);
86 
87  // 4.5
88  virtual void resignFederationExecution
89  (rti1516::ResignAction resignAction)
90  throw (rti1516::OwnershipAcquisitionPending,
91  rti1516::FederateOwnsAttributes,
92  rti1516::FederateNotExecutionMember,
93  rti1516::RTIinternalError);
94 
95  // 4.6
97  (std::wstring const & label,
98  rti1516::VariableLengthData const & theUserSuppliedTag)
99  throw (rti1516::FederateNotExecutionMember,
100  rti1516::SaveInProgress,
101  rti1516::RestoreInProgress,
102  rti1516::RTIinternalError);
103 
105  (std::wstring const & label,
106  rti1516::VariableLengthData const & theUserSuppliedTag,
107  rti1516::FederateHandleSet const & syncSet)
108  throw (rti1516::FederateNotExecutionMember,
109  rti1516::SaveInProgress,
110  rti1516::RestoreInProgress,
111  rti1516::RTIinternalError);
112 
113  // 4.9
114  virtual void synchronizationPointAchieved
115  (std::wstring const & label)
116  throw (rti1516::SynchronizationPointLabelNotAnnounced,
117  rti1516::FederateNotExecutionMember,
118  rti1516::SaveInProgress,
119  rti1516::RestoreInProgress,
120  rti1516::RTIinternalError);
121 
122  // 4.11
123  virtual void requestFederationSave
124  (std::wstring const & label)
125  throw (rti1516::FederateNotExecutionMember,
126  rti1516::SaveInProgress,
127  rti1516::RestoreInProgress,
128  rti1516::RTIinternalError);
129 
130  virtual void requestFederationSave
131  (std::wstring const & label,
132  rti1516::LogicalTime const & theTime)
133  throw (rti1516::LogicalTimeAlreadyPassed,
134  rti1516::InvalidLogicalTime,
135  rti1516::FederateUnableToUseTime,
136  rti1516::FederateNotExecutionMember,
137  rti1516::SaveInProgress,
138  rti1516::RestoreInProgress,
139  rti1516::RTIinternalError);
140 
141  // 4.13
142  virtual void federateSaveBegun ()
143  throw (rti1516::SaveNotInitiated,
144  rti1516::FederateNotExecutionMember,
145  rti1516::RestoreInProgress,
146  rti1516::RTIinternalError);
147 
148  // 4.14
149  virtual void federateSaveComplete ()
150  throw (rti1516::FederateHasNotBegunSave,
151  rti1516::FederateNotExecutionMember,
152  rti1516::RestoreInProgress,
153  rti1516::RTIinternalError);
154 
155  virtual void federateSaveNotComplete()
156  throw (rti1516::FederateHasNotBegunSave,
157  rti1516::FederateNotExecutionMember,
158  rti1516::RestoreInProgress,
159  rti1516::RTIinternalError);
160 
161  // 4.16
162  virtual void queryFederationSaveStatus ()
163  throw (rti1516::FederateNotExecutionMember,
164  rti1516::RestoreInProgress,
165  rti1516::RTIinternalError);
166 
167  // 4.18
168  virtual void requestFederationRestore
169  (std::wstring const & label)
170  throw (rti1516::FederateNotExecutionMember,
171  rti1516::SaveInProgress,
172  rti1516::RestoreInProgress,
173  rti1516::RTIinternalError);
174 
175  // 4.22
176  virtual void federateRestoreComplete ()
177  throw (rti1516::RestoreNotRequested,
178  rti1516::FederateNotExecutionMember,
179  rti1516::SaveInProgress,
180  rti1516::RTIinternalError);
181 
182  virtual void federateRestoreNotComplete ()
183  throw (rti1516::RestoreNotRequested,
184  rti1516::FederateNotExecutionMember,
185  rti1516::SaveInProgress,
186  rti1516::RTIinternalError);
187 
188  // 4.24
189  virtual void queryFederationRestoreStatus ()
190  throw (rti1516::FederateNotExecutionMember,
191  rti1516::SaveInProgress,
192  rti1516::RTIinternalError);
193 
195  // Declaration Management Services //
197 
198  // 5.2
199  virtual void publishObjectClassAttributes
200  (rti1516::ObjectClassHandle theClass,
201  rti1516::AttributeHandleSet const & attributeList)
202  throw (rti1516::ObjectClassNotDefined,
203  rti1516::AttributeNotDefined,
204  rti1516::FederateNotExecutionMember,
205  rti1516::SaveInProgress,
206  rti1516::RestoreInProgress,
207  rti1516::RTIinternalError);
208 
209  // 5.3
210  virtual void unpublishObjectClass
211  (rti1516::ObjectClassHandle theClass)
212  throw (rti1516::ObjectClassNotDefined,
213  rti1516::OwnershipAcquisitionPending,
214  rti1516::FederateNotExecutionMember,
215  rti1516::SaveInProgress,
216  rti1516::RestoreInProgress,
217  rti1516::RTIinternalError);
218 
219  virtual void unpublishObjectClassAttributes
220  (rti1516::ObjectClassHandle theClass,
221  rti1516::AttributeHandleSet const & attributeList)
222  throw (rti1516::ObjectClassNotDefined,
223  rti1516::AttributeNotDefined,
224  rti1516::OwnershipAcquisitionPending,
225  rti1516::FederateNotExecutionMember,
226  rti1516::SaveInProgress,
227  rti1516::RestoreInProgress,
228  rti1516::RTIinternalError);
229 
230  // 5.4
231  virtual void publishInteractionClass
232  (rti1516::InteractionClassHandle theInteraction)
233  throw (rti1516::InteractionClassNotDefined,
234  rti1516::FederateNotExecutionMember,
235  rti1516::SaveInProgress,
236  rti1516::RestoreInProgress,
237  rti1516::RTIinternalError);
238 
239  // 5.5
240  virtual void unpublishInteractionClass
241  (rti1516::InteractionClassHandle theInteraction)
242  throw (rti1516::InteractionClassNotDefined,
243  rti1516::FederateNotExecutionMember,
244  rti1516::SaveInProgress,
245  rti1516::RestoreInProgress,
246  rti1516::RTIinternalError);
247 
248  // 5.6
249  virtual void subscribeObjectClassAttributes
250  (rti1516::ObjectClassHandle theClass,
251  rti1516::AttributeHandleSet const & attributeList,
252  bool active = true)
253  throw (rti1516::ObjectClassNotDefined,
254  rti1516::AttributeNotDefined,
255  rti1516::FederateNotExecutionMember,
256  rti1516::SaveInProgress,
257  rti1516::RestoreInProgress,
258  rti1516::RTIinternalError);
259 
260  // 5.7
261  virtual void unsubscribeObjectClass
262  (rti1516::ObjectClassHandle theClass)
263  throw (rti1516::ObjectClassNotDefined,
264  rti1516::FederateNotExecutionMember,
265  rti1516::SaveInProgress,
266  rti1516::RestoreInProgress,
267  rti1516::RTIinternalError);
268 
269  virtual void unsubscribeObjectClassAttributes
270  (rti1516::ObjectClassHandle theClass,
271  rti1516::AttributeHandleSet const & attributeList)
272  throw (rti1516::ObjectClassNotDefined,
273  rti1516::AttributeNotDefined,
274  rti1516::FederateNotExecutionMember,
275  rti1516::SaveInProgress,
276  rti1516::RestoreInProgress,
277  rti1516::RTIinternalError);
278 
279  // 5.8
280  virtual void subscribeInteractionClass
281  (rti1516::InteractionClassHandle theClass,
282  bool active = true)
283  throw (rti1516::InteractionClassNotDefined,
284  rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
285  rti1516::FederateNotExecutionMember,
286  rti1516::SaveInProgress,
287  rti1516::RestoreInProgress,
288  rti1516::RTIinternalError);
289 
290  // 5.9
291  virtual void unsubscribeInteractionClass
292  (rti1516::InteractionClassHandle theClass)
293  throw (rti1516::InteractionClassNotDefined,
294  rti1516::FederateNotExecutionMember,
295  rti1516::SaveInProgress,
296  rti1516::RestoreInProgress,
297  rti1516::RTIinternalError);
298 
300  // Object Management Services //
302 
303  // 6.2
304  virtual void reserveObjectInstanceName
305  (std::wstring const & theObjectInstanceName)
306  throw (rti1516::IllegalName,
307  rti1516::FederateNotExecutionMember,
308  rti1516::SaveInProgress,
309  rti1516::RestoreInProgress,
310  rti1516::RTIinternalError);
311 
312  // 6.4
313  virtual rti1516::ObjectInstanceHandle registerObjectInstance
314  (rti1516::ObjectClassHandle theClass)
315  throw (rti1516::ObjectClassNotDefined,
316  rti1516::ObjectClassNotPublished,
317  rti1516::FederateNotExecutionMember,
318  rti1516::SaveInProgress,
319  rti1516::RestoreInProgress,
320  rti1516::RTIinternalError);
321 
322  virtual rti1516::ObjectInstanceHandle registerObjectInstance
323  (rti1516::ObjectClassHandle theClass,
324  std::wstring const & theObjectInstanceName)
325  throw (rti1516::ObjectClassNotDefined,
326  rti1516::ObjectClassNotPublished,
327  rti1516::ObjectInstanceNameNotReserved,
328  rti1516::ObjectInstanceNameInUse,
329  rti1516::FederateNotExecutionMember,
330  rti1516::SaveInProgress,
331  rti1516::RestoreInProgress,
332  rti1516::RTIinternalError);
333 
334  // 6.6
335  virtual void updateAttributeValues
336  (rti1516::ObjectInstanceHandle theObject,
337  rti1516::AttributeHandleValueMap const & theAttributeValues,
338  rti1516::VariableLengthData const & theUserSuppliedTag)
339  throw (rti1516::ObjectInstanceNotKnown,
340  rti1516::AttributeNotDefined,
341  rti1516::AttributeNotOwned,
342  rti1516::FederateNotExecutionMember,
343  rti1516::SaveInProgress,
344  rti1516::RestoreInProgress,
345  rti1516::RTIinternalError);
346 
347  virtual rti1516::MessageRetractionHandle updateAttributeValues
348  (rti1516::ObjectInstanceHandle theObject,
349  rti1516::AttributeHandleValueMap const & theAttributeValues,
350  rti1516::VariableLengthData const & theUserSuppliedTag,
351  rti1516::LogicalTime const & theTime)
352  throw (rti1516::ObjectInstanceNotKnown,
353  rti1516::AttributeNotDefined,
354  rti1516::AttributeNotOwned,
355  rti1516::InvalidLogicalTime,
356  rti1516::FederateNotExecutionMember,
357  rti1516::SaveInProgress,
358  rti1516::RestoreInProgress,
359  rti1516::RTIinternalError);
360 
361  // 6.8
362  virtual void sendInteraction
363  (rti1516::InteractionClassHandle theInteraction,
364  rti1516::ParameterHandleValueMap const & theParameterValues,
365  rti1516::VariableLengthData const & theUserSuppliedTag)
366  throw (rti1516::InteractionClassNotPublished,
367  rti1516::InteractionClassNotDefined,
368  rti1516::InteractionParameterNotDefined,
369  rti1516::FederateNotExecutionMember,
370  rti1516::SaveInProgress,
371  rti1516::RestoreInProgress,
372  rti1516::RTIinternalError);
373 
374  virtual rti1516::MessageRetractionHandle sendInteraction
375  (rti1516::InteractionClassHandle theInteraction,
376  rti1516::ParameterHandleValueMap const & theParameterValues,
377  rti1516::VariableLengthData const & theUserSuppliedTag,
378  rti1516::LogicalTime const & theTime)
379  throw (rti1516::InteractionClassNotPublished,
380  rti1516::InteractionClassNotDefined,
381  rti1516::InteractionParameterNotDefined,
382  rti1516::InvalidLogicalTime,
383  rti1516::FederateNotExecutionMember,
384  rti1516::SaveInProgress,
385  rti1516::RestoreInProgress,
386  rti1516::RTIinternalError);
387 
388  // 6.10
389  virtual void deleteObjectInstance
390  (rti1516::ObjectInstanceHandle theObject,
391  rti1516::VariableLengthData const & theUserSuppliedTag)
392  throw (rti1516::DeletePrivilegeNotHeld,
393  rti1516::ObjectInstanceNotKnown,
394  rti1516::FederateNotExecutionMember,
395  rti1516::SaveInProgress,
396  rti1516::RestoreInProgress,
397  rti1516::RTIinternalError);
398 
399  virtual rti1516::MessageRetractionHandle deleteObjectInstance
400  (rti1516::ObjectInstanceHandle theObject,
401  rti1516::VariableLengthData const & theUserSuppliedTag,
402  rti1516::LogicalTime const & theTime)
403  throw (rti1516::DeletePrivilegeNotHeld,
404  rti1516::ObjectInstanceNotKnown,
405  rti1516::InvalidLogicalTime,
406  rti1516::FederateNotExecutionMember,
407  rti1516::SaveInProgress,
408  rti1516::RestoreInProgress,
409  rti1516::RTIinternalError);
410 
411  // 6.12
412  virtual void localDeleteObjectInstance
413  (rti1516::ObjectInstanceHandle theObject)
414  throw (rti1516::ObjectInstanceNotKnown,
415  rti1516::FederateOwnsAttributes,
416  rti1516::OwnershipAcquisitionPending,
417  rti1516::FederateNotExecutionMember,
418  rti1516::SaveInProgress,
419  rti1516::RestoreInProgress,
420  rti1516::RTIinternalError);
421 
422  // 6.13
424  (rti1516::ObjectInstanceHandle theObject,
425  rti1516::AttributeHandleSet const & theAttributes,
426  rti1516::TransportationType theType)
427  throw (rti1516::ObjectInstanceNotKnown,
428  rti1516::AttributeNotDefined,
429  rti1516::AttributeNotOwned,
430  rti1516::FederateNotExecutionMember,
431  rti1516::SaveInProgress,
432  rti1516::RestoreInProgress,
433  rti1516::RTIinternalError);
434 
435  // 6.14
437  (rti1516::InteractionClassHandle theClass,
438  rti1516::TransportationType theType)
439  throw (rti1516::InteractionClassNotDefined,
440  rti1516::InteractionClassNotPublished,
441  rti1516::FederateNotExecutionMember,
442  rti1516::SaveInProgress,
443  rti1516::RestoreInProgress,
444  rti1516::RTIinternalError);
445 
446  // 6.17
447  virtual void requestAttributeValueUpdate
448  (rti1516::ObjectInstanceHandle theObject,
449  rti1516::AttributeHandleSet const & theAttributes,
450  rti1516::VariableLengthData const & theUserSuppliedTag)
451  throw (rti1516::ObjectInstanceNotKnown,
452  rti1516::AttributeNotDefined,
453  rti1516::FederateNotExecutionMember,
454  rti1516::SaveInProgress,
455  rti1516::RestoreInProgress,
456  rti1516::RTIinternalError);
457 
458  virtual void requestAttributeValueUpdate
459  (rti1516::ObjectClassHandle theClass,
460  rti1516::AttributeHandleSet const & theAttributes,
461  rti1516::VariableLengthData const & theUserSuppliedTag)
462  throw (rti1516::ObjectClassNotDefined,
463  rti1516::AttributeNotDefined,
464  rti1516::FederateNotExecutionMember,
465  rti1516::SaveInProgress,
466  rti1516::RestoreInProgress,
467  rti1516::RTIinternalError);
468 
470  // Ownership Management Services //
472  // 7.2
474  (rti1516::ObjectInstanceHandle theObject,
475  rti1516::AttributeHandleSet const & theAttributes)
476  throw (rti1516::ObjectInstanceNotKnown,
477  rti1516::AttributeNotDefined,
478  rti1516::AttributeNotOwned,
479  rti1516::FederateNotExecutionMember,
480  rti1516::SaveInProgress,
481  rti1516::RestoreInProgress,
482  rti1516::RTIinternalError);
483 
484  // 7.3
486  (rti1516::ObjectInstanceHandle theObject,
487  rti1516::AttributeHandleSet const & theAttributes,
488  rti1516::VariableLengthData const & theUserSuppliedTag)
489  throw (rti1516::ObjectInstanceNotKnown,
490  rti1516::AttributeNotDefined,
491  rti1516::AttributeNotOwned,
492  rti1516::AttributeAlreadyBeingDivested,
493  rti1516::FederateNotExecutionMember,
494  rti1516::SaveInProgress,
495  rti1516::RestoreInProgress,
496  rti1516::RTIinternalError);
497 
498  // 7.6
499  virtual void confirmDivestiture
500  (rti1516::ObjectInstanceHandle theObject,
501  rti1516::AttributeHandleSet const & confirmedAttributes,
502  rti1516::VariableLengthData const & theUserSuppliedTag)
503  throw (rti1516::ObjectInstanceNotKnown,
504  rti1516::AttributeNotDefined,
505  rti1516::AttributeNotOwned,
506  rti1516::AttributeDivestitureWasNotRequested,
507  rti1516::NoAcquisitionPending,
508  rti1516::FederateNotExecutionMember,
509  rti1516::SaveInProgress,
510  rti1516::RestoreInProgress,
511  rti1516::RTIinternalError);
512 
513  // 7.8
514  virtual void attributeOwnershipAcquisition
515  (rti1516::ObjectInstanceHandle theObject,
516  rti1516::AttributeHandleSet const & desiredAttributes,
517  rti1516::VariableLengthData const & theUserSuppliedTag)
518  throw (rti1516::ObjectInstanceNotKnown,
519  rti1516::ObjectClassNotPublished,
520  rti1516::AttributeNotDefined,
521  rti1516::AttributeNotPublished,
522  rti1516::FederateOwnsAttributes,
523  rti1516::FederateNotExecutionMember,
524  rti1516::SaveInProgress,
525  rti1516::RestoreInProgress,
526  rti1516::RTIinternalError);
527 
528  // 7.9
530  (rti1516::ObjectInstanceHandle theObject,
531  rti1516::AttributeHandleSet const & desiredAttributes)
532  throw (rti1516::ObjectInstanceNotKnown,
533  rti1516::ObjectClassNotPublished,
534  rti1516::AttributeNotDefined,
535  rti1516::AttributeNotPublished,
536  rti1516::FederateOwnsAttributes,
537  rti1516::AttributeAlreadyBeingAcquired,
538  rti1516::FederateNotExecutionMember,
539  rti1516::SaveInProgress,
540  rti1516::RestoreInProgress,
541  rti1516::RTIinternalError);
542 
543  // 7.12
544  virtual void attributeOwnershipDivestitureIfWanted
545  (rti1516::ObjectInstanceHandle theObject,
546  rti1516::AttributeHandleSet const & theAttributes,
547  rti1516::AttributeHandleSet & theDivestedAttributes)
548  throw (rti1516::ObjectInstanceNotKnown,
549  rti1516::AttributeNotDefined,
550  rti1516::AttributeNotOwned,
551  rti1516::FederateNotExecutionMember,
552  rti1516::SaveInProgress,
553  rti1516::RestoreInProgress,
554  rti1516::RTIinternalError);
555 
556  // 7.13
558  (rti1516::ObjectInstanceHandle theObject,
559  rti1516::AttributeHandleSet const & theAttributes)
560  throw (rti1516::ObjectInstanceNotKnown,
561  rti1516::AttributeNotDefined,
562  rti1516::AttributeNotOwned,
563  rti1516::AttributeDivestitureWasNotRequested,
564  rti1516::FederateNotExecutionMember,
565  rti1516::SaveInProgress,
566  rti1516::RestoreInProgress,
567  rti1516::RTIinternalError);
568 
569  // 7.14
571  (rti1516::ObjectInstanceHandle theObject,
572  rti1516::AttributeHandleSet const & theAttributes)
573  throw (rti1516::ObjectInstanceNotKnown,
574  rti1516::AttributeNotDefined,
575  rti1516::AttributeAlreadyOwned,
576  rti1516::AttributeAcquisitionWasNotRequested,
577  rti1516::FederateNotExecutionMember,
578  rti1516::SaveInProgress,
579  rti1516::RestoreInProgress,
580  rti1516::RTIinternalError);
581 
582  // 7.16
583  virtual void queryAttributeOwnership
584  (rti1516::ObjectInstanceHandle theObject,
585  rti1516::AttributeHandle theAttribute)
586  throw (rti1516::ObjectInstanceNotKnown,
587  rti1516::AttributeNotDefined,
588  rti1516::FederateNotExecutionMember,
589  rti1516::SaveInProgress,
590  rti1516::RestoreInProgress,
591  rti1516::RTIinternalError);
592 
593  // 7.18
594  virtual bool isAttributeOwnedByFederate
595  (rti1516::ObjectInstanceHandle theObject,
596  rti1516::AttributeHandle theAttribute)
597  throw (rti1516::ObjectInstanceNotKnown,
598  rti1516::AttributeNotDefined,
599  rti1516::FederateNotExecutionMember,
600  rti1516::SaveInProgress,
601  rti1516::RestoreInProgress,
602  rti1516::RTIinternalError);
603 
605  // Time Management Services //
607 
608  // 8.2
609  virtual void enableTimeRegulation
610  (rti1516::LogicalTimeInterval const & theLookahead)
611  throw (rti1516::TimeRegulationAlreadyEnabled,
612  rti1516::InvalidLookahead,
613  rti1516::InTimeAdvancingState,
614  rti1516::RequestForTimeRegulationPending,
615  rti1516::FederateNotExecutionMember,
616  rti1516::SaveInProgress,
617  rti1516::RestoreInProgress,
618  rti1516::RTIinternalError);
619 
620  // 8.4
621  virtual void disableTimeRegulation ()
622  throw (rti1516::TimeRegulationIsNotEnabled,
623  rti1516::FederateNotExecutionMember,
624  rti1516::SaveInProgress,
625  rti1516::RestoreInProgress,
626  rti1516::RTIinternalError);
627 
628  // 8.5
629  virtual void enableTimeConstrained ()
630  throw (rti1516::TimeConstrainedAlreadyEnabled,
631  rti1516::InTimeAdvancingState,
632  rti1516::RequestForTimeConstrainedPending,
633  rti1516::FederateNotExecutionMember,
634  rti1516::SaveInProgress,
635  rti1516::RestoreInProgress,
636  rti1516::RTIinternalError);
637 
638  // 8.7
639  virtual void disableTimeConstrained ()
640  throw (rti1516::TimeConstrainedIsNotEnabled,
641  rti1516::FederateNotExecutionMember,
642  rti1516::SaveInProgress,
643  rti1516::RestoreInProgress,
644  rti1516::RTIinternalError);
645 
646  // 8.8
647  virtual void timeAdvanceRequest
648  (rti1516::LogicalTime const & theTime)
649  throw (rti1516::InvalidLogicalTime,
650  rti1516::LogicalTimeAlreadyPassed,
651  rti1516::InTimeAdvancingState,
652  rti1516::RequestForTimeRegulationPending,
653  rti1516::RequestForTimeConstrainedPending,
654  rti1516::FederateNotExecutionMember,
655  rti1516::SaveInProgress,
656  rti1516::RestoreInProgress,
657  rti1516::RTIinternalError);
658 
659  // 8.9
660  virtual void timeAdvanceRequestAvailable
661  (rti1516::LogicalTime const & theTime)
662  throw (rti1516::InvalidLogicalTime,
663  rti1516::LogicalTimeAlreadyPassed,
664  rti1516::InTimeAdvancingState,
665  rti1516::RequestForTimeRegulationPending,
666  rti1516::RequestForTimeConstrainedPending,
667  rti1516::FederateNotExecutionMember,
668  rti1516::SaveInProgress,
669  rti1516::RestoreInProgress,
670  rti1516::RTIinternalError);
671 
672  // 8.10
673  virtual void nextMessageRequest
674  (rti1516::LogicalTime const & theTime)
675  throw (rti1516::InvalidLogicalTime,
676  rti1516::LogicalTimeAlreadyPassed,
677  rti1516::InTimeAdvancingState,
678  rti1516::RequestForTimeRegulationPending,
679  rti1516::RequestForTimeConstrainedPending,
680  rti1516::FederateNotExecutionMember,
681  rti1516::SaveInProgress,
682  rti1516::RestoreInProgress,
683  rti1516::RTIinternalError);
684 
685  // 8.11
686  virtual void nextMessageRequestAvailable
687  (rti1516::LogicalTime const & theTime)
688  throw (rti1516::InvalidLogicalTime,
689  rti1516::LogicalTimeAlreadyPassed,
690  rti1516::InTimeAdvancingState,
691  rti1516::RequestForTimeRegulationPending,
692  rti1516::RequestForTimeConstrainedPending,
693  rti1516::FederateNotExecutionMember,
694  rti1516::SaveInProgress,
695  rti1516::RestoreInProgress,
696  rti1516::RTIinternalError);
697 
698  // 8.12
699  virtual void flushQueueRequest
700  (rti1516::LogicalTime const & theTime)
701  throw (rti1516::InvalidLogicalTime,
702  rti1516::LogicalTimeAlreadyPassed,
703  rti1516::InTimeAdvancingState,
704  rti1516::RequestForTimeRegulationPending,
705  rti1516::RequestForTimeConstrainedPending,
706  rti1516::FederateNotExecutionMember,
707  rti1516::SaveInProgress,
708  rti1516::RestoreInProgress,
709  rti1516::RTIinternalError);
710 
711  // 8.14
712  virtual void enableAsynchronousDelivery ()
713  throw (rti1516::AsynchronousDeliveryAlreadyEnabled,
714  rti1516::FederateNotExecutionMember,
715  rti1516::SaveInProgress,
716  rti1516::RestoreInProgress,
717  rti1516::RTIinternalError);
718 
719  // 8.15
720  virtual void disableAsynchronousDelivery ()
721  throw (rti1516::AsynchronousDeliveryAlreadyDisabled,
722  rti1516::FederateNotExecutionMember,
723  rti1516::SaveInProgress,
724  rti1516::RestoreInProgress,
725  rti1516::RTIinternalError);
726 
727  // 8.16
728  virtual bool queryGALT (rti1516::LogicalTime & theTime)
729  throw (rti1516::FederateNotExecutionMember,
730  rti1516::SaveInProgress,
731  rti1516::RestoreInProgress,
732  rti1516::RTIinternalError);
733 
734  // 8.17
735  virtual void queryLogicalTime (rti1516::LogicalTime & theTime)
736  throw (rti1516::FederateNotExecutionMember,
737  rti1516::SaveInProgress,
738  rti1516::RestoreInProgress,
739  rti1516::RTIinternalError);
740 
741  // 8.18
742  virtual bool queryLITS (rti1516::LogicalTime & theTime)
743  throw (rti1516::FederateNotExecutionMember,
744  rti1516::SaveInProgress,
745  rti1516::RestoreInProgress,
746  rti1516::RTIinternalError);
747 
748  // 8.19
749  virtual void modifyLookahead
750  (rti1516::LogicalTimeInterval const & theLookahead)
751  throw (rti1516::TimeRegulationIsNotEnabled,
752  rti1516::InvalidLookahead,
753  rti1516::InTimeAdvancingState,
754  rti1516::FederateNotExecutionMember,
755  rti1516::SaveInProgress,
756  rti1516::RestoreInProgress,
757  rti1516::RTIinternalError);
758 
759  // 8.20
760  virtual void queryLookahead (rti1516::LogicalTimeInterval & interval)
761  throw (rti1516::TimeRegulationIsNotEnabled,
762  rti1516::FederateNotExecutionMember,
763  rti1516::SaveInProgress,
764  rti1516::RestoreInProgress,
765  rti1516::RTIinternalError);
766 
767  // 8.21
768  virtual void retract
769  (rti1516::MessageRetractionHandle theHandle)
770  throw (rti1516::InvalidRetractionHandle,
771  rti1516::TimeRegulationIsNotEnabled,
772  rti1516::MessageCanNoLongerBeRetracted,
773  rti1516::FederateNotExecutionMember,
774  rti1516::SaveInProgress,
775  rti1516::RestoreInProgress,
776  rti1516::RTIinternalError);
777 
778  // 8.23
779  virtual void changeAttributeOrderType
780  (rti1516::ObjectInstanceHandle theObject,
781  rti1516::AttributeHandleSet const & theAttributes,
782  rti1516::OrderType theType)
783  throw (rti1516::ObjectInstanceNotKnown,
784  rti1516::AttributeNotDefined,
785  rti1516::AttributeNotOwned,
786  rti1516::FederateNotExecutionMember,
787  rti1516::SaveInProgress,
788  rti1516::RestoreInProgress,
789  rti1516::RTIinternalError);
790 
791  // 8.24
792  virtual void changeInteractionOrderType
793  (rti1516::InteractionClassHandle theClass,
794  rti1516::OrderType theType)
795  throw (rti1516::InteractionClassNotDefined,
796  rti1516::InteractionClassNotPublished,
797  rti1516::FederateNotExecutionMember,
798  rti1516::SaveInProgress,
799  rti1516::RestoreInProgress,
800  rti1516::RTIinternalError);
801 
803  // Data Distribution Management //
805 
806  // 9.2
807  virtual rti1516::RegionHandle createRegion
808  (rti1516::DimensionHandleSet const & theDimensions)
809  throw (rti1516::InvalidDimensionHandle,
810  rti1516::FederateNotExecutionMember,
811  rti1516::SaveInProgress,
812  rti1516::RestoreInProgress,
813  rti1516::RTIinternalError);
814 
815  // 9.3
816  virtual void commitRegionModifications
817  (rti1516::RegionHandleSet const & theRegionHandleSet)
818  throw (rti1516::InvalidRegion,
819  rti1516::RegionNotCreatedByThisFederate,
820  rti1516::FederateNotExecutionMember,
821  rti1516::SaveInProgress,
822  rti1516::RestoreInProgress,
823  rti1516::RTIinternalError);
824 
825  // 9.4
826  virtual void deleteRegion
827  (rti1516::RegionHandle theRegion)
828  throw (rti1516::InvalidRegion,
829  rti1516::RegionNotCreatedByThisFederate,
830  rti1516::RegionInUseForUpdateOrSubscription,
831  rti1516::FederateNotExecutionMember,
832  rti1516::SaveInProgress,
833  rti1516::RestoreInProgress,
834  rti1516::RTIinternalError);
835 
836  // 9.5
837  virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
838  (rti1516::ObjectClassHandle theClass,
839  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
840  theAttributeHandleSetRegionHandleSetPairVector)
841  throw (rti1516::ObjectClassNotDefined,
842  rti1516::ObjectClassNotPublished,
843  rti1516::AttributeNotDefined,
844  rti1516::AttributeNotPublished,
845  rti1516::InvalidRegion,
846  rti1516::RegionNotCreatedByThisFederate,
847  rti1516::InvalidRegionContext,
848  rti1516::FederateNotExecutionMember,
849  rti1516::SaveInProgress,
850  rti1516::RestoreInProgress,
851  rti1516::RTIinternalError);
852 
853  virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
854  (rti1516::ObjectClassHandle theClass,
855  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
856  theAttributeHandleSetRegionHandleSetPairVector,
857  std::wstring const & theObjectInstanceName)
858  throw (rti1516::ObjectClassNotDefined,
859  rti1516::ObjectClassNotPublished,
860  rti1516::AttributeNotDefined,
861  rti1516::AttributeNotPublished,
862  rti1516::InvalidRegion,
863  rti1516::RegionNotCreatedByThisFederate,
864  rti1516::InvalidRegionContext,
865  rti1516::ObjectInstanceNameNotReserved,
866  rti1516::ObjectInstanceNameInUse,
867  rti1516::FederateNotExecutionMember,
868  rti1516::SaveInProgress,
869  rti1516::RestoreInProgress,
870  rti1516::RTIinternalError);
871 
872  // 9.6
873  virtual void associateRegionsForUpdates
874  (rti1516::ObjectInstanceHandle theObject,
875  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
876  theAttributeHandleSetRegionHandleSetPairVector)
877  throw (rti1516::ObjectInstanceNotKnown,
878  rti1516::AttributeNotDefined,
879  rti1516::InvalidRegion,
880  rti1516::RegionNotCreatedByThisFederate,
881  rti1516::InvalidRegionContext,
882  rti1516::FederateNotExecutionMember,
883  rti1516::SaveInProgress,
884  rti1516::RestoreInProgress,
885  rti1516::RTIinternalError);
886 
887  // 9.7
888  virtual void unassociateRegionsForUpdates
889  (rti1516::ObjectInstanceHandle theObject,
890  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
891  theAttributeHandleSetRegionHandleSetPairVector)
892  throw (rti1516::ObjectInstanceNotKnown,
893  rti1516::AttributeNotDefined,
894  rti1516::InvalidRegion,
895  rti1516::RegionNotCreatedByThisFederate,
896  rti1516::FederateNotExecutionMember,
897  rti1516::SaveInProgress,
898  rti1516::RestoreInProgress,
899  rti1516::RTIinternalError);
900 
901  // 9.8
902  virtual void subscribeObjectClassAttributesWithRegions
903  (rti1516::ObjectClassHandle theClass,
904  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
905  theAttributeHandleSetRegionHandleSetPairVector,
906  bool active = true)
907  throw (rti1516::ObjectClassNotDefined,
908  rti1516::AttributeNotDefined,
909  rti1516::InvalidRegion,
910  rti1516::RegionNotCreatedByThisFederate,
911  rti1516::InvalidRegionContext,
912  rti1516::FederateNotExecutionMember,
913  rti1516::SaveInProgress,
914  rti1516::RestoreInProgress,
915  rti1516::RTIinternalError);
916 
917  // 9.9
918  virtual void unsubscribeObjectClassAttributesWithRegions
919  (rti1516::ObjectClassHandle theClass,
920  rti1516::AttributeHandleSetRegionHandleSetPairVector const &
921  theAttributeHandleSetRegionHandleSetPairVector)
922  throw (rti1516::ObjectClassNotDefined,
923  rti1516::AttributeNotDefined,
924  rti1516::InvalidRegion,
925  rti1516::RegionNotCreatedByThisFederate,
926  rti1516::FederateNotExecutionMember,
927  rti1516::SaveInProgress,
928  rti1516::RestoreInProgress,
929  rti1516::RTIinternalError);
930 
931  // 9.10
932  virtual void subscribeInteractionClassWithRegions
933  (rti1516::InteractionClassHandle theClass,
934  rti1516::RegionHandleSet const & theRegionHandleSet,
935  bool active = true)
936  throw (rti1516::InteractionClassNotDefined,
937  rti1516::InvalidRegion,
938  rti1516::RegionNotCreatedByThisFederate,
939  rti1516::InvalidRegionContext,
940  rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
941  rti1516::FederateNotExecutionMember,
942  rti1516::SaveInProgress,
943  rti1516::RestoreInProgress,
944  rti1516::RTIinternalError);
945 
946  // 9.11
947  virtual void unsubscribeInteractionClassWithRegions
948  (rti1516::InteractionClassHandle theClass,
949  rti1516::RegionHandleSet const & theRegionHandleSet)
950  throw (rti1516::InteractionClassNotDefined,
951  rti1516::InvalidRegion,
952  rti1516::RegionNotCreatedByThisFederate,
953  rti1516::FederateNotExecutionMember,
954  rti1516::SaveInProgress,
955  rti1516::RestoreInProgress,
956  rti1516::RTIinternalError);
957 
958  // 9.12
959  virtual void sendInteractionWithRegions
960  (rti1516::InteractionClassHandle theInteraction,
961  rti1516::ParameterHandleValueMap const & theParameterValues,
962  rti1516::RegionHandleSet const & theRegionHandleSet,
963  rti1516::VariableLengthData const & theUserSuppliedTag)
964  throw (rti1516::InteractionClassNotDefined,
965  rti1516::InteractionClassNotPublished,
966  rti1516::InteractionParameterNotDefined,
967  rti1516::InvalidRegion,
968  rti1516::RegionNotCreatedByThisFederate,
969  rti1516::InvalidRegionContext,
970  rti1516::FederateNotExecutionMember,
971  rti1516::SaveInProgress,
972  rti1516::RestoreInProgress,
973  rti1516::RTIinternalError);
974 
975  virtual rti1516::MessageRetractionHandle sendInteractionWithRegions
976  (rti1516::InteractionClassHandle theInteraction,
977  rti1516::ParameterHandleValueMap const & theParameterValues,
978  rti1516::RegionHandleSet const & theRegionHandleSet,
979  rti1516::VariableLengthData const & theUserSuppliedTag,
980  rti1516::LogicalTime const & theTime)
981  throw (rti1516::InteractionClassNotDefined,
982  rti1516::InteractionClassNotPublished,
983  rti1516::InteractionParameterNotDefined,
984  rti1516::InvalidRegion,
985  rti1516::RegionNotCreatedByThisFederate,
986  rti1516::InvalidRegionContext,
987  rti1516::InvalidLogicalTime,
988  rti1516::FederateNotExecutionMember,
989  rti1516::SaveInProgress,
990  rti1516::RestoreInProgress,
991  rti1516::RTIinternalError);
992 
993  // 9.13
994  virtual void requestAttributeValueUpdateWithRegions
995  (rti1516::ObjectClassHandle theClass,
996  rti1516::AttributeHandleSetRegionHandleSetPairVector const & theSet,
997  rti1516::VariableLengthData const & theUserSuppliedTag)
998  throw (rti1516::ObjectClassNotDefined,
999  rti1516::AttributeNotDefined,
1000  rti1516::InvalidRegion,
1001  rti1516::RegionNotCreatedByThisFederate,
1002  rti1516::InvalidRegionContext,
1003  rti1516::FederateNotExecutionMember,
1004  rti1516::SaveInProgress,
1005  rti1516::RestoreInProgress,
1006  rti1516::RTIinternalError);
1007 
1009  // RTI Support Services //
1011 
1012  // 10.2
1013  virtual rti1516::ObjectClassHandle getObjectClassHandle
1014  (std::wstring const & theName)
1015  throw (rti1516::NameNotFound,
1016  rti1516::FederateNotExecutionMember,
1017  rti1516::RTIinternalError);
1018 
1019  // 10.3
1020  virtual std::wstring getObjectClassName
1021  (rti1516::ObjectClassHandle theHandle)
1022  throw (rti1516::InvalidObjectClassHandle,
1023  rti1516::FederateNotExecutionMember,
1024  rti1516::RTIinternalError);
1025 
1026  // 10.4
1027  virtual rti1516::AttributeHandle getAttributeHandle
1028  (rti1516::ObjectClassHandle whichClass,
1029  std::wstring const & theAttributeName)
1030  throw (rti1516::InvalidObjectClassHandle,
1031  rti1516::NameNotFound,
1032  rti1516::FederateNotExecutionMember,
1033  rti1516::RTIinternalError);
1034 
1035  // 10.5
1036  virtual std::wstring getAttributeName
1037  (rti1516::ObjectClassHandle whichClass,
1038  rti1516::AttributeHandle theHandle)
1039  throw (rti1516::InvalidObjectClassHandle,
1040  rti1516::InvalidAttributeHandle,
1041  rti1516::AttributeNotDefined,
1042  rti1516::FederateNotExecutionMember,
1043  rti1516::RTIinternalError);
1044 
1045  // 10.6
1047  (std::wstring const & theName)
1048  throw (rti1516::NameNotFound,
1049  rti1516::FederateNotExecutionMember,
1050  rti1516::RTIinternalError);
1051 
1052  // 10.7
1053  virtual std::wstring getInteractionClassName
1054  (rti1516::InteractionClassHandle theHandle)
1055  throw (rti1516::InvalidInteractionClassHandle,
1056  rti1516::FederateNotExecutionMember,
1057  rti1516::RTIinternalError);
1058 
1059  // 10.8
1060  virtual rti1516::ParameterHandle getParameterHandle
1061  (rti1516::InteractionClassHandle whichClass,
1062  std::wstring const & theName)
1063  throw (rti1516::InvalidInteractionClassHandle,
1064  rti1516::NameNotFound,
1065  rti1516::FederateNotExecutionMember,
1066  rti1516::RTIinternalError);
1067 
1068  // 10.9
1069  virtual std::wstring getParameterName
1070  (rti1516::InteractionClassHandle whichClass,
1071  rti1516::ParameterHandle theHandle)
1072  throw (rti1516::InvalidInteractionClassHandle,
1073  rti1516::InvalidParameterHandle,
1074  rti1516::InteractionParameterNotDefined,
1075  rti1516::FederateNotExecutionMember,
1076  rti1516::RTIinternalError);
1077 
1078  // 10.10
1079  virtual rti1516::ObjectInstanceHandle getObjectInstanceHandle
1080  (std::wstring const & theName)
1081  throw (rti1516::ObjectInstanceNotKnown,
1082  rti1516::FederateNotExecutionMember,
1083  rti1516::RTIinternalError);
1084 
1085  // 10.11
1086  virtual std::wstring getObjectInstanceName
1087  (rti1516::ObjectInstanceHandle theHandle)
1088  throw (rti1516::ObjectInstanceNotKnown,
1089  rti1516::FederateNotExecutionMember,
1090  rti1516::RTIinternalError);
1091 
1092  // 10.12
1093  virtual rti1516::DimensionHandle getDimensionHandle
1094  (std::wstring const & theName)
1095  throw (rti1516::NameNotFound,
1096  rti1516::FederateNotExecutionMember,
1097  rti1516::RTIinternalError);
1098 
1099  // 10.13
1100  virtual std::wstring getDimensionName
1101  (rti1516::DimensionHandle theHandle)
1102  throw (rti1516::InvalidDimensionHandle,
1103  rti1516::FederateNotExecutionMember,
1104  rti1516::RTIinternalError);
1105 
1106  // 10.14
1107  virtual unsigned long getDimensionUpperBound
1108  (rti1516::DimensionHandle theHandle)
1109  throw (rti1516::InvalidDimensionHandle,
1110  rti1516::FederateNotExecutionMember,
1111  rti1516::RTIinternalError);
1112 
1113  // 10.15
1114  virtual rti1516::DimensionHandleSet getAvailableDimensionsForClassAttribute
1115  (rti1516::ObjectClassHandle theClass,
1116  rti1516::AttributeHandle theHandle)
1117  throw (rti1516::InvalidObjectClassHandle,
1118  rti1516::InvalidAttributeHandle,
1119  rti1516::AttributeNotDefined,
1120  rti1516::FederateNotExecutionMember,
1121  rti1516::RTIinternalError);
1122 
1123  // 10.16
1124  virtual rti1516::ObjectClassHandle getKnownObjectClassHandle
1125  (rti1516::ObjectInstanceHandle theObject)
1126  throw (rti1516::ObjectInstanceNotKnown,
1127  rti1516::FederateNotExecutionMember,
1128  rti1516::RTIinternalError);
1129 
1130  // 10.17
1131  virtual rti1516::DimensionHandleSet getAvailableDimensionsForInteractionClass
1132  (rti1516::InteractionClassHandle theClass)
1133  throw (rti1516::InvalidInteractionClassHandle,
1134  rti1516::FederateNotExecutionMember,
1135  rti1516::RTIinternalError);
1136 
1137  // 10.18
1138  virtual rti1516::TransportationType getTransportationType
1139  (std::wstring const & transportationName)
1140  throw (rti1516::InvalidTransportationName,
1141  rti1516::FederateNotExecutionMember,
1142  rti1516::RTIinternalError);
1143 
1144  // 10.19
1145  virtual std::wstring getTransportationName
1146  (rti1516::TransportationType transportationType)
1147  throw (rti1516::InvalidTransportationType,
1148  rti1516::FederateNotExecutionMember,
1149  rti1516::RTIinternalError);
1150 
1151  // 10.20
1152  virtual rti1516::OrderType getOrderType
1153  (std::wstring const & orderName)
1154  throw (rti1516::InvalidOrderName,
1155  rti1516::FederateNotExecutionMember,
1156  rti1516::RTIinternalError);
1157 
1158  // 10.21
1159  virtual std::wstring getOrderName
1160  (rti1516::OrderType orderType)
1161  throw (rti1516::InvalidOrderType,
1162  rti1516::FederateNotExecutionMember,
1163  rti1516::RTIinternalError);
1164 
1165  // 10.22
1166  virtual void enableObjectClassRelevanceAdvisorySwitch ()
1167  throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOn,
1168  rti1516::FederateNotExecutionMember,
1169  rti1516::SaveInProgress,
1170  rti1516::RestoreInProgress,
1171  rti1516::RTIinternalError);
1172 
1173  // 10.23
1174  virtual void disableObjectClassRelevanceAdvisorySwitch ()
1175  throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOff,
1176  rti1516::FederateNotExecutionMember,
1177  rti1516::SaveInProgress,
1178  rti1516::RestoreInProgress,
1179  rti1516::RTIinternalError);
1180 
1181  // 10.24
1183  throw (rti1516::AttributeRelevanceAdvisorySwitchIsOn,
1184  rti1516::FederateNotExecutionMember,
1185  rti1516::SaveInProgress,
1186  rti1516::RestoreInProgress,
1187  rti1516::RTIinternalError);
1188 
1189  // 10.25
1191  throw (rti1516::AttributeRelevanceAdvisorySwitchIsOff,
1192  rti1516::FederateNotExecutionMember,
1193  rti1516::SaveInProgress,
1194  rti1516::RestoreInProgress,
1195  rti1516::RTIinternalError);
1196 
1197  // 10.26
1198  virtual void enableAttributeScopeAdvisorySwitch ()
1199  throw (rti1516::AttributeScopeAdvisorySwitchIsOn,
1200  rti1516::FederateNotExecutionMember,
1201  rti1516::SaveInProgress,
1202  rti1516::RestoreInProgress,
1203  rti1516::RTIinternalError);
1204 
1205  // 10.27
1206  virtual void disableAttributeScopeAdvisorySwitch ()
1207  throw (rti1516::AttributeScopeAdvisorySwitchIsOff,
1208  rti1516::FederateNotExecutionMember,
1209  rti1516::SaveInProgress,
1210  rti1516::RestoreInProgress,
1211  rti1516::RTIinternalError);
1212 
1213  // 10.28
1215  throw (rti1516::InteractionRelevanceAdvisorySwitchIsOn,
1216  rti1516::FederateNotExecutionMember,
1217  rti1516::SaveInProgress,
1218  rti1516::RestoreInProgress,
1219  rti1516::RTIinternalError);
1220 
1221  // 10.29
1223  throw (rti1516::InteractionRelevanceAdvisorySwitchIsOff,
1224  rti1516::FederateNotExecutionMember,
1225  rti1516::SaveInProgress,
1226  rti1516::RestoreInProgress,
1227  rti1516::RTIinternalError);
1228 
1229  // 10.30
1230  virtual
1231  rti1516::DimensionHandleSet getDimensionHandleSet
1232  (rti1516::RegionHandle theRegionHandle)
1233  throw (rti1516::InvalidRegion,
1234  rti1516::FederateNotExecutionMember,
1235  rti1516::SaveInProgress,
1236  rti1516::RestoreInProgress,
1237  rti1516::RTIinternalError);
1238 
1239  // 10.31
1240  virtual
1241  rti1516::RangeBounds getRangeBounds
1242  (rti1516::RegionHandle theRegionHandle,
1243  rti1516::DimensionHandle theDimensionHandle)
1244  throw (rti1516::InvalidRegion,
1245  rti1516::RegionDoesNotContainSpecifiedDimension,
1246  rti1516::FederateNotExecutionMember,
1247  rti1516::SaveInProgress,
1248  rti1516::RestoreInProgress,
1249  rti1516::RTIinternalError);
1250 
1251  // 10.32
1252  virtual void setRangeBounds
1253  (rti1516::RegionHandle theRegionHandle,
1254  rti1516::DimensionHandle theDimensionHandle,
1255  rti1516::RangeBounds const & theRangeBounds)
1256  throw (rti1516::InvalidRegion,
1257  rti1516::RegionNotCreatedByThisFederate,
1258  rti1516::RegionDoesNotContainSpecifiedDimension,
1259  rti1516::InvalidRangeBound,
1260  rti1516::FederateNotExecutionMember,
1261  rti1516::SaveInProgress,
1262  rti1516::RestoreInProgress,
1263  rti1516::RTIinternalError);
1264 
1265  // 10.33
1266  virtual unsigned long normalizeFederateHandle
1267  (rti1516::FederateHandle theFederateHandle)
1268  throw (rti1516::FederateNotExecutionMember,
1269  rti1516::InvalidFederateHandle,
1270  rti1516::RTIinternalError);
1271 
1272  // 10.34
1273  virtual unsigned long normalizeServiceGroup
1274  (rti1516::ServiceGroupIndicator theServiceGroup)
1275  throw (rti1516::FederateNotExecutionMember,
1276  rti1516::InvalidServiceGroup,
1277  rti1516::RTIinternalError);
1278 
1279  // 10.37
1280  virtual bool evokeCallback(double approximateMinimumTimeInSeconds,
1281  bool unlockWhileWaiting=false)
1282  throw (rti1516::FederateNotExecutionMember,
1283  rti1516::RTIinternalError);
1284 
1285  // 10.38
1286  virtual bool evokeMultipleCallbacks(double approximateMinimumTimeInSeconds,
1287  double approximateMaximumTimeInSeconds,
1288  bool unlockWhileWaiting=false)
1289  throw (rti1516::FederateNotExecutionMember,
1290  rti1516::RTIinternalError);
1291 
1292  // 10.39
1293  virtual void enableCallbacks ()
1294  throw (rti1516::FederateNotExecutionMember,
1295  rti1516::SaveInProgress,
1296  rti1516::RestoreInProgress,
1297  rti1516::RTIinternalError);
1298 
1299  // 10.40
1300  virtual void disableCallbacks ()
1301  throw (rti1516::FederateNotExecutionMember,
1302  rti1516::SaveInProgress,
1303  rti1516::RestoreInProgress,
1304  rti1516::RTIinternalError);
1305 
1306  virtual rti1516::FederateHandle decodeFederateHandle(
1307  rti1516::VariableLengthData const & encodedValue) const;
1308 
1309  virtual rti1516::ObjectClassHandle decodeObjectClassHandle(
1310  rti1516::VariableLengthData const & encodedValue) const;
1311 
1312  virtual rti1516::InteractionClassHandle decodeInteractionClassHandle(
1313  rti1516::VariableLengthData const & encodedValue) const;
1314 
1315  virtual rti1516::ObjectInstanceHandle decodeObjectInstanceHandle(
1316  rti1516::VariableLengthData const & encodedValue) const;
1317 
1318  virtual rti1516::AttributeHandle decodeAttributeHandle(
1319  rti1516::VariableLengthData const & encodedValue) const;
1320 
1321  virtual rti1516::ParameterHandle decodeParameterHandle(
1322  rti1516::VariableLengthData const & encodedValue) const;
1323 
1324  virtual rti1516::DimensionHandle decodeDimensionHandle(
1325  rti1516::VariableLengthData const & encodedValue) const;
1326 
1327  virtual rti1516::MessageRetractionHandle decodeMessageRetractionHandle(
1328  rti1516::VariableLengthData const & encodedValue) const;
1329 
1330  virtual rti1516::RegionHandle decodeRegionHandle(
1331  rti1516::VariableLengthData const & encodedValue) const;
1332 
1333 
1334 public:
1335 
1336  // Creates an instance of a DtRtiAmbassadorImplementor
1337  static DtRtiAmbassadorImplementor* create(rti1516::RTIambassador* topLevelAmbPtr,
1338  const std::vector< std::wstring >& initArgs);
1339 
1340 protected:
1341 
1342  // Wrapper to capture statistics for federate ambassador calls
1343  DtNetStatsFedAmbWrapper* myStatisticsFedAmb;
1344  DtString myStatisticsFedAmbName;
1345 
1346  // Statistics Log
1347  DtNetStatsMonitor* myNetStats;
1348 
1349  // API Call Timer
1350  MAKRti::DtClock myTimer;
1351 
1352  MAKRti::DtTime myStartTime;
1353 
1354  // Enable/Disable flag for network statistics
1355  bool myNetStatsEnabled;
1356 
1357 };
1358 
1359 #endif // DtIFSPEC1516
1360 #endif // netStatsRtiAmb1516_h__
virtual void deleteRegion(Region *theRegion)
virtual void enableInteractionRelevanceAdvisorySwitch()
virtual char * getAttributeName(AttributeHandle theHandle, ObjectClassHandle whichClass)
virtual void federateSaveNotComplete()
virtual ParameterHandle getParameterHandle(const char *theName, InteractionClassHandle whichClass)
virtual void unconditionalAttributeOwnershipDivestiture(ObjectHandle theObject, const AttributeHandleSet &theAttributes)
virtual void attributeOwnershipAcquisition(ObjectHandle theObject, const AttributeHandleSet &desiredAttributes, const char *theTag)
virtual EventRetractionHandle sendInteraction(InteractionClassHandle theInteraction, const ParameterHandleValuePairSet &theParameters, const FedTime &theTime, const char *theTag)
virtual ObjectHandle registerObjectInstance(ObjectClassHandle theClass, const char *theObject)
virtual void requestFederationRestore(const char *label)
virtual char * getObjectClassName(ObjectClassHandle theHandle)
virtual void disableTimeConstrained()
virtual void changeInteractionTransportationType(InteractionClassHandle theClass, TransportationHandle theType)
virtual void cancelAttributeOwnershipAcquisition(ObjectHandle theObject, const AttributeHandleSet &theAttributes)
ResignAction
Definition: RTItypes13.h:89
virtual void retract(EventRetractionHandle theHandle)
virtual void flushQueueRequest(const FedTime &theTime)
virtual void disableTimeRegulation()
virtual EventRetractionHandle updateAttributeValues(ObjectHandle theObject, const AttributeHandleValuePairSet &theAttributes, const FedTime &theTime, const char *theTag)
Definition: netStatsMonitor.h:30
virtual Region * createRegion(SpaceHandle theSpace, ULong numberOfExtents)
virtual char * getParameterName(ParameterHandle theHandle, InteractionClassHandle whichClass)
virtual void queryAttributeOwnership(ObjectHandle theObject, AttributeHandle theAttribute)
virtual void publishInteractionClass(InteractionClassHandle theInteraction)
virtual void localDeleteObjectInstance(ObjectHandle theObject)
ULong InteractionClassHandle
Definition: RTItypes13.h:106
Handle ParameterHandle
Definition: RTItypes13.h:114
virtual DimensionHandle getDimensionHandle(const char *theName, SpaceHandle whichSpace)
virtual void disableAttributeRelevanceAdvisorySwitch()
virtual void attributeOwnershipAcquisitionIfAvailable(ObjectHandle theObject, const AttributeHandleSet &desiredAttributes)
virtual void timeAdvanceRequestAvailable(const FedTime &theTime)
virtual void requestFederationSave(const char *label, const FedTime &theTime)
virtual void modifyLookahead(const FedTime &theLookahead)
virtual void enableAttributeScopeAdvisorySwitch()
virtual FederateHandle joinFederationExecution(const char *yourName, const char *executionName, FederateAmbassadorPtr federateAmbassadorReference)
virtual char * getInteractionClassName(InteractionClassHandle theHandle)
virtual void negotiatedAttributeOwnershipDivestiture(ObjectHandle theObject, const AttributeHandleSet &theAttributes, const char *theTag)
virtual ObjectHandle getObjectInstanceHandle(const char *theName)
virtual EventRetractionHandle deleteObjectInstance(ObjectHandle theObject, const FedTime &theTime, const char *theTag)
virtual void changeAttributeTransportationType(ObjectHandle theObject, const AttributeHandleSet &theAttributes, TransportationHandle theType)
virtual void timeAdvanceRequest(const FedTime &theTime)
virtual void resignFederationExecution(ResignAction theAction)
virtual void enableTimeRegulation(const FedTime &theFederateTime, const FedTime &theLookahead)
virtual InteractionClassHandle getInteractionClassHandle(const char *theName)
virtual void changeInteractionOrderType(InteractionClassHandle theClass, OrderingHandle theType)
virtual void federateRestoreComplete()
Handle DimensionHandle
Definition: RTItypes13.h:118
virtual void destroyFederationExecution(const char *executionName)
virtual void registerFederationSynchronizationPoint(const char *label, const char *theTag)
virtual void disableAsynchronousDelivery()
virtual void unpublishObjectClass(ObjectClassHandle theClass)
virtual void unsubscribeInteractionClass(InteractionClassHandle theClass)
virtual void unsubscribeObjectClass(ObjectClassHandle theClass)
virtual void unpublishInteractionClass(InteractionClassHandle theInteraction)
virtual void queryLookahead(FedTime &theTime)
virtual void disableInteractionRelevanceAdvisorySwitch()
DtRtiAmbAPIType
Definition: rtiAmbAPITypes.h:12
virtual void federateRestoreNotComplete()
virtual void createFederationExecution(const char *executionName, const char *FED)
virtual void cancelNegotiatedAttributeOwnershipDivestiture(ObjectHandle theObject, const AttributeHandleSet &theAttributes)
virtual void federateSaveBegun()
ULong FederateHandle
Definition: RTItypes13.h:120
virtual char * getDimensionName(DimensionHandle theHandle, SpaceHandle whichSpace)
virtual char * getObjectInstanceName(ObjectHandle theHandle)
virtual Boolean throw(SpecifiedSaveLabelDoesNotExist, ConcurrentAccessAttempted, RTIinternalError)
virtual void synchronizationPointAchieved(const char *label)
virtual Boolean isAttributeOwnedByFederate(ObjectHandle theObject, AttributeHandle theAttribute)
virtual void subscribeObjectClassAttributes(ObjectClassHandle theClass, const AttributeHandleSet &attributeList, Boolean active=RTI_TRUE)
virtual void disableAttributeScopeAdvisorySwitch()
virtual void subscribeInteractionClass(InteractionClassHandle theClass, Boolean active=RTI_TRUE)
virtual void changeAttributeOrderType(ObjectHandle theObject, const AttributeHandleSet &theAttributes, OrderingHandle theType)
ULong ObjectClassHandle
Definition: RTItypes13.h:104
virtual void enableTimeConstrained()
virtual void federateSaveComplete()
virtual void enableAsynchronousDelivery()
virtual AttributeHandle getAttributeHandle(const char *theName, ObjectClassHandle whichClass)
virtual char * getTransportationName(TransportationHandle theHandle)
OrderingHandle OrderType
Definition: RTItypes13.h:128
virtual void enableAttributeRelevanceAdvisorySwitch()
Handle AttributeHandle
Definition: RTItypes13.h:112
virtual ObjectClassHandle getObjectClassHandle(const char *theName)

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)