VSM C++ SDK
Vehicle Specific Modules SDK
ugcs::vsm::Takeoff_action Class Reference

Take off from the specified position and reach specified altitude. More...

#include <takeoff_action.h>

Inheritance diagram for ugcs::vsm::Takeoff_action:
ugcs::vsm::Action

Public Types

typedef std::shared_ptr< Takeoff_actionPtr
 Pointer type.
 
typedef std::weak_ptr< Takeoff_actionWeak_ptr
 Pointer type.
 
- Public Types inherited from ugcs::vsm::Action
enum  Type {
  Type::MOVE, Type::WAIT, Type::PAYLOAD_STEERING, Type::TAKEOFF,
  Type::LANDING, Type::CHANGE_SPEED, Type::SET_HOME, Type::POI,
  Type::HEADING, Type::CAMERA_CONTROL, Type::CAMERA_TRIGGER, Type::PANORAMA,
  Type::TASK_ATTRIBUTES, Type::CAMERA_SERIES_BY_TIME, Type::CAMERA_SERIES_BY_DISTANCE, Type::SET_PARAMETER,
  Type::SET_SERVO, Type::REPEAT_SERVO
}
 Types of vehicle actions as part of task (mission). More...
 
typedef std::shared_ptr< ActionPtr
 Pointer type.
 
typedef std::weak_ptr< ActionWeak_ptr
 Pointer type.
 
typedef ugcs::vsm::Param_exception< Format_exception_dummy_struct,> Format_exception
 

Public Member Functions

 Takeoff_action (Wgs84_position position, double heading, double elevation, double climb_rate, double acceptance_radius)
 Construct take-off action explicitly. More...
 
 Takeoff_action (const mavlink::ugcs::Pld_mission_item_ex &item, Optional< double > &takeoff_altitude)
 Construct take-off action from Mavlink extended mission item. More...
 
 Takeoff_action (const Property_list &p)
 Construct move action from protobuf command.
 
- Public Member Functions inherited from ugcs::vsm::Action
 Action (Type type)
 Construct action of specific type. More...
 
virtual ~Action ()
 Make sure Action is polymorphic. More...
 
Type Get_type () const
 Get action type. More...
 
void Set_id (int id)
 
std::string Get_name ()
 Get human readable name of the action. More...
 
template<Type type_val>
Mapper< type_val >::type::Ptr Get_action ()
 Get pointer to specific action as determined by Get_type. More...
 

Static Public Member Functions

template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 
- Static Public Member Functions inherited from ugcs::vsm::Action
template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 

Public Attributes

Wgs84_position position
 Take-off position. More...
 
double heading
 Heading in radians. More...
 
double elevation
 Terrain height in meters underneath the position. More...
 
double climb_rate
 Climbing rate, in meters per second. More...
 
double acceptance_radius
 Acceptance radius of the position. More...
 
- Public Attributes inherited from ugcs::vsm::Action
int command_id = -1
 

Detailed Description

Take off from the specified position and reach specified altitude.

Constructor & Destructor Documentation

ugcs::vsm::Takeoff_action::Takeoff_action ( Wgs84_position  position,
double  heading,
double  elevation,
double  climb_rate,
double  acceptance_radius 
)
inline

Construct take-off action explicitly.

ugcs::vsm::Takeoff_action::Takeoff_action ( const mavlink::ugcs::Pld_mission_item_ex &  item,
Optional< double > &  takeoff_altitude 
)
inline

Construct take-off action from Mavlink extended mission item.

Parameters
itemWith command equal to mavlink::ugcs::MAV_CMD::MAV_CMD_NAV_TAKEOFF_EX

Member Function Documentation

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

Create an instance.

Member Data Documentation

double ugcs::vsm::Takeoff_action::acceptance_radius

Acceptance radius of the position.

Maximum distance at which the position is considered reached by the vehicle. Set in meters.

double ugcs::vsm::Takeoff_action::climb_rate

Climbing rate, in meters per second.

double ugcs::vsm::Takeoff_action::elevation

Terrain height in meters underneath the position.

double ugcs::vsm::Takeoff_action::heading

Heading in radians.

Wgs84_position ugcs::vsm::Takeoff_action::position

Take-off position.

After take-off, the vehicle should climb to the altitude defined in the position.


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