![]() |
Libftpp
A modern C++ library
|
Class representing a structured message for network communication. More...
#include <message.hpp>
Public Types | |
| using | Type = int |
Public Member Functions | |
| Message (Type type) | |
| Message (int fd, Type type) | |
| Message () | |
| template<typename T > | |
| const Message & | operator>> (T &value) const |
| template<typename T > | |
| Message & | operator<< (const T &value) |
| void | appendBytes (const unsigned char *data, size_t len) |
| std::vector< unsigned char > | getSerializedData () const |
| void | setType (Message::Type type) |
| Message::Type | type () const |
| DataBuffer * | getBuffer () |
| void | setMessageFd (int fd) |
| void | incr_cursor (size_t len) const |
| void | decr_cursor (size_t len) const |
| bool | isComplet () |
| void | reset () |
| const int & | getFd () const |
Class representing a structured message for network communication.
This class provides a convenient way to handle structured messages in network protocols. It uses a DataBuffer internally to store message data and supports serialization for network transmission.
| std::runtime_error | on serialization/deserialization errors |
Definition at line 46 of file message.hpp.
| using Message::Type = int |
Definition at line 49 of file message.hpp.
| Message::Message | ( | Message::Type | type | ) |
Definition at line 3 of file message.cpp.
|
inline |
Definition at line 58 of file message.hpp.
|
inline |
Definition at line 59 of file message.hpp.
| void Message::appendBytes | ( | const unsigned char * | data, |
| size_t | len | ||
| ) |
Definition at line 5 of file message.cpp.
References DataBuffer::append().
| void Message::decr_cursor | ( | size_t | len | ) | const |
Definition at line 74 of file message.cpp.
References DataBuffer::decreaseCursor().
| DataBuffer * Message::getBuffer | ( | ) |
Definition at line 84 of file message.cpp.
| const int & Message::getFd | ( | ) | const |
Definition at line 79 of file message.cpp.
| std::vector< unsigned char > Message::getSerializedData | ( | ) | const |
Definition at line 26 of file message.cpp.
References DataBuffer::data(), and DataBuffer::size().
Referenced by Client::send(), and Server::sendTo().
| void Message::incr_cursor | ( | size_t | len | ) | const |
Definition at line 69 of file message.cpp.
References DataBuffer::increaseCursor().
| bool Message::isComplet | ( | ) |
Definition at line 10 of file message.cpp.
References DataBuffer::decreaseCursor(), DataBuffer::size(), and type().
|
inline |
Definition at line 69 of file message.hpp.
|
inline |
Definition at line 62 of file message.hpp.
| void Message::reset | ( | ) |
Definition at line 48 of file message.cpp.
References DataBuffer::reset().
| void Message::setMessageFd | ( | int | fd | ) |
Definition at line 64 of file message.cpp.
| void Message::setType | ( | Message::Type | type | ) |
Definition at line 58 of file message.cpp.
References type().
| Message::Type Message::type | ( | ) | const |
Definition at line 53 of file message.cpp.
Referenced by isComplet(), and setType().