VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrlRtiAmbassador1516.h
Go to the documentation of this file.
1 /*********************************************************************
2  ** Copyright (c) 1992-2025 MAK Technologies, Inc
3  ** All rights reserved.
4  *********************************************************************/
5 
8 
9 #pragma once
10 
11 #if DtHLA_1516 && !DtHLA_1516_EVOLVED
12 
13 #include <vlutil/vlMachineTypes.h>
14 #include "rtiNamespace.h"
15 
16 using namespace RTI;
17 
18 
24 {
25 
26 public:
27 
28 
30  throw ();
31 
32  virtual ~DtVrlRtiAmbassador();
33 
34 private:
37 
39  DtVrlRtiAmbassador& operator=(const DtVrlRtiAmbassador& orig);
40 
41 public:
42 
45  virtual RTI::RTIambassador* rtiAmb();
46 
48  virtual void createFederationExecution
49  (std::wstring const & federationExecutionName,
50  std::wstring const & fullPathNameToTheFDDfile,
51  std::wstring const & logicalTimeImplementationName = L"")
52  throw (FederationExecutionAlreadyExists,
53  CouldNotOpenFDD,
54  ErrorReadingFDD,
55  RTIinternalError) = 0;
56 
58  virtual void destroyFederationExecution
59  (std::wstring const & federationExecutionName)
60  throw (FederatesCurrentlyJoined,
61  FederationExecutionDoesNotExist,
62  RTIinternalError) = 0;
63 
65  virtual FederateHandle joinFederationExecution
66  (std::wstring const & federateType,
67  std::wstring const & federationExecutionName,
68  FederateAmbassador & federateAmbassador)
69  throw (FederateAlreadyExecutionMember,
70  FederationExecutionDoesNotExist,
71  SaveInProgress,
72  RestoreInProgress,
73  RTIinternalError) = 0;
74 
76  virtual void resignFederationExecution
77  (ResignAction resignAction)
78  throw (OwnershipAcquisitionPending,
79  FederateOwnsAttributes,
80  FederateNotExecutionMember,
81  RTIinternalError) = 0;
82 
84  virtual void registerFederationSynchronizationPoint
85  (std::wstring const & label,
86  RTI::VariableLengthData const & aTag)
87  throw (FederateNotExecutionMember,
88  SaveInProgress,
89  RestoreInProgress,
90  RTIinternalError) = 0;
91 
92  virtual void registerFederationSynchronizationPoint
93  (std::wstring const & label,
94  RTI::VariableLengthData const & aTag,
95  FederateHandleSet const & syncSet)
96  throw (FederateNotExecutionMember,
97  SaveInProgress,
98  RestoreInProgress,
99  RTIinternalError) = 0;
100 
102  virtual void synchronizationPointAchieved
103  (std::wstring const & label)
104  throw (SynchronizationPointLabelNotAnnounced,
105  FederateNotExecutionMember,
106  SaveInProgress,
107  RestoreInProgress,
108  RTIinternalError) = 0;
109 
111  virtual void requestFederationSave
112  (std::wstring const & label)
113  throw (FederateNotExecutionMember,
114  SaveInProgress,
115  RestoreInProgress,
116  RTIinternalError) = 0;
117 
118  virtual void requestFederationSave
119  (std::wstring const & label,
120  LogicalTime const & theTime)
121  throw (LogicalTimeAlreadyPassed,
122  InvalidLogicalTime,
123  FederateUnableToUseTime,
124  FederateNotExecutionMember,
125  SaveInProgress,
126  RestoreInProgress,
127  RTIinternalError) = 0;
128 
130  virtual void federateSaveBegun ()
131  throw (SaveNotInitiated,
132  FederateNotExecutionMember,
133  RestoreInProgress,
134  RTIinternalError) = 0;
135 
137  virtual void federateSaveComplete ()
138  throw (FederateHasNotBegunSave,
139  FederateNotExecutionMember,
140  RestoreInProgress,
141  RTIinternalError) = 0;
142 
143  virtual void federateSaveNotComplete()
144  throw (FederateHasNotBegunSave,
145  FederateNotExecutionMember,
146  RestoreInProgress,
147  RTIinternalError) = 0;
148 
150  virtual void queryFederationSaveStatus ()
151  throw (FederateNotExecutionMember,
152  RestoreInProgress,
153  RTIinternalError) = 0;
154 
156  virtual void requestFederationRestore
157  (std::wstring const & label)
158  throw (FederateNotExecutionMember,
159  SaveInProgress,
160  RestoreInProgress,
161  RTIinternalError) = 0;
162 
164  virtual void federateRestoreComplete ()
165  throw (RestoreNotRequested,
166  FederateNotExecutionMember,
167  SaveInProgress,
168  RTIinternalError) = 0;
169 
170  virtual void federateRestoreNotComplete ()
171  throw (RestoreNotRequested,
172  FederateNotExecutionMember,
173  SaveInProgress,
174  RTIinternalError) = 0;
175 
177  virtual void queryFederationRestoreStatus ()
178  throw (FederateNotExecutionMember,
179  SaveInProgress,
180  RTIinternalError) = 0;
181 
185 
187  virtual void publishObjectClassAttributes
188  (ObjectClassHandle theClass,
189  AttributeHandleSet const & attributeList)
190  throw (ObjectClassNotDefined,
191  AttributeNotDefined,
192  FederateNotExecutionMember,
193  SaveInProgress,
194  RestoreInProgress,
195  RTIinternalError) = 0;
196 
198  virtual void unpublishObjectClass
199  (ObjectClassHandle theClass)
200  throw (ObjectClassNotDefined,
201  OwnershipAcquisitionPending,
202  FederateNotExecutionMember,
203  SaveInProgress,
204  RestoreInProgress,
205  RTIinternalError) = 0;
206 
207  virtual void unpublishObjectClassAttributes
208  (ObjectClassHandle theClass,
209  AttributeHandleSet const & attributeList)
210  throw (ObjectClassNotDefined,
211  AttributeNotDefined,
212  OwnershipAcquisitionPending,
213  FederateNotExecutionMember,
214  SaveInProgress,
215  RestoreInProgress,
216  RTIinternalError) = 0;
217 
219  virtual void publishInteractionClass
220  (InteractionClassHandle theInteraction)
221  throw (InteractionClassNotDefined,
222  FederateNotExecutionMember,
223  SaveInProgress,
224  RestoreInProgress,
225  RTIinternalError) = 0;
226 
228  virtual void unpublishInteractionClass
229  (InteractionClassHandle theInteraction)
230  throw (InteractionClassNotDefined,
231  FederateNotExecutionMember,
232  SaveInProgress,
233  RestoreInProgress,
234  RTIinternalError) = 0;
235 
237  virtual void subscribeObjectClassAttributes
238  (ObjectClassHandle theClass,
239  AttributeHandleSet const & attributeList,
240  bool active = true)
241  throw (ObjectClassNotDefined,
242  AttributeNotDefined,
243  FederateNotExecutionMember,
244  SaveInProgress,
245  RestoreInProgress,
246  RTIinternalError) = 0;
247 
249  virtual void unsubscribeObjectClass
250  (ObjectClassHandle theClass)
251  throw (ObjectClassNotDefined,
252  FederateNotExecutionMember,
253  SaveInProgress,
254  RestoreInProgress,
255  RTIinternalError) = 0;
256 
257  virtual void unsubscribeObjectClassAttributes
258  (ObjectClassHandle theClass,
259  AttributeHandleSet const & attributeList)
260  throw (ObjectClassNotDefined,
261  AttributeNotDefined,
262  FederateNotExecutionMember,
263  SaveInProgress,
264  RestoreInProgress,
265  RTIinternalError) = 0;
266 
268  virtual void subscribeInteractionClass
269  (InteractionClassHandle theClass,
270  bool active = true)
271  throw (InteractionClassNotDefined,
272  FederateServiceInvocationsAreBeingReportedViaMOM,
273  FederateNotExecutionMember,
274  SaveInProgress,
275  RestoreInProgress,
276  RTIinternalError) = 0;
277 
279  virtual void unsubscribeInteractionClass
280  (InteractionClassHandle theClass)
281  throw (InteractionClassNotDefined,
282  FederateNotExecutionMember,
283  SaveInProgress,
284  RestoreInProgress,
285  RTIinternalError) = 0;
286 
290 
292  virtual void reserveObjectInstanceName
293  (std::wstring const & theObjectInstanceName)
294  throw (IllegalName,
295  FederateNotExecutionMember,
296  SaveInProgress,
297  RestoreInProgress,
298  RTIinternalError) = 0;
299 
301  virtual ObjectInstanceHandle registerObjectInstance
302  (ObjectClassHandle theClass)
303  throw (ObjectClassNotDefined,
304  ObjectClassNotPublished,
305  FederateNotExecutionMember,
306  SaveInProgress,
307  RestoreInProgress,
308  RTIinternalError) = 0;
309 
310  virtual ObjectInstanceHandle registerObjectInstance
311  (ObjectClassHandle theClass,
312  std::wstring const & theObjectInstanceName)
313  throw (ObjectClassNotDefined,
314  ObjectClassNotPublished,
315  ObjectInstanceNameNotReserved,
316  ObjectInstanceNameInUse,
317  FederateNotExecutionMember,
318  SaveInProgress,
319  RestoreInProgress,
320  RTIinternalError) = 0;
321 
323  virtual void updateAttributeValues
324  (ObjectInstanceHandle theObject,
325  AttributeHandleValueMap const & theAttributeValues,
326  RTI::VariableLengthData const & aTag)
327  throw (ObjectInstanceNotKnown,
328  AttributeNotDefined,
329  AttributeNotOwned,
330  FederateNotExecutionMember,
331  SaveInProgress,
332  RestoreInProgress,
333  RTIinternalError) = 0;
334 
335  virtual MessageRetractionHandle updateAttributeValues
336  (ObjectInstanceHandle theObject,
337  AttributeHandleValueMap const & theAttributeValues,
338  RTI::VariableLengthData const & aTag,
339  LogicalTime const & theTime)
340  throw (ObjectInstanceNotKnown,
341  AttributeNotDefined,
342  AttributeNotOwned,
343  InvalidLogicalTime,
344  FederateNotExecutionMember,
345  SaveInProgress,
346  RestoreInProgress,
347  RTIinternalError) = 0;
348 
350  virtual void sendInteraction
351  (InteractionClassHandle theInteraction,
352  ParameterHandleValueMap const & theParameterValues,
353  RTI::VariableLengthData const & aTag)
354  throw (InteractionClassNotPublished,
355  InteractionClassNotDefined,
356  InteractionParameterNotDefined,
357  FederateNotExecutionMember,
358  SaveInProgress,
359  RestoreInProgress,
360  RTIinternalError) = 0;
361 
362  virtual MessageRetractionHandle sendInteraction
363  (InteractionClassHandle theInteraction,
364  ParameterHandleValueMap const & theParameterValues,
365  RTI::VariableLengthData const & aTag,
366  LogicalTime const & theTime)
367  throw (InteractionClassNotPublished,
368  InteractionClassNotDefined,
369  InteractionParameterNotDefined,
370  InvalidLogicalTime,
371  FederateNotExecutionMember,
372  SaveInProgress,
373  RestoreInProgress,
374  RTIinternalError) = 0;
375 
377  virtual void deleteObjectInstance
378  (ObjectInstanceHandle theObject,
379  RTI::VariableLengthData const & aTag)
380  throw (DeletePrivilegeNotHeld,
381  ObjectInstanceNotKnown,
382  FederateNotExecutionMember,
383  SaveInProgress,
384  RestoreInProgress,
385  RTIinternalError) = 0;
386 
387  virtual MessageRetractionHandle deleteObjectInstance
388  (ObjectInstanceHandle theObject,
389  RTI::VariableLengthData const & aTag,
390  LogicalTime const & theTime)
391  throw (DeletePrivilegeNotHeld,
392  ObjectInstanceNotKnown,
393  InvalidLogicalTime,
394  FederateNotExecutionMember,
395  SaveInProgress,
396  RestoreInProgress,
397  RTIinternalError) = 0;
398 
400  virtual void localDeleteObjectInstance
401  (ObjectInstanceHandle theObject)
402  throw (ObjectInstanceNotKnown,
403  FederateOwnsAttributes,
404  OwnershipAcquisitionPending,
405  FederateNotExecutionMember,
406  SaveInProgress,
407  RestoreInProgress,
408  RTIinternalError) = 0;
409 
411  virtual void changeAttributeTransportationType
412  (ObjectInstanceHandle theObject,
413  AttributeHandleSet const & theAttributes,
414  TransportationType theType)
415  throw (ObjectInstanceNotKnown,
416  AttributeNotDefined,
417  AttributeNotOwned,
418  FederateNotExecutionMember,
419  SaveInProgress,
420  RestoreInProgress,
421  RTIinternalError) = 0;
422 
424  virtual void changeInteractionTransportationType
425  (InteractionClassHandle theClass,
426  TransportationType theType)
427  throw (InteractionClassNotDefined,
428  InteractionClassNotPublished,
429  FederateNotExecutionMember,
430  SaveInProgress,
431  RestoreInProgress,
432  RTIinternalError) = 0;
433 
435  virtual void requestAttributeValueUpdate
436  (ObjectInstanceHandle theObject,
437  AttributeHandleSet const & theAttributes,
438  RTI::VariableLengthData const & aTag)
439  throw (ObjectInstanceNotKnown,
440  AttributeNotDefined,
441  FederateNotExecutionMember,
442  SaveInProgress,
443  RestoreInProgress,
444  RTIinternalError) = 0;
445 
446  virtual void requestAttributeValueUpdate
447  (ObjectClassHandle theClass,
448  AttributeHandleSet const & theAttributes,
449  RTI::VariableLengthData const & aTag)
450  throw (ObjectClassNotDefined,
451  AttributeNotDefined,
452  FederateNotExecutionMember,
453  SaveInProgress,
454  RestoreInProgress,
455  RTIinternalError) = 0;
456 
461  virtual void unconditionalAttributeOwnershipDivestiture
462  (ObjectInstanceHandle theObject,
463  AttributeHandleSet const & theAttributes)
464  throw (ObjectInstanceNotKnown,
465  AttributeNotDefined,
466  AttributeNotOwned,
467  FederateNotExecutionMember,
468  SaveInProgress,
469  RestoreInProgress,
470  RTIinternalError) = 0;
471 
473  virtual void negotiatedAttributeOwnershipDivestiture
474  (ObjectInstanceHandle theObject,
475  AttributeHandleSet const & theAttributes,
476  RTI::VariableLengthData const & aTag)
477  throw (ObjectInstanceNotKnown,
478  AttributeNotDefined,
479  AttributeNotOwned,
480  AttributeAlreadyBeingDivested,
481  FederateNotExecutionMember,
482  SaveInProgress,
483  RestoreInProgress,
484  RTIinternalError) = 0;
485 
487  virtual void confirmDivestiture
488  (ObjectInstanceHandle theObject,
489  AttributeHandleSet const & confirmedAttributes,
490  RTI::VariableLengthData const & aTag)
491  throw (ObjectInstanceNotKnown,
492  AttributeNotDefined,
493  AttributeNotOwned,
494  AttributeDivestitureWasNotRequested,
495  NoAcquisitionPending,
496  FederateNotExecutionMember,
497  SaveInProgress,
498  RestoreInProgress,
499  RTIinternalError) = 0;
500 
502  virtual void attributeOwnershipAcquisition
503  (ObjectInstanceHandle theObject,
504  AttributeHandleSet const & desiredAttributes,
505  RTI::VariableLengthData const & aTag)
506  throw (ObjectInstanceNotKnown,
507  ObjectClassNotPublished,
508  AttributeNotDefined,
509  AttributeNotPublished,
510  FederateOwnsAttributes,
511  FederateNotExecutionMember,
512  SaveInProgress,
513  RestoreInProgress,
514  RTIinternalError) = 0;
515 
517  virtual void attributeOwnershipAcquisitionIfAvailable
518  (ObjectInstanceHandle theObject,
519  AttributeHandleSet const & desiredAttributes)
520  throw (ObjectInstanceNotKnown,
521  ObjectClassNotPublished,
522  AttributeNotDefined,
523  AttributeNotPublished,
524  FederateOwnsAttributes,
525  AttributeAlreadyBeingAcquired,
526  FederateNotExecutionMember,
527  SaveInProgress,
528  RestoreInProgress,
529  RTIinternalError) = 0;
530 
532  virtual void attributeOwnershipDivestitureIfWanted(
533  ObjectInstanceHandle theObject,
534  AttributeHandleSet const & theAttributes,
535  AttributeHandleSet & theDivestedAttributes)
536  throw (ObjectInstanceNotKnown,
537  AttributeNotDefined,
538  AttributeNotOwned,
539  FederateNotExecutionMember,
540  SaveInProgress,
541  RestoreInProgress,
542  RTIinternalError) = 0;
543 
545  virtual void cancelNegotiatedAttributeOwnershipDivestiture
546  (ObjectInstanceHandle theObject,
547  AttributeHandleSet const & theAttributes)
548  throw (ObjectInstanceNotKnown,
549  AttributeNotDefined,
550  AttributeNotOwned,
551  AttributeDivestitureWasNotRequested,
552  FederateNotExecutionMember,
553  SaveInProgress,
554  RestoreInProgress,
555  RTIinternalError) = 0;
556 
558  virtual void cancelAttributeOwnershipAcquisition
559  (ObjectInstanceHandle theObject,
560  AttributeHandleSet const & theAttributes)
561  throw (ObjectInstanceNotKnown,
562  AttributeNotDefined,
563  AttributeAlreadyOwned,
564  AttributeAcquisitionWasNotRequested,
565  FederateNotExecutionMember,
566  SaveInProgress,
567  RestoreInProgress,
568  RTIinternalError) = 0;
569 
571  virtual void queryAttributeOwnership
572  (ObjectInstanceHandle theObject,
573  AttributeHandle theAttribute)
574  throw (ObjectInstanceNotKnown,
575  AttributeNotDefined,
576  FederateNotExecutionMember,
577  SaveInProgress,
578  RestoreInProgress,
579  RTIinternalError) = 0;
580 
582  virtual bool isAttributeOwnedByFederate
583  (ObjectInstanceHandle theObject,
584  AttributeHandle theAttribute)
585  throw (ObjectInstanceNotKnown,
586  AttributeNotDefined,
587  FederateNotExecutionMember,
588  SaveInProgress,
589  RestoreInProgress,
590  RTIinternalError) = 0;
591 
595 
597  virtual void enableTimeRegulation
598  (LogicalTimeInterval const & theLookahead)
599  throw (TimeRegulationAlreadyEnabled,
600  InvalidLookahead,
601  InTimeAdvancingState,
602  RequestForTimeRegulationPending,
603  FederateNotExecutionMember,
604  SaveInProgress,
605  RestoreInProgress,
606  RTIinternalError) = 0;
607 
609  virtual void disableTimeRegulation ()
610  throw (TimeRegulationIsNotEnabled,
611  FederateNotExecutionMember,
612  SaveInProgress,
613  RestoreInProgress,
614  RTIinternalError) = 0;
615 
617  virtual void enableTimeConstrained ()
618  throw (TimeConstrainedAlreadyEnabled,
619  InTimeAdvancingState,
620  RequestForTimeConstrainedPending,
621  FederateNotExecutionMember,
622  SaveInProgress,
623  RestoreInProgress,
624  RTIinternalError) = 0;
625 
627  virtual void disableTimeConstrained ()
628  throw (TimeConstrainedIsNotEnabled,
629  FederateNotExecutionMember,
630  SaveInProgress,
631  RestoreInProgress,
632  RTIinternalError) = 0;
633 
635  virtual void timeAdvanceRequest
636  (LogicalTime const & theTime)
637  throw (InvalidLogicalTime,
638  LogicalTimeAlreadyPassed,
639  InTimeAdvancingState,
640  RequestForTimeRegulationPending,
641  RequestForTimeConstrainedPending,
642  FederateNotExecutionMember,
643  SaveInProgress,
644  RestoreInProgress,
645  RTIinternalError) = 0;
646 
648  virtual void timeAdvanceRequestAvailable
649  (LogicalTime const & theTime)
650  throw (InvalidLogicalTime,
651  LogicalTimeAlreadyPassed,
652  InTimeAdvancingState,
653  RequestForTimeRegulationPending,
654  RequestForTimeConstrainedPending,
655  FederateNotExecutionMember,
656  SaveInProgress,
657  RestoreInProgress,
658  RTIinternalError) = 0;
659 
661  virtual void nextMessageRequest
662  (LogicalTime const & theTime)
663  throw (InvalidLogicalTime,
664  LogicalTimeAlreadyPassed,
665  InTimeAdvancingState,
666  RequestForTimeRegulationPending,
667  RequestForTimeConstrainedPending,
668  FederateNotExecutionMember,
669  SaveInProgress,
670  RestoreInProgress,
671  RTIinternalError) = 0;
672 
674  virtual void nextMessageRequestAvailable
675  (LogicalTime const & theTime)
676  throw (InvalidLogicalTime,
677  LogicalTimeAlreadyPassed,
678  InTimeAdvancingState,
679  RequestForTimeRegulationPending,
680  RequestForTimeConstrainedPending,
681  FederateNotExecutionMember,
682  SaveInProgress,
683  RestoreInProgress,
684  RTIinternalError) = 0;
685 
687  virtual void flushQueueRequest
688  (LogicalTime const & theTime)
689  throw (InvalidLogicalTime,
690  LogicalTimeAlreadyPassed,
691  InTimeAdvancingState,
692  RequestForTimeRegulationPending,
693  RequestForTimeConstrainedPending,
694  FederateNotExecutionMember,
695  SaveInProgress,
696  RestoreInProgress,
697  RTIinternalError) = 0;
698 
700  virtual void enableAsynchronousDelivery ()
701  throw (AsynchronousDeliveryAlreadyEnabled,
702  FederateNotExecutionMember,
703  SaveInProgress,
704  RestoreInProgress,
705  RTIinternalError) = 0;
706 
708  virtual void disableAsynchronousDelivery ()
709  throw (AsynchronousDeliveryAlreadyDisabled,
710  FederateNotExecutionMember,
711  SaveInProgress,
712  RestoreInProgress,
713  RTIinternalError) = 0;
714 
716  virtual bool queryGALT (LogicalTime & theTime)
717  throw (FederateNotExecutionMember,
718  SaveInProgress,
719  RestoreInProgress,
720  RTIinternalError) = 0;
721 
723  virtual void queryLogicalTime (LogicalTime & theTime)
724  throw (FederateNotExecutionMember,
725  SaveInProgress,
726  RestoreInProgress,
727  RTIinternalError) = 0;
728 
730  virtual bool queryLITS (LogicalTime & theTime)
731  throw (FederateNotExecutionMember,
732  SaveInProgress,
733  RestoreInProgress,
734  RTIinternalError) = 0;
735 
737  virtual void modifyLookahead
738  (LogicalTimeInterval const & theLookahead)
739  throw (TimeRegulationIsNotEnabled,
740  InvalidLookahead,
741  InTimeAdvancingState,
742  FederateNotExecutionMember,
743  SaveInProgress,
744  RestoreInProgress,
745  RTIinternalError) = 0;
746 
748  virtual void queryLookahead (LogicalTimeInterval & interval)
749  throw (TimeRegulationIsNotEnabled,
750  FederateNotExecutionMember,
751  SaveInProgress,
752  RestoreInProgress,
753  RTIinternalError) = 0;
754 
756  virtual void retract
757  (MessageRetractionHandle theHandle)
758  throw (InvalidRetractionHandle,
759  TimeRegulationIsNotEnabled,
760  MessageCanNoLongerBeRetracted,
761  FederateNotExecutionMember,
762  SaveInProgress,
763  RestoreInProgress,
764  RTIinternalError) = 0;
765 
767  virtual void changeAttributeOrderType
768  (ObjectInstanceHandle theObject,
769  AttributeHandleSet const & theAttributes,
770  OrderType theType)
771  throw (ObjectInstanceNotKnown,
772  AttributeNotDefined,
773  AttributeNotOwned,
774  FederateNotExecutionMember,
775  SaveInProgress,
776  RestoreInProgress,
777  RTIinternalError) = 0;
778 
780  virtual void changeInteractionOrderType
781  (InteractionClassHandle theClass,
782  OrderType theType)
783  throw (InteractionClassNotDefined,
784  InteractionClassNotPublished,
785  FederateNotExecutionMember,
786  SaveInProgress,
787  RestoreInProgress,
788  RTIinternalError) = 0;
789 
793 
795  virtual RegionHandle createRegion
796  (DimensionHandleSet const & theDimensions)
797  throw (InvalidDimensionHandle,
798  FederateNotExecutionMember,
799  SaveInProgress,
800  RestoreInProgress,
801  RTIinternalError) = 0;
802 
804  virtual void commitRegionModifications
805  (RegionHandleSet const & theRegionHandleSet)
806  throw (InvalidRegion,
807  RegionNotCreatedByThisFederate,
808  FederateNotExecutionMember,
809  SaveInProgress,
810  RestoreInProgress,
811  RTIinternalError) = 0;
812 
814  virtual void deleteRegion
815  (RegionHandle theRegion)
816  throw (InvalidRegion,
817  RegionNotCreatedByThisFederate,
818  RegionInUseForUpdateOrSubscription,
819  FederateNotExecutionMember,
820  SaveInProgress,
821  RestoreInProgress,
822  RTIinternalError) = 0;
823 
825  virtual ObjectInstanceHandle registerObjectInstanceWithRegions
826  (ObjectClassHandle theClass,
827  AttributeHandleSetRegionHandleSetPairVector const &
828  theAttributeHandleSetRegionHandleSetPairVector)
829  throw (ObjectClassNotDefined,
830  ObjectClassNotPublished,
831  AttributeNotDefined,
832  AttributeNotPublished,
833  InvalidRegion,
834  RegionNotCreatedByThisFederate,
835  InvalidRegionContext,
836  FederateNotExecutionMember,
837  SaveInProgress,
838  RestoreInProgress,
839  RTIinternalError) = 0;
840 
841  virtual ObjectInstanceHandle registerObjectInstanceWithRegions
842  (ObjectClassHandle theClass,
843  AttributeHandleSetRegionHandleSetPairVector const &
844  theAttributeHandleSetRegionHandleSetPairVector,
845  std::wstring const & theObjectInstanceName)
846  throw (ObjectClassNotDefined,
847  ObjectClassNotPublished,
848  AttributeNotDefined,
849  AttributeNotPublished,
850  InvalidRegion,
851  RegionNotCreatedByThisFederate,
852  InvalidRegionContext,
853  ObjectInstanceNameNotReserved,
854  ObjectInstanceNameInUse,
855  FederateNotExecutionMember,
856  SaveInProgress,
857  RestoreInProgress,
858  RTIinternalError) = 0;
859 
861  virtual void associateRegionsForUpdates
862  (ObjectInstanceHandle theObject,
863  AttributeHandleSetRegionHandleSetPairVector const &
864  theAttributeHandleSetRegionHandleSetPairVector)
865  throw (ObjectInstanceNotKnown,
866  AttributeNotDefined,
867  InvalidRegion,
868  RegionNotCreatedByThisFederate,
869  InvalidRegionContext,
870  FederateNotExecutionMember,
871  SaveInProgress,
872  RestoreInProgress,
873  RTIinternalError) = 0;
874 
876  virtual void unassociateRegionsForUpdates
877  (ObjectInstanceHandle theObject,
878  AttributeHandleSetRegionHandleSetPairVector const &
879  theAttributeHandleSetRegionHandleSetPairVector)
880  throw (ObjectInstanceNotKnown,
881  AttributeNotDefined,
882  InvalidRegion,
883  RegionNotCreatedByThisFederate,
884  FederateNotExecutionMember,
885  SaveInProgress,
886  RestoreInProgress,
887  RTIinternalError) = 0;
888 
890  virtual void subscribeObjectClassAttributesWithRegions
891  (ObjectClassHandle theClass,
892  AttributeHandleSetRegionHandleSetPairVector const &
893  theAttributeHandleSetRegionHandleSetPairVector,
894  bool active = true)
895  throw (ObjectClassNotDefined,
896  AttributeNotDefined,
897  InvalidRegion,
898  RegionNotCreatedByThisFederate,
899  InvalidRegionContext,
900  FederateNotExecutionMember,
901  SaveInProgress,
902  RestoreInProgress,
903  RTIinternalError) = 0;
904 
906  virtual void unsubscribeObjectClassAttributesWithRegions
907  (ObjectClassHandle theClass,
908  AttributeHandleSetRegionHandleSetPairVector const &
909  theAttributeHandleSetRegionHandleSetPairVector)
910  throw (ObjectClassNotDefined,
911  AttributeNotDefined,
912  InvalidRegion,
913  RegionNotCreatedByThisFederate,
914  FederateNotExecutionMember,
915  SaveInProgress,
916  RestoreInProgress,
917  RTIinternalError) = 0;
918 
920  virtual void subscribeInteractionClassWithRegions
921  (InteractionClassHandle theClass,
922  RegionHandleSet const & theRegionHandleSet,
923  bool active = true)
924  throw (InteractionClassNotDefined,
925  InvalidRegion,
926  RegionNotCreatedByThisFederate,
927  InvalidRegionContext,
928  FederateServiceInvocationsAreBeingReportedViaMOM,
929  FederateNotExecutionMember,
930  SaveInProgress,
931  RestoreInProgress,
932  RTIinternalError) = 0;
933 
935  virtual void unsubscribeInteractionClassWithRegions
936  (InteractionClassHandle theClass,
937  RegionHandleSet const & theRegionHandleSet)
938  throw (InteractionClassNotDefined,
939  InvalidRegion,
940  RegionNotCreatedByThisFederate,
941  FederateNotExecutionMember,
942  SaveInProgress,
943  RestoreInProgress,
944  RTIinternalError) = 0;
945 
947  virtual void sendInteractionWithRegions
948  (InteractionClassHandle theInteraction,
949  ParameterHandleValueMap const & theParameterValues,
950  RegionHandleSet const & theRegionHandleSet,
951  RTI::VariableLengthData const & aTag)
952  throw (InteractionClassNotDefined,
953  InteractionClassNotPublished,
954  InteractionParameterNotDefined,
955  InvalidRegion,
956  RegionNotCreatedByThisFederate,
957  InvalidRegionContext,
958  FederateNotExecutionMember,
959  SaveInProgress,
960  RestoreInProgress,
961  RTIinternalError) = 0;
962 
963  virtual MessageRetractionHandle sendInteractionWithRegions
964  (InteractionClassHandle theInteraction,
965  ParameterHandleValueMap const & theParameterValues,
966  RegionHandleSet const & theRegionHandleSet,
967  RTI::VariableLengthData const & aTag,
968  LogicalTime const & theTime)
969  throw (InteractionClassNotDefined,
970  InteractionClassNotPublished,
971  InteractionParameterNotDefined,
972  InvalidRegion,
973  RegionNotCreatedByThisFederate,
974  InvalidRegionContext,
975  InvalidLogicalTime,
976  FederateNotExecutionMember,
977  SaveInProgress,
978  RestoreInProgress,
979  RTIinternalError) = 0;
980 
982  virtual void requestAttributeValueUpdateWithRegions
983  (ObjectClassHandle theClass,
984  AttributeHandleSetRegionHandleSetPairVector const & theSet,
985  RTI::VariableLengthData const & aTag)
986  throw (ObjectClassNotDefined,
987  AttributeNotDefined,
988  InvalidRegion,
989  RegionNotCreatedByThisFederate,
990  InvalidRegionContext,
991  FederateNotExecutionMember,
992  SaveInProgress,
993  RestoreInProgress,
994  RTIinternalError) = 0;
995 
999 
1001  virtual ObjectClassHandle getObjectClassHandle
1002  (std::wstring const & theName)
1003  throw (NameNotFound,
1004  FederateNotExecutionMember,
1005  RTIinternalError) = 0;
1006 
1008  virtual std::wstring getObjectClassName
1009  (ObjectClassHandle theClass)
1010  throw (InvalidObjectClassHandle,
1011  FederateNotExecutionMember,
1012  RTIinternalError) = 0;
1013 
1015  virtual AttributeHandle getAttributeHandle
1016  (ObjectClassHandle theClass,
1017  std::wstring const & theAttributeName)
1018  throw (InvalidObjectClassHandle,
1019  NameNotFound,
1020  FederateNotExecutionMember,
1021  RTIinternalError) = 0;
1022 
1024  virtual std::wstring getAttributeName
1025  (ObjectClassHandle theClass,
1026  AttributeHandle theHandle)
1027  throw (InvalidObjectClassHandle,
1028  InvalidAttributeHandle,
1029  AttributeNotDefined,
1030  FederateNotExecutionMember,
1031  RTIinternalError) = 0;
1032 
1034  virtual InteractionClassHandle getInteractionClassHandle
1035  (std::wstring const & theName)
1036  throw (NameNotFound,
1037  FederateNotExecutionMember,
1038  RTIinternalError) = 0;
1039 
1041  virtual std::wstring getInteractionClassName
1042  (InteractionClassHandle theHandle)
1043  throw (InvalidInteractionClassHandle,
1044  FederateNotExecutionMember,
1045  RTIinternalError) = 0;
1046 
1048  virtual ParameterHandle getParameterHandle
1049  (InteractionClassHandle whichClass,
1050  std::wstring const & theName)
1051  throw (InvalidInteractionClassHandle,
1052  NameNotFound,
1053  FederateNotExecutionMember,
1054  RTIinternalError) = 0;
1055 
1057  virtual std::wstring getParameterName
1058  (InteractionClassHandle whichClass,
1059  ParameterHandle theHandle)
1060  throw (InvalidInteractionClassHandle,
1061  InvalidParameterHandle,
1062  InteractionParameterNotDefined,
1063  FederateNotExecutionMember,
1064  RTIinternalError) = 0;
1065 
1067  virtual ObjectInstanceHandle getObjectInstanceHandle
1068  (std::wstring const & theName)
1069  throw (ObjectInstanceNotKnown,
1070  FederateNotExecutionMember,
1071  RTIinternalError) = 0;
1072 
1074  virtual std::wstring getObjectInstanceName
1075  (ObjectInstanceHandle theHandle)
1076  throw (ObjectInstanceNotKnown,
1077  FederateNotExecutionMember,
1078  RTIinternalError) = 0;
1079 
1081  virtual DimensionHandle getDimensionHandle
1082  (std::wstring const & theName)
1083  throw (NameNotFound,
1084  FederateNotExecutionMember,
1085  RTIinternalError) = 0;
1086 
1088  virtual std::wstring getDimensionName
1089  (DimensionHandle theHandle)
1090  throw (InvalidDimensionHandle,
1091  FederateNotExecutionMember,
1092  RTIinternalError) = 0;
1093 
1095  virtual unsigned long getDimensionUpperBound
1096  (DimensionHandle theHandle)
1097  throw (InvalidDimensionHandle,
1098  FederateNotExecutionMember,
1099  RTIinternalError) = 0;
1100 
1102  virtual DimensionHandleSet getAvailableDimensionsForClassAttribute
1103  (ObjectClassHandle theClass,
1104  AttributeHandle theHandle)
1105  throw (InvalidObjectClassHandle,
1106  InvalidAttributeHandle,
1107  AttributeNotDefined,
1108  FederateNotExecutionMember,
1109  RTIinternalError) = 0;
1110 
1112  virtual ObjectClassHandle getKnownObjectClassHandle
1113  (ObjectInstanceHandle theObject)
1114  throw (ObjectInstanceNotKnown,
1115  FederateNotExecutionMember,
1116  RTIinternalError) = 0;
1117 
1119  virtual DimensionHandleSet getAvailableDimensionsForInteractionClass
1120  (InteractionClassHandle theClass)
1121  throw (InvalidInteractionClassHandle,
1122  FederateNotExecutionMember,
1123  RTIinternalError) = 0;
1124 
1126  virtual TransportationType getTransportationType
1127  (std::wstring const & transportationName)
1128  throw (InvalidTransportationName,
1129  FederateNotExecutionMember,
1130  RTIinternalError) = 0;
1131 
1133  virtual std::wstring getTransportationName
1134  (TransportationType transportationType)
1135  throw (InvalidTransportationType,
1136  FederateNotExecutionMember,
1137  RTIinternalError) = 0;
1138 
1140  virtual OrderType getOrderType
1141  (std::wstring const & orderName)
1142  throw (InvalidOrderName,
1143  FederateNotExecutionMember,
1144  RTIinternalError) = 0;
1145 
1147  virtual std::wstring getOrderName
1148  (OrderType orderType)
1149  throw (InvalidOrderType,
1150  FederateNotExecutionMember,
1151  RTIinternalError) = 0;
1152 
1154  virtual void enableObjectClassRelevanceAdvisorySwitch ()
1155  throw (ObjectClassRelevanceAdvisorySwitchIsOn,
1156  FederateNotExecutionMember,
1157  SaveInProgress,
1158  RestoreInProgress,
1159  RTIinternalError) = 0;
1160 
1162  virtual void disableObjectClassRelevanceAdvisorySwitch ()
1163  throw (ObjectClassRelevanceAdvisorySwitchIsOff,
1164  FederateNotExecutionMember,
1165  SaveInProgress,
1166  RestoreInProgress,
1167  RTIinternalError) = 0;
1168 
1170  virtual void enableAttributeRelevanceAdvisorySwitch ()
1171  throw (AttributeRelevanceAdvisorySwitchIsOn,
1172  FederateNotExecutionMember,
1173  SaveInProgress,
1174  RestoreInProgress,
1175  RTIinternalError) = 0;
1176 
1178  virtual void disableAttributeRelevanceAdvisorySwitch ()
1179  throw (AttributeRelevanceAdvisorySwitchIsOff,
1180  FederateNotExecutionMember,
1181  SaveInProgress,
1182  RestoreInProgress,
1183  RTIinternalError) = 0;
1184 
1186  virtual void enableAttributeScopeAdvisorySwitch ()
1187  throw (AttributeScopeAdvisorySwitchIsOn,
1188  FederateNotExecutionMember,
1189  SaveInProgress,
1190  RestoreInProgress,
1191  RTIinternalError) = 0;
1192 
1194  virtual void disableAttributeScopeAdvisorySwitch ()
1195  throw (AttributeScopeAdvisorySwitchIsOff,
1196  FederateNotExecutionMember,
1197  SaveInProgress,
1198  RestoreInProgress,
1199  RTIinternalError) = 0;
1200 
1202  virtual void enableInteractionRelevanceAdvisorySwitch ()
1203  throw (InteractionRelevanceAdvisorySwitchIsOn,
1204  FederateNotExecutionMember,
1205  SaveInProgress,
1206  RestoreInProgress,
1207  RTIinternalError) = 0;
1208 
1210  virtual void disableInteractionRelevanceAdvisorySwitch ()
1211  throw (InteractionRelevanceAdvisorySwitchIsOff,
1212  FederateNotExecutionMember,
1213  SaveInProgress,
1214  RestoreInProgress,
1215  RTIinternalError) = 0;
1216 
1218  virtual
1219  DimensionHandleSet getDimensionHandleSet
1220  (RegionHandle theRegionHandle)
1221  throw (InvalidRegion,
1222  FederateNotExecutionMember,
1223  SaveInProgress,
1224  RestoreInProgress,
1225  RTIinternalError) = 0;
1226 
1228  virtual
1229  RangeBounds getRangeBounds
1230  (RegionHandle theRegionHandle,
1231  DimensionHandle theDimensionHandle)
1232  throw (InvalidRegion,
1233  RegionDoesNotContainSpecifiedDimension,
1234  FederateNotExecutionMember,
1235  SaveInProgress,
1236  RestoreInProgress,
1237  RTIinternalError) = 0;
1238 
1240  virtual void setRangeBounds
1241  (RegionHandle theRegionHandle,
1242  DimensionHandle theDimensionHandle,
1243  RangeBounds const & theRangeBounds)
1244  throw (InvalidRegion,
1245  RegionNotCreatedByThisFederate,
1246  RegionDoesNotContainSpecifiedDimension,
1247  InvalidRangeBound,
1248  FederateNotExecutionMember,
1249  SaveInProgress,
1250  RestoreInProgress,
1251  RTIinternalError) = 0;
1252 
1254  virtual unsigned long normalizeFederateHandle
1255  (FederateHandle theFederateHandle)
1256  throw (FederateNotExecutionMember,
1257  RTIinternalError) = 0;
1258 
1260  virtual unsigned long normalizeServiceGroup
1261  (ServiceGroupIndicator theServiceGroup)
1262  throw (FederateNotExecutionMember,
1263  InvalidServiceGroup,
1264  RTIinternalError) = 0;
1265 
1267  virtual bool evokeCallback(double approximateMinimumTimeInSeconds)
1268  throw (FederateNotExecutionMember,
1269  RTIinternalError) = 0;
1270 
1272  virtual bool evokeMultipleCallbacks(double approximateMinimumTimeInSeconds,
1273  double approximateMaximumTimeInSeconds)
1274  throw (FederateNotExecutionMember,
1275  RTIinternalError) = 0;
1276 
1278  virtual void enableCallbacks ()
1279  throw (FederateNotExecutionMember,
1280  SaveInProgress,
1281  RestoreInProgress,
1282  RTIinternalError) = 0;
1283 
1285  virtual void disableCallbacks ()
1286  throw (FederateNotExecutionMember,
1287  SaveInProgress,
1288  RestoreInProgress,
1289  RTIinternalError) = 0;
1290 
1291  virtual FederateHandle decodeFederateHandle(
1292  VariableLengthData const & encodedValue) const = 0;
1293 
1294  virtual ObjectClassHandle decodeObjectClassHandle(
1295  VariableLengthData const & encodedValue) const = 0;
1296 
1297  virtual InteractionClassHandle decodeInteractionClassHandle(
1298  VariableLengthData const & encodedValue) const = 0;
1299 
1300  virtual ObjectInstanceHandle decodeObjectInstanceHandle(
1301  VariableLengthData const & encodedValue) const = 0;
1302 
1303  virtual AttributeHandle decodeAttributeHandle(
1304  VariableLengthData const & encodedValue) const = 0;
1305 
1306  virtual ParameterHandle decodeParameterHandle(
1307  VariableLengthData const & encodedValue) const = 0;
1308 
1309  virtual DimensionHandle decodeDimensionHandle(
1310  VariableLengthData const & encodedValue) const = 0;
1311 
1312  virtual MessageRetractionHandle decodeMessageRetractionHandle(
1313  VariableLengthData const & encodedValue) const = 0;
1314 
1315  virtual RegionHandle decodeRegionHandle(
1316  VariableLengthData const & encodedValue) const = 0;
1317 
1318 
1319 public:
1320 
1321  static RTI::RTIambassador * create();
1322 
1323 protected:
1324 
1325  std::auto_ptr<RTIambassador> myRtiAmb;
1326  FederateAmbassador *myFedAmb;
1327 };
1328 
1329 #endif
1330 
1331 
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
std::auto_ptr< RTIambassador > myRtiAmb
Definition: vrlRtiAmbassador1516.h:1325
FederateAmbassador * myFedAmb
Definition: vrlRtiAmbassador1516.h:1326
Instances of DtVrlRtiAmbassador are for wrapping the calls to The RTI ambassador so that we may overr...
Definition: vrlRtiAmbassador1516.h:23
This file contains typedefs for machine dependant types.

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)