Addressing
The SAE JAUS standard does not define a mechanism for assigning the Subsystem, Node, and Components IDs that constitute a JAUS Address1. As such, the most common approach is to statically assign these IDs in code or using configuration files.
IOP has attempted to address this shortcoming by defining a set of additional optional services that can be used to dynamically assign these IDs. The relevant IOP attributes are:
- Centralized Subsystem Assignment
- Subsystem ID Propagation
- Dynamic Node ID Assignment
The OpenJAUS SDK provides support for these IOP mechanisms as part of the org.openjaus.iop-*.cpp
packages. When support is enabled in a Component, functionality is configured via the OpenJAUS configuration file.
To enable support, instantiate the iop_v6::AddressProvider
and attach it to the Component using the setAddressProvider
method.
Note
The AddressProvider
class and setAddressProvider
method replaces the use of the IOP specific Component base classes (IopBase
, IopEventsBase
, and IopManaged
).
Unsure how to create a Component? See the Tutorial.