MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
serverRtiAmbassador1516e.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtHLA_1516_EVOLVED && !DtHLA_4
13 
15 
16 #include <vl/vrlRtiAmbassador1516e.h>
17 #include <vlutil/vlMachineTypes.h>
18 
19 namespace MAKTrafficClientServerExConn
20 {
21  class DtServerExerciseConnection;
22 
23  class DT_DLL_CSEC DtServerRtiAmbassador : public DtVrlRtiAmbassador
24  {
25 
26  public:
27 
28  DtServerRtiAmbassador()
29  throw ();
30 
31 
32  virtual ~DtServerRtiAmbassador();
33 
34  private:
36  DtServerRtiAmbassador(const DtServerRtiAmbassador &other);
37 
39  DtServerRtiAmbassador& operator=(const DtServerRtiAmbassador &other);
40 
41  public:
42 
44  virtual void setServerExerciseConnection(DtServerExerciseConnection* exConn);
45 
47  virtual DtServerExerciseConnection* serverExerciseConnection();
48 
50  virtual RTIambassador* rtiAmb();
51 
52  virtual const RTIambassador* rtiAmb() const;
53 
57 
59  virtual void connect (
60  FederateAmbassador & federateAmbassador,
61  CallbackModel theCallbackModel,
62  std::wstring const & localSettingsDesignator=L"")
63  throw (
64  ConnectionFailed,
65  InvalidLocalSettingsDesignator,
66  UnsupportedCallbackModel,
67  AlreadyConnected,
68  CallNotAllowedFromWithinCallback,
69  RTIinternalError);
70 
72  virtual void disconnect ()
73  throw (
74  FederateIsExecutionMember,
75  CallNotAllowedFromWithinCallback,
76  RTIinternalError);
77 
79  virtual void createFederationExecution (
80  std::wstring const & federationExecutionName,
81  std::wstring const & fomModule,
82  std::wstring const & logicalTimeImplementationName = L"")
83  throw (
84  CouldNotCreateLogicalTimeFactory,
85  InconsistentFDD,
86  ErrorReadingFDD,
87  CouldNotOpenFDD,
88  FederationExecutionAlreadyExists,
89  NotConnected,
90  RTIinternalError);
91 
92  virtual void createFederationExecution (
93  std::wstring const & federationExecutionName,
94  std::vector<std::wstring> const & fomModules,
95  std::wstring const & logicalTimeImplementationName = L"")
96  throw (
97  CouldNotCreateLogicalTimeFactory,
98  InconsistentFDD,
99  ErrorReadingFDD,
100  CouldNotOpenFDD,
101  FederationExecutionAlreadyExists,
102  NotConnected,
103  RTIinternalError);
104 
105  virtual void createFederationExecutionWithMIM (
106  std::wstring const & federationExecutionName,
107  std::vector<std::wstring> const & fomModules,
108  std::wstring const & momModule,
109  std::wstring const & logicalTimeImplementationName = L"")
110  throw (
111  CouldNotCreateLogicalTimeFactory,
112  InconsistentFDD,
113  ErrorReadingFDD,
114  CouldNotOpenFDD,
115  DesignatorIsHLAstandardMIM,
116  ErrorReadingMIM,
117  CouldNotOpenMIM,
118  FederationExecutionAlreadyExists,
119  NotConnected,
120  RTIinternalError);
121 
123  virtual void destroyFederationExecution (
124  std::wstring const & federationExecutionName)
125  throw (
126  FederatesCurrentlyJoined,
127  FederationExecutionDoesNotExist,
128  NotConnected,
129  RTIinternalError);
130 
132  virtual void listFederationExecutions ()
133  throw (
134  NotConnected,
135  RTIinternalError);
136 
138  virtual FederateHandle joinFederationExecution (
139  std::wstring const & federateType,
140  std::wstring const & federationExecutionName,
141  std::vector<std::wstring> const & additionalFomModules=std::vector<std::wstring>())
142  throw (
143  CouldNotCreateLogicalTimeFactory,
144  FederationExecutionDoesNotExist,
145  InconsistentFDD,
146  ErrorReadingFDD,
147  CouldNotOpenFDD,
148  SaveInProgress,
149  RestoreInProgress,
150  FederateAlreadyExecutionMember,
151  NotConnected,
152  CallNotAllowedFromWithinCallback,
153  RTIinternalError);
154 
155  virtual FederateHandle joinFederationExecution (
156  std::wstring const & federateName,
157  std::wstring const & federateType,
158  std::wstring const & federationExecutionName,
159  std::vector<std::wstring> const & additionalFomModules=std::vector<std::wstring>())
160  throw (
161  CouldNotCreateLogicalTimeFactory,
162  FederateNameAlreadyInUse,
163  FederationExecutionDoesNotExist,
164  InconsistentFDD,
165  ErrorReadingFDD,
166  CouldNotOpenFDD,
167  SaveInProgress,
168  RestoreInProgress,
169  FederateAlreadyExecutionMember,
170  NotConnected,
171  CallNotAllowedFromWithinCallback,
172  RTIinternalError);
173 
175  virtual void resignFederationExecution (
176  ResignAction resignAction)
177  throw (
178  InvalidResignAction,
179  OwnershipAcquisitionPending,
180  FederateOwnsAttributes,
181  FederateNotExecutionMember,
182  NotConnected,
183  CallNotAllowedFromWithinCallback,
184  RTIinternalError);
185 
187  virtual void registerFederationSynchronizationPoint (
188  std::wstring const & label,
189  VariableLengthData const & theUserSuppliedTag)
190  throw (
191  SaveInProgress,
192  RestoreInProgress,
193  FederateNotExecutionMember,
194  NotConnected,
195  RTIinternalError);
196 
197  virtual void registerFederationSynchronizationPoint (
198  std::wstring const & label,
199  VariableLengthData const & theUserSuppliedTag,
200  FederateHandleSet const & synchronizationSet)
201  throw (
202  InvalidFederateHandle,
203  SaveInProgress,
204  RestoreInProgress,
205  FederateNotExecutionMember,
206  NotConnected,
207  RTIinternalError);
208 
210  virtual void synchronizationPointAchieved (
211  std::wstring const & label,
212  bool successfully = true)
213  throw (
214  SynchronizationPointLabelNotAnnounced,
215  SaveInProgress,
216  RestoreInProgress,
217  FederateNotExecutionMember,
218  NotConnected,
219  RTIinternalError);
220 
222  virtual void requestFederationSave (
223  std::wstring const & label)
224  throw (
225  SaveInProgress,
226  RestoreInProgress,
227  FederateNotExecutionMember,
228  NotConnected,
229  RTIinternalError);
230 
231  virtual void requestFederationSave (
232  std::wstring const & label,
233  LogicalTime const & theTime)
234  throw (
235  LogicalTimeAlreadyPassed,
236  InvalidLogicalTime,
237  FederateUnableToUseTime,
238  SaveInProgress,
239  RestoreInProgress,
240  FederateNotExecutionMember,
241  NotConnected,
242  RTIinternalError);
243 
245  virtual void federateSaveBegun ()
246  throw (
247  SaveNotInitiated,
248  RestoreInProgress,
249  FederateNotExecutionMember,
250  NotConnected,
251  RTIinternalError);
252 
254  virtual void federateSaveComplete ()
255  throw (
256  FederateHasNotBegunSave,
257  RestoreInProgress,
258  FederateNotExecutionMember,
259  NotConnected,
260  RTIinternalError);
261 
262  virtual void federateSaveNotComplete ()
263  throw (
264  FederateHasNotBegunSave,
265  RestoreInProgress,
266  FederateNotExecutionMember,
267  NotConnected,
268  RTIinternalError);
269 
271  virtual void abortFederationSave ()
272  throw (
273  SaveNotInProgress,
274  FederateNotExecutionMember,
275  NotConnected,
276  RTIinternalError);
277 
279  virtual void queryFederationSaveStatus ()
280  throw (
281  RestoreInProgress,
282  FederateNotExecutionMember,
283  NotConnected,
284  RTIinternalError);
285 
287  virtual void requestFederationRestore (
288  std::wstring const & label)
289  throw (
290  SaveInProgress,
291  RestoreInProgress,
292  FederateNotExecutionMember,
293  NotConnected,
294  RTIinternalError);
295 
297  virtual void federateRestoreComplete ()
298  throw (
299  RestoreNotRequested,
300  SaveInProgress,
301  FederateNotExecutionMember,
302  NotConnected,
303  RTIinternalError);
304 
305  virtual void federateRestoreNotComplete ()
306  throw (
307  RestoreNotRequested,
308  SaveInProgress,
309  FederateNotExecutionMember,
310  NotConnected,
311  RTIinternalError);
312 
314  virtual void abortFederationRestore ()
315  throw (
316  RestoreNotInProgress,
317  FederateNotExecutionMember,
318  NotConnected,
319  RTIinternalError);
320 
322  virtual void queryFederationRestoreStatus ()
323  throw (
324  SaveInProgress,
325  FederateNotExecutionMember,
326  NotConnected,
327  RTIinternalError);
328 
332 
334  virtual void publishObjectClassAttributes (
335  ObjectClassHandle theClass,
336  AttributeHandleSet const & attributeList)
337  throw (
338  AttributeNotDefined,
339  ObjectClassNotDefined,
340  SaveInProgress,
341  RestoreInProgress,
342  FederateNotExecutionMember,
343  NotConnected,
344  RTIinternalError);
345 
347  virtual void unpublishObjectClass (
348  ObjectClassHandle theClass)
349  throw (
350  OwnershipAcquisitionPending,
351  ObjectClassNotDefined,
352  SaveInProgress,
353  RestoreInProgress,
354  FederateNotExecutionMember,
355  NotConnected,
356  RTIinternalError);
357 
358  virtual void unpublishObjectClassAttributes (
359  ObjectClassHandle theClass,
360  AttributeHandleSet const & attributeList)
361  throw (
362  OwnershipAcquisitionPending,
363  AttributeNotDefined,
364  ObjectClassNotDefined,
365  SaveInProgress,
366  RestoreInProgress,
367  FederateNotExecutionMember,
368  NotConnected,
369  RTIinternalError);
370 
372  virtual void publishInteractionClass (
373  InteractionClassHandle theInteraction)
374  throw (
375  InteractionClassNotDefined,
376  SaveInProgress,
377  RestoreInProgress,
378  FederateNotExecutionMember,
379  NotConnected,
380  RTIinternalError);
381 
383  virtual void unpublishInteractionClass (
384  InteractionClassHandle theInteraction)
385  throw (
386  InteractionClassNotDefined,
387  SaveInProgress,
388  RestoreInProgress,
389  FederateNotExecutionMember,
390  NotConnected,
391  RTIinternalError);
392 
394  virtual void subscribeObjectClassAttributes (
395  ObjectClassHandle theClass,
396  AttributeHandleSet const & attributeList,
397  bool active = true,
398  std::wstring const & updateRateDesignator = L"")
399  throw (
400  AttributeNotDefined,
401  ObjectClassNotDefined,
402  InvalidUpdateRateDesignator,
403  SaveInProgress,
404  RestoreInProgress,
405  FederateNotExecutionMember,
406  NotConnected,
407  RTIinternalError);
408 
410  virtual void unsubscribeObjectClass (
411  ObjectClassHandle theClass)
412  throw (
413  ObjectClassNotDefined,
414  SaveInProgress,
415  RestoreInProgress,
416  FederateNotExecutionMember,
417  NotConnected,
418  RTIinternalError);
419 
420  virtual void unsubscribeObjectClassAttributes (
421  ObjectClassHandle theClass,
422  AttributeHandleSet const & attributeList)
423  throw (
424  AttributeNotDefined,
425  ObjectClassNotDefined,
426  SaveInProgress,
427  RestoreInProgress,
428  FederateNotExecutionMember,
429  NotConnected,
430  RTIinternalError);
431 
433  virtual void subscribeInteractionClass (
434  InteractionClassHandle theClass,
435  bool active = true)
436  throw (
437  FederateServiceInvocationsAreBeingReportedViaMOM,
438  InteractionClassNotDefined,
439  SaveInProgress,
440  RestoreInProgress,
441  FederateNotExecutionMember,
442  NotConnected,
443  RTIinternalError);
444 
446  virtual void unsubscribeInteractionClass (
447  InteractionClassHandle theClass)
448  throw (
449  InteractionClassNotDefined,
450  SaveInProgress,
451  RestoreInProgress,
452  FederateNotExecutionMember,
453  NotConnected,
454  RTIinternalError);
455 
459 
461  virtual void reserveObjectInstanceName (
462  std::wstring const & theObjectInstanceName)
463  throw (
464  IllegalName,
465  SaveInProgress,
466  RestoreInProgress,
467  FederateNotExecutionMember,
468  NotConnected,
469  RTIinternalError);
470 
472  virtual void releaseObjectInstanceName (
473  std::wstring const & theObjectInstanceName)
474  throw (
475  ObjectInstanceNameNotReserved,
476  SaveInProgress,
477  RestoreInProgress,
478  FederateNotExecutionMember,
479  NotConnected,
480  RTIinternalError);
481 
483  virtual void reserveMultipleObjectInstanceName (
484  std::set<std::wstring> const & theObjectInstanceNames)
485  throw (
486  IllegalName,
487  NameSetWasEmpty,
488  SaveInProgress,
489  RestoreInProgress,
490  FederateNotExecutionMember,
491  NotConnected,
492  RTIinternalError);
493 
495  virtual void releaseMultipleObjectInstanceName (
496  std::set<std::wstring> const & theObjectInstanceNames)
497  throw (
498  ObjectInstanceNameNotReserved,
499  SaveInProgress,
500  RestoreInProgress,
501  FederateNotExecutionMember,
502  NotConnected,
503  RTIinternalError);
504 
506  virtual ObjectInstanceHandle registerObjectInstance (
507  ObjectClassHandle theClass)
508  throw (
509  ObjectClassNotPublished,
510  ObjectClassNotDefined,
511  SaveInProgress,
512  RestoreInProgress,
513  FederateNotExecutionMember,
514  NotConnected,
515  RTIinternalError);
516 
517  virtual ObjectInstanceHandle registerObjectInstanceSR(
518  unsigned int clientID,
519  ObjectClassHandle theClass);
520 
521  virtual ObjectInstanceHandle registerObjectInstance (
522  ObjectClassHandle theClass,
523  std::wstring const & theObjectInstanceName)
524  throw (
525  ObjectInstanceNameInUse,
526  ObjectInstanceNameNotReserved,
527  ObjectClassNotPublished,
528  ObjectClassNotDefined,
529  SaveInProgress,
530  RestoreInProgress,
531  FederateNotExecutionMember,
532  NotConnected,
533  RTIinternalError);
534 
535  virtual ObjectInstanceHandle registerObjectInstanceSR(
536  unsigned int clientID,
537  ObjectClassHandle theClass,
538  std::wstring const & theObjectInstanceName);
539 
541  virtual void updateAttributeValues (
542  ObjectInstanceHandle theObject,
543  AttributeHandleValueMap const & theAttributeValues,
544  VariableLengthData const & theUserSuppliedTag)
545  throw (
546  AttributeNotOwned,
547  AttributeNotDefined,
548  ObjectInstanceNotKnown,
549  SaveInProgress,
550  RestoreInProgress,
551  FederateNotExecutionMember,
552  NotConnected,
553  RTIinternalError);
554 
555  virtual void updateAttributeValuesSR(
556  unsigned int clientID,
557  ObjectInstanceHandle theObject,
558  AttributeHandleValueMap const & theAttributeValues,
559  VariableLengthData const & theUserSuppliedTag);
560 
561  virtual MessageRetractionHandle updateAttributeValues (
562  ObjectInstanceHandle theObject,
563  AttributeHandleValueMap const & theAttributeValues,
564  VariableLengthData const & theUserSuppliedTag,
565  LogicalTime const & theTime)
566  throw (
567  InvalidLogicalTime,
568  AttributeNotOwned,
569  AttributeNotDefined,
570  ObjectInstanceNotKnown,
571  SaveInProgress,
572  RestoreInProgress,
573  FederateNotExecutionMember,
574  NotConnected,
575  RTIinternalError);
576 
577  virtual MessageRetractionHandle updateAttributeValuesSR(
578  unsigned int clientID,
579  ObjectInstanceHandle theObject,
580  AttributeHandleValueMap const & theAttributeValues,
581  VariableLengthData const & theUserSuppliedTag,
582  LogicalTime const & theTime);
583 
585  virtual void sendInteraction (
586  InteractionClassHandle theInteraction,
587  ParameterHandleValueMap const & theParameterValues,
588  VariableLengthData const & theUserSuppliedTag)
589  throw (
590  InteractionClassNotPublished,
591  InteractionParameterNotDefined,
592  InteractionClassNotDefined,
593  SaveInProgress,
594  RestoreInProgress,
595  FederateNotExecutionMember,
596  NotConnected,
597  RTIinternalError);
598 
599  virtual void sendInteractionSR(
600  unsigned int clientID,
601  InteractionClassHandle theInteraction,
602  ParameterHandleValueMap const & theParameterValues,
603  VariableLengthData const & theUserSuppliedTag);
604 
605  virtual MessageRetractionHandle sendInteraction (
606  InteractionClassHandle theInteraction,
607  ParameterHandleValueMap const & theParameterValues,
608  VariableLengthData const & theUserSuppliedTag,
609  LogicalTime const & theTime)
610  throw (
611  InvalidLogicalTime,
612  InteractionClassNotPublished,
613  InteractionParameterNotDefined,
614  InteractionClassNotDefined,
615  SaveInProgress,
616  RestoreInProgress,
617  FederateNotExecutionMember,
618  NotConnected,
619  RTIinternalError);
620 
621  virtual MessageRetractionHandle sendInteractionSR(
622  unsigned int clientID,
623  InteractionClassHandle theInteraction,
624  ParameterHandleValueMap const & theParameterValues,
625  VariableLengthData const & theUserSuppliedTag,
626  LogicalTime const & theTime);
627 
629  virtual void deleteObjectInstance (
630  ObjectInstanceHandle theObject,
631  VariableLengthData const & theUserSuppliedTag)
632  throw (
633  DeletePrivilegeNotHeld,
634  ObjectInstanceNotKnown,
635  SaveInProgress,
636  RestoreInProgress,
637  FederateNotExecutionMember,
638  NotConnected,
639  RTIinternalError);
640 
641  virtual void deleteObjectInstanceSR(
642  unsigned int clientID,
643  ObjectInstanceHandle theObject,
644  VariableLengthData const & theUserSuppliedTag);
645 
646  virtual MessageRetractionHandle deleteObjectInstance (
647  ObjectInstanceHandle theObject,
648  VariableLengthData const & theUserSuppliedTag,
649  LogicalTime const & theTime)
650  throw (
651  InvalidLogicalTime,
652  DeletePrivilegeNotHeld,
653  ObjectInstanceNotKnown,
654  SaveInProgress,
655  RestoreInProgress,
656  FederateNotExecutionMember,
657  NotConnected,
658  RTIinternalError);
659 
660  virtual MessageRetractionHandle deleteObjectInstanceSR(
661  unsigned int clientID,
662  ObjectInstanceHandle theObject,
663  VariableLengthData const & theUserSuppliedTag,
664  LogicalTime const & theTime);
665 
667  virtual void localDeleteObjectInstance (
668  ObjectInstanceHandle theObject)
669  throw (
670  OwnershipAcquisitionPending,
671  FederateOwnsAttributes,
672  ObjectInstanceNotKnown,
673  SaveInProgress,
674  RestoreInProgress,
675  FederateNotExecutionMember,
676  NotConnected,
677  RTIinternalError);
678 
679  virtual void localDeleteObjectInstanceSR(
680  unsigned int clientID,
681  ObjectInstanceHandle theObject);
682 
684  virtual void requestAttributeValueUpdate (
685  ObjectInstanceHandle theObject,
686  AttributeHandleSet const & theAttributes,
687  VariableLengthData const & theUserSuppliedTag)
688  throw (
689  AttributeNotDefined,
690  ObjectInstanceNotKnown,
691  SaveInProgress,
692  RestoreInProgress,
693  FederateNotExecutionMember,
694  NotConnected,
695  RTIinternalError);
696 
697  virtual void requestAttributeValueUpdate (
698  ObjectClassHandle theClass,
699  AttributeHandleSet const & theAttributes,
700  VariableLengthData const & theUserSuppliedTag)
701  throw (
702  AttributeNotDefined,
703  ObjectClassNotDefined,
704  SaveInProgress,
705  RestoreInProgress,
706  FederateNotExecutionMember,
707  NotConnected,
708  RTIinternalError);
709 
711  virtual void requestAttributeTransportationTypeChange (
712  ObjectInstanceHandle theObject,
713  AttributeHandleSet const & theAttributes,
714  TransportationType theType)
715  throw (
716  AttributeAlreadyBeingChanged,
717  AttributeNotOwned,
718  AttributeNotDefined,
719  ObjectInstanceNotKnown,
720  InvalidTransportationType,
721  SaveInProgress,
722  RestoreInProgress,
723  FederateNotExecutionMember,
724  NotConnected,
725  RTIinternalError);
726 
728  virtual void queryAttributeTransportationType (
729  ObjectInstanceHandle theObject,
730  AttributeHandle theAttribute)
731  throw (
732  AttributeNotDefined,
733  ObjectInstanceNotKnown,
734  SaveInProgress,
735  RestoreInProgress,
736  FederateNotExecutionMember,
737  NotConnected,
738  RTIinternalError);
739 
741  virtual void requestInteractionTransportationTypeChange (
742  InteractionClassHandle theClass,
743  TransportationType theType)
744  throw (
745  InteractionClassAlreadyBeingChanged,
746  InteractionClassNotPublished,
747  InteractionClassNotDefined,
748  InvalidTransportationType,
749  SaveInProgress,
750  RestoreInProgress,
751  FederateNotExecutionMember,
752  NotConnected,
753  RTIinternalError);
754 
756  virtual void queryInteractionTransportationType (
757  FederateHandle theFederate,
758  InteractionClassHandle theInteraction)
759  throw (
760  InteractionClassNotDefined,
761  SaveInProgress,
762  RestoreInProgress,
763  FederateNotExecutionMember,
764  NotConnected,
765  RTIinternalError);
766 
767 
771 
773  virtual void unconditionalAttributeOwnershipDivestiture (
774  ObjectInstanceHandle theObject,
775  AttributeHandleSet const & theAttributes)
776  throw (
777  AttributeNotOwned,
778  AttributeNotDefined,
779  ObjectInstanceNotKnown,
780  SaveInProgress,
781  RestoreInProgress,
782  FederateNotExecutionMember,
783  NotConnected,
784  RTIinternalError);
785 
787  virtual void negotiatedAttributeOwnershipDivestiture (
788  ObjectInstanceHandle theObject,
789  AttributeHandleSet const & theAttributes,
790  VariableLengthData const & theUserSuppliedTag)
791  throw (
792  AttributeAlreadyBeingDivested,
793  AttributeNotOwned,
794  AttributeNotDefined,
795  ObjectInstanceNotKnown,
796  SaveInProgress,
797  RestoreInProgress,
798  FederateNotExecutionMember,
799  NotConnected,
800  RTIinternalError);
801 
803  virtual void confirmDivestiture (
804  ObjectInstanceHandle theObject,
805  AttributeHandleSet const & confirmedAttributes,
806  VariableLengthData const & theUserSuppliedTag)
807  throw (
808  NoAcquisitionPending,
809  AttributeDivestitureWasNotRequested,
810  AttributeNotOwned,
811  AttributeNotDefined,
812  ObjectInstanceNotKnown,
813  SaveInProgress,
814  RestoreInProgress,
815  FederateNotExecutionMember,
816  NotConnected,
817  RTIinternalError);
818 
820  virtual void attributeOwnershipAcquisition (
821  ObjectInstanceHandle theObject,
822  AttributeHandleSet const & desiredAttributes,
823  VariableLengthData const & theUserSuppliedTag)
824  throw (
825  AttributeNotPublished,
826  ObjectClassNotPublished,
827  FederateOwnsAttributes,
828  AttributeNotDefined,
829  ObjectInstanceNotKnown,
830  SaveInProgress,
831  RestoreInProgress,
832  FederateNotExecutionMember,
833  NotConnected,
834  RTIinternalError);
835 
837  virtual void attributeOwnershipAcquisitionIfAvailable (
838  ObjectInstanceHandle theObject,
839  AttributeHandleSet const & desiredAttributes)
840  throw (
841  AttributeAlreadyBeingAcquired,
842  AttributeNotPublished,
843  ObjectClassNotPublished,
844  FederateOwnsAttributes,
845  AttributeNotDefined,
846  ObjectInstanceNotKnown,
847  SaveInProgress,
848  RestoreInProgress,
849  FederateNotExecutionMember,
850  NotConnected,
851  RTIinternalError);
852 
854  virtual void attributeOwnershipReleaseDenied (
855  ObjectInstanceHandle theObject,
856  AttributeHandleSet const & theAttributes)
857  throw (
858  AttributeNotOwned,
859  AttributeNotDefined,
860  ObjectInstanceNotKnown,
861  SaveInProgress,
862  RestoreInProgress,
863  FederateNotExecutionMember,
864  NotConnected,
865  RTIinternalError);
866 
868  virtual void attributeOwnershipDivestitureIfWanted (
869  ObjectInstanceHandle theObject,
870  AttributeHandleSet const & theAttributes,
871  AttributeHandleSet & theDivestedAttributes)
872  throw (
873  AttributeNotOwned,
874  AttributeNotDefined,
875  ObjectInstanceNotKnown,
876  SaveInProgress,
877  RestoreInProgress,
878  FederateNotExecutionMember,
879  NotConnected,
880  RTIinternalError);
881 
883  virtual void cancelNegotiatedAttributeOwnershipDivestiture (
884  ObjectInstanceHandle theObject,
885  AttributeHandleSet const & theAttributes)
886  throw (
887  AttributeDivestitureWasNotRequested,
888  AttributeNotOwned,
889  AttributeNotDefined,
890  ObjectInstanceNotKnown,
891  SaveInProgress,
892  RestoreInProgress,
893  FederateNotExecutionMember,
894  NotConnected,
895  RTIinternalError);
896 
898  virtual void cancelAttributeOwnershipAcquisition (
899  ObjectInstanceHandle theObject,
900  AttributeHandleSet const & theAttributes)
901  throw (
902  AttributeAcquisitionWasNotRequested,
903  AttributeAlreadyOwned,
904  AttributeNotDefined,
905  ObjectInstanceNotKnown,
906  SaveInProgress,
907  RestoreInProgress,
908  FederateNotExecutionMember,
909  NotConnected,
910  RTIinternalError);
911 
913  virtual void queryAttributeOwnership (
914  ObjectInstanceHandle theObject,
915  AttributeHandle theAttribute)
916  throw (
917  AttributeNotDefined,
918  ObjectInstanceNotKnown,
919  SaveInProgress,
920  RestoreInProgress,
921  FederateNotExecutionMember,
922  NotConnected,
923  RTIinternalError);
924 
926  virtual bool isAttributeOwnedByFederate (
927  ObjectInstanceHandle theObject,
928  AttributeHandle theAttribute)
929  throw (
930  AttributeNotDefined,
931  ObjectInstanceNotKnown,
932  SaveInProgress,
933  RestoreInProgress,
934  FederateNotExecutionMember,
935  NotConnected,
936  RTIinternalError);
937 
941 
943  virtual void enableTimeRegulation (
944  LogicalTimeInterval const & theLookahead)
945  throw (
946  InvalidLookahead,
947  InTimeAdvancingState,
948  RequestForTimeRegulationPending,
949  TimeRegulationAlreadyEnabled,
950  SaveInProgress,
951  RestoreInProgress,
952  FederateNotExecutionMember,
953  NotConnected,
954  RTIinternalError);
955 
957  virtual void disableTimeRegulation ()
958  throw (
959  TimeRegulationIsNotEnabled,
960  SaveInProgress,
961  RestoreInProgress,
962  FederateNotExecutionMember,
963  NotConnected,
964  RTIinternalError);
965 
967  virtual void enableTimeConstrained ()
968  throw (
969  InTimeAdvancingState,
970  RequestForTimeConstrainedPending,
971  TimeConstrainedAlreadyEnabled,
972  SaveInProgress,
973  RestoreInProgress,
974  FederateNotExecutionMember,
975  NotConnected,
976  RTIinternalError);
977 
979  virtual void disableTimeConstrained ()
980  throw (
981  TimeConstrainedIsNotEnabled,
982  SaveInProgress,
983  RestoreInProgress,
984  FederateNotExecutionMember,
985  NotConnected,
986  RTIinternalError);
987 
989  virtual void timeAdvanceRequest (
990  LogicalTime const & theTime)
991  throw (
992  LogicalTimeAlreadyPassed,
993  InvalidLogicalTime,
994  InTimeAdvancingState,
995  RequestForTimeRegulationPending,
996  RequestForTimeConstrainedPending,
997  SaveInProgress,
998  RestoreInProgress,
999  FederateNotExecutionMember,
1000  NotConnected,
1001  RTIinternalError);
1002 
1004  virtual void timeAdvanceRequestAvailable (
1005  LogicalTime const & theTime)
1006  throw (
1007  LogicalTimeAlreadyPassed,
1008  InvalidLogicalTime,
1009  InTimeAdvancingState,
1010  RequestForTimeRegulationPending,
1011  RequestForTimeConstrainedPending,
1012  SaveInProgress,
1013  RestoreInProgress,
1014  FederateNotExecutionMember,
1015  NotConnected,
1016  RTIinternalError);
1017 
1019  virtual void nextMessageRequest (
1020  LogicalTime const & theTime)
1021  throw (
1022  LogicalTimeAlreadyPassed,
1023  InvalidLogicalTime,
1024  InTimeAdvancingState,
1025  RequestForTimeRegulationPending,
1026  RequestForTimeConstrainedPending,
1027  SaveInProgress,
1028  RestoreInProgress,
1029  FederateNotExecutionMember,
1030  NotConnected,
1031  RTIinternalError);
1032 
1034  virtual void nextMessageRequestAvailable (
1035  LogicalTime const & theTime)
1036  throw (
1037  LogicalTimeAlreadyPassed,
1038  InvalidLogicalTime,
1039  InTimeAdvancingState,
1040  RequestForTimeRegulationPending,
1041  RequestForTimeConstrainedPending,
1042  SaveInProgress,
1043  RestoreInProgress,
1044  FederateNotExecutionMember,
1045  NotConnected,
1046  RTIinternalError);
1047 
1049  virtual void flushQueueRequest (
1050  LogicalTime const & theTime)
1051  throw (
1052  LogicalTimeAlreadyPassed,
1053  InvalidLogicalTime,
1054  InTimeAdvancingState,
1055  RequestForTimeRegulationPending,
1056  RequestForTimeConstrainedPending,
1057  SaveInProgress,
1058  RestoreInProgress,
1059  FederateNotExecutionMember,
1060  NotConnected,
1061  RTIinternalError);
1062 
1064  virtual void enableAsynchronousDelivery ()
1065  throw (
1066  AsynchronousDeliveryAlreadyEnabled,
1067  SaveInProgress,
1068  RestoreInProgress,
1069  FederateNotExecutionMember,
1070  NotConnected,
1071  RTIinternalError);
1072 
1074  virtual void disableAsynchronousDelivery ()
1075  throw (
1076  AsynchronousDeliveryAlreadyDisabled,
1077  SaveInProgress,
1078  RestoreInProgress,
1079  FederateNotExecutionMember,
1080  NotConnected,
1081  RTIinternalError);
1082 
1084  virtual bool queryGALT (LogicalTime & theTime)
1085  throw (
1086  SaveInProgress,
1087  RestoreInProgress,
1088  FederateNotExecutionMember,
1089  NotConnected,
1090  RTIinternalError);
1091 
1093  virtual void queryLogicalTime (LogicalTime & theTime)
1094  throw (
1095  SaveInProgress,
1096  RestoreInProgress,
1097  FederateNotExecutionMember,
1098  NotConnected,
1099  RTIinternalError);
1100 
1102  virtual bool queryLITS (LogicalTime & theTime)
1103  throw (
1104  SaveInProgress,
1105  RestoreInProgress,
1106  FederateNotExecutionMember,
1107  NotConnected,
1108  RTIinternalError);
1109 
1111  virtual void modifyLookahead (
1112  LogicalTimeInterval const & theLookahead)
1113  throw (
1114  InvalidLookahead,
1115  InTimeAdvancingState,
1116  TimeRegulationIsNotEnabled,
1117  SaveInProgress,
1118  RestoreInProgress,
1119  FederateNotExecutionMember,
1120  NotConnected,
1121  RTIinternalError);
1122 
1124  virtual void queryLookahead (LogicalTimeInterval & interval)
1125  throw (
1126  TimeRegulationIsNotEnabled,
1127  SaveInProgress,
1128  RestoreInProgress,
1129  FederateNotExecutionMember,
1130  NotConnected,
1131  RTIinternalError);
1132 
1134  virtual void retract (
1135  MessageRetractionHandle theHandle)
1136  throw (
1137  MessageCanNoLongerBeRetracted,
1138  InvalidMessageRetractionHandle,
1139  TimeRegulationIsNotEnabled,
1140  SaveInProgress,
1141  RestoreInProgress,
1142  FederateNotExecutionMember,
1143  NotConnected,
1144  RTIinternalError);
1145 
1147  virtual void changeAttributeOrderType (
1148  ObjectInstanceHandle theObject,
1149  AttributeHandleSet const & theAttributes,
1150  OrderType theType)
1151  throw (
1152  AttributeNotOwned,
1153  AttributeNotDefined,
1154  ObjectInstanceNotKnown,
1155  SaveInProgress,
1156  RestoreInProgress,
1157  FederateNotExecutionMember,
1158  NotConnected,
1159  RTIinternalError);
1160 
1162  virtual void changeInteractionOrderType (
1163  InteractionClassHandle theClass,
1164  OrderType theType)
1165  throw (
1166  InteractionClassNotPublished,
1167  InteractionClassNotDefined,
1168  SaveInProgress,
1169  RestoreInProgress,
1170  FederateNotExecutionMember,
1171  NotConnected,
1172  RTIinternalError);
1173 
1177 
1179  virtual RegionHandle createRegion (
1180  DimensionHandleSet const & theDimensions)
1181  throw (
1182  InvalidDimensionHandle,
1183  SaveInProgress,
1184  RestoreInProgress,
1185  FederateNotExecutionMember,
1186  NotConnected,
1187  RTIinternalError);
1188 
1190  virtual void commitRegionModifications (
1191  RegionHandleSet const & theRegionHandleSet)
1192  throw (
1193  RegionNotCreatedByThisFederate,
1194  InvalidRegion,
1195  SaveInProgress,
1196  RestoreInProgress,
1197  FederateNotExecutionMember,
1198  NotConnected,
1199  RTIinternalError);
1200 
1202  virtual void deleteRegion (
1203  RegionHandle const & theRegion)
1204  throw (
1205  RegionInUseForUpdateOrSubscription,
1206  RegionNotCreatedByThisFederate,
1207  InvalidRegion,
1208  SaveInProgress,
1209  RestoreInProgress,
1210  FederateNotExecutionMember,
1211  NotConnected,
1212  RTIinternalError);
1213 
1215  virtual ObjectInstanceHandle registerObjectInstanceWithRegions (
1216  ObjectClassHandle theClass,
1217  AttributeHandleSetRegionHandleSetPairVector const &
1218  theAttributeHandleSetRegionHandleSetPairVector)
1219  throw (
1220  InvalidRegionContext,
1221  RegionNotCreatedByThisFederate,
1222  InvalidRegion,
1223  AttributeNotPublished,
1224  ObjectClassNotPublished,
1225  AttributeNotDefined,
1226  ObjectClassNotDefined,
1227  SaveInProgress,
1228  RestoreInProgress,
1229  FederateNotExecutionMember,
1230  NotConnected,
1231  RTIinternalError);
1232 
1233  virtual ObjectInstanceHandle registerObjectInstanceWithRegionsSR(
1234  unsigned int clientID,
1235  ObjectClassHandle theClass,
1236  AttributeHandleSetRegionHandleSetPairVector const &
1237  theAttributeHandleSetRegionHandleSetPairVector);
1238 
1239  virtual ObjectInstanceHandle registerObjectInstanceWithRegions (
1240  ObjectClassHandle theClass,
1241  AttributeHandleSetRegionHandleSetPairVector const &
1242  theAttributeHandleSetRegionHandleSetPairVector,
1243  std::wstring const & theObjectInstanceName)
1244  throw (
1245  ObjectInstanceNameInUse,
1246  ObjectInstanceNameNotReserved,
1247  InvalidRegionContext,
1248  RegionNotCreatedByThisFederate,
1249  InvalidRegion,
1250  AttributeNotPublished,
1251  ObjectClassNotPublished,
1252  AttributeNotDefined,
1253  ObjectClassNotDefined,
1254  SaveInProgress,
1255  RestoreInProgress,
1256  FederateNotExecutionMember,
1257  NotConnected,
1258  RTIinternalError);
1259 
1260  virtual ObjectInstanceHandle registerObjectInstanceWithRegionsSR(
1261  unsigned int clientID,
1262  ObjectClassHandle theClass,
1263  AttributeHandleSetRegionHandleSetPairVector const &
1264  theAttributeHandleSetRegionHandleSetPairVector,
1265  std::wstring const & theObjectInstanceName);
1266 
1268  virtual void associateRegionsForUpdates (
1269  ObjectInstanceHandle theObject,
1270  AttributeHandleSetRegionHandleSetPairVector const &
1271  theAttributeHandleSetRegionHandleSetPairVector)
1272  throw (
1273  InvalidRegionContext,
1274  RegionNotCreatedByThisFederate,
1275  InvalidRegion,
1276  AttributeNotDefined,
1277  ObjectInstanceNotKnown,
1278  SaveInProgress,
1279  RestoreInProgress,
1280  FederateNotExecutionMember,
1281  NotConnected,
1282  RTIinternalError);
1283 
1285  virtual void unassociateRegionsForUpdates (
1286  ObjectInstanceHandle theObject,
1287  AttributeHandleSetRegionHandleSetPairVector const &
1288  theAttributeHandleSetRegionHandleSetPairVector)
1289  throw (
1290  RegionNotCreatedByThisFederate,
1291  InvalidRegion,
1292  AttributeNotDefined,
1293  ObjectInstanceNotKnown,
1294  SaveInProgress,
1295  RestoreInProgress,
1296  FederateNotExecutionMember,
1297  NotConnected,
1298  RTIinternalError);
1299 
1301  virtual void subscribeObjectClassAttributesWithRegions (
1302  ObjectClassHandle theClass,
1303  AttributeHandleSetRegionHandleSetPairVector const &
1304  theAttributeHandleSetRegionHandleSetPairVector,
1305  bool active = true,
1306  std::wstring const & updateRateDesignator = L"")
1307  throw (
1308  InvalidRegionContext,
1309  RegionNotCreatedByThisFederate,
1310  InvalidRegion,
1311  AttributeNotDefined,
1312  ObjectClassNotDefined,
1313  InvalidUpdateRateDesignator,
1314  SaveInProgress,
1315  RestoreInProgress,
1316  FederateNotExecutionMember,
1317  NotConnected,
1318  RTIinternalError);
1319 
1320 
1322  virtual void unsubscribeObjectClassAttributesWithRegions (
1323  ObjectClassHandle theClass,
1324  AttributeHandleSetRegionHandleSetPairVector const &
1325  theAttributeHandleSetRegionHandleSetPairVector)
1326  throw (
1327  RegionNotCreatedByThisFederate,
1328  InvalidRegion,
1329  AttributeNotDefined,
1330  ObjectClassNotDefined,
1331  SaveInProgress,
1332  RestoreInProgress,
1333  FederateNotExecutionMember,
1334  NotConnected,
1335  RTIinternalError);
1336 
1338  virtual void subscribeInteractionClassWithRegions (
1339  InteractionClassHandle theClass,
1340  RegionHandleSet const & theRegionHandleSet,
1341  bool active = true)
1342  throw (
1343  FederateServiceInvocationsAreBeingReportedViaMOM,
1344  InvalidRegionContext,
1345  RegionNotCreatedByThisFederate,
1346  InvalidRegion,
1347  InteractionClassNotDefined,
1348  SaveInProgress,
1349  RestoreInProgress,
1350  FederateNotExecutionMember,
1351  NotConnected,
1352  RTIinternalError);
1353 
1355  virtual void unsubscribeInteractionClassWithRegions (
1356  InteractionClassHandle theClass,
1357  RegionHandleSet const & theRegionHandleSet)
1358  throw (
1359  RegionNotCreatedByThisFederate,
1360  InvalidRegion,
1361  InteractionClassNotDefined,
1362  SaveInProgress,
1363  RestoreInProgress,
1364  FederateNotExecutionMember,
1365  NotConnected,
1366  RTIinternalError);
1367 
1369  virtual void sendInteractionWithRegions (
1370  InteractionClassHandle theInteraction,
1371  ParameterHandleValueMap const & theParameterValues,
1372  RegionHandleSet const & theRegionHandleSet,
1373  VariableLengthData const & theUserSuppliedTag)
1374  throw (
1375  InvalidRegionContext,
1376  RegionNotCreatedByThisFederate,
1377  InvalidRegion,
1378  InteractionClassNotPublished,
1379  InteractionParameterNotDefined,
1380  InteractionClassNotDefined,
1381  SaveInProgress,
1382  RestoreInProgress,
1383  FederateNotExecutionMember,
1384  NotConnected,
1385  RTIinternalError);
1386 
1387  virtual void sendInteractionWithRegionsSR(
1388  unsigned int clientID,
1389  InteractionClassHandle theInteraction,
1390  ParameterHandleValueMap const & theParameterValues,
1391  RegionHandleSet const & theRegionHandleSet,
1392  VariableLengthData const & theUserSuppliedTag);
1393 
1394  virtual MessageRetractionHandle sendInteractionWithRegions (
1395  InteractionClassHandle theInteraction,
1396  ParameterHandleValueMap const & theParameterValues,
1397  RegionHandleSet const & theRegionHandleSet,
1398  VariableLengthData const & theUserSuppliedTag,
1399  LogicalTime const & theTime)
1400  throw (
1401  InvalidLogicalTime,
1402  InvalidRegionContext,
1403  RegionNotCreatedByThisFederate,
1404  InvalidRegion,
1405  InteractionClassNotPublished,
1406  InteractionParameterNotDefined,
1407  InteractionClassNotDefined,
1408  SaveInProgress,
1409  RestoreInProgress,
1410  FederateNotExecutionMember,
1411  NotConnected,
1412  RTIinternalError);
1413 
1414  virtual MessageRetractionHandle sendInteractionWithRegionsSR(
1415  unsigned int clientID,
1416  InteractionClassHandle theInteraction,
1417  ParameterHandleValueMap const & theParameterValues,
1418  RegionHandleSet const & theRegionHandleSet,
1419  VariableLengthData const & theUserSuppliedTag,
1420  LogicalTime const & theTime);
1421 
1423  virtual void requestAttributeValueUpdateWithRegions (
1424  ObjectClassHandle theClass,
1425  AttributeHandleSetRegionHandleSetPairVector const & theSet,
1426  VariableLengthData const & theUserSuppliedTag)
1427  throw (
1428  InvalidRegionContext,
1429  RegionNotCreatedByThisFederate,
1430  InvalidRegion,
1431  AttributeNotDefined,
1432  ObjectClassNotDefined,
1433  SaveInProgress,
1434  RestoreInProgress,
1435  FederateNotExecutionMember,
1436  NotConnected,
1437  RTIinternalError);
1438 
1442 
1444  virtual ResignAction getAutomaticResignDirective ()
1445  throw (
1446  FederateNotExecutionMember,
1447  NotConnected,
1448  RTIinternalError);
1449 
1451  virtual void setAutomaticResignDirective (
1452  ResignAction resignAction)
1453  throw (
1454  InvalidResignAction,
1455  FederateNotExecutionMember,
1456  NotConnected,
1457  RTIinternalError);
1458 
1460  virtual FederateHandle getFederateHandle (
1461  std::wstring const & theName)
1462  throw (
1463  NameNotFound,
1464  FederateNotExecutionMember,
1465  NotConnected,
1466  RTIinternalError);
1467 
1469  virtual std::wstring getFederateName (
1470  FederateHandle theHandle)
1471  throw (
1472  InvalidFederateHandle,
1473  FederateHandleNotKnown,
1474  FederateNotExecutionMember,
1475  NotConnected,
1476  RTIinternalError);
1477 
1479  virtual ObjectClassHandle getObjectClassHandle (
1480  std::wstring const & theName)
1481  throw (
1482  NameNotFound,
1483  FederateNotExecutionMember,
1484  NotConnected,
1485  RTIinternalError);
1486 
1488  virtual std::wstring getObjectClassName (
1489  ObjectClassHandle theHandle)
1490  throw (
1491  InvalidObjectClassHandle,
1492  FederateNotExecutionMember,
1493  NotConnected,
1494  RTIinternalError);
1495 
1497  virtual ObjectClassHandle getKnownObjectClassHandle (
1498  ObjectInstanceHandle theObject)
1499  throw (
1500  ObjectInstanceNotKnown,
1501  FederateNotExecutionMember,
1502  NotConnected,
1503  RTIinternalError);
1504 
1506  virtual ObjectInstanceHandle getObjectInstanceHandle (
1507  std::wstring const & theName)
1508  throw (
1509  ObjectInstanceNotKnown,
1510  FederateNotExecutionMember,
1511  NotConnected,
1512  RTIinternalError);
1513 
1515  virtual std::wstring getObjectInstanceName (
1516  ObjectInstanceHandle theHandle)
1517  throw (
1518  ObjectInstanceNotKnown,
1519  FederateNotExecutionMember,
1520  NotConnected,
1521  RTIinternalError);
1522 
1524  virtual AttributeHandle getAttributeHandle (
1525  ObjectClassHandle whichClass,
1526  std::wstring const & theAttributeName)
1527  throw (
1528  NameNotFound,
1529  InvalidObjectClassHandle,
1530  FederateNotExecutionMember,
1531  NotConnected,
1532  RTIinternalError);
1533 
1535  virtual std::wstring getAttributeName (
1536  ObjectClassHandle whichClass,
1537  AttributeHandle theHandle)
1538  throw (
1539  AttributeNotDefined,
1540  InvalidAttributeHandle,
1541  InvalidObjectClassHandle,
1542  FederateNotExecutionMember,
1543  NotConnected,
1544  RTIinternalError);
1545 
1547  virtual double getUpdateRateValue (
1548  std::wstring const & updateRateDesignator)
1549  throw (
1550  InvalidUpdateRateDesignator,
1551  FederateNotExecutionMember,
1552  NotConnected,
1553  RTIinternalError);
1554 
1556  virtual double getUpdateRateValueForAttribute (
1557  ObjectInstanceHandle theObject,
1558  AttributeHandle theAttribute)
1559  throw (
1560  ObjectInstanceNotKnown,
1561  AttributeNotDefined,
1562  FederateNotExecutionMember,
1563  NotConnected,
1564  RTIinternalError);
1565 
1567  virtual InteractionClassHandle getInteractionClassHandle (
1568  std::wstring const & theName)
1569  throw (
1570  NameNotFound,
1571  FederateNotExecutionMember,
1572  NotConnected,
1573  RTIinternalError);
1574 
1576  virtual std::wstring getInteractionClassName (
1577  InteractionClassHandle theHandle)
1578  throw (
1579  InvalidInteractionClassHandle,
1580  FederateNotExecutionMember,
1581  NotConnected,
1582  RTIinternalError);
1583 
1585  virtual ParameterHandle getParameterHandle (
1586  InteractionClassHandle whichClass,
1587  std::wstring const & theName)
1588  throw (
1589  NameNotFound,
1590  InvalidInteractionClassHandle,
1591  FederateNotExecutionMember,
1592  NotConnected,
1593  RTIinternalError);
1594 
1596  virtual std::wstring getParameterName (
1597  InteractionClassHandle whichClass,
1598  ParameterHandle theHandle)
1599  throw (
1600  InteractionParameterNotDefined,
1601  InvalidParameterHandle,
1602  InvalidInteractionClassHandle,
1603  FederateNotExecutionMember,
1604  NotConnected,
1605  RTIinternalError);
1606 
1608  virtual OrderType getOrderType (
1609  std::wstring const & orderName)
1610  throw (
1611  InvalidOrderName,
1612  FederateNotExecutionMember,
1613  NotConnected,
1614  RTIinternalError);
1615 
1617  virtual std::wstring getOrderName (
1618  OrderType orderType)
1619  throw (
1620  InvalidOrderType,
1621  FederateNotExecutionMember,
1622  NotConnected,
1623  RTIinternalError);
1624 
1626  virtual TransportationType getTransportationType (
1627  std::wstring const & transportationName)
1628  throw (
1629  InvalidTransportationName,
1630  FederateNotExecutionMember,
1631  NotConnected,
1632  RTIinternalError);
1633 
1635  virtual std::wstring getTransportationName (
1636  TransportationType transportationType)
1637  throw (
1638  InvalidTransportationType,
1639  FederateNotExecutionMember,
1640  NotConnected,
1641  RTIinternalError);
1642 
1644  virtual DimensionHandleSet getAvailableDimensionsForClassAttribute (
1645  ObjectClassHandle theClass,
1646  AttributeHandle theHandle)
1647  throw (
1648  AttributeNotDefined,
1649  InvalidAttributeHandle,
1650  InvalidObjectClassHandle,
1651  FederateNotExecutionMember,
1652  NotConnected,
1653  RTIinternalError);
1654 
1656  virtual DimensionHandleSet getAvailableDimensionsForInteractionClass (
1657  InteractionClassHandle theClass)
1658  throw (
1659  InvalidInteractionClassHandle,
1660  FederateNotExecutionMember,
1661  NotConnected,
1662  RTIinternalError);
1663 
1665  virtual DimensionHandle getDimensionHandle (
1666  std::wstring const & theName)
1667  throw (
1668  NameNotFound,
1669  FederateNotExecutionMember,
1670  NotConnected,
1671  RTIinternalError);
1672 
1674  virtual std::wstring getDimensionName (
1675  DimensionHandle theHandle)
1676  throw (
1677  InvalidDimensionHandle,
1678  FederateNotExecutionMember,
1679  NotConnected,
1680  RTIinternalError);
1681 
1683  virtual unsigned long getDimensionUpperBound (
1684  DimensionHandle theHandle)
1685  throw (
1686  InvalidDimensionHandle,
1687  FederateNotExecutionMember,
1688  NotConnected,
1689  RTIinternalError);
1690 
1692  virtual DimensionHandleSet getDimensionHandleSet (
1693  RegionHandle theRegionHandle)
1694  throw (
1695  InvalidRegion,
1696  SaveInProgress,
1697  RestoreInProgress,
1698  FederateNotExecutionMember,
1699  NotConnected,
1700  RTIinternalError);
1701 
1703  virtual RangeBounds getRangeBounds (
1704  RegionHandle theRegionHandle,
1705  DimensionHandle theDimensionHandle)
1706  throw (
1707  RegionDoesNotContainSpecifiedDimension,
1708  InvalidRegion,
1709  SaveInProgress,
1710  RestoreInProgress,
1711  FederateNotExecutionMember,
1712  NotConnected,
1713  RTIinternalError);
1714 
1716  virtual void setRangeBounds (
1717  RegionHandle theRegionHandle,
1718  DimensionHandle theDimensionHandle,
1719  RangeBounds const & theRangeBounds)
1720  throw (
1721  InvalidRangeBound,
1722  RegionDoesNotContainSpecifiedDimension,
1723  RegionNotCreatedByThisFederate,
1724  InvalidRegion,
1725  SaveInProgress,
1726  RestoreInProgress,
1727  FederateNotExecutionMember,
1728  NotConnected,
1729  RTIinternalError);
1730 
1732  virtual unsigned long normalizeFederateHandle (
1733  FederateHandle theFederateHandle)
1734  throw (
1735  InvalidFederateHandle,
1736  FederateNotExecutionMember,
1737  NotConnected,
1738  RTIinternalError);
1739 
1741  virtual unsigned long normalizeServiceGroup (
1742  ServiceGroup theServiceGroup)
1743  throw (
1744  InvalidServiceGroup,
1745  FederateNotExecutionMember,
1746  NotConnected,
1747  RTIinternalError);
1748 
1750  virtual void enableObjectClassRelevanceAdvisorySwitch ()
1751  throw (
1752  ObjectClassRelevanceAdvisorySwitchIsOn,
1753  SaveInProgress,
1754  RestoreInProgress,
1755  FederateNotExecutionMember,
1756  NotConnected,
1757  RTIinternalError);
1758 
1760  virtual void disableObjectClassRelevanceAdvisorySwitch ()
1761  throw (
1762  ObjectClassRelevanceAdvisorySwitchIsOff,
1763  SaveInProgress,
1764  RestoreInProgress,
1765  FederateNotExecutionMember,
1766  NotConnected,
1767  RTIinternalError);
1768 
1770  virtual void enableAttributeRelevanceAdvisorySwitch ()
1771  throw (
1772  AttributeRelevanceAdvisorySwitchIsOn,
1773  SaveInProgress,
1774  RestoreInProgress,
1775  FederateNotExecutionMember,
1776  NotConnected,
1777  RTIinternalError);
1778 
1780  virtual void disableAttributeRelevanceAdvisorySwitch ()
1781  throw (
1782  AttributeRelevanceAdvisorySwitchIsOff,
1783  SaveInProgress,
1784  RestoreInProgress,
1785  FederateNotExecutionMember,
1786  NotConnected,
1787  RTIinternalError);
1788 
1790  virtual void enableAttributeScopeAdvisorySwitch ()
1791  throw (
1792  AttributeScopeAdvisorySwitchIsOn,
1793  SaveInProgress,
1794  RestoreInProgress,
1795  FederateNotExecutionMember,
1796  NotConnected,
1797  RTIinternalError);
1798 
1800  virtual void disableAttributeScopeAdvisorySwitch ()
1801  throw (
1802  AttributeScopeAdvisorySwitchIsOff,
1803  SaveInProgress,
1804  RestoreInProgress,
1805  FederateNotExecutionMember,
1806  NotConnected,
1807  RTIinternalError);
1808 
1810  virtual void enableInteractionRelevanceAdvisorySwitch ()
1811  throw (
1812  InteractionRelevanceAdvisorySwitchIsOn,
1813  SaveInProgress,
1814  RestoreInProgress,
1815  FederateNotExecutionMember,
1816  NotConnected,
1817  RTIinternalError);
1818 
1820  virtual void disableInteractionRelevanceAdvisorySwitch ()
1821  throw (
1822  InteractionRelevanceAdvisorySwitchIsOff,
1823  SaveInProgress,
1824  RestoreInProgress,
1825  FederateNotExecutionMember,
1826  NotConnected,
1827  RTIinternalError);
1828 
1830  virtual bool evokeCallback (
1831  double approximateMinimumTimeInSeconds)
1832  throw (
1833  CallNotAllowedFromWithinCallback,
1834  RTIinternalError);
1835 
1837  virtual bool evokeMultipleCallbacks (
1838  double approximateMinimumTimeInSeconds,
1839  double approximateMaximumTimeInSeconds)
1840  throw (
1841  CallNotAllowedFromWithinCallback,
1842  RTIinternalError);
1843 
1845  virtual void enableCallbacks ()
1846  throw (
1847  SaveInProgress,
1848  RestoreInProgress,
1849  RTIinternalError);
1850 
1852  virtual void disableCallbacks ()
1853  throw (
1854  SaveInProgress,
1855  RestoreInProgress,
1856  RTIinternalError);
1857 
1859 
1861  virtual std::auto_ptr<LogicalTimeFactory> getTimeFactory () const
1862  throw (
1863  FederateNotExecutionMember,
1864  NotConnected,
1865  RTIinternalError);
1866 
1868  virtual FederateHandle decodeFederateHandle (
1869  VariableLengthData const & encodedValue) const
1870  throw (
1871  CouldNotDecode,
1872  FederateNotExecutionMember,
1873  NotConnected,
1874  RTIinternalError);
1875 
1876  virtual ObjectClassHandle decodeObjectClassHandle (
1877  VariableLengthData const & encodedValue) const
1878  throw (
1879  CouldNotDecode,
1880  FederateNotExecutionMember,
1881  NotConnected,
1882  RTIinternalError);
1883 
1884  virtual InteractionClassHandle decodeInteractionClassHandle (
1885  VariableLengthData const & encodedValue) const
1886  throw (
1887  CouldNotDecode,
1888  FederateNotExecutionMember,
1889  NotConnected,
1890  RTIinternalError);
1891 
1892  virtual ObjectInstanceHandle decodeObjectInstanceHandle (
1893  VariableLengthData const & encodedValue) const
1894  throw (
1895  CouldNotDecode,
1896  FederateNotExecutionMember,
1897  NotConnected,
1898  RTIinternalError);
1899 
1900  virtual AttributeHandle decodeAttributeHandle (
1901  VariableLengthData const & encodedValue) const
1902  throw (
1903  CouldNotDecode,
1904  FederateNotExecutionMember,
1905  NotConnected,
1906  RTIinternalError);
1907 
1908  virtual ParameterHandle decodeParameterHandle (
1909  VariableLengthData const & encodedValue) const
1910  throw (
1911  CouldNotDecode,
1912  FederateNotExecutionMember,
1913  NotConnected,
1914  RTIinternalError);
1915 
1916  virtual DimensionHandle decodeDimensionHandle (
1917  VariableLengthData const & encodedValue) const
1918  throw (
1919  CouldNotDecode,
1920  FederateNotExecutionMember,
1921  NotConnected,
1922  RTIinternalError);
1923 
1924  virtual MessageRetractionHandle decodeMessageRetractionHandle (
1925  VariableLengthData const & encodedValue) const
1926  throw (
1927  CouldNotDecode,
1928  FederateNotExecutionMember,
1929  NotConnected,
1930  RTIinternalError);
1931 
1932  virtual RegionHandle decodeRegionHandle (
1933  VariableLengthData const & encodedValue) const
1934  throw (
1935  CouldNotDecode,
1936  FederateNotExecutionMember,
1937  NotConnected,
1938  RTIinternalError);
1939 
1940  public:
1941 
1943  static DtVrlRtiAmbassador* create(const std::vector<std::wstring>&);
1944 
1945  protected:
1946 
1948  virtual bool lockServiceCall() const;
1949 
1951  virtual void unlockServiceCall() const;
1952 
1954  virtual bool enterServiceCall() const;
1955 
1957  virtual void exitServiceCall() const;
1958 
1960  DtServerRtiAmbassador* self() const;
1961 
1962 
1963  protected:
1964 
1966  std::auto_ptr<RTIambassador> myRtiAmb;
1967 
1969  DtServerExerciseConnection* myServerExerciseConnection;
1970 
1972  FederateAmbassador* myFedAmb;
1973 
1974  bool myIsJoined;
1975 
1976  };
1977 }
1978 
1979 #endif
#define DT_DLL_CSEC
Definition: clientServerExConnDllDefines.h:17

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)