Babel
Epitech's C++ VoIP project
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Babel::Message< T > Struct Template Reference

#include <Message.hpp>

Collaboration diagram for Babel::Message< T >:

Public Member Functions

size_t size () const
 Returns the message body size. More...
 
void reset ()
 Reset this message, this message will be totally empty. More...
 
 Message ()
 ctor More...
 
 Message (const Message< T > &m)=default
 copy ctor More...
 
 ~Message ()=default
 dtor More...
 
Messageoperator= (const Message< T > &)=default
 assignment ctor More...
 

Static Public Member Functions

template<typename DataType >
static Message< T > & GetBytes (Message< T > &msg, DataType &data, uint64_t size)
 Get size bytes from the message and put it in data, useful for strings (no compile time size) More...
 
static Message< T > & GetBytes (Message< T > &msg, std::string &data, uint64_t size)
 

Public Attributes

MessageHeader< T > header
 The message metadata. More...
 
std::vector< uint8_t > body
 The payload of the message look at the header to know it's size. More...
 

Constructor & Destructor Documentation

◆ Message() [1/2]

template<typename T >
Babel::Message< T >::Message
explicit

ctor

◆ Message() [2/2]

template<typename T >
Babel::Message< T >::Message ( const Message< T > &  m)
default

copy ctor

◆ ~Message()

template<typename T >
Babel::Message< T >::~Message ( )
default

dtor

Member Function Documentation

◆ GetBytes() [1/2]

template<typename T >
template<typename DataType >
Message< T > & Babel::Message< T >::GetBytes ( Message< T > &  msg,
DataType &  data,
uint64_t  size 
)
static

Get size bytes from the message and put it in data, useful for strings (no compile time size)

◆ GetBytes() [2/2]

template<typename T >
Message< T > & Babel::Message< T >::GetBytes ( Message< T > &  msg,
std::string &  data,
uint64_t  size 
)
static

◆ operator=()

template<typename T >
Message& Babel::Message< T >::operator= ( const Message< T > &  )
default

assignment ctor

◆ reset()

template<typename T >
void Babel::Message< T >::reset

Reset this message, this message will be totally empty.

Note
Te message header id won't be changed

◆ size()

template<typename T >
size_t Babel::Message< T >::size

Returns the message body size.

Member Data Documentation

◆ body

template<typename T >
std::vector<uint8_t> Babel::Message< T >::body

The payload of the message look at the header to know it's size.

◆ header

template<typename T >
MessageHeader<T> Babel::Message< T >::header

The message metadata.


The documentation for this struct was generated from the following file: