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

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)