Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.
Path: blob/master/libraries/AP_DDS/AP_DDS_Service_Table.h
Views: 1798
#include "uxr/client/client.h"1#include <AP_DDS/AP_DDS_config.h>23enum class ServiceIndex: uint8_t {4#if AP_DDS_ARM_SERVER_ENABLED5ARMING_MOTORS,6#endif // #if AP_DDS_ARM_SERVER_ENABLED7#if AP_DDS_MODE_SWITCH_SERVER_ENABLED8MODE_SWITCH,9#endif // AP_DDS_MODE_SWITCH_SERVER_ENABLED10#if AP_DDS_ARM_CHECK_SERVER_ENABLED11PREARM_CHECK,12#endif // AP_DDS_ARM_CHECK_SERVER_ENABLED13#if AP_DDS_VTOL_TAKEOFF_SERVER_ENABLED14TAKEOFF,15#endif // AP_DDS_VTOL_TAKEOFF_SERVER_ENABLED16#if AP_DDS_PARAMETER_SERVER_ENABLED17SET_PARAMETERS,18GET_PARAMETERS19#endif // AP_DDS_PARAMETER_SERVER_ENABLED20};2122static inline constexpr uint8_t to_underlying(const ServiceIndex index)23{24static_assert(sizeof(index) == sizeof(uint8_t));25return static_cast<uint8_t>(index);26}2728constexpr struct AP_DDS_Client::Service_table AP_DDS_Client::services[] = {29#if AP_DDS_ARM_SERVER_ENABLED30{31.req_id = to_underlying(ServiceIndex::ARMING_MOTORS),32.rep_id = to_underlying(ServiceIndex::ARMING_MOTORS),33.service_rr = Service_rr::Replier,34.service_name = "rs/ap/arm_motorsService",35.request_type = "ardupilot_msgs::srv::dds_::ArmMotors_Request_",36.reply_type = "ardupilot_msgs::srv::dds_::ArmMotors_Response_",37.request_topic_name = "rq/ap/arm_motorsRequest",38.reply_topic_name = "rr/ap/arm_motorsReply",39.qos = {40.durability = UXR_DURABILITY_TRANSIENT_LOCAL,41.reliability = UXR_RELIABILITY_RELIABLE,42.history = UXR_HISTORY_KEEP_LAST,43.depth = 5,44},45},46#endif // AP_DDS_ARM_SERVER_ENABLED47#if AP_DDS_MODE_SWITCH_SERVER_ENABLED48{49.req_id = to_underlying(ServiceIndex::MODE_SWITCH),50.rep_id = to_underlying(ServiceIndex::MODE_SWITCH),51.service_rr = Service_rr::Replier,52.service_name = "rs/ap/mode_switchService",53.request_type = "ardupilot_msgs::srv::dds_::ModeSwitch_Request_",54.reply_type = "ardupilot_msgs::srv::dds_::ModeSwitch_Response_",55.request_topic_name = "rq/ap/mode_switchRequest",56.reply_topic_name = "rr/ap/mode_switchReply",57},58#endif // AP_DDS_MODE_SWITCH_SERVER_ENABLED59#if AP_DDS_ARM_CHECK_SERVER_ENABLED60{61.req_id = to_underlying(ServiceIndex::PREARM_CHECK),62.rep_id = to_underlying(ServiceIndex::PREARM_CHECK),63.service_rr = Service_rr::Replier,64.service_name = "rs/ap/prearm_checkService",65.request_type = "std_srvs::srv::dds_::Trigger_Request_",66.reply_type = "std_srvs::srv::dds_::Trigger_Response_",67.request_topic_name = "rq/ap/prearm_checkRequest",68.reply_topic_name = "rr/ap/prearm_checkReply",69},70#endif // AP_DDS_ARM_CHECK_SERVER_ENABLED71#if AP_DDS_VTOL_TAKEOFF_SERVER_ENABLED72{73.req_id = to_underlying(ServiceIndex::TAKEOFF),74.rep_id = to_underlying(ServiceIndex::TAKEOFF),75.service_rr = Service_rr::Replier,76.service_name = "rs/ap/experimental/takeoffService",77.request_type = "ardupilot_msgs::srv::dds_::Takeoff_Request_",78.reply_type = "ardupilot_msgs::srv::dds_::Takeoff_Response_",79.request_topic_name = "rq/ap/experimental/takeoffRequest",80.reply_topic_name = "rr/ap/experimental/takeoffReply",81},82#endif // AP_DDS_VTOL_TAKEOFF_SERVER_ENABLED83#if AP_DDS_PARAMETER_SERVER_ENABLED84{85.req_id = to_underlying(ServiceIndex::SET_PARAMETERS),86.rep_id = to_underlying(ServiceIndex::SET_PARAMETERS),87.service_rr = Service_rr::Replier,88.service_name = "rs/ap/set_parametersService",89.request_type = "rcl_interfaces::srv::dds_::SetParameters_Request_",90.reply_type = "rcl_interfaces::srv::dds_::SetParameters_Response_",91.request_topic_name = "rq/ap/set_parametersRequest",92.reply_topic_name = "rr/ap/set_parametersReply",93},94{95.req_id = to_underlying(ServiceIndex::GET_PARAMETERS),96.rep_id = to_underlying(ServiceIndex::GET_PARAMETERS),97.service_rr = Service_rr::Replier,98.service_name = "rs/ap/get_parameterService",99.request_type = "rcl_interfaces::srv::dds_::GetParameters_Request_",100.reply_type = "rcl_interfaces::srv::dds_::GetParameters_Response_",101.request_topic_name = "rq/ap/get_parametersRequest",102.reply_topic_name = "rr/ap/get_parametersReply",103},104#endif // AP_DDS_PARAMETER_SERVER_ENABLED105};106107108