VSM C++ SDK
Vehicle Specific Modules SDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ugcs::vsm::Subsystem Class Reference
Inheritance diagram for ugcs::vsm::Subsystem:

Public Types

typedef std::shared_ptr
< Subsystem
Ptr
 Pointer type.
 
typedef std::weak_ptr< SubsystemWeak_ptr
 Pointer type.
 

Public Member Functions

 Subsystem (proto::Subsystem_type)
 
 Subsystem (const Subsystem &)=delete
 Disable copying. More...
 
template<typename Type >
Property::Ptr Set_property (const std::string &name, Type value, proto::Field_semantic semantic=proto::FIELD_SEMANTIC_DEFAULT)
 
Property::Ptr Add_telemetry (const std::string &name, ugcs::vsm::proto::Field_semantic sem=ugcs::vsm::proto::FIELD_SEMANTIC_DEFAULT, uint32_t timeout=0)
 
Property::Ptr Add_telemetry (const std::string &name, Property::Value_type type, uint32_t timeout=0)
 
void Remove_telemetry (Property::Ptr &t_field)
 
Vsm_command::Ptr Add_command (const std::string &name, bool in_mission)
 
void Register (ugcs::vsm::proto::Register_subsystem *msg)
 

Static Public Member Functions

template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 

Public Attributes

proto::Subsystem_type type
 
std::unordered_map
< std::string, Property::Ptr
properties
 
std::vector< Property::Ptrtelemetry_fields
 
std::unordered_map< int,
Vsm_command::Ptr
commands
 
std::vector< Subsystem::Ptrsubsystems
 

Constructor & Destructor Documentation

ugcs::vsm::Subsystem::Subsystem ( const Subsystem )
delete

Disable copying.

Member Function Documentation

template<typename... Args>
static Ptr ugcs::vsm::Subsystem::Create ( Args &&...  args)
inlinestatic

Create an instance.


The documentation for this class was generated from the following file: