DUNE: Uniform Navigational Environment  2016.09.0
Maneuver::Multiplexer::YoYo Class Reference

Detailed Description

Yoyo maneuver.

Public Member Functions

 YoYo (Maneuvers::Maneuver *task, YoYoArgs *args)
 
 ~YoYo (void)
 
void onStart (const IMC::YoYo *maneuver)
 
void onPathControlState (const IMC::PathControlState *pcs)
 
void onEstimatedState (const IMC::EstimatedState *msg)
 
void onBrake (const IMC::Brake *msg)
 
void update (double depth, double alt, double theta)
 
- Public Member Functions inherited from Maneuver::Multiplexer::MuxedManeuver< IMC::YoYo, YoYoArgs >
 MuxedManeuver (Maneuvers::Maneuver *task, YoYoArgs *args)
 
 MuxedManeuver (Maneuvers::Maneuver *task)
 
virtual ~MuxedManeuver (void)
 
void start (const IMC::Maneuver *maneuver)
 
- Public Member Functions inherited from Maneuver::Multiplexer::AbstractMux
 AbstractMux (Maneuvers::Maneuver *task)
 
virtual ~AbstractMux (void)
 
virtual void onStateReport (void)
 
virtual void onVehicleMedium (const IMC::VehicleMedium *msg)
 
virtual void onGpsFix (const IMC::GpsFix *msg)
 

Additional Inherited Members

- Protected Attributes inherited from Maneuver::Multiplexer::MuxedManeuver< IMC::YoYo, YoYoArgs >
YoYoArgsm_args
 
- Protected Attributes inherited from Maneuver::Multiplexer::AbstractMux
Maneuvers::Maneuver * m_task
 

Constructor & Destructor Documentation

Maneuver::Multiplexer::YoYo::YoYo ( Maneuvers::Maneuver *  task,
YoYoArgs args 
)
inline

Default constructor.

Parameters
[in]taskpointer to Maneuver task
[in]argsyoyo arguments
Maneuver::Multiplexer::YoYo::~YoYo ( void  )
inline

Destructor.

Member Function Documentation

void Maneuver::Multiplexer::YoYo::onBrake ( const IMC::Brake *  msg)
inlinevirtual

On Brake message.

Reimplemented from Maneuver::Multiplexer::AbstractMux.

References DUNE::Control::YoYoMotion::startedBraking().

void Maneuver::Multiplexer::YoYo::onEstimatedState ( const IMC::EstimatedState *  msg)
inlinevirtual

On EstimatedState message.

Parameters
[in]msgEstimatedState message

Reimplemented from Maneuver::Multiplexer::AbstractMux.

References Maneuver::Multiplexer::AbstractMux::m_task, and update().

void Maneuver::Multiplexer::YoYo::onPathControlState ( const IMC::PathControlState *  pcs)
inlinevirtual
void Maneuver::Multiplexer::YoYo::onStart ( const IMC::YoYo *  maneuver)
inlinevirtual
void Maneuver::Multiplexer::YoYo::update ( double  depth,
double  alt,
double  theta 
)
inline

update the maneuver with a depth or altitude value a negative value will be interpreted as an altitude

Parameters
[in]depthcurrent depth position
[in]altcurrent altitude position
[in]thetacurrent pitch angle

References Maneuver::Multiplexer::AbstractMux::m_task, DUNE::Control::YoYoMotion::stabilize(), and DUNE::Control::YoYoMotion::update().

Referenced by onEstimatedState().

Collaboration diagram for Maneuver::Multiplexer::YoYo:
Collaboration graph