CommRaT 2.0.0
C++20 Real-Time Messaging Framework
Loading...
Searching...
No Matches
mailbox.hpp File Reference
#include "../platform/tims_wrapper.hpp"
#include "../messages.hpp"
#include "../messaging/message_registry.hpp"
#include "../messaging/message_id.hpp"
#include "../platform/threading.hpp"
#include <expected>
#include <optional>
#include <chrono>
#include <functional>
#include <concepts>
#include <span>
#include <queue>

Go to the source code of this file.

Classes

class  commrat::MailboxResult< T >
 
class  commrat::MailboxResult< void >
 
struct  commrat::RawReceivedMessage
 Raw received message with type info. More...
 
struct  commrat::MailboxConfig
 
class  commrat::Mailbox< MessageDefs >
 Strongly-typed mailbox for message-based communication. More...
 

Namespaces

namespace  commrat
 CommRaT - Modern C++ Real-Time Communication Framework.
 

Typedefs

using commrat::StandardMailbox = Mailbox< CommandMessage, StatusMessage, ErrorMessage, AckMessage, SensorMessage, RobotStateMessage >
 Standard mailbox with common message types.
 
template<typename... CustomTypes>
using commrat::CustomMailbox = Mailbox< CommandMessage, StatusMessage, ErrorMessage, AckMessage, CustomTypes... >
 Create a custom mailbox with standard types plus user types.
 

Enumerations

enum class  commrat::MailboxError {
  commrat::NotInitialized , commrat::InvalidMessage , commrat::Timeout , commrat::QueueFull ,
  commrat::QueueEmpty , commrat::SerializationError , commrat::NetworkError , commrat::InvalidDestination ,
  commrat::AlreadyRunning , commrat::NotRunning
}
 

Functions

constexpr const char * commrat::to_string (MailboxError error)