DUNE: Uniform Navigational Environment
2019.02.0
|
Public Member Functions | |
Task (const std::string &name, Tasks::Context &ctx) | |
void | onEntityReservation (void) |
void | onResourceAcquisition (void) |
void | onResourceInitialization (void) |
void | onResourceRelease (void) |
void | config_SADC (void) |
bool | check_connection_sadc (float c_timeout) |
void | process_feedback (void) |
bool | checkSerialPort (void) |
bool | processInput (double timeout, bool isData) |
bool | checkDataSADC (void) |
void | onMain (void) |
Public Member Functions inherited from DUNE::Tasks::Task | |
Task (const std::string &name, Context &context) | |
virtual | ~Task (void) |
const char * | getName (void) const |
const char * | getSystemName (void) const |
unsigned int | getSystemId (void) const |
unsigned int | getEntityId (void) const |
unsigned int | resolveEntity (const std::string &label) const |
std::string | resolveEntity (unsigned int id) const |
DebugLevel | getDebugLevel (void) const |
uint16_t | getActivationTime (void) const |
uint16_t | getDeactivationTime (void) const |
unsigned int | resolveSystemName (const std::string &name) const |
const char * | resolveSystemId (unsigned int id) const |
void | loadConfig (void) |
void | setPriority (unsigned int value) |
unsigned int | getPriority (void) const |
void | inf (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void | war (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void | err (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void void | cri (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void void void | debug (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void void void void | trace (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void void void void void | spew (const char *format,...) DUNE_PRINTF_FORMAT(2 |
void void void void void void void void | dispatch (IMC::Message *msg, unsigned int flags=0) |
void | dispatch (IMC::Message &msg, unsigned int flags=0) |
void | dispatchReply (const IMC::Message &original, IMC::Message &msg, unsigned int flags=0) |
void | receive (const IMC::Message *msg) |
void | reserveEntities (void) |
void | resolveEntities (void) |
void | acquireResources (void) |
void | releaseResources (void) |
void | initializeResources (void) |
void | updateParameters (bool act_deact=true) |
void | writeParamsXML (std::ostream &os) const |
const char * | getEntityLabel (void) const |
void | setEntityLabel (const std::string &label) |
Public Member Functions inherited from DUNE::Tasks::AbstractTask | |
AbstractTask (void) | |
virtual | ~AbstractTask (void) |
Public Member Functions inherited from DUNE::Concurrency::Thread | |
Thread (void) | |
virtual | ~Thread (void) |
int | getProcessorUsage (void) |
Public Member Functions inherited from DUNE::Concurrency::Runnable | |
Runnable (void) | |
virtual | ~Runnable (void) |
void | start (void) |
void | stop (void) |
void | join (void) |
void | stopAndJoin (void) |
void | setPriority (Scheduler::Policy policy, unsigned priority) |
unsigned | getPriority (void) |
State | getState (void) |
bool | isCreated (void) |
bool | isStopping (void) |
bool | isRunning (void) |
bool | isStarting (void) |
bool | isDead (void) |
Public Attributes | |
IMC::SadcReadings | m_sadc |
IMC::Voltage | m_volt [c_max_adc] |
Arguments | m_args |
SerialPort * | m_uart |
Poll | m_poll |
double | m_tstamp |
DriverSADC * | m_driver |
uint8_t | m_buffer [c_max_buffer] |
bool | m_is_correct_conf |
float | m_voltage_value |
Additional Inherited Members | |
Public Types inherited from DUNE::Concurrency::Runnable | |
enum | State { StateStarting, StateRunning, StateStopping, StateDead, StateUnknown } |
Protected Member Functions inherited from DUNE::Tasks::Task | |
void | setEntityState (IMC::EntityState::StateEnum state, Status::Code code) |
void | setEntityState (IMC::EntityState::StateEnum state, const std::string &description) |
IMC::EntityState::StateEnum | getEntityState (void) const |
unsigned int | reserveEntity (const std::string &label) |
template<typename E > | |
E * | reserveEntity (const std::string &label) |
Entities::BasicEntity * | getLocalEntity (const std::string &label) |
bool | stopping (void) |
bool | isActive (void) const |
bool | isActivating (void) const |
bool | isDeactivating (void) const |
void | waitForMessages (double timeout) |
void | consumeMessages (void) |
template<typename T > | |
Parameter & | param (const std::string &name, T &var) |
template<typename Y , typename T > | |
Parameter & | param (const std::string &name, T &var) |
template<typename T > | |
bool | paramChanged (T &var) |
void | paramActive (Parameter::Scope def_scope, Parameter::Visibility def_visibility, bool def_value=false) |
void | setParamSectionEditor (const std::string &name) |
template<typename M , typename T > | |
void | bind (T *task_obj, void(T::*consumer)(const M *)=&T::consume) |
template<typename T > | |
void | bind (T *task_obj, const std::vector< uint32_t > &list) |
template<typename T , typename M > | |
void | bind (T *task_obj, const std::vector< uint32_t > &list, void(T::*consumer)(const M *)=&T::consume) |
template<typename T > | |
void | bind (T *task_obj, const std::vector< std::string > &list) |
void | requestActivation (void) |
void | requestDeactivation (void) |
void | activate (void) |
void | activationFailed (const std::string &reason) |
void | deactivate (void) |
void | deactivationFailed (const std::string &reason) |
virtual bool | onWriteParamsXML (std::ostream &os) const |
virtual void | onEntityResolution (void) |
virtual void | onReportEntityState (void) |
virtual void | onUpdateParameters (void) |
virtual void | onRequestActivation (void) |
virtual void | onRequestDeactivation (void) |
virtual void | onActivation (void) |
virtual void | onDeactivation (void) |
virtual void | onQueryEntityParameters (const IMC::QueryEntityParameters *msg) |
virtual void | onSetEntityParameters (const IMC::SetEntityParameters *msg) |
virtual void | onPushEntityParameters (const IMC::PushEntityParameters *msg) |
virtual void | onPopEntityParameters (const IMC::PopEntityParameters *msg) |
Protected Member Functions inherited from DUNE::Concurrency::Thread | |
void | startImpl (void) |
void | stopImpl (void) |
void | joinImpl (void) |
void | setPriorityImpl (Scheduler::Policy policy, unsigned priority) |
unsigned | getPriorityImpl (void) |
Protected Attributes inherited from DUNE::Tasks::Task | |
Context & | m_ctx |
std::vector < Entities::BasicEntity * > | m_entities |
|
inline |
Constructor.
[in] | name | task name. |
[in] | ctx | context. |
References Sensors::SADC::Arguments::adc_conversion_factor, Sensors::SADC::Arguments::adc_elabels, Sensors::SADC::Arguments::adc_fixed_gain, Sensors::SADC::Arguments::adc_fixed_gain_value, Sensors::SADC::Arguments::adc_state, DUNE::Tasks::Parameter::defaultValue(), m_args, Sensors::SADC::Arguments::max_value, DUNE::Tasks::Parameter::maximumValue(), Sensors::SADC::Arguments::min_value, DUNE::Tasks::Parameter::minimumValue(), Sensors::SADC::Arguments::number_sample_switch, DUNE::Tasks::Task::param(), Sensors::SADC::Arguments::sample_rate, Sensors::SADC::Arguments::timeout_uart, Sensors::SADC::Arguments::uart_baud, Sensors::SADC::Arguments::uart_dev, and DUNE::Tasks::Parameter::visibility().
|
inline |
Check connection to sadc board.
References Sensors::SADC::DriverSADC::disable_output(), Sensors::SADC::DriverSADC::enable_output(), m_driver, m_uart, and processInput().
Referenced by onResourceInitialization().
|
inline |
References Sensors::SADC::Arguments::adc_state, DUNE::Tasks::Task::err(), m_args, m_uart, processInput(), DUNE::Tasks::Task::setEntityState(), and Sensors::SADC::Arguments::timeout_uart.
Referenced by onMain().
|
inline |
Read data send by SADC board.
References DUNE::Tasks::Task::err(), m_buffer, m_driver, m_poll, m_tstamp, m_uart, Sensors::SADC::DriverSADC::parse(), and DUNE::Tasks::Task::setEntityState().
Referenced by processInput().
|
inline |
Config board SADC.
References Sensors::SADC::Arguments::adc_fixed_gain, Sensors::SADC::Arguments::adc_fixed_gain_value, Sensors::SADC::Arguments::adc_state, Sensors::SADC::DriverSADC::disable_channel(), Sensors::SADC::DriverSADC::disable_output(), Sensors::SADC::DriverSADC::enable_auto_gain(), Sensors::SADC::DriverSADC::enable_channel(), Sensors::SADC::DriverSADC::enable_output(), DUNE::Tasks::Task::err(), Sensors::SADC::DriverSADC::fix_gain(), DUNE::Tasks::Task::inf(), m_args, m_driver, m_is_correct_conf, m_uart, Sensors::SADC::Arguments::max_value, Sensors::SADC::Arguments::min_value, Sensors::SADC::Arguments::number_sample_switch, process_feedback(), Sensors::SADC::Arguments::sample_rate, Sensors::SADC::DriverSADC::set_max_change_gain(), Sensors::SADC::DriverSADC::set_min_change_gain(), Sensors::SADC::DriverSADC::set_number_sample_sw(), and Sensors::SADC::DriverSADC::set_sample_ps().
Referenced by onResourceInitialization().
|
inlinevirtual |
Reserve entity identifiers.
Reimplemented from DUNE::Tasks::Task.
References Sensors::SADC::Arguments::adc_elabels, Sensors::SADC::Arguments::adc_state, m_args, m_volt, DUNE::Tasks::Task::reserveEntity(), and DUNE::Tasks::Task::resolveEntity().
|
inlinevirtual |
Main loop.
Implements DUNE::Tasks::Task.
References checkDataSADC(), DUNE::Tasks::Task::consumeMessages(), m_is_correct_conf, DUNE::Tasks::Task::setEntityState(), DUNE::Tasks::Task::stopping(), and DUNE::Tasks::Task::waitForMessages().
|
inlinevirtual |
Acquire resources.
Reimplemented from DUNE::Tasks::Task.
References m_args, m_uart, Sensors::SADC::Arguments::uart_baud, and Sensors::SADC::Arguments::uart_dev.
|
inlinevirtual |
Initialize resources.
Reimplemented from DUNE::Tasks::Task.
References check_connection_sadc(), config_SADC(), m_driver, m_is_correct_conf, m_poll, m_uart, and DUNE::Tasks::Task::setEntityState().
|
inlinevirtual |
Release resources.
Reimplemented from DUNE::Tasks::Task.
References Sensors::SADC::DriverSADC::disable_output(), Sensors::SADC::DriverSADC::enable_output(), m_driver, m_poll, and m_uart.
|
inline |
Check feadback of commands.
References m_args, m_is_correct_conf, processInput(), and Sensors::SADC::Arguments::timeout_uart.
Referenced by config_SADC().
|
inline |
References Sensors::SADC::Arguments::adc_conversion_factor, Sensors::SADC::DriverSADC::SADCState::channel, checkSerialPort(), DUNE::Tasks::Task::debug(), DUNE::Tasks::Task::dispatch(), DUNE::Tasks::Task::err(), Sensors::SADC::DriverSADC::SADCState::gain, DUNE::Tasks::Task::getSystemId(), m_args, m_driver, m_poll, m_sadc, Sensors::SADC::DriverSADC::m_sadc, m_tstamp, m_volt, m_voltage_value, Sensors::SADC::DriverSADC::translate(), Sensors::SADC::DriverSADC::translate_feadback(), and Sensors::SADC::DriverSADC::SADCState::value.
Referenced by check_connection_sadc(), checkDataSADC(), and process_feedback().
Arguments Sensors::SADC::Task::m_args |
Task arguments.
Referenced by checkDataSADC(), config_SADC(), onEntityReservation(), onResourceAcquisition(), process_feedback(), processInput(), and Task().
uint8_t Sensors::SADC::Task::m_buffer[c_max_buffer] |
Scratch buffer.
Referenced by checkSerialPort().
DriverSADC* Sensors::SADC::Task::m_driver |
Parser for message.
Referenced by check_connection_sadc(), checkSerialPort(), config_SADC(), onResourceInitialization(), onResourceRelease(), and processInput().
bool Sensors::SADC::Task::m_is_correct_conf |
Flag to check correct configuration of SADC.
Referenced by config_SADC(), onMain(), onResourceInitialization(), and process_feedback().
Poll Sensors::SADC::Task::m_poll |
I/O Multiplexer.
Referenced by checkSerialPort(), onResourceInitialization(), onResourceRelease(), and processInput().
IMC::SadcReadings Sensors::SADC::Task::m_sadc |
Rpm message.
Referenced by processInput().
double Sensors::SADC::Task::m_tstamp |
Read timestamp.
Referenced by checkSerialPort(), and processInput().
SerialPort* Sensors::SADC::Task::m_uart |
Serial port device.
Referenced by check_connection_sadc(), checkDataSADC(), checkSerialPort(), config_SADC(), onResourceAcquisition(), onResourceInitialization(), and onResourceRelease().
IMC::Voltage Sensors::SADC::Task::m_volt[c_max_adc] |
Voltage message.
Referenced by onEntityReservation(), and processInput().
float Sensors::SADC::Task::m_voltage_value |
Value of adc in voltage.
Referenced by processInput().