DUNE: Uniform Navigational Environment  2024.09.0
Sensors::AIS::Task Struct Reference

Public Member Functions

 Task (const std::string &name, Tasks::Context &ctx)
 
bool onConnect () override
 
void onInitializeDevice () override
 
void onDisconnect () override
 
void process (std::string nmea_msg)
 
bool onReadData () override
 

Public Attributes

IO::Handle * m_handle
 
Arguments m_args
 
std::string m_line
 
std::string m_nmea5_fg
 
bool m_nmea5_wait_fg
 
std::map< int, std::string > m_systems
 
std::vector< char > m_bfr
 

Constructor & Destructor Documentation

◆ Task()

Sensors::AIS::Task::Task ( const std::string &  name,
Tasks::Context &  ctx 
)
inline

Member Function Documentation

◆ onConnect()

bool Sensors::AIS::Task::onConnect ( void  )
inlineoverride

Try to connect to the device.

Returns
true if connection was established, false otherwise.

References Sensors::AIS::Arguments::io_dev.

◆ onDisconnect()

void Sensors::AIS::Task::onDisconnect ( void  )
inlineoverride

Disconnect from device.

◆ onInitializeDevice()

void Sensors::AIS::Task::onInitializeDevice ( void  )
inlineoverride

No initialization process.

◆ onReadData()

bool Sensors::AIS::Task::onReadData ( void  )
inlineoverride

Get data from device.

Returns
true if data was received, false otherwise.

◆ process()

void Sensors::AIS::Task::process ( std::string  nmea_msg)
inline

Process AIS NMEA message.

References Sensors::AIS::ShipTypeCode::translate().

Member Data Documentation

◆ m_args

Arguments Sensors::AIS::Task::m_args

Task arguments.

◆ m_bfr

std::vector<char> Sensors::AIS::Task::m_bfr

Buffer.

◆ m_handle

IO::Handle* Sensors::AIS::Task::m_handle

Serial port handle.

◆ m_line

std::string Sensors::AIS::Task::m_line

Current line.

◆ m_nmea5_fg

std::string Sensors::AIS::Task::m_nmea5_fg

Saved first part of NMEA 5 class message.

◆ m_nmea5_wait_fg

bool Sensors::AIS::Task::m_nmea5_wait_fg

Waiting fragment.

◆ m_systems

std::map<int, std::string> Sensors::AIS::Task::m_systems

Vehicle Type.

Collaboration diagram for Sensors::AIS::Task:
Collaboration graph