DUNE: Uniform Navigational Environment
2019.02.0
|
Public Types | |
typedef std::map< uint32_t, uint8_t > | MultiplexMap |
Public Member Functions | |
Task (const std::string &name, Tasks::Context &ctx) | |
void | onUpdateParameters (void) |
void | onResourceInitialization (void) |
template<typename Type , typename Args > | |
AbstractMux * | create (Args *args) |
template<typename Type > | |
AbstractMux * | create (void) |
void | onResourceAcquisition (void) |
void | onResourceRelease (void) |
void | onEntityReservation (void) |
void | onManeuverDeactivation (void) |
void | changeEntity (void) |
void | consume (const IMC::Maneuver *maneuver) |
void | consume (const IMC::Brake *msg) |
void | consume (const IMC::EstimatedState *msg) |
void | consume (const IMC::GpsFix *msg) |
void | consume (const IMC::VehicleMedium *msg) |
void | consume (const IMC::Throttle *msg) |
void | onPathControlState (const IMC::PathControlState *pcs) |
void | onStateReport (void) |
Public Member Functions inherited from DUNE::IMC::Message | |
Message (void) | |
virtual | ~Message (void) |
virtual Message * | clone (void) const =0 |
virtual void | clear (void)=0 |
virtual int | validate (void) const =0 |
virtual const char * | getName (void) const =0 |
virtual uint16_t | getId (void) const =0 |
double | setTimeStamp (double ts) |
double | setTimeStamp (void) |
double | getTimeStamp (void) const |
uint16_t | getSource (void) const |
void | setSource (uint16_t src) |
uint8_t | getSourceEntity (void) const |
void | setSourceEntity (uint8_t src_ent) |
uint16_t | getDestination (void) const |
void | setDestination (uint16_t dst) |
uint8_t | getDestinationEntity (void) const |
void | setDestinationEntity (uint8_t dst_ent) |
virtual uint16_t | getSubId (void) const |
virtual void | setSubId (uint16_t subid) |
virtual fp64_t | getValueFP (void) const |
virtual void | setValueFP (fp64_t val) |
unsigned | getSerializationSize (void) const |
unsigned | getPayloadSerializationSize (void) const |
virtual unsigned | getFixedSerializationSize (void) const |
virtual unsigned | getVariableSerializationSize (void) const |
void | toJSON (std::ostream &os) const |
void | toText (std::ostream &os) const |
virtual uint8_t * | serializeFields (uint8_t *bfr) const =0 |
virtual uint16_t | deserializeFields (const uint8_t *bfr, uint16_t len)=0 |
virtual uint16_t | reverseDeserializeFields (const uint8_t *bfr, uint16_t len)=0 |
virtual void | fieldsToJSON (std::ostream &os, unsigned indent_level) const |
bool | operator== (const Message &other) const |
bool | operator!= (const Message &other) const |
Public Attributes | |
ManeuverType | m_type |
unsigned | m_ents [TYPE_TOTAL] |
std::vector< uint32_t > | m_supported |
MultiplexMap | m_map |
AbstractMux * | m_maneuvers [TYPE_TOTAL] |
Arguments | m_args |
Additional Inherited Members | |
Protected Member Functions inherited from DUNE::IMC::Message | |
virtual void | setTimeStampNested (double value) |
virtual void | setSourceNested (uint16_t value) |
virtual void | setSourceEntityNested (uint8_t value) |
virtual void | setDestinationNested (uint16_t value) |
virtual void | setDestinationEntityNested (uint8_t value) |
virtual bool | fieldsEqual (const Message &other) const |
Protected Attributes inherited from DUNE::IMC::Message | |
Header | m_header |
typedef std::map<uint32_t, uint8_t> Maneuver::Multiplexer::Task::MultiplexMap |
Map of message id to maneuver type.
|
inline |
References Maneuver::Multiplexer::DislodgeArgs::attempts, Maneuver::Multiplexer::DislodgeArgs::burst_time, Maneuver::Multiplexer::DislodgeArgs::bursts, Maneuver::Multiplexer::YoYoArgs::check_errors, Maneuver::Multiplexer::SampleArgs::closeValue, Maneuver::Multiplexer::DislodgeArgs::depth_threshold, Maneuver::Multiplexer::Arguments::dislodge, Maneuver::Multiplexer::Arguments::drop, Maneuver::Multiplexer::PopUpArgs::elev_radius, Maneuver::Multiplexer::Arguments::elevator, Maneuver::Multiplexer::DislodgeArgs::interval_time, Maneuver::Multiplexer::Arguments::labels, Maneuver::Multiplexer::Arguments::loiter, m_args, m_maneuvers, Maneuver::Multiplexer::YoYoArgs::max_depth, Maneuver::Multiplexer::PopUpArgs::max_sk_dist, Maneuver::Multiplexer::ScheduledArgs::max_speed, Maneuver::Multiplexer::SampleArgs::max_time, Maneuver::Multiplexer::YoYoArgs::min_alt, Maneuver::Multiplexer::PopUpArgs::min_distance, Maneuver::Multiplexer::DislodgeArgs::min_distance, Maneuver::Multiplexer::StationKeepingArgs::min_radius, Maneuver::Multiplexer::LoiterArgs::min_radius, Maneuver::Multiplexer::StationKeepingExtendedArgs::min_radius, Maneuver::Multiplexer::ElevatorArgs::min_radius, Maneuver::Multiplexer::PopUpArgs::min_sats, Maneuver::Multiplexer::ScheduledArgs::min_speed, Maneuver::Multiplexer::SampleArgs::openValue, Maneuver::Multiplexer::Arguments::popup, Maneuver::Multiplexer::ElevatorArgs::radius_tolerance, Maneuver::Multiplexer::PopUpArgs::report, Maneuver::Multiplexer::DislodgeArgs::safe_gap, Maneuver::Multiplexer::Arguments::sample, Maneuver::Multiplexer::Arguments::scheduled, Maneuver::Multiplexer::DropArgs::servoId, Maneuver::Multiplexer::DropArgs::servoValue, Maneuver::Multiplexer::Arguments::sk, Maneuver::Multiplexer::Arguments::skext, Maneuver::Multiplexer::SampleArgs::syringe0Id, Maneuver::Multiplexer::SampleArgs::syringe1Id, Maneuver::Multiplexer::SampleArgs::syringe2Id, Maneuver::Multiplexer::TYPE_TOTAL, Maneuver::Multiplexer::YoYoArgs::u_course, Maneuver::Multiplexer::YoYoArgs::u_ctrack, Maneuver::Multiplexer::Arguments::unsupported, Maneuver::Multiplexer::YoYoArgs::variation, Maneuver::Multiplexer::ElevatorArgs::vmonitor_speed, Maneuver::Multiplexer::ElevatorArgs::vmonitor_timeout, and Maneuver::Multiplexer::Arguments::yoyo.
|
inline |
|
inline |
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onBrake().
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onEstimatedState().
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onGpsFix().
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onVehicleMedium().
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onThrottle().
|
inline |
|
inline |
|
inline |
References Maneuver::Multiplexer::Arguments::labels, m_args, m_ents, and Maneuver::Multiplexer::TYPE_TOTAL.
|
inline |
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onPathControlState().
|
inline |
References Maneuver::Multiplexer::Arguments::dislodge, Maneuver::Multiplexer::Arguments::drop, Maneuver::Multiplexer::Arguments::elevator, Maneuver::Multiplexer::Arguments::loiter, m_args, m_maneuvers, Maneuver::Multiplexer::Arguments::popup, Maneuver::Multiplexer::Arguments::sample, Maneuver::Multiplexer::Arguments::scheduled, Maneuver::Multiplexer::Arguments::sk, Maneuver::Multiplexer::Arguments::skext, Maneuver::Multiplexer::TYPE_DISLODGE, Maneuver::Multiplexer::TYPE_DROP, Maneuver::Multiplexer::TYPE_ELEVATOR, Maneuver::Multiplexer::TYPE_FOLLOWPATH, Maneuver::Multiplexer::TYPE_GOTO, Maneuver::Multiplexer::TYPE_IDLE, Maneuver::Multiplexer::TYPE_LAND, Maneuver::Multiplexer::TYPE_LAUNCH, Maneuver::Multiplexer::TYPE_LOITER, Maneuver::Multiplexer::TYPE_POPUP, Maneuver::Multiplexer::TYPE_ROWS, Maneuver::Multiplexer::TYPE_SAMPLE, Maneuver::Multiplexer::TYPE_SCHEDULEDGOTO, Maneuver::Multiplexer::TYPE_SKEEP, Maneuver::Multiplexer::TYPE_SKEEPEXT, Maneuver::Multiplexer::TYPE_TAKEOFF, Maneuver::Multiplexer::TYPE_YOYO, and Maneuver::Multiplexer::Arguments::yoyo.
|
inline |
References m_supported.
|
inline |
References m_maneuvers, and Maneuver::Multiplexer::TYPE_TOTAL.
|
inline |
References m_maneuvers, m_type, and Maneuver::Multiplexer::AbstractMux::onStateReport().
|
inline |
Arguments Maneuver::Multiplexer::Task::m_args |
Task arguments.
Referenced by onEntityReservation(), onResourceAcquisition(), onUpdateParameters(), and Task().
unsigned Maneuver::Multiplexer::Task::m_ents[TYPE_TOTAL] |
Array of entity ids.
Referenced by changeEntity(), and onEntityReservation().
AbstractMux* Maneuver::Multiplexer::Task::m_maneuvers[TYPE_TOTAL] |
Array of AbstractMuxes.
Referenced by consume(), onPathControlState(), onResourceAcquisition(), onResourceRelease(), onStateReport(), and Task().
MultiplexMap Maneuver::Multiplexer::Task::m_map |
Referenced by consume(), and onUpdateParameters().
std::vector<uint32_t> Maneuver::Multiplexer::Task::m_supported |
Vector of supported maneuver IDs.
Referenced by onResourceInitialization(), and onUpdateParameters().
ManeuverType Maneuver::Multiplexer::Task::m_type |
Type of maneuver to perform.
Referenced by changeEntity(), consume(), onPathControlState(), and onStateReport().