API: The Hardware Manager Manifest - ColoradoSchoolOfMines/interface_sdk GitHub Wiki
Related pages: Hardware Management
The hardware manager manifest provides a configuration-driven approach for the HardwareManager to understand the scope of the functionalities and drivers that are be supported. One critical aspect to understand is that the end-developer will not be modifying this file. As this file contains information such as where to look for drivers, contributors, such as those who implement additional driver supports, will be the ones modifying this file.
To see the manifest that is currently being used by the system, take a look here.
The basic format for the file looks similar to:
<manifest>
<functionalities>
<supports name="some_functionality"
interface="path.to.interface" />
</functionalities>
<devices>
<device name="some_device"
driver="path.to.driver">
<provides name="some_functionality" />
</device>
</devices>
</manifest>
The root tag for the manifest files. Has no attributes.
Stores all the supports
tags that indicate what functionalities we support. Has no attributes.
Provides the relationship between a support functionality name and the interface that will represent that functionality. This will later enforce a contract with a driver who supports this functionality.
Stores all the device
tags that indicate what devices are supports. Has no attributes.
Dictates the relationship between a device name and the driver class that will be used to retrieve the device data.
Allows us to say what functionalities a driver supports.
- name
- The functionality the device supports. This must match up with a support in the functionalities tag.