DUNE: Uniform Navigational Environment  2019.02.0
Maneuver::Multiplexer::Loiter Class Reference

Detailed Description

Loiter maneuver.

Public Types

enum  LoiterTypes { LTYPE_CIRCULAR, LTYPE_FIGURE_EIGHT }
 

Public Member Functions

 Loiter (Maneuvers::Maneuver *task, LoiterArgs *args)
 
 ~Loiter (void)
 
LoiterTypes getType (IMC::Loiter::LoiterTypeEnum type)
 
void onStart (const IMC::Loiter *maneuver)
 
void onPathControlState (const IMC::PathControlState *pcs)
 
void onEstimatedState (const IMC::EstimatedState *msg)
 
- Public Member Functions inherited from Maneuver::Multiplexer::MuxedManeuver< IMC::Loiter, LoiterArgs >
 MuxedManeuver (Maneuvers::Maneuver *task, LoiterArgs *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 onBrake (const IMC::Brake *msg)
 
virtual void onStateReport (void)
 
virtual void onVehicleMedium (const IMC::VehicleMedium *msg)
 
virtual void onThrottle (const IMC::Throttle *msg)
 
virtual void onGpsFix (const IMC::GpsFix *msg)
 

Additional Inherited Members

- Protected Attributes inherited from Maneuver::Multiplexer::MuxedManeuver< IMC::Loiter, LoiterArgs >
LoiterArgsm_args
 
- Protected Attributes inherited from Maneuver::Multiplexer::AbstractMux
Maneuvers::Maneuver * m_task
 

Member Enumeration Documentation

Supported loiter types.

Enumerator
LTYPE_CIRCULAR 

Circular loiter.

LTYPE_FIGURE_EIGHT 

Figure eight loiter.

Constructor & Destructor Documentation

Maneuver::Multiplexer::Loiter::Loiter ( Maneuvers::Maneuver *  task,
LoiterArgs args 
)
inline

Default constructor.

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

Destructor.

Member Function Documentation

LoiterTypes Maneuver::Multiplexer::Loiter::getType ( IMC::Loiter::LoiterTypeEnum  type)
inline

Get supported loiter type to perform.

Parameters
[in]typeloiter type to perform from maneuver message
Returns
supported type of loiter that will be performed

References LTYPE_CIRCULAR, LTYPE_FIGURE_EIGHT, and Maneuver::Multiplexer::AbstractMux::m_task.

Referenced by onStart().

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

On EstimatedState message.

Parameters
[in]msgpointer to EstimatedState message

Reimplemented from Maneuver::Multiplexer::AbstractMux.

void Maneuver::Multiplexer::Loiter::onPathControlState ( const IMC::PathControlState *  pcs)
inlinevirtual

On PathControlState message.

Parameters
[in]pcspointer to PathControlState message

Reimplemented from Maneuver::Multiplexer::AbstractMux.

References Maneuver::Multiplexer::AbstractMux::m_task.

void Maneuver::Multiplexer::Loiter::onStart ( const IMC::Loiter *  maneuver)
inlinevirtual
Collaboration diagram for Maneuver::Multiplexer::Loiter:
Collaboration graph