MATLAB interface to HLA
Federate common interactions with the Run Time Infrastructure (RTI) can easily be implemented using the graphical user interface (hlaGUI) to generate the required m-files. The hlaGUI also provide an organized tree structure for Federation Object Model (FOM) visualization used to identify the Attributes and Interactions your federate will publish and/or subscribe. The m-code generated by the HLA Toolbox™ interface can be customized to implement the specifics of your model using any of the RTI services.
The HLA Toolbox™ accelerates federation implementation and enables the use of MATLAB® and its Toolboxes at the federate development level. MATLAB® development features such as the debugger, the profiler, M-Lint code checker, the Graphical User Interface Development Environment (GUIDE), the visualization tools (2D & 3D) and all the data analysis capabilities are just a few of the advantages you get by developing your HLA federates in MATLAB.
Compatibility
- HLA 1.3, IEEE 1516 and IEEE 1516-2010 (Evolved)
- HLA 1.3 RTI with Dynamic Link Compatible (DLC) API.
- IEEE 1516 standard compliant RTI’s like pRTI1516 and MAK RTI.
- MATLAB R2008a and above.
- HLA federates developed with the HLA Toolbox are fully compliant with the HLA standard, therefore it is compatible with any other HLA software or tools meeting the same standard.
- ForwardSim can compile a version of the HLA Toolbox for your own RTI.
Function list
Here is an exhaustive list of the HLA Toolbox™ functions by service group.
hlaCreateFederate
hlaDecode
hlaDestroy
hlaEncode
hlaErrorMsg
hlaGUI
hlaInitialize
hlaRegisterToolbox
hlaRun
hlaVersion
destroyFederationExecution
federateRestoreComplete
federateRestoreNotComplete
federateSaveBegun
federateSaveComplete
federateSaveNotComplete
joinFederationExecution
registerFederationSynchronizationPoint
requestFederationRestore
requestFederationSave
resignFederationExecution
synchronizationPointAchieved
queryFederationSaveStatus
queryFederationRestoreStatus
subscribeInteractionClass
subscribeObjectClassAttributes
unpublishInteractionClass
unpublishObjectClass
unsubscribeInteractionClass
unsubscribeObjectClass
publishObjectClass
publishObjectClassAttributes
unpublishObjectClassAttributes
unsubscribeObjectClassAttributes
changeInteractionTransportationType
deleteObjectInstance
localDeleteObjectInstance
updateAttributeValues
sendInteraction
registerObjectInstance
requestClassAttributeValueUpdate
requestObjectAttributeValueUpdate
reserveObjectInstanceName
requestAttributeValueUpdate
ObjectInstanceHandle
negotiatedAttributeOwnershipDivestiture
attributeOwnershipAcquisition
attributeOwnershipAcquisitionIfAvailable
cancelNegotiatedAttributeOwnershipDivestiture
cancelAttributeOwnershipAcquisition
isAttributeOwnedByFederate
queryAttributeOwnership
attributeOwnershipReleaseResponse
confirmDivestiture
attributeOwnershipDivestitureIfWanted
changeInteractionOrderType
disableAsynchronousDelivery
disableTimeConstrained
disableTimeRegulation
enableAsynchronousDelivery
enableTimeConstrained
enableTimeRegulation
flushQueueRequest
modifyLookahead
queryLookahead
retract
timeAdvanceRequest
timeAdvanceRequestAvailable
nextEventRequest
nextEventRequestAvailable
queryFederateTime
queryLBTS
queryMinNextEventTime
nextMessageRequest
nextMessageRequestAvailable
queryGALT
queryLogicalTime
queryLITS
createRegion
registerObjectInstanceWithRegion
sendInteractionWithRegion
subscribeInteractionClassWithRegion
subscribeObjectClassAttributesWithRegion
unassociateRegionForUpdates
unsubscribeInteractionClassWithRegion
notifyAboutRegionModification
requestClassAttributeValueUpdateWithRegion
unsubscribeObjectClassWithRegion
commitRegionModifications
deleteRegion
unsubscribeObjectClassAttributesWithRegions
requestAttributeValueUpdateWithRegions
disableAttributeScopeAdvisorySwitch
disableInteractionRelevanceAdvisorySwitch
enableAttributeRelevanceAdvisorySwitch
enableAttributeScopeAdvisorySwitch
enableInteractionRelevanceAdvisorySwitch
getAttributeHandle
getAttributeName
getDimensionHandle
getInteractionClassHandle
getInteractionClassName
getObjectClassHandle
getObjectClassName
getObjectInstanceHandle
getObjectInstanceName
getParameterHandle
getParameterName
getTransportationName
disableClassRelevanceAdvisorySwitch
enableClassRelevanceAdvisorySwitch
getAttributeRoutingSpaceHandle
getDimensionHandles
getInteractionRoutingSpaceHandle
getObjectClass
getOrderingHandle
getOrderingName
getRoutingSpaceHandle
getRoutingSpaceName
getTransportationHandle
tick
getDimensionName
getDimensionUpperBound
getAvailableDimensionsForClassAttribute
getKnownObjectClassHandle
getAvailableDimensionsForInteractionClass
getTransportationType
getOrderType
getOrderName
enableObjectClassRelevanceAdvisorySwitch
disableObjectClassRelevanceAdvisorySwitch
getDimensionHandleSet
getRangeBounds
setRangeBounds
normalizeFederateHandle
normalizeServiceGroup
evokeCallback
evokeMultipleCallbacks
enableCallbacks
disableCallbacks
Videos