Firmware
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vmount::OutputBase Class Referenceabstract

class OutputBase Base class for all driver output classes More...

#include <output.h>

Inheritance diagram for vmount::OutputBase:
vmount::OutputMavlink vmount::OutputRC

Public Member Functions

 OutputBase (const OutputConfig &output_config)
 
virtual int initialize ()
 
virtual int update (const ControlData *control_data)=0
 Update the output. More...
 
virtual void print_status ()=0
 report status to stdout
 
void publish ()
 Publish _angle_outputs as a mount_orientation message. More...
 

Protected Member Functions

float _calculate_pitch (double lon, double lat, float altitude, const vehicle_global_position_s &global_position)
 
void _set_angle_setpoints (const ControlData *control_data)
 set angle setpoints, speeds & stabilize flags
 
void _handle_position_update (bool force_update=false)
 check if vehicle position changed and update the setpoint angles if in gps mode
 
void _calculate_output_angles (const hrt_abstime &t)
 calculate the _angle_outputs (with speed) and stabilize if needed
 
int _get_vehicle_attitude_sub () const
 

Protected Attributes

map_projection_reference_s _projection_reference = {}
 reference to convert (lon, lat) to local [m]
 
const OutputConfig_config
 
const ControlData_cur_control_data = nullptr
 
float _angle_setpoints [3] = { 0.f, 0.f, 0.f }
 [rad]
 
float _angle_speeds [3] = { 0.f, 0.f, 0.f }
 
bool _stabilize [3] = { false, false, false }
 
float _angle_outputs [3] = { 0.f, 0.f, 0.f }
 calculated output angles (roll, pitch, yaw) [rad]
 
hrt_abstime _last_update
 

Detailed Description

class OutputBase Base class for all driver output classes

Member Function Documentation

§ publish()

void vmount::OutputBase::publish ( )

Publish _angle_outputs as a mount_orientation message.

§ update()

virtual int vmount::OutputBase::update ( const ControlData control_data)
pure virtual

Update the output.

Parameters
datanew command if non null
Returns
0 on success, <0 otherwise

Implemented in vmount::OutputMavlink, and vmount::OutputRC.


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