.. _program_listing_file_include_requests.hpp: Program Listing for File requests.hpp ===================================== |exhale_lsh| :ref:`Return to documentation for file ` (``include/requests.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef RIG_RECONFIGURE_REQUESTS_HPP #define RIG_RECONFIGURE_REQUESTS_HPP #include #include #include #include "ros_parameter.hpp" struct Request { enum class Type { TERMINATE, QUERY_NODE_NAMES, QUERY_NODE_PARAMETERS, QUERY_PARAMETER_VALUES, MODIFY_PARAMETER_VALUE }; explicit Request(Type type_) : type(type_) {}; virtual ~Request() = default; Type type; }; using RequestPtr = std::shared_ptr; struct ParameterValueRequest : Request { explicit ParameterValueRequest(const std::vector ¶meterNames_) : Request(Type::QUERY_PARAMETER_VALUES), parameterNames(parameterNames_) {}; std::vector parameterNames; }; struct ParameterModificationRequest : Request { ParameterModificationRequest(ROSParameter updatedParameter_) : Request(Type::MODIFY_PARAMETER_VALUE), parameter(std::move(updatedParameter_)) {}; ROSParameter parameter; }; #endif // RIG_RECONFIGURE_REQUESTS_HPP