12 #if DtHLA_1516 && !DtHLA_1516_EVOLVED
21 typedef void (*DtFederateSaveCb)(
25 typedef void (*DtFederateRestoreCb)(
29 typedef void (*DtSynchPointCb)(
33 typedef void (*DtAnnounceSynchPointCb)(
35 const RTI::VariableLengthData& tag,
44 class DT_DLL_VL DtVrlFederateAmbassador :
public DtNullFederateAmbassador
46 struct DtScopeChangeCallbackData
48 DtVrlFederateAmbassador* fedAmb;
49 RTI::ObjectInstanceHandle handle;
54 DtVrlFederateAmbassador()
55 throw (RTI::FederateInternalError);
57 virtual ~DtVrlFederateAmbassador()
62 DtVrlFederateAmbassador( const DtVrlFederateAmbassador& src );
65 DtVrlFederateAmbassador& operator=(const DtVrlFederateAmbassador& src );
71 DtHlaObjectManager* hlaObjMgr,
72 DtInteractionManager* interMgr );
76 static DtVrlFederateAmbassador* create();
81 virtual
void addReflectAttributeValuesCb(
82 RTI::ObjectInstanceHandle
id, DtReflectAttributeValuesCb cb,
void* usr );
83 virtual
void removeReflectAttributeValuesCb(
84 RTI::ObjectInstanceHandle
id, DtReflectAttributeValuesCb cb,
void* usr );
88 virtual
void addDiscoverObjectCb( RTI::ObjectClassHandle hand,
89 DtDiscoverObjectCb cb,
void* usr );
90 virtual
void removeDiscoverObjectCb( RTI::ObjectClassHandle hand,
91 DtDiscoverObjectCb cb,
void* usr );
95 virtual
void addRemoveObjectCb( RTI::ObjectInstanceHandle
id,
96 DtRemoveObjectCb cb,
void* usr );
97 virtual
void removeRemoveObjectCb( RTI::ObjectInstanceHandle
id,
98 DtRemoveObjectCb cb,
void* usr );
102 virtual
void addStartRegCb( RTI::ObjectClassHandle hand,
103 DtStartRegCb cb,
void* usr );
104 virtual
void removeStartRegCb( RTI::ObjectClassHandle hand,
105 DtStartRegCb cb,
void* usr );
109 virtual
void addStopRegCb( RTI::ObjectClassHandle hand,
110 DtStopRegCb cb,
void* usr );
111 virtual
void removeStopRegCb( RTI::ObjectClassHandle hand,
112 DtStopRegCb cb,
void* usr );
116 virtual
void addUpdatesOnCb( RTI::ObjectInstanceHandle hand,
117 DtUpdatesOnCb cb,
void* usr );
118 virtual
void removeUpdatesOnCb( RTI::ObjectInstanceHandle hand,
119 DtUpdatesOnCb cb,
void* usr );
123 virtual
void addUpdatesOffCb( RTI::ObjectInstanceHandle hand,
124 DtUpdatesOffCb cb,
void* usr );
125 virtual
void removeUpdatesOffCb( RTI::ObjectInstanceHandle hand,
126 DtUpdatesOffCb cb,
void* usr );
130 virtual
void addStartInteractionsCb( RTI::InteractionClassHandle hand,
131 DtStartStopInterCb cb,
void* usr );
132 virtual
void removeStartInteractionsCb( RTI::InteractionClassHandle hand,
133 DtStartStopInterCb cb,
void* usr );
137 virtual
void addStopInteractionsCb( RTI::InteractionClassHandle hand,
138 DtStartStopInterCb cb,
void* usr );
139 virtual
void removeStopInteractionsCb( RTI::InteractionClassHandle hand,
140 DtStartStopInterCb cb,
void* usr );
144 virtual
void addReceiveInteractionCb( RTI::InteractionClassHandle hand,
145 DtReceiveInteractionCb cb,
void* usr, DtDDMRegionSP region = DtDDMRegionSP());
146 virtual
void removeReceiveInteractionCb( RTI::InteractionClassHandle hand,
147 DtReceiveInteractionCb cb,
void* usr, DtDDMRegionSP region = DtDDMRegionSP() );
151 virtual
void addTimeAdvanceGrantCb( DtFedTimeCb cb,
void* usr );
152 virtual
void removeTimeAdvanceGrantCb( DtFedTimeCb cb,
void* usr );
156 virtual
void addTimeRegulationEnabledCb( DtFedTimeCb cb,
void* usr );
157 virtual
void removeTimeRegulationEnabledCb( DtFedTimeCb cb,
void* usr );
161 virtual
void addTimeConstrainedEnabledCb( DtFedTimeCb cb,
void* usr );
162 virtual
void removeTimeConstrainedEnabledCb( DtFedTimeCb cb,
void* usr );
166 virtual
void addNameReservationSucceeded( DtReserveNameCb cb,
void* usr );
167 virtual
void removeNameReservationSucceeded( DtReserveNameCb cb,
void* usr );
171 virtual
void addNameReservationFailed( DtReserveNameCb cb,
void* usr );
172 virtual
void removeNameReservationFailed( DtReserveNameCb cb,
void* usr );
175 virtual
void addSynchPointRegSucceededCb(const
DtString& label,
176 DtSynchPointCb func,
void* usr);
177 virtual
void addSynchPointRegSucceededCb(DtSynchPointCb func,
180 virtual
void removeSynchPointRegSucceededCb(const
DtString& label,
181 DtSynchPointCb func,
void* usr);
182 virtual
void removeSynchPointRegSucceededCb(DtSynchPointCb func,
185 virtual
void addSynchPointRegFailedCb(const
DtString& label,
186 DtSynchPointCb func,
void* usr);
187 virtual
void addSynchPointRegFailedCb(DtSynchPointCb func,
190 virtual
void removeSynchPointRegFailedCb(const
DtString& label,
191 DtSynchPointCb func,
void* usr);
192 virtual
void removeSynchPointRegFailedCb(DtSynchPointCb func,
195 virtual
void addFederationSynchedCb(const
DtString& label,
196 DtSynchPointCb func,
void* usr);
197 virtual
void addFederationSynchedCb(DtSynchPointCb func,
200 virtual
void removeFederationSynchedCb(const
DtString& label,
201 DtSynchPointCb func,
void* usr);
202 virtual
void removeFederationSynchedCb(DtSynchPointCb func,
205 virtual
void addAnnounceSynchPointCb(const
DtString& label,
206 DtAnnounceSynchPointCb func,
void* usr);
207 virtual
void addAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
210 virtual
void removeAnnounceSynchPointCb(const
DtString& label,
211 DtAnnounceSynchPointCb func,
void* usr);
212 virtual
void removeAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
215 virtual
void setRemoveObjectOnAttOutOfScope(
bool remove);
216 virtual
bool removeObjectOnAttOutOfScope() const;
221 virtual
void addFederateSaveCb(const
DtString& label,
222 DtFederateSaveCb func,
void* usr);
223 virtual
void addFederateSaveCb(DtFederateSaveCb func,
226 virtual
void removeFederateSaveCb(const
DtString& label,
227 DtFederateSaveCb func,
void* usr);
228 virtual
void removeFederateSaveCb(DtFederateSaveCb func,
234 virtual
void addFederateRestoreCb(const
DtString& label,
235 DtFederateRestoreCb func,
void* usr);
236 virtual
void addFederateRestoreCb(DtFederateRestoreCb func,
239 virtual
void removeFederateRestoreCb(const
DtString& label,
240 DtFederateRestoreCb func,
void* usr);
241 virtual
void removeFederateRestoreCb(DtFederateRestoreCb func,
245 virtual
bool waitingForSaveOrRestore() const;
249 struct DtFederateSaveCbInfo
251 DtFederateSaveCb cbFunction;
255 struct DtFederateRestoreCbInfo
257 DtFederateRestoreCb cbFunction;
261 struct DtLabelledFederateSaveCbInfo
264 DtFederateSaveCb cbFunction;
268 struct DtLabelledFederateRestoreCbInfo
271 DtFederateRestoreCb cbFunction;
275 struct DtGeneralSynchPointCbInfo
277 DtSynchPointCb cbFunction;
281 struct DtLabelledSynchPointCbInfo
284 DtSynchPointCb cbFunction;
288 struct DtGeneralAnnounceCbInfo
290 DtAnnounceSynchPointCb cbFunction;
294 struct DtLabelledAnnounceCbInfo
297 DtAnnounceSynchPointCb cbFunction;
301 static void attributesOutOfScopeCb(
void* usr);
303 virtual void processAttributesOutOfScope(RTI::ObjectInstanceHandle handle);
306 DtInteractionManager* myInteractionManager;
307 DtHlaObjectManager* myHlaObjectManager;
309 DtReflectAttributeValuesCbList myRavCbList;
310 DtUpdatesOnCbList myUpdatesOnCbList;
311 DtUpdatesOffCbList myUpdatesOffCbList;
312 DtStartRegCbList myStartRegCbList;
313 DtStopRegCbList myStopRegCbList;
314 DtStartStopInterCbList myStartIntCbList;
315 DtStartStopInterCbList myStopIntCbList;
316 DtFedTimeCbList myTimeAdvanceGrantCbList;
317 DtFedTimeCbList myRegulationEnabledCbList;
318 DtFedTimeCbList myConstrainedEnabledCbList;
319 DtReserveNameCbList myNameReservationSucceededCbList;
320 DtReserveNameCbList myNameReservationFailedCbList;
323 std::list<DtFederateSaveCbInfo> myFederateSaveCbList;
324 std::list<DtLabelledFederateSaveCbInfo> myLabFederateSaveCbList;
325 std::list<DtFederateRestoreCbInfo> myFederateRestoreCbList;
326 std::list<DtLabelledFederateRestoreCbInfo> myLabFederateRestoreCbList;
328 std::list<DtLabelledSynchPointCbInfo> myLabSynchPtRegSucceededCbList;
329 std::list<DtLabelledSynchPointCbInfo> myLabSynchPtRegFailedCbList;
330 std::list<DtLabelledSynchPointCbInfo> myLabFederationSynchedCbList;
331 std::list<DtLabelledAnnounceCbInfo> myLabAnnounceSynchPointCbList;
333 std::list<DtGeneralSynchPointCbInfo> mySynchPtRegSucceededCbList;
334 std::list<DtGeneralSynchPointCbInfo> mySynchPtRegFailedCbList;
335 std::list<DtGeneralSynchPointCbInfo> myFederationSynchedCbList;
336 std::list<DtGeneralAnnounceCbInfo> myAnnounceSynchPointCbList;
338 bool myRemoveObjectOnAttOutOfScope;
341 virtual void applyFedsSynchedCallbacks(
const DtString& label);
342 virtual void applyRegistrationSucceededCallbacks(
const DtString& label);
343 virtual void applyRegistrationFailedCallbacks(
const DtString& label);
346 virtual bool applyAnnounceCallbacks(
const DtString& label,
const RTI::VariableLengthData& tag);
352 virtual void synchronizationPointRegistrationSucceeded(
353 std::wstring
const & label)
354 throw (RTI::FederateInternalError);
356 virtual void synchronizationPointRegistrationFailed(
357 std::wstring
const & label,
358 RTI::SynchronizationFailureReason reason)
359 throw (RTI::FederateInternalError);
362 virtual void announceSynchronizationPoint(
363 std::wstring
const & label,
364 RTI::VariableLengthData
const & aTag)
365 throw (RTI::FederateInternalError);
368 virtual void federationSynchronized(std::wstring
const & label)
369 throw (RTI::FederateInternalError);
372 virtual void initiateFederateSave(std::wstring
const & label)
373 throw (RTI::UnableToPerformSave,
374 RTI::FederateInternalError);
376 virtual void initiateFederateSave(std::wstring
const & label,
377 RTI::LogicalTime
const & theTime)
378 throw (RTI::UnableToPerformSave,
379 RTI::InvalidLogicalTime,
380 RTI::FederateInternalError);
386 throw (RTI::FederateInternalError);
388 virtual
void federationNotSaved(RTI::SaveFailureReason theSaveFailureReason)
389 throw (RTI::FederateInternalError);
393 virtual
void federationSaveStatusResponse(
394 RTI::FederateHandleSaveStatusPairVector const & theFederateStatusVector)
395 throw (RTI::FederateInternalError);
398 virtual
void requestFederateRestoreSucceeded(std::wstring const & label)
399 throw (RTI::FederateInternalError);
401 virtual
void requestFederateRestoreFailed(std::wstring const & label)
402 throw (RTI::FederateInternalError);
405 virtual
void federationRestoreBegun()
406 throw (RTI::FederateInternalError);
409 virtual
void initiateFederateRestore(std::wstring const & label,
410 RTI::FederateHandle handle)
411 throw (RTI::SpecifiedSaveLabelDoesNotExist,
412 RTI::CouldNotInitiateRestore,
413 RTI::FederateInternalError);
416 virtual
void federationRestored()
417 throw (RTI::FederateInternalError);
419 virtual
void federationNotRestored(
420 RTI::RestoreFailureReason theRestoreFailureReason)
421 throw (RTI::FederateInternalError);
424 virtual
void federationRestoreStatusResponse(
425 RTI::FederateHandleRestoreStatusPairVector const & theFederateStatusVector)
426 throw (RTI::FederateInternalError);
434 virtual
void startRegistrationForObjectClass(
435 RTI::ObjectClassHandle theClass)
436 throw (RTI::ObjectClassNotPublished,
437 RTI::FederateInternalError);
440 virtual
void stopRegistrationForObjectClass(
441 RTI::ObjectClassHandle theClass)
442 throw (RTI::ObjectClassNotPublished,
443 RTI::FederateInternalError);
446 virtual
void turnInteractionsOn(
447 RTI::InteractionClassHandle theHandle)
448 throw (RTI::InteractionClassNotPublished,
449 RTI::FederateInternalError);
452 virtual
void turnInteractionsOff(RTI::InteractionClassHandle theHandle)
453 throw (RTI::InteractionClassNotPublished,
454 RTI::FederateInternalError);
461 virtual
void objectInstanceNameReservationSucceeded(
462 std::wstring const & theObjectInstanceName)
463 throw (RTI::UnknownName,
464 RTI::FederateInternalError);
466 virtual
void objectInstanceNameReservationFailed(
467 std::wstring const & theObjectInstanceName)
468 throw (RTI::UnknownName,
469 RTI::FederateInternalError);
472 virtual
void discoverObjectInstance(
473 RTI::ObjectInstanceHandle theObject,
474 RTI::ObjectClassHandle theObjectClass,
475 std::wstring const & theObjectInstanceName)
476 throw (RTI::CouldNotDiscover,
477 RTI::ObjectClassNotKnown,
478 RTI::FederateInternalError);
481 virtual
void reflectAttributeValues(
482 RTI::ObjectInstanceHandle theObject,
483 RTI::AttributeHandleValueMap const & theAttributeValues,
484 RTI::VariableLengthData const & aTag,
485 RTI::OrderType sentOrder,
486 RTI::TransportationType theType)
487 throw (RTI::ObjectInstanceNotKnown,
488 RTI::AttributeNotRecognized,
489 RTI::AttributeNotSubscribed,
490 RTI::FederateInternalError);
492 virtual
void reflectAttributeValues(
493 RTI::ObjectInstanceHandle theObject,
494 RTI::AttributeHandleValueMap const & theAttributeValues,
495 RTI::VariableLengthData const & aTag,
496 RTI::OrderType sentOrder,
497 RTI::TransportationType theType,
498 RTI::RegionHandleSet const & theSentRegionHandleSet)
499 throw (RTI::ObjectInstanceNotKnown,
500 RTI::AttributeNotRecognized,
501 RTI::AttributeNotSubscribed,
502 RTI::FederateInternalError);
504 virtual
void reflectAttributeValues(
505 RTI::ObjectInstanceHandle theObject,
506 RTI::AttributeHandleValueMap const & theAttributeValues,
507 RTI::VariableLengthData const & aTag,
508 RTI::OrderType sentOrder,
509 RTI::TransportationType theType,
510 RTI::LogicalTime const & theTime,
511 RTI::OrderType receivedOrder)
512 throw (RTI::ObjectInstanceNotKnown,
513 RTI::AttributeNotRecognized,
514 RTI::AttributeNotSubscribed,
515 RTI::FederateInternalError);
517 virtual
void reflectAttributeValues(
518 RTI::ObjectInstanceHandle theObject,
519 RTI::AttributeHandleValueMap const & theAttributeValues,
520 RTI::VariableLengthData const & aTag,
521 RTI::OrderType sentOrder,
522 RTI::TransportationType theType,
523 RTI::LogicalTime const & theTime,
524 RTI::OrderType receivedOrder,
525 RTI::RegionHandleSet const & theSentRegionHandleSet)
526 throw (RTI::ObjectInstanceNotKnown,
527 RTI::AttributeNotRecognized,
528 RTI::AttributeNotSubscribed,
529 RTI::FederateInternalError);
531 virtual
void reflectAttributeValues(
532 RTI::ObjectInstanceHandle theObject,
533 RTI::AttributeHandleValueMap const & theAttributeValues,
534 RTI::VariableLengthData const & aTag,
535 RTI::OrderType sentOrder,
536 RTI::TransportationType theType,
537 RTI::LogicalTime const & theTime,
538 RTI::OrderType receivedOrder,
539 RTI::MessageRetractionHandle theHandle)
540 throw (RTI::ObjectInstanceNotKnown,
541 RTI::AttributeNotRecognized,
542 RTI::AttributeNotSubscribed,
543 RTI::InvalidLogicalTime,
544 RTI::FederateInternalError);
546 virtual
void reflectAttributeValues(
547 RTI::ObjectInstanceHandle theObject,
548 RTI::AttributeHandleValueMap const & theAttributeValues,
549 RTI::VariableLengthData const & aTag,
550 RTI::OrderType sentOrder,
551 RTI::TransportationType theType,
552 RTI::LogicalTime const & theTime,
553 RTI::OrderType receivedOrder,
554 RTI::MessageRetractionHandle theHandle,
555 RTI::RegionHandleSet const & theSentRegionHandleSet)
556 throw (RTI::ObjectInstanceNotKnown,
557 RTI::AttributeNotRecognized,
558 RTI::AttributeNotSubscribed,
559 RTI::InvalidLogicalTime,
560 RTI::FederateInternalError);
564 virtual
void receiveInteraction (
565 RTI::InteractionClassHandle theInteraction,
566 RTI::ParameterHandleValueMap const & theParameterValues,
567 RTI::VariableLengthData const & aTag,
568 RTI::OrderType sentOrder,
569 RTI::TransportationType theType)
570 throw (RTI::InteractionClassNotRecognized,
571 RTI::InteractionParameterNotRecognized,
572 RTI::InteractionClassNotSubscribed,
573 RTI::FederateInternalError);
575 virtual
void receiveInteraction(
576 RTI::InteractionClassHandle theInteraction,
577 RTI::ParameterHandleValueMap const & theParameterValues,
578 RTI::VariableLengthData const & aTag,
579 RTI::OrderType sentOrder,
580 RTI::TransportationType theType,
581 RTI::RegionHandleSet const & theSentRegionHandleSet)
582 throw (RTI::InteractionClassNotRecognized,
583 RTI::InteractionParameterNotRecognized,
584 RTI::InteractionClassNotSubscribed,
585 RTI::FederateInternalError);
587 virtual
void receiveInteraction(
588 RTI::InteractionClassHandle theInteraction,
589 RTI::ParameterHandleValueMap const & theParameterValues,
590 RTI::VariableLengthData const & aTag,
591 RTI::OrderType sentOrder,
592 RTI::TransportationType theType,
593 RTI::LogicalTime const & theTime,
594 RTI::OrderType receivedOrder)
595 throw (RTI::InteractionClassNotRecognized,
596 RTI::InteractionParameterNotRecognized,
597 RTI::InteractionClassNotSubscribed,
598 RTI::FederateInternalError);
600 virtual
void receiveInteraction(
601 RTI::InteractionClassHandle theInteraction,
602 RTI::ParameterHandleValueMap const & theParameterValues,
603 RTI::VariableLengthData const & aTag,
604 RTI::OrderType sentOrder,
605 RTI::TransportationType theType,
606 RTI::LogicalTime const & theTime,
607 RTI::OrderType receivedOrder,
608 RTI::RegionHandleSet const & theSentRegionHandleSet)
609 throw (RTI::InteractionClassNotRecognized,
610 RTI::InteractionParameterNotRecognized,
611 RTI::InteractionClassNotSubscribed,
612 RTI::FederateInternalError);
614 virtual
void receiveInteraction(
615 RTI::InteractionClassHandle theInteraction,
616 RTI::ParameterHandleValueMap const & theParameterValues,
617 RTI::VariableLengthData const & aTag,
618 RTI::OrderType sentOrder,
619 RTI::TransportationType theType,
620 RTI::LogicalTime const & theTime,
621 RTI::OrderType receivedOrder,
622 RTI::MessageRetractionHandle theHandle)
623 throw (RTI::InteractionClassNotRecognized,
624 RTI::InteractionParameterNotRecognized,
625 RTI::InteractionClassNotSubscribed,
626 RTI::InvalidLogicalTime,
627 RTI::FederateInternalError);
629 virtual
void receiveInteraction (
630 RTI::InteractionClassHandle theInteraction,
631 RTI::ParameterHandleValueMap const & theParameterValues,
632 RTI::VariableLengthData const & aTag,
633 RTI::OrderType sentOrder,
634 RTI::TransportationType theType,
635 RTI::LogicalTime const & theTime,
636 RTI::OrderType receivedOrder,
637 RTI::MessageRetractionHandle theHandle,
638 RTI::RegionHandleSet const & theSentRegionHandleSet)
639 throw (RTI::InteractionClassNotRecognized,
640 RTI::InteractionParameterNotRecognized,
641 RTI::InteractionClassNotSubscribed,
642 RTI::InvalidLogicalTime,
643 RTI::FederateInternalError);
646 virtual
void removeObjectInstance(
647 RTI::ObjectInstanceHandle theObject,
648 RTI::VariableLengthData const & aTag,
649 RTI::OrderType sentOrder)
650 throw (RTI::ObjectInstanceNotKnown,
651 RTI::FederateInternalError);
653 virtual
void removeObjectInstance(
654 RTI::ObjectInstanceHandle theObject,
655 RTI::VariableLengthData const & aTag,
656 RTI::OrderType sentOrder,
657 RTI::LogicalTime const & theTime,
658 RTI::OrderType receivedOrder)
659 throw (RTI::ObjectInstanceNotKnown,
660 RTI::FederateInternalError);
662 virtual
void removeObjectInstance(
663 RTI::ObjectInstanceHandle theObject,
664 RTI::VariableLengthData const & aTag,
665 RTI::OrderType sentOrder,
666 RTI::LogicalTime const & theTime,
667 RTI::OrderType receivedOrder,
668 RTI::MessageRetractionHandle theHandle)
669 throw (RTI::ObjectInstanceNotKnown,
670 RTI::InvalidLogicalTime,
671 RTI::FederateInternalError);
674 virtual
void attributesInScope(
675 RTI::ObjectInstanceHandle theObject,
676 RTI::AttributeHandleSet const & theAttributes)
677 throw (RTI::ObjectInstanceNotKnown,
678 RTI::AttributeNotRecognized,
679 RTI::AttributeNotSubscribed,
680 RTI::FederateInternalError);
683 virtual
void attributesOutOfScope(
684 RTI::ObjectInstanceHandle theObject,
685 RTI::AttributeHandleSet const &theAttributes)
686 throw (RTI::ObjectInstanceNotKnown,
687 RTI::AttributeNotRecognized,
688 RTI::AttributeNotSubscribed,
689 RTI::FederateInternalError);
692 virtual
void provideAttributeValueUpdate(
693 RTI::ObjectInstanceHandle theObject,
694 RTI::AttributeHandleSet const & theAttributes,
695 RTI::VariableLengthData const & aTag)
696 throw (RTI::ObjectInstanceNotKnown,
697 RTI::AttributeNotRecognized,
698 RTI::AttributeNotOwned,
699 RTI::FederateInternalError);
702 virtual
void turnUpdatesOnForObjectInstance(
703 RTI::ObjectInstanceHandle theObject,
704 RTI::AttributeHandleSet const & theAttributes)
705 throw (RTI::ObjectInstanceNotKnown,
706 RTI::AttributeNotRecognized,
707 RTI::AttributeNotOwned,
708 RTI::FederateInternalError);
711 virtual
void turnUpdatesOffForObjectInstance(
712 RTI::ObjectInstanceHandle theObject,
713 RTI::AttributeHandleSet const & theAttributes)
714 throw (RTI::ObjectInstanceNotKnown,
715 RTI::AttributeNotRecognized,
716 RTI::AttributeNotOwned,
717 RTI::FederateInternalError);
723 virtual
void requestAttributeOwnershipAssumption(
724 RTI::ObjectInstanceHandle theObject,
725 RTI::AttributeHandleSet const & offeredAttributes,
726 RTI::VariableLengthData const & aTag)
727 throw (RTI::ObjectInstanceNotKnown,
728 RTI::AttributeNotRecognized,
729 RTI::AttributeAlreadyOwned,
730 RTI::AttributeNotPublished,
731 RTI::FederateInternalError);
733 virtual
void requestDivestitureConfirmation(
734 RTI::ObjectInstanceHandle theObject,
735 RTI::AttributeHandleSet const & releasedAttributes)
736 throw (RTI::ObjectInstanceNotKnown,
737 RTI::AttributeNotRecognized,
738 RTI::AttributeNotOwned,
739 RTI::AttributeDivestitureWasNotRequested,
740 RTI::FederateInternalError);
742 virtual
void attributeOwnershipAcquisitionNotification(
743 RTI::ObjectInstanceHandle theObject,
744 RTI::AttributeHandleSet const & securedAttributes,
745 RTI::VariableLengthData const & aTag)
746 throw (RTI::ObjectInstanceNotKnown,
747 RTI::AttributeNotRecognized,
748 RTI::AttributeAcquisitionWasNotRequested,
749 RTI::AttributeAlreadyOwned,
750 RTI::AttributeNotPublished,
751 RTI::FederateInternalError);
753 virtual
void attributeOwnershipUnavailable(
754 RTI::ObjectInstanceHandle theObject,
755 RTI::AttributeHandleSet const & theAttributes)
756 throw (RTI::ObjectInstanceNotKnown,
757 RTI::AttributeNotRecognized,
758 RTI::AttributeAlreadyOwned,
759 RTI::AttributeAcquisitionWasNotRequested,
760 RTI::FederateInternalError);
762 virtual
void requestAttributeOwnershipRelease(
763 RTI::ObjectInstanceHandle theObject,
764 RTI::AttributeHandleSet const & candidateAttributes,
765 RTI::VariableLengthData const & aTag)
766 throw (RTI::ObjectInstanceNotKnown,
767 RTI::AttributeNotRecognized,
768 RTI::AttributeNotOwned,
769 RTI::FederateInternalError);
771 virtual
void confirmAttributeOwnershipAcquisitionCancellation(
772 RTI::ObjectInstanceHandle theObject,
773 RTI::AttributeHandleSet const & theAttributes)
774 throw (RTI::ObjectInstanceNotKnown,
775 RTI::AttributeNotRecognized,
776 RTI::AttributeAlreadyOwned,
777 RTI::AttributeAcquisitionWasNotCanceled,
778 RTI::FederateInternalError);
780 virtual
void informAttributeOwnership(
781 RTI::ObjectInstanceHandle theObject,
782 RTI::AttributeHandle theAttribute,
783 RTI::FederateHandle theOwner)
784 throw (RTI::ObjectInstanceNotKnown,
785 RTI::AttributeNotRecognized,
786 RTI::FederateInternalError);
788 virtual
void attributeIsNotOwned(
789 RTI::ObjectInstanceHandle theObject,
790 RTI::AttributeHandle theAttribute)
791 throw (RTI::ObjectInstanceNotKnown,
792 RTI::AttributeNotRecognized,
793 RTI::FederateInternalError);
795 virtual
void attributeIsOwnedByRTI(
796 RTI::ObjectInstanceHandle theObject,
797 RTI::AttributeHandle theAttribute)
798 throw (RTI::ObjectInstanceNotKnown,
799 RTI::AttributeNotRecognized,
800 RTI::FederateInternalError);
806 virtual
void timeRegulationEnabled(
807 RTI::LogicalTime const & theFederateTime)
808 throw (RTI::InvalidLogicalTime,
809 RTI::NoRequestToEnableTimeRegulationWasPending,
810 RTI::FederateInternalError);
812 virtual
void timeConstrainedEnabled(
813 RTI::LogicalTime const & theFederateTime)
814 throw (RTI::InvalidLogicalTime,
815 RTI::NoRequestToEnableTimeConstrainedWasPending,
816 RTI::FederateInternalError);
818 virtual
void timeAdvanceGrant( RTI::LogicalTime const & theTime)
819 throw (RTI::InvalidLogicalTime,
820 RTI::JoinedFederateIsNotInTimeAdvancingState,
821 RTI::FederateInternalError);
823 virtual
void requestRetraction(RTI::MessageRetractionHandle theHandle)
824 throw (RTI::FederateInternalError);
828 bool myWaitingForSave;
829 bool myWaitingForRestore;
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Instances of DtString are used to represent strings.
Definition: vlString.h:36
This file is used as a convenience to group RTI related callbacks together.