13 namespace rti1516_2025
15 class RtiConfiguration;
16 class FederateAmbassador;
18 class LogicalTimeFactory;
19 class LogicalTimeInterval;
31 namespace rti1516_2025
110 virtual
void disconnect() = 0;
128 virtual
void createFederationExecution(
129 std::wstring const & federationName,
130 std::wstring const & fomModule,
131 std::wstring const & logicalTimeImplementationName = L"") = 0;
145 virtual
void createFederationExecution(
146 std::wstring const & federationName,
147 std::vector<std::wstring> const & fomModules,
148 std::wstring const & logicalTimeImplementationName = L"") = 0;
165 virtual
void createFederationExecutionWithMIM(
166 std::wstring const & federationName,
167 std::vector<std::wstring> const & fomModules,
168 std::wstring const & mimModule,
169 std::wstring const & logicalTimeImplementationName = L"") = 0;
179 virtual
void destroyFederationExecution(
180 std::wstring const & federationName) = 0;
187 virtual
void listFederationExecutions() = 0;
194 virtual
void listFederationExecutionMembers(std::wstring const & federationName) = 0;
212 virtual FederateHandle joinFederationExecution(
213 std::wstring const & federateType,
214 std::wstring const & federationName,
215 std::vector<std::wstring> const & additionalFomModules = std::vector<std::wstring>()) = 0;
234 virtual FederateHandle joinFederationExecution(
235 std::wstring const & federateName,
236 std::wstring const & federateType,
237 std::wstring const & federationName,
238 std::vector<std::wstring> const & additionalFomModules = std::vector<std::wstring>()) = 0;
250 virtual
void resignFederationExecution(
261 virtual
void registerFederationSynchronizationPoint(
262 std::wstring const & synchronizationPointLabel,
274 virtual
void registerFederationSynchronizationPoint(
275 std::wstring const & synchronizationPointLabel,
288 virtual
void synchronizationPointAchieved(
289 std::wstring const & synchronizationPointLabel,
290 bool successfully = true) = 0;
300 virtual
void requestFederationSave(
301 std::wstring const & label) = 0;
314 virtual
void requestFederationSave(
315 std::wstring const & label,
326 virtual
void federateSaveBegun() = 0;
336 virtual
void federateSaveComplete() = 0;
346 virtual
void federateSaveNotComplete () = 0;
355 virtual
void abortFederationSave() = 0;
364 virtual
void queryFederationSaveStatus() = 0;
374 virtual
void requestFederationRestore(
375 std::wstring const & label) = 0;
385 virtual
void federateRestoreComplete() = 0;
395 virtual
void federateRestoreNotComplete () = 0;
404 virtual
void abortFederationRestore() = 0;
413 virtual
void queryFederationRestoreStatus() = 0;
429 virtual
void publishObjectClassAttributes(
430 ObjectClassHandle const & objectClass,
443 virtual
void unpublishObjectClass (
444 ObjectClassHandle const & objectClass) = 0;
457 virtual
void unpublishObjectClassAttributes(
458 ObjectClassHandle const & objectClass,
470 virtual
void publishInteractionClass(
471 InteractionClassHandle const & interactionClass) = 0;
482 virtual
void unpublishInteractionClass(
483 InteractionClassHandle const & interactionClass) = 0;
495 virtual
void publishObjectClassDirectedInteractions(
496 ObjectClassHandle const & objectClass,
508 virtual
void unpublishObjectClassDirectedInteractions(
509 ObjectClassHandle const & objectClass) = 0;
521 virtual
void unpublishObjectClassDirectedInteractions(
522 ObjectClassHandle const & objectClass,
535 virtual
void subscribeObjectClassAttributes(
536 ObjectClassHandle const & objectClass,
539 std::wstring const & updateRateDesignator = L"") = 0;
550 virtual
void unsubscribeObjectClass(
551 ObjectClassHandle const & objectClass) = 0;
563 virtual
void unsubscribeObjectClassAttributes(
564 ObjectClassHandle const & objectClass,
577 virtual
void subscribeInteractionClass(
578 InteractionClassHandle const & interactionClass,
579 bool active = true) = 0;
590 virtual
void unsubscribeInteractionClass(
591 InteractionClassHandle const & interactionClass) = 0;
603 virtual
void subscribeObjectClassDirectedInteractions(
604 ObjectClassHandle const & objectClass,
606 bool universally = false) = 0;
617 virtual
void unsubscribeObjectClassDirectedInteractions(
618 ObjectClassHandle const & objectClass) = 0;
630 virtual
void unsubscribeObjectClassDirectedInteractions(
631 ObjectClassHandle const & objectClass,
647 virtual
void reserveObjectInstanceName(
648 std::wstring const & objectInstanceName) = 0;
659 virtual
void releaseObjectInstanceName(
660 std::wstring const & objectInstanceName) = 0;
672 virtual
void reserveMultipleObjectInstanceNames(
673 std::set<std::wstring> const & objectInstanceNames) = 0;
684 virtual
void releaseMultipleObjectInstanceNames(
685 std::set<std::wstring> const & objectInstanceNames) = 0;
697 virtual ObjectInstanceHandle registerObjectInstance(
698 ObjectClassHandle const & objectClass) = 0;
712 virtual ObjectInstanceHandle registerObjectInstance(
713 ObjectClassHandle const & objectClass,
714 std::wstring const & objectInstanceName) = 0;
727 virtual
void updateAttributeValues(
728 ObjectInstanceHandle const & objectInstance,
744 virtual MessageRetractionHandle updateAttributeValues(
745 ObjectInstanceHandle const & objectInstance,
761 virtual
void sendInteraction(
762 InteractionClassHandle const & interactionClass,
778 virtual MessageRetractionHandle sendInteraction(
779 InteractionClassHandle const & interactionClass,
796 virtual
void sendDirectedInteraction(
797 InteractionClassHandle const & interactionClass,
798 ObjectInstanceHandle const & objectInstance,
815 virtual MessageRetractionHandle sendDirectedInteraction(
816 InteractionClassHandle const & interactionClass,
817 ObjectInstanceHandle const & objectInstance,
832 virtual
void deleteObjectInstance(
833 ObjectInstanceHandle const & objectInstance,
847 virtual MessageRetractionHandle deleteObjectInstance(
848 ObjectInstanceHandle const & objectInstance,
863 virtual
void localDeleteObjectInstance(
864 ObjectInstanceHandle const & objectInstance) = 0;
876 virtual
void requestAttributeValueUpdate(
877 ObjectInstanceHandle const & objectInstance,
891 virtual
void requestAttributeValueUpdate(
892 ObjectClassHandle const & objectClass,
909 virtual
void requestAttributeTransportationTypeChange(
910 ObjectInstanceHandle const & objectInstance,
912 TransportationTypeHandle const & transportationType) = 0;
925 virtual
void changeDefaultAttributeTransportationType(
926 ObjectClassHandle const & objectClass,
928 TransportationTypeHandle const & transportationType) = 0;
940 virtual
void queryAttributeTransportationType(
941 ObjectInstanceHandle const & objectInstance,
942 AttributeHandle const & attribute) = 0;
956 virtual
void requestInteractionTransportationTypeChange(
957 InteractionClassHandle const & interactionClass,
958 TransportationTypeHandle const & transportationType) = 0;
969 virtual
void queryInteractionTransportationType(
970 FederateHandle const & federate,
971 InteractionClassHandle const & interactionClass) = 0;
989 virtual
void unconditionalAttributeOwnershipDivestiture(
990 ObjectInstanceHandle const & objectInstance,
1006 virtual
void negotiatedAttributeOwnershipDivestiture(
1007 ObjectInstanceHandle const & objectInstance,
1024 virtual
void confirmDivestiture(
1025 ObjectInstanceHandle const & objectInstance,
1042 virtual
void attributeOwnershipAcquisition(
1043 ObjectInstanceHandle const & objectInstance,
1061 virtual
void attributeOwnershipAcquisitionIfAvailable(
1062 ObjectInstanceHandle const & objectInstance,
1077 virtual
void attributeOwnershipReleaseDenied(
1078 ObjectInstanceHandle const & objectInstance,
1093 virtual
void attributeOwnershipDivestitureIfWanted(
1094 ObjectInstanceHandle const & objectInstance,
1111 virtual
void cancelNegotiatedAttributeOwnershipDivestiture(
1112 ObjectInstanceHandle const & objectInstance,
1127 virtual
void cancelAttributeOwnershipAcquisition(
1128 ObjectInstanceHandle const & objectInstance,
1141 virtual
void queryAttributeOwnership(
1142 ObjectInstanceHandle const & objectInstance,
1155 virtual
bool isAttributeOwnedByFederate(
1156 ObjectInstanceHandle const & objectInstance,
1157 AttributeHandle const & attribute) = 0;
1175 virtual
void enableTimeRegulation(
1187 virtual
void disableTimeRegulation() = 0;
1200 virtual
void enableTimeConstrained() = 0;
1211 virtual
void disableTimeConstrained() = 0;
1226 virtual
void timeAdvanceRequest(
1242 virtual
void timeAdvanceRequestAvailable(
1258 virtual
void nextMessageRequest(
1274 virtual
void nextMessageRequestAvailable(
1290 virtual
void flushQueueRequest(
1302 virtual
void enableAsynchronousDelivery() = 0;
1313 virtual
void disableAsynchronousDelivery() = 0;
1333 virtual
void queryLogicalTime(
LogicalTime & time) = 0;
1356 virtual
void modifyLookahead(
1381 virtual
void retract(
1382 MessageRetractionHandle const & retraction) = 0;
1395 virtual
void changeAttributeOrderType(
1396 ObjectInstanceHandle const & objectInstance,
1410 virtual
void changeDefaultAttributeOrderType(
1411 ObjectClassHandle const & objectClass,
1425 virtual
void changeInteractionOrderType(
1426 InteractionClassHandle const & interactionClass,
1442 virtual RegionHandle createRegion(
1455 virtual
void commitRegionModifications(
1469 virtual
void deleteRegion(
1470 RegionHandle const & region) = 0;
1487 virtual ObjectInstanceHandle registerObjectInstanceWithRegions(
1488 ObjectClassHandle const & objectClass,
1508 virtual ObjectInstanceHandle registerObjectInstanceWithRegions(
1509 ObjectClassHandle const & objectClass,
1511 std::wstring const & objectInstanceName) = 0;
1526 virtual
void associateRegionsForUpdates(
1527 ObjectInstanceHandle const & objectInstance,
1542 virtual
void unassociateRegionsForUpdates(
1543 ObjectInstanceHandle const & objectInstance,
1559 virtual
void subscribeObjectClassAttributesWithRegions(
1560 ObjectClassHandle const & objectClass,
1563 std::wstring const & updateRateDesignator = L"") = 0;
1578 virtual
void unsubscribeObjectClassAttributesWithRegions(
1579 ObjectClassHandle const & objectClass,
1595 virtual
void subscribeInteractionClassWithRegions(
1596 InteractionClassHandle const & interactionClass,
1598 bool active = true) = 0;
1613 virtual
void unsubscribeInteractionClassWithRegions(
1614 InteractionClassHandle const & interactionClass,
1631 virtual
void sendInteractionWithRegions(
1632 InteractionClassHandle const & interactionClass,
1652 virtual MessageRetractionHandle sendInteractionWithRegions(
1653 InteractionClassHandle const & interactionClass,
1672 virtual
void requestAttributeValueUpdateWithRegions(
1673 ObjectClassHandle const & objectClass,
1688 virtual FederateHandle getFederateHandle(
1689 std::wstring const & federateName) = 0;
1699 virtual std::wstring getFederateName(
1700 FederateHandle const & federate) = 0;
1709 virtual ObjectClassHandle getObjectClassHandle(
1710 std::wstring const & objectClassName) = 0;
1719 virtual std::wstring getObjectClassName(
1720 ObjectClassHandle const & objectClass) = 0;
1729 virtual ObjectClassHandle getKnownObjectClassHandle(
1730 ObjectInstanceHandle const & objectInstance) = 0;
1739 virtual ObjectInstanceHandle getObjectInstanceHandle(
1740 std::wstring const & objectInstanceName) = 0;
1749 virtual std::wstring getObjectInstanceName(
1750 ObjectInstanceHandle const & objectInstance) = 0;
1760 virtual AttributeHandle getAttributeHandle(
1761 ObjectClassHandle const & objectClass,
1762 std::wstring const & attributeName) = 0;
1773 virtual std::wstring getAttributeName(
1774 ObjectClassHandle const & objectClass,
1775 AttributeHandle const & attribute) = 0;
1784 virtual
double getUpdateRateValue(
1785 std::wstring const & updateRateDesignator) = 0;
1795 virtual
double getUpdateRateValueForAttribute(
1796 ObjectInstanceHandle const & objectInstance,
1797 AttributeHandle const & attribute) = 0;
1806 virtual InteractionClassHandle getInteractionClassHandle(
1807 std::wstring const & interactionClassName) = 0;
1816 virtual std::wstring getInteractionClassName(
1817 InteractionClassHandle const & interactionClass) = 0;
1827 virtual ParameterHandle getParameterHandle(
1828 InteractionClassHandle const & interactionClass,
1829 std::wstring const & parameterName) = 0;
1840 virtual std::wstring getParameterName(
1841 InteractionClassHandle const & interactionClass,
1842 ParameterHandle const & parameter) = 0;
1852 std::wstring const & orderTypeName) = 0;
1861 virtual std::wstring getOrderName(
1871 virtual TransportationTypeHandle getTransportationTypeHandle(
1872 std::wstring const & transportationTypeName) = 0;
1881 virtual std::wstring getTransportationTypeName(
1882 TransportationTypeHandle const & transportationType) = 0;
1892 ObjectClassHandle const & objectClass) = 0;
1902 InteractionClassHandle const & interactionClass) = 0;
1911 virtual DimensionHandle getDimensionHandle(
1912 std::wstring const & dimensionName) = 0;
1921 virtual std::wstring getDimensionName(
1922 DimensionHandle const & dimension) = 0;
1931 virtual
unsigned long getDimensionUpperBound(
1932 DimensionHandle const & dimension) = 0;
1944 RegionHandle const & region) = 0;
1957 RegionHandle const & region,
1958 DimensionHandle const & dimension) = 0;
1972 virtual
void setRangeBounds(
1973 RegionHandle const & region,
1974 DimensionHandle const & dimension,
1984 virtual
unsigned long normalizeServiceGroup(
1994 virtual
unsigned long normalizeFederateHandle(
1995 FederateHandle const & federate) = 0;
2004 virtual
unsigned long normalizeObjectClassHandle(
2005 ObjectClassHandle const & objectClass) = 0;
2014 virtual
unsigned long normalizeInteractionClassHandle(
2015 InteractionClassHandle const & interactionClass) = 0;
2024 virtual
unsigned long normalizeObjectInstanceHandle(
2025 ObjectInstanceHandle const & objectInstance) = 0;
2035 virtual
bool getObjectClassRelevanceAdvisorySwitch() const = 0;
2045 virtual
void setObjectClassRelevanceAdvisorySwitch(
bool switchValue) = 0;
2055 virtual
bool getAttributeRelevanceAdvisorySwitch() const = 0;
2065 virtual
void setAttributeRelevanceAdvisorySwitch(
bool switchValue) = 0;
2075 virtual
bool getAttributeScopeAdvisorySwitch() const = 0;
2085 virtual
void setAttributeScopeAdvisorySwitch(
bool switchValue) = 0;
2095 virtual
bool getInteractionRelevanceAdvisorySwitch() const = 0;
2105 virtual
void setInteractionRelevanceAdvisorySwitch(
bool switchValue) = 0;
2115 virtual
bool getConveyRegionDesignatorSetsSwitch() const = 0;
2125 virtual
void setConveyRegionDesignatorSetsSwitch(
bool switchValue) = 0;
2135 virtual
ResignAction getAutomaticResignDirective() = 0;
2146 virtual
void setAutomaticResignDirective(
2157 virtual
bool getServiceReportingSwitch() const = 0;
2168 virtual
void setServiceReportingSwitch(
bool switchValue) = 0;
2178 virtual
bool getExceptionReportingSwitch() const = 0;
2188 virtual
void setExceptionReportingSwitch(
bool switchValue) = 0;
2198 virtual
bool getSendServiceReportsToFileSwitch() const = 0;
2208 virtual
void setSendServiceReportsToFileSwitch(
bool switchValue) = 0;
2218 virtual
bool getAutoProvideSwitch() const = 0;
2228 virtual
bool getDelaySubscriptionEvaluationSwitch() const = 0;
2238 virtual
bool getAdvisoriesUseKnownClassSwitch() const = 0;
2248 virtual
bool getAllowRelaxedDDMSwitch() const = 0;
2258 virtual
bool getNonRegulatedGrantSwitch() const = 0;
2265 virtual
bool evokeCallback(
2266 double approximateMinimumTimeInSeconds) = 0;
2273 virtual
bool evokeMultipleCallbacks(
2274 double approximateMinimumTimeInSeconds,
2275 double approximateMaximumTimeInSeconds) = 0;
2283 virtual
void enableCallbacks() = 0;
2291 virtual
void disableCallbacks() = 0;
2313 virtual FederateHandle decodeFederateHandle (
2322 virtual ObjectClassHandle decodeObjectClassHandle (
2331 virtual InteractionClassHandle decodeInteractionClassHandle (
2340 virtual ObjectInstanceHandle decodeObjectInstanceHandle (
2349 virtual AttributeHandle decodeAttributeHandle (
2358 virtual ParameterHandle decodeParameterHandle (
2367 virtual DimensionHandle decodeDimensionHandle (
2376 virtual MessageRetractionHandle decodeMessageRetractionHandle (
2385 virtual RegionHandle decodeRegionHandle (
std::set< DimensionHandle > DimensionHandleSet
Definition: Typedefs.h:33
Definition: LogicalTime.h:30
std::set< AttributeHandle > AttributeHandleSet
Definition: Typedefs.h:29
#define RTI_EXPORT
Definition: SpecificConfig.h:45
OrderType
Definition: Enums.h:28
Definition: Typedefs.h:62
Definition: LogicalTimeFactory.h:40
ServiceGroup
Definition: Enums.h:81
CallbackModel
Definition: Enums.h:22
std::vector< AttributeHandleSetRegionHandleSetPair > AttributeHandleSetRegionHandleSetPairVector
Definition: Typedefs.h:52
Definition: RTIambassador.h:33
Definition: RangeBounds.h:15
This file contains the standard RTI types that are defined in namespace rti1516.
An abstract base class which must be implemented, and used by a federate.
Definition: FederateAmbassador.h:26
std::set< InteractionClassHandle > InteractionClassHandleSet
Definition: Typedefs.h:30
std::map< AttributeHandle, VariableLengthData > AttributeHandleValueMap
Definition: Typedefs.h:39
Definition: Credentials.h:17
This file contains definitions that are used to isolate platform-specific elements of the API...
Definition: RtiConfiguration.h:17
Definition: VariableLengthData.h:28
Definition: LogicalTimeInterval.h:30
std::map< ParameterHandle, VariableLengthData > ParameterHandleValueMap
Definition: Typedefs.h:44
ResignAction
Definition: Enums.h:34
std::set< FederateHandle > FederateHandleSet
Definition: Typedefs.h:32
std::set< RegionHandle > RegionHandleSet
Definition: Typedefs.h:34