MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fedAmbWrap1516e.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: fedAmbWrap1516e.h,v $ $Revision: 1.0 $ $State: Exp $
7 *******************************************************************************/
8 #ifndef DtFedAmbWrapper_H_
9 #define DtFedAmbWrapper_H_
10 
11 #ifdef DtIFSPEC1516E
12 
13 #include "rtiMsConfig.h"
14 #include <RTI/Enums.h>
15 #include <RTI/Typedefs.h>
16 #include <RTI/NullFederateAmbassador.h>
17 
18 class DtFedAmbWrapper;
19 
20 typedef DtFedAmbWrapper* (*DtFedAmbWrapperCreator)
22 
23 class DT_DLL_LRC DtFedAmbWrapper : public rti1516e::NullFederateAmbassador
24 {
25 public:
27 
28  virtual ~DtFedAmbWrapper();
29 
30  virtual rti1516e::FederateAmbassador* fedAmb();
31  virtual void setFedAmb(rti1516e::FederateAmbassador* f);
32 
33 protected:
35 
36 public:
37 
38  // 4.4
39  virtual void connectionLost (
40  std::wstring const & faultDescription)
41  throw (
42  rti1516e::FederateInternalError);
43 
44  // 4.8
45  virtual void reportFederationExecutions (
46  rti1516e::FederationExecutionInformationVector const & theFederationExecutionInformationList)
47  throw (
48  rti1516e::FederateInternalError);
49 
50  // 4.12
52  std::wstring const & label)
53  throw (
54  rti1516e::FederateInternalError);
55 
57  std::wstring const & label,
59  throw (
60  rti1516e::FederateInternalError);
61 
62  // 4.13
63  virtual void announceSynchronizationPoint (
64  std::wstring const & label,
65  rti1516e::VariableLengthData const & theUserSuppliedTag)
66  throw (
67  rti1516e::FederateInternalError);
68 
69  // 4.15
70  virtual void federationSynchronized (
71  std::wstring const & label,
72  rti1516e::FederateHandleSet const& failedToSyncSet)
73  throw (
74  rti1516e::FederateInternalError);
75 
76  // 4.17
77  virtual void initiateFederateSave (
78  std::wstring const & label)
79  throw (
80  rti1516e::FederateInternalError);
81 
82  virtual void initiateFederateSave (
83  std::wstring const & label,
84  rti1516e::LogicalTime const & theTime)
85  throw (
86  rti1516e::FederateInternalError);
87 
88  // 4.20
89  virtual void federationSaved ()
90  throw (
91  rti1516e::FederateInternalError);
92 
93  virtual void federationNotSaved (
94  rti1516e::SaveFailureReason theSaveFailureReason)
95  throw (
96  rti1516e::FederateInternalError);
97 
98 
99  // 4.23
100  virtual void federationSaveStatusResponse (
101  rti1516e::FederateHandleSaveStatusPairVector const & theFederateStatusVector)
102  throw (
103  rti1516e::FederateInternalError);
104 
105  // 4.25
106  virtual void requestFederationRestoreSucceeded (
107  std::wstring const & label)
108  throw (
109  rti1516e::FederateInternalError);
110 
111  virtual void requestFederationRestoreFailed (
112  std::wstring const & label)
113  throw (
114  rti1516e::FederateInternalError);
115 
116  // 4.26
117  virtual void federationRestoreBegun ()
118  throw (
119  rti1516e::FederateInternalError);
120 
121  // 4.27
122  virtual void initiateFederateRestore (
123  std::wstring const & label,
124  std::wstring const & federateName,
125  rti1516e::FederateHandle handle)
126  throw (
127  rti1516e::FederateInternalError);
128 
129  // 4.29
130  virtual void federationRestored ()
131  throw (
132  rti1516e::FederateInternalError);
133 
134  virtual void federationNotRestored (
135  rti1516e::RestoreFailureReason theRestoreFailureReason)
136  throw (
137  rti1516e::FederateInternalError);
138 
139  // 4.32
140  virtual void federationRestoreStatusResponse (
141  rti1516e::FederateRestoreStatusVector const & theFederateRestoreStatusVector)
142  throw (
143  rti1516e::FederateInternalError);
144 
146  // Declaration Management Services //
148 
149  // 5.10
150  virtual void startRegistrationForObjectClass (
151  rti1516e::ObjectClassHandle theClass)
152  throw (
153  rti1516e::FederateInternalError);
154 
155  // 5.11
156  virtual void stopRegistrationForObjectClass (
157  rti1516e::ObjectClassHandle theClass)
158  throw (
159  rti1516e::FederateInternalError);
160 
161  // 5.12
162  virtual void turnInteractionsOn (
163  rti1516e::InteractionClassHandle theHandle)
164  throw (
165  rti1516e::FederateInternalError);
166 
167  // 5.13
168  virtual void turnInteractionsOff (
169  rti1516e::InteractionClassHandle theHandle)
170  throw (
171  rti1516e::FederateInternalError);
172 
174  // Object Management Services //
176 
177  // 6.3
178  virtual void objectInstanceNameReservationSucceeded (
179  std::wstring const & theObjectInstanceName)
180  throw (
181  rti1516e::FederateInternalError);
182 
183  virtual void objectInstanceNameReservationFailed (
184  std::wstring const & theObjectInstanceName)
185  throw (
186  rti1516e::FederateInternalError);
187 
188  // 6.6
189  virtual void multipleObjectInstanceNameReservationSucceeded (
190  std::set<std::wstring> const & theObjectInstanceNames)
191  throw (
192  rti1516e::FederateInternalError);
193 
194  virtual void multipleObjectInstanceNameReservationFailed (
195  std::set<std::wstring> const & theObjectInstanceNames)
196  throw (
197  rti1516e::FederateInternalError);
198 
199  // 6.9
200  virtual void discoverObjectInstance (
201  rti1516e::ObjectInstanceHandle theObject,
202  rti1516e::ObjectClassHandle theObjectClass,
203  std::wstring const & theObjectInstanceName)
204  throw (
205  rti1516e::FederateInternalError);
206 
207  virtual void discoverObjectInstance (
208  rti1516e::ObjectInstanceHandle theObject,
209  rti1516e::ObjectClassHandle theObjectClass,
210  std::wstring const & theObjectInstanceName,
211  rti1516e::FederateHandle producingFederate)
212  throw (
213  rti1516e::FederateInternalError);
214 
215  // 6.11
216  virtual void reflectAttributeValues (
217  rti1516e::ObjectInstanceHandle theObject,
218  rti1516e::AttributeHandleValueMap const & theAttributeValues,
219  rti1516e::VariableLengthData const & theUserSuppliedTag,
220  rti1516e::OrderType sentOrder,
221  rti1516e::TransportationType theType,
222  rti1516e::SupplementalReflectInfo theReflectInfo)
223  throw (
224  rti1516e::FederateInternalError);
225 
226  virtual void reflectAttributeValues (
227  rti1516e::ObjectInstanceHandle theObject,
228  rti1516e::AttributeHandleValueMap const & theAttributeValues,
229  rti1516e::VariableLengthData const & theUserSuppliedTag,
230  rti1516e::OrderType sentOrder,
231  rti1516e::TransportationType theType,
232  rti1516e::LogicalTime const & theTime,
233  rti1516e::OrderType receivedOrder,
234  rti1516e::SupplementalReflectInfo theReflectInfo)
235  throw (
236  rti1516e::FederateInternalError);
237 
238  virtual void reflectAttributeValues (
239  rti1516e::ObjectInstanceHandle theObject,
240  rti1516e::AttributeHandleValueMap const & theAttributeValues,
241  rti1516e::VariableLengthData const & theUserSuppliedTag,
242  rti1516e::OrderType sentOrder,
243  rti1516e::TransportationType theType,
244  rti1516e::LogicalTime const & theTime,
245  rti1516e::OrderType receivedOrder,
246  rti1516e::MessageRetractionHandle theHandle,
247  rti1516e::SupplementalReflectInfo theReflectInfo)
248  throw (
249  rti1516e::FederateInternalError);
250 
251  // 6.13
252  virtual void receiveInteraction (
253  rti1516e::InteractionClassHandle theInteraction,
254  rti1516e::ParameterHandleValueMap const & theParameterValues,
255  rti1516e::VariableLengthData const & theUserSuppliedTag,
256  rti1516e::OrderType sentOrder,
257  rti1516e::TransportationType theType,
258  rti1516e::SupplementalReceiveInfo theReceiveInfo)
259  throw (
260  rti1516e::FederateInternalError);
261 
262  virtual void receiveInteraction (
263  rti1516e::InteractionClassHandle theInteraction,
264  rti1516e::ParameterHandleValueMap const & theParameterValues,
265  rti1516e::VariableLengthData const & theUserSuppliedTag,
266  rti1516e::OrderType sentOrder,
267  rti1516e::TransportationType theType,
268  rti1516e::LogicalTime const & theTime,
269  rti1516e::OrderType receivedOrder,
270  rti1516e::SupplementalReceiveInfo theReceiveInfo)
271  throw (
272  rti1516e::FederateInternalError);
273 
274  virtual void receiveInteraction (
275  rti1516e::InteractionClassHandle theInteraction,
276  rti1516e::ParameterHandleValueMap const & theParameterValues,
277  rti1516e::VariableLengthData const & theUserSuppliedTag,
278  rti1516e::OrderType sentOrder,
279  rti1516e::TransportationType theType,
280  rti1516e::LogicalTime const & theTime,
281  rti1516e::OrderType receivedOrder,
282  rti1516e::MessageRetractionHandle theHandle,
283  rti1516e::SupplementalReceiveInfo theReceiveInfo)
284  throw (
285  rti1516e::FederateInternalError);
286 
287  // 6.15
288  virtual void removeObjectInstance (
289  rti1516e::ObjectInstanceHandle theObject,
290  rti1516e::VariableLengthData const & theUserSuppliedTag,
291  rti1516e::OrderType sentOrder,
292  rti1516e::SupplementalRemoveInfo theRemoveInfo)
293  throw (
294  rti1516e::FederateInternalError);
295 
296  virtual void removeObjectInstance (
297  rti1516e::ObjectInstanceHandle theObject,
298  rti1516e::VariableLengthData const & theUserSuppliedTag,
299  rti1516e::OrderType sentOrder,
300  rti1516e::LogicalTime const & theTime,
301  rti1516e::OrderType receivedOrder,
302  rti1516e::SupplementalRemoveInfo theRemoveInfo)
303  throw (
304  rti1516e::FederateInternalError);
305 
306  virtual void removeObjectInstance (
307  rti1516e::ObjectInstanceHandle theObject,
308  rti1516e::VariableLengthData const & theUserSuppliedTag,
309  rti1516e::OrderType sentOrder,
310  rti1516e::LogicalTime const & theTime,
311  rti1516e::OrderType receivedOrder,
312  rti1516e::MessageRetractionHandle theHandle,
313  rti1516e::SupplementalRemoveInfo theRemoveInfo)
314  throw (
315  rti1516e::FederateInternalError);
316 
317  // 6.17
318  virtual void attributesInScope (
319  rti1516e::ObjectInstanceHandle theObject,
320  rti1516e::AttributeHandleSet const & theAttributes)
321  throw (
322  rti1516e::FederateInternalError);
323 
324  // 6.18
325  virtual void attributesOutOfScope (
326  rti1516e::ObjectInstanceHandle theObject,
327  rti1516e::AttributeHandleSet const & theAttributes)
328  throw (
329  rti1516e::FederateInternalError);
330 
331  // 6.20
332  virtual void provideAttributeValueUpdate (
333  rti1516e::ObjectInstanceHandle theObject,
334  rti1516e::AttributeHandleSet const & theAttributes,
335  rti1516e::VariableLengthData const & theUserSuppliedTag)
336  throw (
337  rti1516e::FederateInternalError);
338 
339  // 6.21
340  virtual void turnUpdatesOnForObjectInstance (
341  rti1516e::ObjectInstanceHandle theObject,
342  rti1516e::AttributeHandleSet const & theAttributes)
343  throw (
344  rti1516e::FederateInternalError);
345 
346  virtual void turnUpdatesOnForObjectInstance (
347  rti1516e::ObjectInstanceHandle theObject,
348  rti1516e::AttributeHandleSet const & theAttributes,
349  std::wstring const & updateRateDesignator)
350  throw (
351  rti1516e::FederateInternalError);
352 
353  // 6.22
354  virtual void turnUpdatesOffForObjectInstance (
355  rti1516e::ObjectInstanceHandle theObject,
356  rti1516e::AttributeHandleSet const & theAttributes)
357  throw (
358  rti1516e::FederateInternalError);
359 
360  // 6.24
361  virtual void confirmAttributeTransportationTypeChange (
362  rti1516e::ObjectInstanceHandle theObject,
363  rti1516e::AttributeHandleSet theAttributes,
364  rti1516e::TransportationType theTransportation)
365  throw (
366  rti1516e::FederateInternalError);
367 
368  // 6.26
369  virtual void reportAttributeTransportationType (
370  rti1516e::ObjectInstanceHandle theObject,
371  rti1516e::AttributeHandle theAttribute,
372  rti1516e::TransportationType theTransportation)
373  throw (
374  rti1516e::FederateInternalError);
375 
376  // 6.28
377  virtual void confirmInteractionTransportationTypeChange (
378  rti1516e::InteractionClassHandle theInteraction,
379  rti1516e::TransportationType theTransportation)
380  throw (
381  rti1516e::FederateInternalError);
382 
383  // 6.30
384  virtual void reportInteractionTransportationType (
385  rti1516e::FederateHandle,
386  rti1516e::InteractionClassHandle theInteraction,
387  rti1516e::TransportationType theTransportation)
388  throw (
389  rti1516e::FederateInternalError);
390 
391 
393  // Ownership Management Services //
395 
396  // 7.4
398  rti1516e::ObjectInstanceHandle theObject,
399  rti1516e::AttributeHandleSet const & offeredAttributes,
400  rti1516e::VariableLengthData const & theUserSuppliedTag)
401  throw (
402  rti1516e::FederateInternalError);
403 
404  // 7.5
405  virtual void requestDivestitureConfirmation (
406  rti1516e::ObjectInstanceHandle theObject,
407  rti1516e::AttributeHandleSet const & releasedAttributes)
408  throw (
409  rti1516e::FederateInternalError);
410 
411  // 7.7
413  rti1516e::ObjectInstanceHandle theObject,
414  rti1516e::AttributeHandleSet const & securedAttributes,
415  rti1516e::VariableLengthData const & theUserSuppliedTag)
416  throw (
417  rti1516e::FederateInternalError);
418 
419  // 7.10
420  virtual void attributeOwnershipUnavailable (
421  rti1516e::ObjectInstanceHandle theObject,
422  rti1516e::AttributeHandleSet const & theAttributes)
423  throw (
424  rti1516e::FederateInternalError);
425 
426  // 7.11
427  virtual void requestAttributeOwnershipRelease (
428  rti1516e::ObjectInstanceHandle theObject,
429  rti1516e::AttributeHandleSet const & candidateAttributes,
430  rti1516e::VariableLengthData const & theUserSuppliedTag)
431  throw (
432  rti1516e::FederateInternalError);
433 
434  // 7.16
436  rti1516e::ObjectInstanceHandle theObject,
437  rti1516e::AttributeHandleSet const & theAttributes)
438  throw (
439  rti1516e::FederateInternalError);
440 
441  // 7.18
442  virtual void informAttributeOwnership (
443  rti1516e::ObjectInstanceHandle theObject,
444  rti1516e::AttributeHandle theAttribute,
445  rti1516e::FederateHandle theOwner)
446  throw (
447  rti1516e::FederateInternalError);
448 
449  virtual void attributeIsNotOwned (
450  rti1516e::ObjectInstanceHandle theObject,
451  rti1516e::AttributeHandle theAttribute)
452  throw (
453  rti1516e::FederateInternalError);
454 
455  virtual void attributeIsOwnedByRTI (
456  rti1516e::ObjectInstanceHandle theObject,
457  rti1516e::AttributeHandle theAttribute)
458  throw (
459  rti1516e::FederateInternalError);
460 
462  // Time Management Services //
464 
465  // 8.3
466  virtual void timeRegulationEnabled (
467  rti1516e::LogicalTime const & theFederateTime)
468  throw (
469  rti1516e::FederateInternalError);
470 
471  // 8.6
472  virtual void timeConstrainedEnabled (
473  rti1516e::LogicalTime const & theFederateTime)
474  throw (
475  rti1516e::FederateInternalError);
476 
477  // 8.13
478  virtual void timeAdvanceGrant (
479  rti1516e::LogicalTime const & theTime)
480  throw (
481  rti1516e::FederateInternalError);
482 
483  // 8.22
484  virtual void requestRetraction (
485  rti1516e::MessageRetractionHandle theHandle)
486  throw (
487  rti1516e::FederateInternalError);
488 };
489 
490 inline DtFedAmbWrapper::DtFedAmbWrapper(rti1516e::FederateAmbassador* fedAmb)
491  : rti1516e::NullFederateAmbassador()
492  , myFedAmb(fedAmb)
493 {
494 }
495 
496 inline DtFedAmbWrapper::~DtFedAmbWrapper()
497  throw()
498 {
499 }
500 
501 inline rti1516e::FederateAmbassador* DtFedAmbWrapper::fedAmb()
502 {
503  return myFedAmb;
504 }
505 
506 inline void DtFedAmbWrapper::setFedAmb(rti1516e::FederateAmbassador* f)
507 {
508  myFedAmb = f;
509 }
510 
511 // 4.4
512 inline void DtFedAmbWrapper::connectionLost (
513  std::wstring const & faultDescription)
514  throw (
515  rti1516e::FederateInternalError)
516 {
517  if( myFedAmb )
518  {
519  myFedAmb->connectionLost(faultDescription);
520  }
521 }
522 
523 // 4.8
524 inline void DtFedAmbWrapper::reportFederationExecutions (
525  rti1516e::FederationExecutionInformationVector const &
526  theFederationExecutionInformationList)
527  throw (
528  rti1516e::FederateInternalError)
529 {
530  if( myFedAmb )
531  {
532  myFedAmb->reportFederationExecutions(theFederationExecutionInformationList);
533  }
534 }
535 
536 // 4.12
538  std::wstring const & label)
539  throw (
540  rti1516e::FederateInternalError)
541 {
542  if( myFedAmb )
543  {
544  myFedAmb->synchronizationPointRegistrationSucceeded( label );
545  }
546 }
547 
549  std::wstring const & label,
551  throw (
552  rti1516e::FederateInternalError)
553 {
554  if( myFedAmb )
555  {
556  myFedAmb->synchronizationPointRegistrationFailed(label,reason);
557  }
558 }
559 
560 // 4.13
562  std::wstring const & label,
563  rti1516e::VariableLengthData const & theUserSuppliedTag)
564  throw (
565  rti1516e::FederateInternalError)
566 {
567  if( myFedAmb )
568  {
569  myFedAmb->announceSynchronizationPoint(label,theUserSuppliedTag);
570  }
571 }
572 
573 // 4.15
575  std::wstring const & label,
576  rti1516e::FederateHandleSet const& failedToSyncSet)
577  throw (
578  rti1516e::FederateInternalError)
579 {
580  if( myFedAmb )
581  {
582  myFedAmb->federationSynchronized(label,failedToSyncSet);
583  }
584 }
585 
586 // 4.17
588  std::wstring const & label)
589  throw (
590  rti1516e::FederateInternalError)
591 {
592  if( myFedAmb )
593  {
594  myFedAmb->initiateFederateSave(label);
595  }
596 }
597 
599  std::wstring const & label,
600  rti1516e::LogicalTime const & theTime)
601  throw (
602  rti1516e::FederateInternalError)
603 {
604  if( myFedAmb )
605  {
606  myFedAmb->initiateFederateSave(label,theTime);
607  }
608 }
609 
610 // 4.20
612  throw (
613  rti1516e::FederateInternalError)
614 {
615  if( myFedAmb )
616  {
617  myFedAmb->federationSaved();
618  }
619 }
620 
622  rti1516e::SaveFailureReason theSaveFailureReason)
623  throw (
624  rti1516e::FederateInternalError)
625 {
626  if( myFedAmb )
627  {
628  myFedAmb->federationNotSaved(theSaveFailureReason);
629  }
630 }
631 
632 
633 // 4.23
634 inline void DtFedAmbWrapper::federationSaveStatusResponse (
635  rti1516e::FederateHandleSaveStatusPairVector const &
636  theFederateStatusVector)
637  throw (
638  rti1516e::FederateInternalError)
639 {
640  if( myFedAmb )
641  {
642  myFedAmb->federationSaveStatusResponse(theFederateStatusVector);
643  }
644 }
645 
646 // 4.25
648  std::wstring const & label)
649  throw (
650  rti1516e::FederateInternalError)
651 {
652  if( myFedAmb )
653  {
654  myFedAmb->requestFederationRestoreSucceeded(label);
655  }
656 }
657 
659  std::wstring const & label)
660  throw (
661  rti1516e::FederateInternalError)
662 {
663  if( myFedAmb )
664  {
665  myFedAmb->requestFederationRestoreFailed(label);
666  }
667 }
668 
669 // 4.26
671  throw (
672  rti1516e::FederateInternalError)
673 {
674  if( myFedAmb )
675  {
676  myFedAmb->federationRestoreBegun();
677  }
678 }
679 
680 // 4.27
682  std::wstring const & label,
683  std::wstring const & federateName,
685  throw (
686  rti1516e::FederateInternalError)
687 {
688  if( myFedAmb )
689  {
690  myFedAmb->initiateFederateRestore(label,federateName,handle);
691  }
692 }
693 
694 // 4.29
696  throw (
697  rti1516e::FederateInternalError)
698 {
699  if( myFedAmb )
700  {
701  myFedAmb->federationRestored();
702  }
703 }
704 
706  rti1516e::RestoreFailureReason theRestoreFailureReason)
707  throw (
708  rti1516e::FederateInternalError)
709 {
710  if( myFedAmb )
711  {
712  myFedAmb->federationNotRestored(theRestoreFailureReason);
713  }
714 }
715 
716 // 4.32
717 inline void DtFedAmbWrapper::federationRestoreStatusResponse (
718  rti1516e::FederateRestoreStatusVector const &
719  theFederateRestoreStatusVector)
720  throw (
721  rti1516e::FederateInternalError)
722 {
723  if( myFedAmb )
724  {
725  myFedAmb->federationRestoreStatusResponse( theFederateRestoreStatusVector );
726  }
727 }
728 
730 // Declaration Management Services //
732 
733 // 5.10
736  throw (
737  rti1516e::FederateInternalError)
738 {
739  if( myFedAmb )
740  {
741  myFedAmb->startRegistrationForObjectClass(theClass);
742  }
743 }
744 
745 // 5.11
748  throw (
749  rti1516e::FederateInternalError)
750 {
751  if( myFedAmb )
752  {
753  myFedAmb->stopRegistrationForObjectClass(theClass);
754  }
755 }
756 
757 // 5.12
760  throw (
761  rti1516e::FederateInternalError)
762 {
763  if( myFedAmb )
764  {
765  myFedAmb->turnInteractionsOn(theHandle);
766  }
767 }
768 
769 // 5.13
772  throw (
773  rti1516e::FederateInternalError)
774 {
775  if( myFedAmb )
776  {
777  myFedAmb->turnInteractionsOff(theHandle);
778  }
779 }
780 
782 // Object Management Services //
784 
785 // 6.3
786 inline void DtFedAmbWrapper::objectInstanceNameReservationSucceeded (
787  std::wstring const & theObjectInstanceName)
788  throw (
789  rti1516e::FederateInternalError)
790 {
791  if( myFedAmb )
792  {
793  myFedAmb->objectInstanceNameReservationSucceeded(theObjectInstanceName);
794  }
795 }
796 
797 inline void DtFedAmbWrapper::objectInstanceNameReservationFailed (
798  std::wstring const & theObjectInstanceName)
799  throw (
800  rti1516e::FederateInternalError)
801 {
802  if( myFedAmb )
803  {
804  myFedAmb->objectInstanceNameReservationFailed(theObjectInstanceName);
805  }
806 }
807 
808 // 6.6
809 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationSucceeded (
810  std::set<std::wstring> const & theObjectInstanceNames)
811  throw (
812  rti1516e::FederateInternalError)
813 {
814  if( myFedAmb )
815  {
816  myFedAmb->multipleObjectInstanceNameReservationSucceeded( theObjectInstanceNames );
817  }
818 }
819 
820 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationFailed (
821  std::set<std::wstring> const & theObjectInstanceNames)
822  throw (
823  rti1516e::FederateInternalError)
824 {
825  if( myFedAmb )
826  {
827  myFedAmb->multipleObjectInstanceNameReservationFailed(theObjectInstanceNames);
828  }
829 }
830 
831 // 6.9
833  rti1516e::ObjectInstanceHandle theObject,
834  rti1516e::ObjectClassHandle theObjectClass,
835  std::wstring const & theObjectInstanceName)
836  throw (
837  rti1516e::FederateInternalError)
838 {
839  if( myFedAmb )
840  {
841  myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName);
842  }
843 }
844 
846  rti1516e::ObjectInstanceHandle theObject,
847  rti1516e::ObjectClassHandle theObjectClass,
848  std::wstring const & theObjectInstanceName,
849  rti1516e::FederateHandle producingFederate)
850  throw (
851  rti1516e::FederateInternalError)
852 {
853  if( myFedAmb )
854  {
855  myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName,producingFederate);
856  }
857 }
858 
859 // 6.11
861  rti1516e::ObjectInstanceHandle theObject,
862  rti1516e::AttributeHandleValueMap const & theAttributeValues,
863  rti1516e::VariableLengthData const & theUserSuppliedTag,
864  rti1516e::OrderType sentOrder,
866  rti1516e::SupplementalReflectInfo theReflectInfo)
867  throw (
868  rti1516e::FederateInternalError)
869 {
870  if( myFedAmb )
871  {
872  myFedAmb->reflectAttributeValues(theObject,
873  theAttributeValues,
874  theUserSuppliedTag,
875  sentOrder,
876  theType,
877  theReflectInfo);
878  }
879 }
880 
882  rti1516e::ObjectInstanceHandle theObject,
883  rti1516e::AttributeHandleValueMap const & theAttributeValues,
884  rti1516e::VariableLengthData const & theUserSuppliedTag,
885  rti1516e::OrderType sentOrder,
887  rti1516e::LogicalTime const & theTime,
888  rti1516e::OrderType receivedOrder,
889  rti1516e::SupplementalReflectInfo theReflectInfo)
890  throw (
891  rti1516e::FederateInternalError)
892 {
893  if( myFedAmb )
894  {
895  myFedAmb->reflectAttributeValues(theObject,
896  theAttributeValues,
897  theUserSuppliedTag,
898  sentOrder,
899  theType,
900  theTime,
901  receivedOrder,
902  theReflectInfo);
903  }
904 }
905 
907  rti1516e::ObjectInstanceHandle theObject,
908  rti1516e::AttributeHandleValueMap const & theAttributeValues,
909  rti1516e::VariableLengthData const & theUserSuppliedTag,
910  rti1516e::OrderType sentOrder,
912  rti1516e::LogicalTime const & theTime,
913  rti1516e::OrderType receivedOrder,
914  rti1516e::MessageRetractionHandle theHandle,
915  rti1516e::SupplementalReflectInfo theReflectInfo)
916  throw (
917  rti1516e::FederateInternalError)
918 {
919  if( myFedAmb )
920  {
921  myFedAmb->reflectAttributeValues(theObject,
922  theAttributeValues,
923  theUserSuppliedTag,
924  sentOrder,
925  theType,
926  theTime,
927  receivedOrder,
928  theHandle,
929  theReflectInfo);
930  }
931 }
932 
933 // 6.13
935  rti1516e::InteractionClassHandle theInteraction,
936  rti1516e::ParameterHandleValueMap const & theParameterValues,
937  rti1516e::VariableLengthData const & theUserSuppliedTag,
938  rti1516e::OrderType sentOrder,
940  rti1516e::SupplementalReceiveInfo theReceiveInfo)
941  throw (
942  rti1516e::FederateInternalError)
943 {
944  if( myFedAmb )
945  {
946  myFedAmb->receiveInteraction(theInteraction,
947  theParameterValues,
948  theUserSuppliedTag,
949  sentOrder,
950  theType,
951  theReceiveInfo);
952  }
953 }
954 
956  rti1516e::InteractionClassHandle theInteraction,
957  rti1516e::ParameterHandleValueMap const & theParameterValues,
958  rti1516e::VariableLengthData const & theUserSuppliedTag,
959  rti1516e::OrderType sentOrder,
961  rti1516e::LogicalTime const & theTime,
962  rti1516e::OrderType receivedOrder,
963  rti1516e::SupplementalReceiveInfo theReceiveInfo)
964  throw (
965  rti1516e::FederateInternalError)
966 {
967  if( myFedAmb )
968  {
969  myFedAmb->receiveInteraction(theInteraction,
970  theParameterValues,
971  theUserSuppliedTag,
972  sentOrder,
973  theType,
974  theTime,
975  receivedOrder,
976  theReceiveInfo);
977  }
978 }
979 
981  rti1516e::InteractionClassHandle theInteraction,
982  rti1516e::ParameterHandleValueMap const & theParameterValues,
983  rti1516e::VariableLengthData const & theUserSuppliedTag,
984  rti1516e::OrderType sentOrder,
986  rti1516e::LogicalTime const & theTime,
987  rti1516e::OrderType receivedOrder,
988  rti1516e::MessageRetractionHandle theHandle,
989  rti1516e::SupplementalReceiveInfo theReceiveInfo)
990  throw (
991  rti1516e::FederateInternalError)
992 {
993  if( myFedAmb )
994  {
995  myFedAmb->receiveInteraction(theInteraction,
996  theParameterValues,
997  theUserSuppliedTag,
998  sentOrder,
999  theType,
1000  theTime,
1001  receivedOrder,
1002  theHandle,
1003  theReceiveInfo);
1004  }
1005 }
1006 
1007 // 6.15
1009  rti1516e::ObjectInstanceHandle theObject,
1010  rti1516e::VariableLengthData const & theUserSuppliedTag,
1011  rti1516e::OrderType sentOrder,
1012  rti1516e::SupplementalRemoveInfo theRemoveInfo)
1013  throw (
1014  rti1516e::FederateInternalError)
1015 {
1016  if( myFedAmb )
1017  {
1018  myFedAmb->removeObjectInstance(theObject,
1019  theUserSuppliedTag,
1020  sentOrder,
1021  theRemoveInfo);
1022  }
1023 }
1024 
1026  rti1516e::ObjectInstanceHandle theObject,
1027  rti1516e::VariableLengthData const & theUserSuppliedTag,
1028  rti1516e::OrderType sentOrder,
1029  rti1516e::LogicalTime const & theTime,
1030  rti1516e::OrderType receivedOrder,
1031  rti1516e::SupplementalRemoveInfo theRemoveInfo)
1032  throw (
1033  rti1516e::FederateInternalError)
1034 {
1035  if( myFedAmb )
1036  {
1037  myFedAmb->removeObjectInstance(theObject,
1038  theUserSuppliedTag,
1039  sentOrder,
1040  theTime,
1041  receivedOrder,
1042  theRemoveInfo);
1043  }
1044 }
1045 
1047  rti1516e::ObjectInstanceHandle theObject,
1048  rti1516e::VariableLengthData const & theUserSuppliedTag,
1049  rti1516e::OrderType sentOrder,
1050  rti1516e::LogicalTime const & theTime,
1051  rti1516e::OrderType receivedOrder,
1052  rti1516e::MessageRetractionHandle theHandle,
1053  rti1516e::SupplementalRemoveInfo theRemoveInfo)
1054  throw (
1055  rti1516e::FederateInternalError)
1056 {
1057  if( myFedAmb )
1058  {
1059  myFedAmb->removeObjectInstance(theObject,
1060  theUserSuppliedTag,
1061  sentOrder,
1062  theTime,
1063  receivedOrder,
1064  theHandle,
1065  theRemoveInfo);
1066  }
1067 }
1068 
1069 // 6.17
1071  rti1516e::ObjectInstanceHandle theObject,
1072  rti1516e::AttributeHandleSet const & theAttributes)
1073  throw (
1074  rti1516e::FederateInternalError)
1075 {
1076  if( myFedAmb )
1077  {
1078  myFedAmb->attributesInScope(theObject,
1079  theAttributes);
1080  }
1081 }
1082 
1083 // 6.18
1085  rti1516e::ObjectInstanceHandle theObject,
1086  rti1516e::AttributeHandleSet const & theAttributes)
1087  throw (
1088  rti1516e::FederateInternalError)
1089 {
1090  if( myFedAmb )
1091  {
1092  myFedAmb->attributesOutOfScope(theObject,
1093  theAttributes);
1094  }
1095 }
1096 
1097 // 6.20
1099  rti1516e::ObjectInstanceHandle theObject,
1100  rti1516e::AttributeHandleSet const & theAttributes,
1101  rti1516e::VariableLengthData const & theUserSuppliedTag)
1102  throw (
1103  rti1516e::FederateInternalError)
1104 {
1105  if( myFedAmb )
1106  {
1107  myFedAmb->provideAttributeValueUpdate(theObject,
1108  theAttributes,
1109  theUserSuppliedTag);
1110  }
1111 }
1112 
1113 // 6.21
1115  rti1516e::ObjectInstanceHandle theObject,
1116  rti1516e::AttributeHandleSet const & theAttributes)
1117  throw (
1118  rti1516e::FederateInternalError)
1119 {
1120  if( myFedAmb )
1121  {
1122  myFedAmb->turnUpdatesOnForObjectInstance(theObject,
1123  theAttributes);
1124  }
1125 }
1126 
1128  rti1516e::ObjectInstanceHandle theObject,
1129  rti1516e::AttributeHandleSet const & theAttributes,
1130  std::wstring const & updateRateDesignator)
1131  throw (
1132  rti1516e::FederateInternalError)
1133 {
1134  if( myFedAmb )
1135  {
1136  myFedAmb->turnUpdatesOnForObjectInstance(theObject,
1137  theAttributes,
1138  updateRateDesignator);
1139  }
1140 }
1141 
1142 // 6.22
1144  rti1516e::ObjectInstanceHandle theObject,
1145  rti1516e::AttributeHandleSet const & theAttributes)
1146  throw (
1147  rti1516e::FederateInternalError)
1148 {
1149  if( myFedAmb )
1150  {
1151  myFedAmb->turnUpdatesOffForObjectInstance(theObject,
1152  theAttributes);
1153  }
1154 }
1155 
1156 // 6.24
1157 inline void DtFedAmbWrapper::confirmAttributeTransportationTypeChange (
1158  rti1516e::ObjectInstanceHandle theObject,
1159  rti1516e::AttributeHandleSet theAttributes,
1160  rti1516e::TransportationType theTransportation)
1161  throw (
1162  rti1516e::FederateInternalError)
1163 {
1164  if( myFedAmb )
1165  {
1166  myFedAmb->confirmAttributeTransportationTypeChange(theObject,
1167  theAttributes,
1168  theTransportation);
1169  }
1170 }
1171 
1172 // 6.26
1173 inline void DtFedAmbWrapper::reportAttributeTransportationType (
1174  rti1516e::ObjectInstanceHandle theObject,
1175  rti1516e::AttributeHandle theAttribute,
1176  rti1516e::TransportationType theTransportation)
1177  throw (
1178  rti1516e::FederateInternalError)
1179 {
1180  if( myFedAmb )
1181  {
1182  myFedAmb->reportAttributeTransportationType(theObject,
1183  theAttribute,
1184  theTransportation);
1185  }
1186 }
1187 
1188 // 6.28
1189 inline void DtFedAmbWrapper::confirmInteractionTransportationTypeChange (
1190  rti1516e::InteractionClassHandle theInteraction,
1191  rti1516e::TransportationType theTransportation)
1192  throw (
1193  rti1516e::FederateInternalError)
1194 {
1195  if( myFedAmb )
1196  {
1197  myFedAmb->confirmInteractionTransportationTypeChange(theInteraction,
1198  theTransportation);
1199  }
1200 }
1201 
1202 // 6.30
1203 inline void DtFedAmbWrapper::reportInteractionTransportationType (
1204  rti1516e::FederateHandle federateHandle,
1205  rti1516e::InteractionClassHandle theInteraction,
1206  rti1516e::TransportationType theTransportation)
1207  throw (
1208  rti1516e::FederateInternalError)
1209 {
1210  if( myFedAmb )
1211  {
1212  myFedAmb->reportInteractionTransportationType(federateHandle,
1213  theInteraction,
1214  theTransportation);
1215  }
1216 }
1217 
1218 
1220 // Ownership Management Services //
1222 
1223 // 7.4
1225  rti1516e::ObjectInstanceHandle theObject,
1226  rti1516e::AttributeHandleSet const & offeredAttributes,
1227  rti1516e::VariableLengthData const & theUserSuppliedTag)
1228  throw (
1229  rti1516e::FederateInternalError)
1230 {
1231  if( myFedAmb )
1232  {
1233  myFedAmb->requestAttributeOwnershipAssumption(theObject,
1234  offeredAttributes,
1235  theUserSuppliedTag);
1236  }
1237 }
1238 
1239 // 7.5
1240 inline void DtFedAmbWrapper::requestDivestitureConfirmation (
1241  rti1516e::ObjectInstanceHandle theObject,
1242  rti1516e::AttributeHandleSet const & releasedAttributes)
1243  throw (
1244  rti1516e::FederateInternalError)
1245 {
1246  if( myFedAmb )
1247  {
1248  myFedAmb->requestDivestitureConfirmation(theObject,
1249  releasedAttributes);
1250  }
1251 }
1252 
1253 // 7.7
1255  rti1516e::ObjectInstanceHandle theObject,
1256  rti1516e::AttributeHandleSet const & securedAttributes,
1257  rti1516e::VariableLengthData const & theUserSuppliedTag)
1258  throw (
1259  rti1516e::FederateInternalError)
1260 {
1261  if( myFedAmb )
1262  {
1263  myFedAmb->attributeOwnershipAcquisitionNotification(theObject,
1264  securedAttributes,
1265  theUserSuppliedTag);
1266  }
1267 }
1268 
1269 // 7.10
1271  rti1516e::ObjectInstanceHandle theObject,
1272  rti1516e::AttributeHandleSet const & theAttributes)
1273  throw (
1274  rti1516e::FederateInternalError)
1275 {
1276  if( myFedAmb )
1277  {
1278  myFedAmb->attributeOwnershipUnavailable(theObject,
1279  theAttributes);
1280  }
1281 }
1282 
1283 // 7.11
1285  rti1516e::ObjectInstanceHandle theObject,
1286  rti1516e::AttributeHandleSet const & candidateAttributes,
1287  rti1516e::VariableLengthData const & theUserSuppliedTag)
1288  throw (
1289  rti1516e::FederateInternalError)
1290 {
1291  if( myFedAmb )
1292  {
1293  myFedAmb->requestAttributeOwnershipRelease(theObject,
1294  candidateAttributes,
1295  theUserSuppliedTag);
1296  }
1297 }
1298 
1299 // 7.16
1301  rti1516e::ObjectInstanceHandle theObject,
1302  rti1516e::AttributeHandleSet const & theAttributes)
1303  throw (
1304  rti1516e::FederateInternalError)
1305 {
1306  if( myFedAmb )
1307  {
1308  myFedAmb->confirmAttributeOwnershipAcquisitionCancellation(theObject,
1309  theAttributes);
1310  }
1311 }
1312 
1313 // 7.18
1315  rti1516e::ObjectInstanceHandle theObject,
1316  rti1516e::AttributeHandle theAttribute,
1317  rti1516e::FederateHandle theOwner)
1318  throw (
1319  rti1516e::FederateInternalError)
1320 {
1321  if( myFedAmb )
1322  {
1323  myFedAmb->informAttributeOwnership(theObject,
1324  theAttribute,
1325  theOwner);
1326  }
1327 }
1328 
1330  rti1516e::ObjectInstanceHandle theObject,
1331  rti1516e::AttributeHandle theAttribute)
1332  throw (
1333  rti1516e::FederateInternalError)
1334 {
1335  if( myFedAmb )
1336  {
1337  myFedAmb->attributeIsNotOwned(theObject,
1338  theAttribute);
1339  }
1340 }
1341 
1342 inline void DtFedAmbWrapper::attributeIsOwnedByRTI (
1343  rti1516e::ObjectInstanceHandle theObject,
1344  rti1516e::AttributeHandle theAttribute)
1345  throw (
1346  rti1516e::FederateInternalError)
1347 {
1348  if( myFedAmb )
1349  {
1350  myFedAmb->attributeIsOwnedByRTI(theObject,
1351  theAttribute);
1352  }
1353 }
1354 
1356 // Time Management Services //
1358 
1359 // 8.3
1361  rti1516e::LogicalTime const & theFederateTime)
1362  throw (
1363  rti1516e::FederateInternalError)
1364 {
1365  if( myFedAmb )
1366  {
1367  myFedAmb->timeRegulationEnabled(theFederateTime);
1368  }
1369 }
1370 
1371 // 8.6
1373  rti1516e::LogicalTime const & theFederateTime)
1374  throw (
1375  rti1516e::FederateInternalError)
1376 {
1377  if( myFedAmb )
1378  {
1379  myFedAmb->timeConstrainedEnabled(theFederateTime);
1380  }
1381 }
1382 
1383 // 8.13
1385  rti1516e::LogicalTime const & theTime)
1386  throw (
1387  rti1516e::FederateInternalError)
1388 {
1389  if( myFedAmb )
1390  {
1391  myFedAmb->timeAdvanceGrant(theTime);
1392  }
1393 }
1394 
1395 // 8.22
1397  rti1516e::MessageRetractionHandle theHandle)
1398  throw (
1399  rti1516e::FederateInternalError)
1400 {
1401  if( myFedAmb )
1402  {
1403  myFedAmb->requestRetraction( theHandle );
1404  }
1405 }
1406 
1407 
1408 #endif // DtIFSPEC1516E
1409 #endif // DtFedAmbWrapper_H_
virtual void requestAttributeOwnershipRelease(ObjectHandle theObject, const AttributeHandleSet &candidateAttributes, const char *theTag)=0
7.10
OrderType
Definition: datatypes.pb.h:472
virtual void attributesOutOfScope(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
6.14
virtual void informAttributeOwnership(ObjectHandle theObject, AttributeHandle theAttribute, FederateHandle theOwner)=0
7.16
virtual void initiateFederateRestore(const char *label, FederateHandle handle)=0
4.19
virtual void confirmAttributeOwnershipAcquisitionCancellation(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
7.14
virtual void startRegistrationForObjectClass(ObjectClassHandle theClass)=0
! Declaration Management Services //!
virtual void requestRetraction(EventRetractionHandle theHandle)=0
8.22
virtual void synchronizationPointRegistrationFailed(const char *label)=0
supplied C4)
ULong InteractionClassHandle
Definition: RTItypes13.h:106
TransportationType
Definition: rtiAmbassadorFedProBase.h:43
virtual void federationNotRestored()=0
virtual void attributesInScope(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
6.13
virtual void attributeOwnershipUnavailable(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
7.9
RestoreFailureReason
Definition: datatypes.pb.h:388
virtual void receiveInteraction(InteractionClassHandle theInteraction, const ParameterHandleValuePairSet &theParameters, const FedTime &theTime, const char *theTag, EventRetractionHandle theHandle)=0
6.7
virtual void removeObjectInstance(ObjectHandle theObject, const FedTime &theTime, const char *theTag, EventRetractionHandle theHandle)=0
6.9
virtual void synchronizationPointRegistrationSucceeded(const char *label)=0
RTI Parameter Passing Memory Conventions.
virtual void initiateFederateSave(const char *label)=0
4.12
virtual void timeAdvanceGrant(const FedTime &theTime)=0
8.13
virtual void announceSynchronizationPoint(const char *label, const char *tag)=0
4.8
virtual void requestFederationRestoreFailed(const char *label, const char *reason)=0
supplied C4
virtual void federationNotSaved()=0
virtual void federationSynchronized(const char *label)=0
4.10
SaveFailureReason
Definition: datatypes.pb.h:359
virtual void discoverObjectInstance(ObjectHandle theObject, ObjectClassHandle theObjectClass, const char *theObjectName)=0
! Object Management Services //!
virtual void requestFederationRestoreSucceeded(const char *label)=0
4.17
virtual void attributeOwnershipAcquisitionNotification(ObjectHandle theObject, const AttributeHandleSet &securedAttributes)=0
7.6
virtual void reflectAttributeValues(ObjectHandle theObject, const AttributeHandleValuePairSet &theAttributes, const FedTime &theTime, const char *theTag, EventRetractionHandle theHandle)=0
6.5
virtual void turnInteractionsOff(InteractionClassHandle theHandle)=0
5.13
virtual void federationRestored()=0
4.21
virtual void provideAttributeValueUpdate(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
6.16
virtual void turnUpdatesOffForObjectInstance(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
6.18
ULong FederateHandle
Definition: RTItypes13.h:120
virtual void requestAttributeOwnershipAssumption(ObjectHandle theObject, const AttributeHandleSet &offeredAttributes, const char *theTag)=0
! Ownership Management Services //!
virtual Boolean throw(SpecifiedSaveLabelDoesNotExist, ConcurrentAccessAttempted, RTIinternalError)
virtual void turnUpdatesOnForObjectInstance(ObjectHandle theObject, const AttributeHandleSet &theAttributes)=0
6.17
An abstract base class which must be implemented, and used by a federate.
virtual void stopRegistrationForObjectClass(ObjectClassHandle theClass)=0
5.11
virtual void attributeIsNotOwned(ObjectHandle theObject, AttributeHandle theAttribute)=0
supplied C1
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
virtual void federationRestoreBegun()=0
4.18
virtual void federationSaved()=0
4.15
ULong ObjectClassHandle
Definition: RTItypes13.h:104
virtual void timeConstrainedEnabled(const FedTime &theFederateTime)=0
8.6
virtual void timeRegulationEnabled(const FedTime &theFederateTime)=0
! Time Management Services //!
virtual void turnInteractionsOn(InteractionClassHandle theHandle)=0
5.12
Handle AttributeHandle
Definition: RTItypes13.h:112
SynchronizationPointFailureReason
Definition: datatypes.pb.h:334

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)