DUNE: Uniform Navigational Environment
2.4.2
|
Extension to the IMC protocol used to report a set of device positions.
Public Member Functions | |
int | serialize (uint8_t *buffer) |
int | deserialize (uint8_t *data, uint16_t len) |
DeviceUpdate () | |
~DeviceUpdate () | |
Public Member Functions inherited from DUNE::IMC::IridiumMessage | |
virtual | ~IridiumMessage () |
Public Attributes | |
std::vector< DevicePosition > | positions |
Public Attributes inherited from DUNE::IMC::IridiumMessage | |
uint16_t | source |
uint16_t | destination |
uint16_t | msg_id |
Additional Inherited Members | |
Static Public Member Functions inherited from DUNE::IMC::IridiumMessage | |
static IridiumMessage * | deserialize (const DUNE::IMC::IridiumMsgRx *msg) |
DUNE::IMC::DeviceUpdate::DeviceUpdate | ( | ) |
References DUNE::IMC::IridiumMessage::msg_id.
|
inline |
|
virtual |
Deserialize an Iridium data buffer.
Implements DUNE::IMC::IridiumMessage.
References DUNE::IMC::deserialize(), DUNE::IMC::IridiumMessage::destination, DUNE::IMC::DevicePosition::id, DUNE::IMC::DevicePosition::lat, DUNE::IMC::DevicePosition::lon, DUNE::IMC::IridiumMessage::msg_id, positions, DUNE::Math::Angles::radians(), DUNE::IMC::IridiumMessage::source, and DUNE::IMC::DevicePosition::time.
Referenced by DUNE::IMC::IridiumMessage::deserialize().
|
virtual |
Serialize this message into a data buffer (to be sent via Iridium)
Implements DUNE::IMC::IridiumMessage.
References DUNE::Math::Angles::degrees(), DUNE::IMC::IridiumMessage::destination, DUNE::IMC::IridiumMessage::msg_id, positions, DUNE::Math::round(), DUNE::IMC::serialize(), and DUNE::IMC::IridiumMessage::source.
Referenced by Transports::Iridium::Task::send_device_updates().
std::vector<DevicePosition> DUNE::IMC::DeviceUpdate::positions |
Referenced by deserialize(), Transports::Iridium::Task::send_device_updates(), and serialize().