diff --git a/docs/design/autoware-interfaces/ad-api/features/interface.md b/docs/design/autoware-interfaces/ad-api/features/interface.md index c472bdd3737..0015d12b1d0 100644 --- a/docs/design/autoware-interfaces/ad-api/features/interface.md +++ b/docs/design/autoware-interfaces/ad-api/features/interface.md @@ -3,11 +3,14 @@ ## Related API - {{ link_ad_api('/api/interface/version') }} +- {{ link_ad_api('/api/interface/list') }} ## Description -This API provides the interface version of the set of AD APIs. +This feature provides information about AD API. +The interface version API indicates which release of the specification the implementation is based on. It follows [Semantic Versioning][semver] in order to provide an intuitive understanding of the changes between versions. +The Interface list API provides the support status of each API. diff --git a/docs/design/autoware-interfaces/ad-api/list/api/interface/list.md b/docs/design/autoware-interfaces/ad-api/list/api/interface/list.md new file mode 100644 index 00000000000..5c93a5384ce --- /dev/null +++ b/docs/design/autoware-interfaces/ad-api/list/api/interface/list.md @@ -0,0 +1,19 @@ +--- +title: /api/interface/list +status: not released +method: function call +type: + name: autoware_adapi_v1_msgs/srv/GetInterfaceList + res: + - name: status + text: response status + - name: apis.name + text: The name of the API. + - name: apis.available + text: The support status of the API. +--- + +{% extends 'design/autoware-interfaces/templates/autoware-interface.jinja2' %} +{% block description %} +Get the interface list. All interfaces for that version are listed, including unsupported ones. +{% endblock %} diff --git a/docs/design/autoware-interfaces/ad-api/list/index.md b/docs/design/autoware-interfaces/ad-api/list/index.md index 52ec9e13d82..efe79c4763e 100644 --- a/docs/design/autoware-interfaces/ad-api/list/index.md +++ b/docs/design/autoware-interfaces/ad-api/list/index.md @@ -6,6 +6,7 @@ | [/api/fail_safe/mrm_request/send](./api/fail_safe/mrm_request/send.md) | not released | function call | | [/api/fail_safe/mrm_state](./api/fail_safe/mrm_state.md) | v1.1.0 | notification | | [/api/fail_safe/rti_state](./api/fail_safe/rti_state.md) | not released | notification | +| [/api/interface/list](./api/interface/list.md) | not released | function call | | [/api/interface/version](./api/interface/version.md) | v1.0.0 | function call | | [/api/localization/initialization_state](./api/localization/initialization_state.md) | v1.0.0 | notification | | [/api/localization/initialize](./api/localization/initialize.md) | v1.0.0 | function call | diff --git a/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/InterfaceInfo.md b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/InterfaceInfo.md new file mode 100644 index 00000000000..64faf334db1 --- /dev/null +++ b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/InterfaceInfo.md @@ -0,0 +1,16 @@ +--- +# This file is generated by tools/autoware-interfaces/generate.py +title: autoware_adapi_v1_msgs/msg/InterfaceInfo +used: + - autoware_adapi_v1_msgs/srv/GetInterfaceList +--- + +{% extends 'design/autoware-interfaces/templates/autoware-data-type.jinja2' %} +{% block definition %} + +```txt +string name +bool available +``` + +{% endblock %} diff --git a/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/ResponseStatus.md b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/ResponseStatus.md index f93d251274c..26de52fc189 100644 --- a/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/ResponseStatus.md +++ b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/msg/ResponseStatus.md @@ -7,6 +7,7 @@ used: - autoware_adapi_v1_msgs/srv/ClearRoute - autoware_adapi_v1_msgs/srv/GetCooperationPolicies - autoware_adapi_v1_msgs/srv/GetDoorLayout + - autoware_adapi_v1_msgs/srv/GetInterfaceList - autoware_adapi_v1_msgs/srv/GetVehicleDimensions - autoware_adapi_v1_msgs/srv/GetVehicleSpecs - autoware_adapi_v1_msgs/srv/InitializeLocalization diff --git a/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/srv/GetInterfaceList.md b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/srv/GetInterfaceList.md new file mode 100644 index 00000000000..784b408cb79 --- /dev/null +++ b/docs/design/autoware-interfaces/ad-api/types/autoware_adapi_v1_msgs/srv/GetInterfaceList.md @@ -0,0 +1,18 @@ +--- +# This file is generated by tools/autoware-interfaces/generate.py +title: autoware_adapi_v1_msgs/srv/GetInterfaceList +uses: + - autoware_adapi_v1_msgs/msg/InterfaceInfo + - autoware_adapi_v1_msgs/msg/ResponseStatus +--- + +{% extends 'design/autoware-interfaces/templates/autoware-data-type.jinja2' %} +{% block definition %} + +```txt +--- +autoware_adapi_v1_msgs/ResponseStatus status +autoware_adapi_v1_msgs/InterfaceInfo[] apis +``` + +{% endblock %} diff --git a/docs/design/autoware-interfaces/ad-api/types/index.md b/docs/design/autoware-interfaces/ad-api/types/index.md index 0943f687cca..4fef8d207d5 100644 --- a/docs/design/autoware-interfaces/ad-api/types/index.md +++ b/docs/design/autoware-interfaces/ad-api/types/index.md @@ -23,6 +23,7 @@ - [autoware_adapi_v1_msgs/msg/HazardLights](./autoware_adapi_v1_msgs/msg/HazardLights.md) - [autoware_adapi_v1_msgs/msg/HazardLightsCommand](./autoware_adapi_v1_msgs/msg/HazardLightsCommand.md) - [autoware_adapi_v1_msgs/msg/Heartbeat](./autoware_adapi_v1_msgs/msg/Heartbeat.md) +- [autoware_adapi_v1_msgs/msg/InterfaceInfo](./autoware_adapi_v1_msgs/msg/InterfaceInfo.md) - [autoware_adapi_v1_msgs/msg/LocalizationInitializationState](./autoware_adapi_v1_msgs/msg/LocalizationInitializationState.md) - [autoware_adapi_v1_msgs/msg/ManualControlMode](./autoware_adapi_v1_msgs/msg/ManualControlMode.md) - [autoware_adapi_v1_msgs/msg/ManualControlModeStatus](./autoware_adapi_v1_msgs/msg/ManualControlModeStatus.md) @@ -60,6 +61,7 @@ - [autoware_adapi_v1_msgs/srv/ClearRoute](./autoware_adapi_v1_msgs/srv/ClearRoute.md) - [autoware_adapi_v1_msgs/srv/GetCooperationPolicies](./autoware_adapi_v1_msgs/srv/GetCooperationPolicies.md) - [autoware_adapi_v1_msgs/srv/GetDoorLayout](./autoware_adapi_v1_msgs/srv/GetDoorLayout.md) +- [autoware_adapi_v1_msgs/srv/GetInterfaceList](./autoware_adapi_v1_msgs/srv/GetInterfaceList.md) - [autoware_adapi_v1_msgs/srv/GetVehicleDimensions](./autoware_adapi_v1_msgs/srv/GetVehicleDimensions.md) - [autoware_adapi_v1_msgs/srv/GetVehicleSpecs](./autoware_adapi_v1_msgs/srv/GetVehicleSpecs.md) - [autoware_adapi_v1_msgs/srv/InitializeLocalization](./autoware_adapi_v1_msgs/srv/InitializeLocalization.md) diff --git a/yaml/autoware-interfaces.yaml b/yaml/autoware-interfaces.yaml index 97335c22847..a65eecf8730 100644 --- a/yaml/autoware-interfaces.yaml +++ b/yaml/autoware-interfaces.yaml @@ -97,6 +97,10 @@ types: msg: seq: uint16 stamp: builtin_interfaces/msg/Time + autoware_adapi_v1_msgs/msg/InterfaceInfo: + msg: + available: bool + name: string autoware_adapi_v1_msgs/msg/LocalizationInitializationState: msg: stamp: builtin_interfaces/msg/Time @@ -274,6 +278,10 @@ types: res: doors: autoware_adapi_v1_msgs/msg/DoorLayout[] status: autoware_adapi_v1_msgs/msg/ResponseStatus + autoware_adapi_v1_msgs/srv/GetInterfaceList: + res: + apis: autoware_adapi_v1_msgs/msg/InterfaceInfo[] + status: autoware_adapi_v1_msgs/msg/ResponseStatus autoware_adapi_v1_msgs/srv/GetVehicleDimensions: res: dimensions: autoware_adapi_v1_msgs/msg/VehicleDimensions