class ugcs::vsm::Vsm_command¶
Overview¶
#include <subsystem.h> class Vsm_command: public std::enable_shared_from_this< Vsm_command > { public: // typedefs typedef std::shared_ptr<Vsm_command> Ptr; typedef std::weak_ptr<Vsm_command> Weak_ptr; // construction Vsm_command( std::string name, bool in_mission ); // methods template <typename... Args> static Ptr Create(Args&&... args); Property::Ptr Add_parameter( std::string, proto::Field_semantic semantic = proto::FIELD_SEMANTIC_DEFAULT ); Property::Ptr Add_parameter( std::string name, Property::Value_type type ); void Register(proto::Register_command* command); void Set_capabilities(proto::Command_availability* msg); void Set_enabled(bool is_enabled = true); void Set_available(bool is_available = true); int Get_id(); bool Is_capability_state_dirty(); Property_list Build_parameter_list(const proto::Device_command& cmd); void Build_command( proto::Device_command* cmd, Property_list args = Property_list() ); std::string Get_name(); bool Is_mission_item(); };
Detailed Documentation¶
Typedefs¶
typedef std::shared_ptr<Vsm_command> Ptr
Pointer type.
typedef std::weak_ptr<Vsm_command> Weak_ptr
Pointer type.
Methods¶
template <typename... Args> static Ptr Create(Args&&... args)
Create an instance.