#include <atomic>
#include <condition_variable>
#include <deque>
#include <functional>
#include <map>
#include <mutex>
#include <optional>
#include <utility/BufferStream.hh>
#include <wire/Protocol.hh>
#include <wire/AckMessage.hh>
#include "details/legacy/storage.hh"
Go to the source code of this file.
Classes | |
struct | multisense::legacy::MessageAssembler::InternalMessage |
An internal message object used to track how many bytes were written to a data buffer. More... | |
class | multisense::legacy::MessageAssembler |
Process incoming network data, and try the data into valid MultiSense Wire messages. More... | |
class | multisense::legacy::MessageCondition |
A condition object which can be used to wait on messages from the stream. More... | |
struct | multisense::legacy::MessageStatistics |
Namespaces | |
multisense | |
multisense::legacy | |
Functions | |
template<typename T > | |
T | multisense::legacy::deserialize (const std::vector< uint8_t > &data) |
deserialize the raw bytes of a message. Note this does not account for the wire::Header which is transmitted as part of most messages More... | |
std::optional< uint32_t > | multisense::legacy::get_full_message_size (const std::vector< uint8_t > &raw_data) |
Get the size of the full message in bytes from a raw data buffer. More... | |
crl::multisense::details::wire::IdType | multisense::legacy::get_message_type (const std::vector< uint8_t > &raw_buffer) |
Get the message type of the message from the buffer over the wire. Note this does account for the wire::Header that is transmitted from the camera. More... | |
bool | multisense::legacy::header_valid (const std::vector< uint8_t > &raw_data) |
Validate the Multisense header. More... | |
template<typename T > | |
std::vector< uint8_t > | multisense::legacy::serialize (const T &message, uint16_t sequence_id, size_t mtu) |
Serialize a MultiSense Wire message for transmission. This adds the wire header to the message for transmission. More... | |
int64_t | multisense::legacy::unwrap_sequence_id (uint16_t current_wire_id, int32_t previous_wire_id, int64_t current_sequence_id) |
Unwrap a 16-bit wire sequence ID into a unique 64-bit local ID. More... | |
Copyright 2013-2025 Carnegie Robotics, LLC 4501 Hatfield Street, Pittsburgh, PA 15201 http://www.carnegierobotics.com
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL CARNEGIE ROBOTICS, LLC BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Significant history (date, user, job code, action): 2025-01-08, malva, IRAD, Created file. rado @carn egie robot ics. com
Definition in file message.hh.