MAK RTIspy API Documentation for HLA Evolved
RTIambassadorImpl1516e.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2011 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
11 #ifdef DtIFSPEC1516E
12 
13 #include "rtiMsConfig.h"
14 #include <RTI/RTIambassador.h>
15 #include <vlutil/vlPrint.h>
16 
17 class DtRIDParameters;
18 class DtRtiAmbassadorImplementor;
20 
21 using namespace rti1516e;
22 
23 class DT_DLL_LRC DtRTIambassador : public rti1516e::RTIambassador
24 {
25 public:
26  DtRTIambassador ()
27  throw ();
28 
29 public:
30  virtual ~DtRTIambassador ();
31 
32  // 4.2
33  virtual void connect (
34  FederateAmbassador & federateAmbassador,
35  CallbackModel theCallbackModel,
36  std::wstring const & localSettingsDesignator=L"")
37  throw (
38  ConnectionFailed,
39  InvalidLocalSettingsDesignator,
40  UnsupportedCallbackModel,
41  AlreadyConnected,
42  CallNotAllowedFromWithinCallback,
43  RTIinternalError);
44 
45  // 4.3
46  virtual void disconnect ()
47  throw (
48  FederateIsExecutionMember,
49  CallNotAllowedFromWithinCallback,
50  RTIinternalError);
51 
52  // 4.5
53  virtual void createFederationExecution (
54  std::wstring const & federationExecutionName,
55  std::wstring const & fomModule,
56  std::wstring const & logicalTimeImplementationName = L"")
57  throw (
58  CouldNotCreateLogicalTimeFactory,
59  InconsistentFDD,
60  ErrorReadingFDD,
61  CouldNotOpenFDD,
62  FederationExecutionAlreadyExists,
63  NotConnected,
64  RTIinternalError);
65 
66  virtual void createFederationExecution (
67  std::wstring const & federationExecutionName,
68  std::vector<std::wstring> const & fomModules,
69  std::wstring const & logicalTimeImplementationName = L"")
70  throw (
71  CouldNotCreateLogicalTimeFactory,
72  InconsistentFDD,
73  ErrorReadingFDD,
74  CouldNotOpenFDD,
75  FederationExecutionAlreadyExists,
76  NotConnected,
77  RTIinternalError);
78 
79  virtual void createFederationExecutionWithMIM (
80  std::wstring const & federationExecutionName,
81  std::vector<std::wstring> const & fomModules,
82  std::wstring const & mimModule,
83  std::wstring const & logicalTimeImplementationName = L"")
84  throw (
85  CouldNotCreateLogicalTimeFactory,
86  InconsistentFDD,
87  ErrorReadingFDD,
88  CouldNotOpenFDD,
89  DesignatorIsHLAstandardMIM,
90  ErrorReadingMIM,
91  CouldNotOpenMIM,
92  FederationExecutionAlreadyExists,
93  NotConnected,
94  RTIinternalError);
95 
96  // 4.6
97  virtual void destroyFederationExecution (
98  std::wstring const & federationExecutionName)
99  throw (
100  FederatesCurrentlyJoined,
101  FederationExecutionDoesNotExist,
102  NotConnected,
103  RTIinternalError);
104 
105  // 4.7
106  virtual void listFederationExecutions ()
107  throw (
108  NotConnected,
109  RTIinternalError);
110 
111  // 4.9
113  std::wstring const & federateType,
114  std::wstring const & federationExecutionName,
115  std::vector<std::wstring> const & additionalFomModules=std::vector<std::wstring>())
116  throw (
117  CouldNotCreateLogicalTimeFactory,
118  FederationExecutionDoesNotExist,
119  InconsistentFDD,
120  ErrorReadingFDD,
121  CouldNotOpenFDD,
122  SaveInProgress,
123  RestoreInProgress,
124  FederateAlreadyExecutionMember,
125  NotConnected,
126  CallNotAllowedFromWithinCallback,
127  RTIinternalError);
128 
130  std::wstring const & federateName,
131  std::wstring const & federateType,
132  std::wstring const & federationExecutionName,
133  std::vector<std::wstring> const & additionalFomModules=std::vector<std::wstring>())
134  throw (
135  CouldNotCreateLogicalTimeFactory,
136  FederateNameAlreadyInUse,
137  FederationExecutionDoesNotExist,
138  InconsistentFDD,
139  ErrorReadingFDD,
140  CouldNotOpenFDD,
141  SaveInProgress,
142  RestoreInProgress,
143  FederateAlreadyExecutionMember,
144  NotConnected,
145  CallNotAllowedFromWithinCallback,
146  RTIinternalError);
147 
148  // 4.10
149  virtual void resignFederationExecution (
150  ResignAction resignAction)
151  throw (
152  InvalidResignAction,
153  OwnershipAcquisitionPending,
154  FederateOwnsAttributes,
155  FederateNotExecutionMember,
156  NotConnected,
157  CallNotAllowedFromWithinCallback,
158  RTIinternalError);
159 
160  // 4.11
162  std::wstring const & label,
163  VariableLengthData const & theUserSuppliedTag)
164  throw (
165  SaveInProgress,
166  RestoreInProgress,
167  FederateNotExecutionMember,
168  NotConnected,
169  RTIinternalError);
170 
172  std::wstring const & label,
173  VariableLengthData const & theUserSuppliedTag,
174  FederateHandleSet const & synchronizationSet)
175  throw (
176  InvalidFederateHandle,
177  SaveInProgress,
178  RestoreInProgress,
179  FederateNotExecutionMember,
180  NotConnected,
181  RTIinternalError);
182 
183  // 4.14
184  virtual void synchronizationPointAchieved (
185  std::wstring const & label,
186  bool successfully = true)
187  throw (
188  SynchronizationPointLabelNotAnnounced,
189  SaveInProgress,
190  RestoreInProgress,
191  FederateNotExecutionMember,
192  NotConnected,
193  RTIinternalError);
194 
195  // 4.16
196  virtual void requestFederationSave (
197  std::wstring const & label)
198  throw (
199  SaveInProgress,
200  RestoreInProgress,
201  FederateNotExecutionMember,
202  NotConnected,
203  RTIinternalError);
204 
205  virtual void requestFederationSave (
206  std::wstring const & label,
207  LogicalTime const & theTime)
208  throw (
209  LogicalTimeAlreadyPassed,
210  InvalidLogicalTime,
211  FederateUnableToUseTime,
212  SaveInProgress,
213  RestoreInProgress,
214  FederateNotExecutionMember,
215  NotConnected,
216  RTIinternalError);
217 
218  // 4.18
219  virtual void federateSaveBegun ()
220  throw (
221  SaveNotInitiated,
222  RestoreInProgress,
223  FederateNotExecutionMember,
224  NotConnected,
225  RTIinternalError);
226 
227  // 4.19
228  virtual void federateSaveComplete ()
229  throw (
230  FederateHasNotBegunSave,
231  RestoreInProgress,
232  FederateNotExecutionMember,
233  NotConnected,
234  RTIinternalError);
235 
236  virtual void federateSaveNotComplete ()
237  throw (
238  FederateHasNotBegunSave,
239  RestoreInProgress,
240  FederateNotExecutionMember,
241  NotConnected,
242  RTIinternalError);
243 
244  // 4.21
245  virtual void abortFederationSave ()
246  throw (
247  SaveNotInProgress,
248  FederateNotExecutionMember,
249  NotConnected,
250  RTIinternalError);
251 
252  // 4.22
253  virtual void queryFederationSaveStatus ()
254  throw (
255  RestoreInProgress,
256  FederateNotExecutionMember,
257  NotConnected,
258  RTIinternalError);
259 
260  // 4.24
261  virtual void requestFederationRestore (
262  std::wstring const & label)
263  throw (
264  SaveInProgress,
265  RestoreInProgress,
266  FederateNotExecutionMember,
267  NotConnected,
268  RTIinternalError);
269 
270  // 4.28
271  virtual void federateRestoreComplete ()
272  throw (
273  RestoreNotRequested,
274  SaveInProgress,
275  FederateNotExecutionMember,
276  NotConnected,
277  RTIinternalError);
278 
279  virtual void federateRestoreNotComplete ()
280  throw (
281  RestoreNotRequested,
282  SaveInProgress,
283  FederateNotExecutionMember,
284  NotConnected,
285  RTIinternalError);
286 
287  // 4.30
288  virtual void abortFederationRestore ()
289  throw (
290  RestoreNotInProgress,
291  FederateNotExecutionMember,
292  NotConnected,
293  RTIinternalError);
294 
295  // 4.31
296  virtual void queryFederationRestoreStatus ()
297  throw (
298  SaveInProgress,
299  FederateNotExecutionMember,
300  NotConnected,
301  RTIinternalError);
302 
304  // Declaration Management Services //
306 
307  // 5.2
308  virtual void publishObjectClassAttributes (
309  ObjectClassHandle theClass,
310  AttributeHandleSet const & attributeList)
311  throw (
312  AttributeNotDefined,
313  ObjectClassNotDefined,
314  SaveInProgress,
315  RestoreInProgress,
316  FederateNotExecutionMember,
317  NotConnected,
318  RTIinternalError);
319 
320  // 5.3
321  virtual void unpublishObjectClass (
322  ObjectClassHandle theClass)
323  throw (
324  OwnershipAcquisitionPending,
325  ObjectClassNotDefined,
326  SaveInProgress,
327  RestoreInProgress,
328  FederateNotExecutionMember,
329  NotConnected,
330  RTIinternalError);
331 
332  virtual void unpublishObjectClassAttributes (
333  ObjectClassHandle theClass,
334  AttributeHandleSet const & attributeList)
335  throw (
336  OwnershipAcquisitionPending,
337  AttributeNotDefined,
338  ObjectClassNotDefined,
339  SaveInProgress,
340  RestoreInProgress,
341  FederateNotExecutionMember,
342  NotConnected,
343  RTIinternalError);
344 
345  // 5.4
346  virtual void publishInteractionClass (
347  InteractionClassHandle theInteraction)
348  throw (
349  InteractionClassNotDefined,
350  SaveInProgress,
351  RestoreInProgress,
352  FederateNotExecutionMember,
353  NotConnected,
354  RTIinternalError);
355 
356  // 5.5
357  virtual void unpublishInteractionClass (
358  InteractionClassHandle theInteraction)
359  throw (
360  InteractionClassNotDefined,
361  SaveInProgress,
362  RestoreInProgress,
363  FederateNotExecutionMember,
364  NotConnected,
365  RTIinternalError);
366 
367  // 5.6
368  virtual void subscribeObjectClassAttributes (
369  ObjectClassHandle theClass,
370  AttributeHandleSet const & attributeList,
371  bool active = true,
372  std::wstring const & updateRateDesignator = L"")
373  throw (
374  AttributeNotDefined,
375  ObjectClassNotDefined,
376  InvalidUpdateRateDesignator,
377  SaveInProgress,
378  RestoreInProgress,
379  FederateNotExecutionMember,
380  NotConnected,
381  RTIinternalError);
382 
383  // 5.7
384  virtual void unsubscribeObjectClass (
385  ObjectClassHandle theClass)
386  throw (
387  ObjectClassNotDefined,
388  SaveInProgress,
389  RestoreInProgress,
390  FederateNotExecutionMember,
391  NotConnected,
392  RTIinternalError);
393 
394  virtual void unsubscribeObjectClassAttributes (
395  ObjectClassHandle theClass,
396  AttributeHandleSet const & attributeList)
397  throw (
398  AttributeNotDefined,
399  ObjectClassNotDefined,
400  SaveInProgress,
401  RestoreInProgress,
402  FederateNotExecutionMember,
403  NotConnected,
404  RTIinternalError);
405 
406  // 5.8
407  virtual void subscribeInteractionClass (
408  InteractionClassHandle theClass,
409  bool active = true)
410  throw (
411  FederateServiceInvocationsAreBeingReportedViaMOM,
412  InteractionClassNotDefined,
413  SaveInProgress,
414  RestoreInProgress,
415  FederateNotExecutionMember,
416  NotConnected,
417  RTIinternalError);
418 
419  // 5.9
420  virtual void unsubscribeInteractionClass (
421  InteractionClassHandle theClass)
422  throw (
423  InteractionClassNotDefined,
424  SaveInProgress,
425  RestoreInProgress,
426  FederateNotExecutionMember,
427  NotConnected,
428  RTIinternalError);
429 
431  // Object Management Services //
433 
434  // 6.2
435  virtual void reserveObjectInstanceName (
436  std::wstring const & theObjectInstanceName)
437  throw (
438  IllegalName,
439  SaveInProgress,
440  RestoreInProgress,
441  FederateNotExecutionMember,
442  NotConnected,
443  RTIinternalError);
444 
445  // 6.4
446  virtual void releaseObjectInstanceName (
447  std::wstring const & theObjectInstanceName)
448  throw (
449  ObjectInstanceNameNotReserved,
450  SaveInProgress,
451  RestoreInProgress,
452  FederateNotExecutionMember,
453  NotConnected,
454  RTIinternalError);
455 
456  // 6.5
457  virtual void reserveMultipleObjectInstanceName (
458  std::set<std::wstring> const & theObjectInstanceNames)
459  throw (
460  IllegalName,
461  NameSetWasEmpty,
462  SaveInProgress,
463  RestoreInProgress,
464  FederateNotExecutionMember,
465  NotConnected,
466  RTIinternalError);
467 
468  // 6.7
469  virtual void releaseMultipleObjectInstanceName (
470  std::set<std::wstring> const & theObjectInstanceNames)
471  throw (
472  ObjectInstanceNameNotReserved,
473  SaveInProgress,
474  RestoreInProgress,
475  FederateNotExecutionMember,
476  NotConnected,
477  RTIinternalError);
478 
479  // 6.8
480  virtual ObjectInstanceHandle registerObjectInstance (
481  ObjectClassHandle theClass)
482  throw (
483  ObjectClassNotPublished,
484  ObjectClassNotDefined,
485  SaveInProgress,
486  RestoreInProgress,
487  FederateNotExecutionMember,
488  NotConnected,
489  RTIinternalError);
490 
491  virtual ObjectInstanceHandle registerObjectInstance (
492  ObjectClassHandle theClass,
493  std::wstring const & theObjectInstanceName)
494  throw (
495  ObjectInstanceNameInUse,
496  ObjectInstanceNameNotReserved,
497  ObjectClassNotPublished,
498  ObjectClassNotDefined,
499  SaveInProgress,
500  RestoreInProgress,
501  FederateNotExecutionMember,
502  NotConnected,
503  RTIinternalError);
504 
505  // 6.10
506  virtual void updateAttributeValues (
507  ObjectInstanceHandle theObject,
508  AttributeHandleValueMap const & theAttributeValues,
509  VariableLengthData const & theUserSuppliedTag)
510  throw (
511  AttributeNotOwned,
512  AttributeNotDefined,
513  ObjectInstanceNotKnown,
514  SaveInProgress,
515  RestoreInProgress,
516  FederateNotExecutionMember,
517  NotConnected,
518  RTIinternalError);
519 
520  virtual MessageRetractionHandle updateAttributeValues (
521  ObjectInstanceHandle theObject,
522  AttributeHandleValueMap const & theAttributeValues,
523  VariableLengthData const & theUserSuppliedTag,
524  LogicalTime const & theTime)
525  throw (
526  InvalidLogicalTime,
527  AttributeNotOwned,
528  AttributeNotDefined,
529  ObjectInstanceNotKnown,
530  SaveInProgress,
531  RestoreInProgress,
532  FederateNotExecutionMember,
533  NotConnected,
534  RTIinternalError);
535 
536  // 6.12
537  virtual void sendInteraction (
538  InteractionClassHandle theInteraction,
539  ParameterHandleValueMap const & theParameterValues,
540  VariableLengthData const & theUserSuppliedTag)
541  throw (
542  InteractionClassNotPublished,
543  InteractionParameterNotDefined,
544  InteractionClassNotDefined,
545  SaveInProgress,
546  RestoreInProgress,
547  FederateNotExecutionMember,
548  NotConnected,
549  RTIinternalError);
550 
551  virtual MessageRetractionHandle sendInteraction (
552  InteractionClassHandle theInteraction,
553  ParameterHandleValueMap const & theParameterValues,
554  VariableLengthData const & theUserSuppliedTag,
555  LogicalTime const & theTime)
556  throw (
557  InvalidLogicalTime,
558  InteractionClassNotPublished,
559  InteractionParameterNotDefined,
560  InteractionClassNotDefined,
561  SaveInProgress,
562  RestoreInProgress,
563  FederateNotExecutionMember,
564  NotConnected,
565  RTIinternalError);
566 
567  // 6.14
568  virtual void deleteObjectInstance (
569  ObjectInstanceHandle theObject,
570  VariableLengthData const & theUserSuppliedTag)
571  throw (
572  DeletePrivilegeNotHeld,
573  ObjectInstanceNotKnown,
574  SaveInProgress,
575  RestoreInProgress,
576  FederateNotExecutionMember,
577  NotConnected,
578  RTIinternalError);
579 
580  virtual MessageRetractionHandle deleteObjectInstance (
581  ObjectInstanceHandle theObject,
582  VariableLengthData const & theUserSuppliedTag,
583  LogicalTime const & theTime)
584  throw (
585  InvalidLogicalTime,
586  DeletePrivilegeNotHeld,
587  ObjectInstanceNotKnown,
588  SaveInProgress,
589  RestoreInProgress,
590  FederateNotExecutionMember,
591  NotConnected,
592  RTIinternalError);
593 
594  // 6.16
595  virtual void localDeleteObjectInstance (
596  ObjectInstanceHandle theObject)
597  throw (
598  OwnershipAcquisitionPending,
599  FederateOwnsAttributes,
600  ObjectInstanceNotKnown,
601  SaveInProgress,
602  RestoreInProgress,
603  FederateNotExecutionMember,
604  NotConnected,
605  RTIinternalError);
606 
607  // 6.19
608  virtual void requestAttributeValueUpdate (
609  ObjectInstanceHandle theObject,
610  AttributeHandleSet const & theAttributes,
611  VariableLengthData const & theUserSuppliedTag)
612  throw (
613  AttributeNotDefined,
614  ObjectInstanceNotKnown,
615  SaveInProgress,
616  RestoreInProgress,
617  FederateNotExecutionMember,
618  NotConnected,
619  RTIinternalError);
620 
621  virtual void requestAttributeValueUpdate (
622  ObjectClassHandle theClass,
623  AttributeHandleSet const & theAttributes,
624  VariableLengthData const & theUserSuppliedTag)
625  throw (
626  AttributeNotDefined,
627  ObjectClassNotDefined,
628  SaveInProgress,
629  RestoreInProgress,
630  FederateNotExecutionMember,
631  NotConnected,
632  RTIinternalError);
633 
634  // 6.23
635  virtual void requestAttributeTransportationTypeChange (
636  ObjectInstanceHandle theObject,
637  AttributeHandleSet const & theAttributes,
638  TransportationType theType)
639  throw (
640  AttributeAlreadyBeingChanged,
641  AttributeNotOwned,
642  AttributeNotDefined,
643  ObjectInstanceNotKnown,
644  InvalidTransportationType,
645  SaveInProgress,
646  RestoreInProgress,
647  FederateNotExecutionMember,
648  NotConnected,
649  RTIinternalError);
650 
651  // 6.25
652  virtual void queryAttributeTransportationType (
653  ObjectInstanceHandle theObject,
654  AttributeHandle theAttribute)
655  throw (
656  AttributeNotDefined,
657  ObjectInstanceNotKnown,
658  SaveInProgress,
659  RestoreInProgress,
660  FederateNotExecutionMember,
661  NotConnected,
662  RTIinternalError);
663 
664  // 6.27
665  virtual void requestInteractionTransportationTypeChange (
666  InteractionClassHandle theClass,
667  TransportationType theType)
668  throw (
669  InteractionClassAlreadyBeingChanged,
670  InteractionClassNotPublished,
671  InteractionClassNotDefined,
672  InvalidTransportationType,
673  SaveInProgress,
674  RestoreInProgress,
675  FederateNotExecutionMember,
676  NotConnected,
677  RTIinternalError);
678 
679  // 6.29
680  virtual void queryInteractionTransportationType (
681  FederateHandle theFederate,
682  InteractionClassHandle theInteraction)
683  throw (
684  InteractionClassNotDefined,
685  SaveInProgress,
686  RestoreInProgress,
687  FederateNotExecutionMember,
688  NotConnected,
689  RTIinternalError);
690 
691 
693  // Ownership Management Services //
695 
696  // 7.2
698  ObjectInstanceHandle theObject,
699  AttributeHandleSet const & theAttributes)
700  throw (
701  AttributeNotOwned,
702  AttributeNotDefined,
703  ObjectInstanceNotKnown,
704  SaveInProgress,
705  RestoreInProgress,
706  FederateNotExecutionMember,
707  NotConnected,
708  RTIinternalError);
709 
710  // 7.3
712  ObjectInstanceHandle theObject,
713  AttributeHandleSet const & theAttributes,
714  VariableLengthData const & theUserSuppliedTag)
715  throw (
716  AttributeAlreadyBeingDivested,
717  AttributeNotOwned,
718  AttributeNotDefined,
719  ObjectInstanceNotKnown,
720  SaveInProgress,
721  RestoreInProgress,
722  FederateNotExecutionMember,
723  NotConnected,
724  RTIinternalError);
725 
726  // 7.6
727  virtual void confirmDivestiture (
728  ObjectInstanceHandle theObject,
729  AttributeHandleSet const & confirmedAttributes,
730  VariableLengthData const & theUserSuppliedTag)
731  throw (
732  NoAcquisitionPending,
733  AttributeDivestitureWasNotRequested,
734  AttributeNotOwned,
735  AttributeNotDefined,
736  ObjectInstanceNotKnown,
737  SaveInProgress,
738  RestoreInProgress,
739  FederateNotExecutionMember,
740  NotConnected,
741  RTIinternalError);
742 
743  // 7.8
744  virtual void attributeOwnershipAcquisition (
745  ObjectInstanceHandle theObject,
746  AttributeHandleSet const & desiredAttributes,
747  VariableLengthData const & theUserSuppliedTag)
748  throw (
749  AttributeNotPublished,
750  ObjectClassNotPublished,
751  FederateOwnsAttributes,
752  AttributeNotDefined,
753  ObjectInstanceNotKnown,
754  SaveInProgress,
755  RestoreInProgress,
756  FederateNotExecutionMember,
757  NotConnected,
758  RTIinternalError);
759 
760  // 7.9
762  ObjectInstanceHandle theObject,
763  AttributeHandleSet const & desiredAttributes)
764  throw (
765  AttributeAlreadyBeingAcquired,
766  AttributeNotPublished,
767  ObjectClassNotPublished,
768  FederateOwnsAttributes,
769  AttributeNotDefined,
770  ObjectInstanceNotKnown,
771  SaveInProgress,
772  RestoreInProgress,
773  FederateNotExecutionMember,
774  NotConnected,
775  RTIinternalError);
776 
777  // 7.12
778  virtual void attributeOwnershipReleaseDenied (
779  ObjectInstanceHandle theObject,
780  AttributeHandleSet const & theAttributes)
781  throw (
782  AttributeNotOwned,
783  AttributeNotDefined,
784  ObjectInstanceNotKnown,
785  SaveInProgress,
786  RestoreInProgress,
787  FederateNotExecutionMember,
788  NotConnected,
789  RTIinternalError);
790 
791  // 7.13
792  virtual void attributeOwnershipDivestitureIfWanted (
793  ObjectInstanceHandle theObject,
794  AttributeHandleSet const & theAttributes,
795  AttributeHandleSet & theDivestedAttributes) // filled by RTI
796  throw (
797  AttributeNotOwned,
798  AttributeNotDefined,
799  ObjectInstanceNotKnown,
800  SaveInProgress,
801  RestoreInProgress,
802  FederateNotExecutionMember,
803  NotConnected,
804  RTIinternalError);
805 
806  // 7.14
808  ObjectInstanceHandle theObject,
809  AttributeHandleSet const & theAttributes)
810  throw (
811  AttributeDivestitureWasNotRequested,
812  AttributeNotOwned,
813  AttributeNotDefined,
814  ObjectInstanceNotKnown,
815  SaveInProgress,
816  RestoreInProgress,
817  FederateNotExecutionMember,
818  NotConnected,
819  RTIinternalError);
820 
821  // 7.15
823  ObjectInstanceHandle theObject,
824  AttributeHandleSet const & theAttributes)
825  throw (
826  AttributeAcquisitionWasNotRequested,
827  AttributeAlreadyOwned,
828  AttributeNotDefined,
829  ObjectInstanceNotKnown,
830  SaveInProgress,
831  RestoreInProgress,
832  FederateNotExecutionMember,
833  NotConnected,
834  RTIinternalError);
835 
836  // 7.17
837  virtual void queryAttributeOwnership (
838  ObjectInstanceHandle theObject,
839  AttributeHandle theAttribute)
840  throw (
841  AttributeNotDefined,
842  ObjectInstanceNotKnown,
843  SaveInProgress,
844  RestoreInProgress,
845  FederateNotExecutionMember,
846  NotConnected,
847  RTIinternalError);
848 
849  // 7.19
850  virtual bool isAttributeOwnedByFederate (
851  ObjectInstanceHandle theObject,
852  AttributeHandle theAttribute)
853  throw (
854  AttributeNotDefined,
855  ObjectInstanceNotKnown,
856  SaveInProgress,
857  RestoreInProgress,
858  FederateNotExecutionMember,
859  NotConnected,
860  RTIinternalError);
861 
863  // Time Management Services //
865 
866  // 8.2
867  virtual void enableTimeRegulation (
868  LogicalTimeInterval const & theLookahead)
869  throw (
870  InvalidLookahead,
871  InTimeAdvancingState,
872  RequestForTimeRegulationPending,
873  TimeRegulationAlreadyEnabled,
874  SaveInProgress,
875  RestoreInProgress,
876  FederateNotExecutionMember,
877  NotConnected,
878  RTIinternalError);
879 
880  // 8.4
881  virtual void disableTimeRegulation ()
882  throw (
883  TimeRegulationIsNotEnabled,
884  SaveInProgress,
885  RestoreInProgress,
886  FederateNotExecutionMember,
887  NotConnected,
888  RTIinternalError);
889 
890  // 8.5
891  virtual void enableTimeConstrained ()
892  throw (
893  InTimeAdvancingState,
894  RequestForTimeConstrainedPending,
895  TimeConstrainedAlreadyEnabled,
896  SaveInProgress,
897  RestoreInProgress,
898  FederateNotExecutionMember,
899  NotConnected,
900  RTIinternalError);
901 
902  // 8.7
903  virtual void disableTimeConstrained ()
904  throw (
905  TimeConstrainedIsNotEnabled,
906  SaveInProgress,
907  RestoreInProgress,
908  FederateNotExecutionMember,
909  NotConnected,
910  RTIinternalError);
911 
912  // 8.8
913  virtual void timeAdvanceRequest (
914  LogicalTime const & theTime)
915  throw (
916  LogicalTimeAlreadyPassed,
917  InvalidLogicalTime,
918  InTimeAdvancingState,
919  RequestForTimeRegulationPending,
920  RequestForTimeConstrainedPending,
921  SaveInProgress,
922  RestoreInProgress,
923  FederateNotExecutionMember,
924  NotConnected,
925  RTIinternalError);
926 
927  // 8.9
928  virtual void timeAdvanceRequestAvailable (
929  LogicalTime const & theTime)
930  throw (
931  LogicalTimeAlreadyPassed,
932  InvalidLogicalTime,
933  InTimeAdvancingState,
934  RequestForTimeRegulationPending,
935  RequestForTimeConstrainedPending,
936  SaveInProgress,
937  RestoreInProgress,
938  FederateNotExecutionMember,
939  NotConnected,
940  RTIinternalError);
941 
942  // 8.10
943  virtual void nextMessageRequest (
944  LogicalTime const & theTime)
945  throw (
946  LogicalTimeAlreadyPassed,
947  InvalidLogicalTime,
948  InTimeAdvancingState,
949  RequestForTimeRegulationPending,
950  RequestForTimeConstrainedPending,
951  SaveInProgress,
952  RestoreInProgress,
953  FederateNotExecutionMember,
954  NotConnected,
955  RTIinternalError);
956 
957  // 8.11
958  virtual void nextMessageRequestAvailable (
959  LogicalTime const & theTime)
960  throw (
961  LogicalTimeAlreadyPassed,
962  InvalidLogicalTime,
963  InTimeAdvancingState,
964  RequestForTimeRegulationPending,
965  RequestForTimeConstrainedPending,
966  SaveInProgress,
967  RestoreInProgress,
968  FederateNotExecutionMember,
969  NotConnected,
970  RTIinternalError);
971 
972  // 8.12
973  virtual void flushQueueRequest (
974  LogicalTime const & theTime)
975  throw (
976  LogicalTimeAlreadyPassed,
977  InvalidLogicalTime,
978  InTimeAdvancingState,
979  RequestForTimeRegulationPending,
980  RequestForTimeConstrainedPending,
981  SaveInProgress,
982  RestoreInProgress,
983  FederateNotExecutionMember,
984  NotConnected,
985  RTIinternalError);
986 
987  // 8.14
988  virtual void enableAsynchronousDelivery ()
989  throw (
990  AsynchronousDeliveryAlreadyEnabled,
991  SaveInProgress,
992  RestoreInProgress,
993  FederateNotExecutionMember,
994  NotConnected,
995  RTIinternalError);
996 
997  // 8.15
998  virtual void disableAsynchronousDelivery ()
999  throw (
1000  AsynchronousDeliveryAlreadyDisabled,
1001  SaveInProgress,
1002  RestoreInProgress,
1003  FederateNotExecutionMember,
1004  NotConnected,
1005  RTIinternalError);
1006 
1007  // 8.16
1008  virtual bool queryGALT (LogicalTime & theTime)
1009  throw (
1010  SaveInProgress,
1011  RestoreInProgress,
1012  FederateNotExecutionMember,
1013  NotConnected,
1014  RTIinternalError);
1015 
1016  // 8.17
1017  virtual void queryLogicalTime (LogicalTime & theTime)
1018  throw (
1019  SaveInProgress,
1020  RestoreInProgress,
1021  FederateNotExecutionMember,
1022  NotConnected,
1023  RTIinternalError);
1024 
1025  // 8.18
1026  virtual bool queryLITS (LogicalTime & theTime)
1027  throw (
1028  SaveInProgress,
1029  RestoreInProgress,
1030  FederateNotExecutionMember,
1031  NotConnected,
1032  RTIinternalError);
1033 
1034  // 8.19
1035  virtual void modifyLookahead (
1036  LogicalTimeInterval const & theLookahead)
1037  throw (
1038  InvalidLookahead,
1039  InTimeAdvancingState,
1040  TimeRegulationIsNotEnabled,
1041  SaveInProgress,
1042  RestoreInProgress,
1043  FederateNotExecutionMember,
1044  NotConnected,
1045  RTIinternalError);
1046 
1047  // 8.20
1049  throw (
1050  TimeRegulationIsNotEnabled,
1051  SaveInProgress,
1052  RestoreInProgress,
1053  FederateNotExecutionMember,
1054  NotConnected,
1055  RTIinternalError);
1056 
1057  // 8.21
1058  virtual void retract (
1059  MessageRetractionHandle theHandle)
1060  throw (
1061  MessageCanNoLongerBeRetracted,
1062  InvalidMessageRetractionHandle,
1063  TimeRegulationIsNotEnabled,
1064  SaveInProgress,
1065  RestoreInProgress,
1066  FederateNotExecutionMember,
1067  NotConnected,
1068  RTIinternalError);
1069 
1070  // 8.23
1071  virtual void changeAttributeOrderType (
1072  ObjectInstanceHandle theObject,
1073  AttributeHandleSet const & theAttributes,
1074  OrderType theType)
1075  throw (
1076  AttributeNotOwned,
1077  AttributeNotDefined,
1078  ObjectInstanceNotKnown,
1079  SaveInProgress,
1080  RestoreInProgress,
1081  FederateNotExecutionMember,
1082  NotConnected,
1083  RTIinternalError);
1084 
1085  // 8.24
1086  virtual void changeInteractionOrderType (
1087  InteractionClassHandle theClass,
1088  OrderType theType)
1089  throw (
1090  InteractionClassNotPublished,
1091  InteractionClassNotDefined,
1092  SaveInProgress,
1093  RestoreInProgress,
1094  FederateNotExecutionMember,
1095  NotConnected,
1096  RTIinternalError);
1097 
1099  // Data Distribution Management //
1101 
1102  // 9.2
1103  virtual RegionHandle createRegion (
1104  DimensionHandleSet const & theDimensions)
1105  throw (
1106  InvalidDimensionHandle,
1107  SaveInProgress,
1108  RestoreInProgress,
1109  FederateNotExecutionMember,
1110  NotConnected,
1111  RTIinternalError);
1112 
1113  // 9.3
1114  virtual void commitRegionModifications (
1115  RegionHandleSet const & theRegionHandleSet)
1116  throw (
1117  RegionNotCreatedByThisFederate,
1118  InvalidRegion,
1119  SaveInProgress,
1120  RestoreInProgress,
1121  FederateNotExecutionMember,
1122  NotConnected,
1123  RTIinternalError);
1124 
1125  // 9.4
1126  virtual void deleteRegion (
1127  RegionHandle const & theRegion)
1128  throw (
1129  RegionInUseForUpdateOrSubscription,
1130  RegionNotCreatedByThisFederate,
1131  InvalidRegion,
1132  SaveInProgress,
1133  RestoreInProgress,
1134  FederateNotExecutionMember,
1135  NotConnected,
1136  RTIinternalError);
1137 
1138  // 9.5
1139  virtual ObjectInstanceHandle registerObjectInstanceWithRegions (
1140  ObjectClassHandle theClass,
1142  theAttributeHandleSetRegionHandleSetPairVector)
1143  throw (
1144  InvalidRegionContext,
1145  RegionNotCreatedByThisFederate,
1146  InvalidRegion,
1147  AttributeNotPublished,
1148  ObjectClassNotPublished,
1149  AttributeNotDefined,
1150  ObjectClassNotDefined,
1151  SaveInProgress,
1152  RestoreInProgress,
1153  FederateNotExecutionMember,
1154  NotConnected,
1155  RTIinternalError);
1156 
1157  virtual ObjectInstanceHandle registerObjectInstanceWithRegions (
1158  ObjectClassHandle theClass,
1160  theAttributeHandleSetRegionHandleSetPairVector,
1161  std::wstring const & theObjectInstanceName)
1162  throw (
1163  ObjectInstanceNameInUse,
1164  ObjectInstanceNameNotReserved,
1165  InvalidRegionContext,
1166  RegionNotCreatedByThisFederate,
1167  InvalidRegion,
1168  AttributeNotPublished,
1169  ObjectClassNotPublished,
1170  AttributeNotDefined,
1171  ObjectClassNotDefined,
1172  SaveInProgress,
1173  RestoreInProgress,
1174  FederateNotExecutionMember,
1175  NotConnected,
1176  RTIinternalError);
1177 
1178  // 9.6
1179  virtual void associateRegionsForUpdates (
1180  ObjectInstanceHandle theObject,
1182  theAttributeHandleSetRegionHandleSetPairVector)
1183  throw (
1184  InvalidRegionContext,
1185  RegionNotCreatedByThisFederate,
1186  InvalidRegion,
1187  AttributeNotDefined,
1188  ObjectInstanceNotKnown,
1189  SaveInProgress,
1190  RestoreInProgress,
1191  FederateNotExecutionMember,
1192  NotConnected,
1193  RTIinternalError);
1194 
1195  // 9.7
1196  virtual void unassociateRegionsForUpdates (
1197  ObjectInstanceHandle theObject,
1199  theAttributeHandleSetRegionHandleSetPairVector)
1200  throw (
1201  RegionNotCreatedByThisFederate,
1202  InvalidRegion,
1203  AttributeNotDefined,
1204  ObjectInstanceNotKnown,
1205  SaveInProgress,
1206  RestoreInProgress,
1207  FederateNotExecutionMember,
1208  NotConnected,
1209  RTIinternalError);
1210 
1211  // 9.8
1212  virtual void subscribeObjectClassAttributesWithRegions (
1213  ObjectClassHandle theClass,
1215  theAttributeHandleSetRegionHandleSetPairVector,
1216  bool active = true,
1217  std::wstring const & updateRateDesignator = L"")
1218  throw (
1219  InvalidRegionContext,
1220  RegionNotCreatedByThisFederate,
1221  InvalidRegion,
1222  AttributeNotDefined,
1223  ObjectClassNotDefined,
1224  InvalidUpdateRateDesignator,
1225  SaveInProgress,
1226  RestoreInProgress,
1227  FederateNotExecutionMember,
1228  NotConnected,
1229  RTIinternalError);
1230 
1231 
1232  // 9.9
1233  virtual void unsubscribeObjectClassAttributesWithRegions (
1234  ObjectClassHandle theClass,
1236  theAttributeHandleSetRegionHandleSetPairVector)
1237  throw (
1238  RegionNotCreatedByThisFederate,
1239  InvalidRegion,
1240  AttributeNotDefined,
1241  ObjectClassNotDefined,
1242  SaveInProgress,
1243  RestoreInProgress,
1244  FederateNotExecutionMember,
1245  NotConnected,
1246  RTIinternalError);
1247 
1248  // 9.10
1249  virtual void subscribeInteractionClassWithRegions (
1250  InteractionClassHandle theClass,
1251  RegionHandleSet const & theRegionHandleSet,
1252  bool active = true)
1253  throw (
1254  FederateServiceInvocationsAreBeingReportedViaMOM,
1255  InvalidRegionContext,
1256  RegionNotCreatedByThisFederate,
1257  InvalidRegion,
1258  InteractionClassNotDefined,
1259  SaveInProgress,
1260  RestoreInProgress,
1261  FederateNotExecutionMember,
1262  NotConnected,
1263  RTIinternalError);
1264 
1265  // 9.11
1266  virtual void unsubscribeInteractionClassWithRegions (
1267  InteractionClassHandle theClass,
1268  RegionHandleSet const & theRegionHandleSet)
1269  throw (
1270  RegionNotCreatedByThisFederate,
1271  InvalidRegion,
1272  InteractionClassNotDefined,
1273  SaveInProgress,
1274  RestoreInProgress,
1275  FederateNotExecutionMember,
1276  NotConnected,
1277  RTIinternalError);
1278 
1279  // 9.12
1280  virtual void sendInteractionWithRegions (
1281  InteractionClassHandle theInteraction,
1282  ParameterHandleValueMap const & theParameterValues,
1283  RegionHandleSet const & theRegionHandleSet,
1284  VariableLengthData const & theUserSuppliedTag)
1285  throw (
1286  InvalidRegionContext,
1287  RegionNotCreatedByThisFederate,
1288  InvalidRegion,
1289  InteractionClassNotPublished,
1290  InteractionParameterNotDefined,
1291  InteractionClassNotDefined,
1292  SaveInProgress,
1293  RestoreInProgress,
1294  FederateNotExecutionMember,
1295  NotConnected,
1296  RTIinternalError);
1297 
1298  virtual MessageRetractionHandle sendInteractionWithRegions (
1299  InteractionClassHandle theInteraction,
1300  ParameterHandleValueMap const & theParameterValues,
1301  RegionHandleSet const & theRegionHandleSet,
1302  VariableLengthData const & theUserSuppliedTag,
1303  LogicalTime const & theTime)
1304  throw (
1305  InvalidLogicalTime,
1306  InvalidRegionContext,
1307  RegionNotCreatedByThisFederate,
1308  InvalidRegion,
1309  InteractionClassNotPublished,
1310  InteractionParameterNotDefined,
1311  InteractionClassNotDefined,
1312  SaveInProgress,
1313  RestoreInProgress,
1314  FederateNotExecutionMember,
1315  NotConnected,
1316  RTIinternalError);
1317 
1318  // 9.13
1319  virtual void requestAttributeValueUpdateWithRegions (
1320  ObjectClassHandle theClass,
1322  VariableLengthData const & theUserSuppliedTag)
1323  throw (
1324  InvalidRegionContext,
1325  RegionNotCreatedByThisFederate,
1326  InvalidRegion,
1327  AttributeNotDefined,
1328  ObjectClassNotDefined,
1329  SaveInProgress,
1330  RestoreInProgress,
1331  FederateNotExecutionMember,
1332  NotConnected,
1333  RTIinternalError);
1334 
1336  // RTI Support Services //
1338 
1339  // 10.2
1340  virtual ResignAction getAutomaticResignDirective ()
1341  throw (
1342  FederateNotExecutionMember,
1343  NotConnected,
1344  RTIinternalError);
1345 
1346  // 10.3
1347  virtual void setAutomaticResignDirective (
1348  ResignAction resignAction)
1349  throw (
1350  InvalidResignAction,
1351  FederateNotExecutionMember,
1352  NotConnected,
1353  RTIinternalError);
1354 
1355  // 10.4
1356  virtual FederateHandle getFederateHandle (
1357  std::wstring const & theName)
1358  throw (
1359  NameNotFound,
1360  FederateNotExecutionMember,
1361  NotConnected,
1362  RTIinternalError);
1363 
1364  // 10.5
1365  virtual std::wstring getFederateName (
1366  FederateHandle theHandle)
1367  throw (
1368  InvalidFederateHandle,
1369  FederateHandleNotKnown,
1370  FederateNotExecutionMember,
1371  NotConnected,
1372  RTIinternalError);
1373 
1374  // 10.6
1376  std::wstring const & theName)
1377  throw (
1378  NameNotFound,
1379  FederateNotExecutionMember,
1380  NotConnected,
1381  RTIinternalError);
1382 
1383  // 10.7
1384  virtual std::wstring getObjectClassName (
1385  ObjectClassHandle theHandle)
1386  throw (
1387  InvalidObjectClassHandle,
1388  FederateNotExecutionMember,
1389  NotConnected,
1390  RTIinternalError);
1391 
1392  // 10.8
1393  virtual ObjectClassHandle getKnownObjectClassHandle (
1394  ObjectInstanceHandle theObject)
1395  throw (
1396  ObjectInstanceNotKnown,
1397  FederateNotExecutionMember,
1398  NotConnected,
1399  RTIinternalError);
1400 
1401  // 10.9
1402  virtual ObjectInstanceHandle getObjectInstanceHandle (
1403  std::wstring const & theName)
1404  throw (
1405  ObjectInstanceNotKnown,
1406  FederateNotExecutionMember,
1407  NotConnected,
1408  RTIinternalError);
1409 
1410  // 10.10
1411  virtual std::wstring getObjectInstanceName (
1412  ObjectInstanceHandle theHandle)
1413  throw (
1414  ObjectInstanceNotKnown,
1415  FederateNotExecutionMember,
1416  NotConnected,
1417  RTIinternalError);
1418 
1419  // 10.11
1421  ObjectClassHandle whichClass,
1422  std::wstring const & theAttributeName)
1423  throw (
1424  NameNotFound,
1425  InvalidObjectClassHandle,
1426  FederateNotExecutionMember,
1427  NotConnected,
1428  RTIinternalError);
1429 
1430  // 10.12
1431  virtual std::wstring getAttributeName (
1432  ObjectClassHandle whichClass,
1433  AttributeHandle theHandle)
1434  throw (
1435  AttributeNotDefined,
1436  InvalidAttributeHandle,
1437  InvalidObjectClassHandle,
1438  FederateNotExecutionMember,
1439  NotConnected,
1440  RTIinternalError);
1441 
1442  // 10.13
1443  virtual double getUpdateRateValue (
1444  std::wstring const & updateRateDesignator)
1445  throw (
1446  InvalidUpdateRateDesignator,
1447  FederateNotExecutionMember,
1448  NotConnected,
1449  RTIinternalError);
1450 
1451  // 10.14
1452  virtual double getUpdateRateValueForAttribute (
1453  ObjectInstanceHandle theObject,
1454  AttributeHandle theAttribute)
1455  throw (
1456  ObjectInstanceNotKnown,
1457  AttributeNotDefined,
1458  FederateNotExecutionMember,
1459  NotConnected,
1460  RTIinternalError);
1461 
1462  // 10.15
1464  std::wstring const & theName)
1465  throw (
1466  NameNotFound,
1467  FederateNotExecutionMember,
1468  NotConnected,
1469  RTIinternalError);
1470 
1471  // 10.16
1472  virtual std::wstring getInteractionClassName (
1473  InteractionClassHandle theHandle)
1474  throw (
1475  InvalidInteractionClassHandle,
1476  FederateNotExecutionMember,
1477  NotConnected,
1478  RTIinternalError);
1479 
1480  // 10.17
1482  InteractionClassHandle whichClass,
1483  std::wstring const & theName)
1484  throw (
1485  NameNotFound,
1486  InvalidInteractionClassHandle,
1487  FederateNotExecutionMember,
1488  NotConnected,
1489  RTIinternalError);
1490 
1491  // 10.18
1492  virtual std::wstring getParameterName (
1493  InteractionClassHandle whichClass,
1494  ParameterHandle theHandle)
1495  throw (
1496  InteractionParameterNotDefined,
1497  InvalidParameterHandle,
1498  InvalidInteractionClassHandle,
1499  FederateNotExecutionMember,
1500  NotConnected,
1501  RTIinternalError);
1502 
1503  // 10.19
1504  virtual OrderType getOrderType (
1505  std::wstring const & orderName)
1506  throw (
1507  InvalidOrderName,
1508  FederateNotExecutionMember,
1509  NotConnected,
1510  RTIinternalError);
1511 
1512  // 10.20
1513  virtual std::wstring getOrderName (
1514  OrderType orderType)
1515  throw (
1516  InvalidOrderType,
1517  FederateNotExecutionMember,
1518  NotConnected,
1519  RTIinternalError);
1520 
1521  // 10.21
1522  virtual TransportationType getTransportationType (
1523  std::wstring const & transportationName)
1524  throw (
1525  InvalidTransportationName,
1526  FederateNotExecutionMember,
1527  NotConnected,
1528  RTIinternalError);
1529 
1530  // 10.22
1531  virtual std::wstring getTransportationName (
1532  TransportationType transportationType)
1533  throw (
1534  InvalidTransportationType,
1535  FederateNotExecutionMember,
1536  NotConnected,
1537  RTIinternalError);
1538 
1539  // 10.23
1540  virtual DimensionHandleSet getAvailableDimensionsForClassAttribute (
1541  ObjectClassHandle theClass,
1542  AttributeHandle theHandle)
1543  throw (
1544  AttributeNotDefined,
1545  InvalidAttributeHandle,
1546  InvalidObjectClassHandle,
1547  FederateNotExecutionMember,
1548  NotConnected,
1549  RTIinternalError);
1550 
1551  // 10.24
1552  virtual DimensionHandleSet getAvailableDimensionsForInteractionClass (
1553  InteractionClassHandle theClass)
1554  throw (
1555  InvalidInteractionClassHandle,
1556  FederateNotExecutionMember,
1557  NotConnected,
1558  RTIinternalError);
1559 
1560  // 10.25
1562  std::wstring const & theName)
1563  throw (
1564  NameNotFound,
1565  FederateNotExecutionMember,
1566  NotConnected,
1567  RTIinternalError);
1568 
1569  // 10.26
1570  virtual std::wstring getDimensionName (
1571  DimensionHandle theHandle)
1572  throw (
1573  InvalidDimensionHandle,
1574  FederateNotExecutionMember,
1575  NotConnected,
1576  RTIinternalError);
1577 
1578  // 10.27
1579  virtual unsigned long getDimensionUpperBound (
1580  DimensionHandle theHandle)
1581  throw (
1582  InvalidDimensionHandle,
1583  FederateNotExecutionMember,
1584  NotConnected,
1585  RTIinternalError);
1586 
1587  // 10.28
1588  virtual DimensionHandleSet getDimensionHandleSet (
1589  RegionHandle theRegionHandle)
1590  throw (
1591  InvalidRegion,
1592  SaveInProgress,
1593  RestoreInProgress,
1594  FederateNotExecutionMember,
1595  NotConnected,
1596  RTIinternalError);
1597 
1598  // 10.29
1599  virtual RangeBounds getRangeBounds (
1600  RegionHandle theRegionHandle,
1601  DimensionHandle theDimensionHandle)
1602  throw (
1603  RegionDoesNotContainSpecifiedDimension,
1604  InvalidRegion,
1605  SaveInProgress,
1606  RestoreInProgress,
1607  FederateNotExecutionMember,
1608  NotConnected,
1609  RTIinternalError);
1610 
1611  // 10.30
1612  virtual void setRangeBounds (
1613  RegionHandle theRegionHandle,
1614  DimensionHandle theDimensionHandle,
1615  RangeBounds const & theRangeBounds)
1616  throw (
1617  InvalidRangeBound,
1618  RegionDoesNotContainSpecifiedDimension,
1619  RegionNotCreatedByThisFederate,
1620  InvalidRegion,
1621  SaveInProgress,
1622  RestoreInProgress,
1623  FederateNotExecutionMember,
1624  NotConnected,
1625  RTIinternalError);
1626 
1627  // 10.31
1628  virtual unsigned long normalizeFederateHandle (
1630  throw (
1631  InvalidFederateHandle,
1632  FederateNotExecutionMember,
1633  NotConnected,
1634  RTIinternalError);
1635 
1636  // 10.32
1637  virtual unsigned long normalizeServiceGroup (
1638  ServiceGroup theServiceGroup)
1639  throw (
1640  InvalidServiceGroup,
1641  FederateNotExecutionMember,
1642  NotConnected,
1643  RTIinternalError);
1644 
1645  // 10.33
1646  virtual void enableObjectClassRelevanceAdvisorySwitch ()
1647  throw (
1648  ObjectClassRelevanceAdvisorySwitchIsOn,
1649  SaveInProgress,
1650  RestoreInProgress,
1651  FederateNotExecutionMember,
1652  NotConnected,
1653  RTIinternalError);
1654 
1655  // 10.34
1656  virtual void disableObjectClassRelevanceAdvisorySwitch ()
1657  throw (
1658  ObjectClassRelevanceAdvisorySwitchIsOff,
1659  SaveInProgress,
1660  RestoreInProgress,
1661  FederateNotExecutionMember,
1662  NotConnected,
1663  RTIinternalError);
1664 
1665  // 10.35
1667  throw (
1668  AttributeRelevanceAdvisorySwitchIsOn,
1669  SaveInProgress,
1670  RestoreInProgress,
1671  FederateNotExecutionMember,
1672  NotConnected,
1673  RTIinternalError);
1674 
1675  // 10.36
1677  throw (
1678  AttributeRelevanceAdvisorySwitchIsOff,
1679  SaveInProgress,
1680  RestoreInProgress,
1681  FederateNotExecutionMember,
1682  NotConnected,
1683  RTIinternalError);
1684 
1685  // 10.37
1686  virtual void enableAttributeScopeAdvisorySwitch ()
1687  throw (
1688  AttributeScopeAdvisorySwitchIsOn,
1689  SaveInProgress,
1690  RestoreInProgress,
1691  FederateNotExecutionMember,
1692  NotConnected,
1693  RTIinternalError);
1694 
1695  // 10.38
1696  virtual void disableAttributeScopeAdvisorySwitch ()
1697  throw (
1698  AttributeScopeAdvisorySwitchIsOff,
1699  SaveInProgress,
1700  RestoreInProgress,
1701  FederateNotExecutionMember,
1702  NotConnected,
1703  RTIinternalError);
1704 
1705  // 10.39
1707  throw (
1708  InteractionRelevanceAdvisorySwitchIsOn,
1709  SaveInProgress,
1710  RestoreInProgress,
1711  FederateNotExecutionMember,
1712  NotConnected,
1713  RTIinternalError);
1714 
1715  // 10.40
1717  throw (
1718  InteractionRelevanceAdvisorySwitchIsOff,
1719  SaveInProgress,
1720  RestoreInProgress,
1721  FederateNotExecutionMember,
1722  NotConnected,
1723  RTIinternalError);
1724 
1725  // 10.41
1726  virtual bool evokeCallback (
1727  double approximateMinimumTimeInSeconds)
1728  throw (
1729  CallNotAllowedFromWithinCallback,
1730  RTIinternalError);
1731 
1732  // 10.42
1733  virtual bool evokeMultipleCallbacks (
1734  double approximateMinimumTimeInSeconds,
1735  double approximateMaximumTimeInSeconds)
1736  throw (
1737  CallNotAllowedFromWithinCallback,
1738  RTIinternalError);
1739 
1740  // 10.43
1741  virtual void enableCallbacks ()
1742  throw (
1743  SaveInProgress,
1744  RestoreInProgress,
1745  RTIinternalError);
1746 
1747  // 10.44
1748  virtual void disableCallbacks ()
1749  throw (
1750  SaveInProgress,
1751  RestoreInProgress,
1752  RTIinternalError);
1753 
1754  // API-specific services
1755 
1756  // Return instance of time factory being used by the federation
1757  virtual std::auto_ptr<LogicalTimeFactory> getTimeFactory () const
1758  throw (
1759  FederateNotExecutionMember,
1760  NotConnected,
1761  RTIinternalError);
1762 
1763  // Decode handles
1764  virtual FederateHandle decodeFederateHandle (
1765  VariableLengthData const & encodedValue) const
1766  throw (
1767  CouldNotDecode,
1768  FederateNotExecutionMember,
1769  NotConnected,
1770  RTIinternalError);
1771 
1772  virtual ObjectClassHandle decodeObjectClassHandle (
1773  VariableLengthData const & encodedValue) const
1774  throw (
1775  CouldNotDecode,
1776  FederateNotExecutionMember,
1777  NotConnected,
1778  RTIinternalError);
1779 
1780  virtual InteractionClassHandle decodeInteractionClassHandle (
1781  VariableLengthData const & encodedValue) const
1782  throw (
1783  CouldNotDecode,
1784  FederateNotExecutionMember,
1785  NotConnected,
1786  RTIinternalError);
1787 
1788  virtual ObjectInstanceHandle decodeObjectInstanceHandle (
1789  VariableLengthData const & encodedValue) const
1790  throw (
1791  CouldNotDecode,
1792  FederateNotExecutionMember,
1793  NotConnected,
1794  RTIinternalError);
1795 
1796  virtual AttributeHandle decodeAttributeHandle (
1797  VariableLengthData const & encodedValue) const
1798  throw (
1799  CouldNotDecode,
1800  FederateNotExecutionMember,
1801  NotConnected,
1802  RTIinternalError);
1803 
1804  virtual ParameterHandle decodeParameterHandle (
1805  VariableLengthData const & encodedValue) const
1806  throw (
1807  CouldNotDecode,
1808  FederateNotExecutionMember,
1809  NotConnected,
1810  RTIinternalError);
1811 
1812  virtual DimensionHandle decodeDimensionHandle (
1813  VariableLengthData const & encodedValue) const
1814  throw (
1815  CouldNotDecode,
1816  FederateNotExecutionMember,
1817  NotConnected,
1818  RTIinternalError);
1819 
1820  virtual MessageRetractionHandle decodeMessageRetractionHandle (
1821  VariableLengthData const & encodedValue) const
1822  throw (
1823  CouldNotDecode,
1824  FederateNotExecutionMember,
1825  NotConnected,
1826  RTIinternalError);
1827 
1828  virtual RegionHandle decodeRegionHandle (
1829  VariableLengthData const & encodedValue) const
1830  throw (
1831  CouldNotDecode,
1832  FederateNotExecutionMember,
1833  NotConnected,
1834  RTIinternalError);
1835 
1837  virtual DtRtiAmbassadorImplementor* getImplementation();
1838 
1840  virtual DtRtiAmbObserverList* observers();
1841 
1843  virtual const DtRtiAmbObserverList* observers() const;
1844 
1846  DtRIDParameters* params();
1847 
1848 protected:
1849 
1850  DtRtiAmbassadorImplementor* myAmbImpl;
1851 
1852 };
1853 
1854 #endif

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)