fawkes::FawkesNetworkMessageContent Class Reference
[Fawkes Network Communication]
Fawkes network message content.
More...
#include <netcomm/fawkes/message_content.h>

Public Member Functions | |
| FawkesNetworkMessageContent () | |
| Constructor. | |
| virtual | ~FawkesNetworkMessageContent () |
| Virtual empty destructor. | |
| virtual void | serialize ()=0 |
| Serialize message content. | |
| virtual void * | payload () |
| Return pointer to payload. | |
| virtual size_t | payload_size () |
| Return payload size. | |
Protected Member Functions | |
| void | copy_payload (size_t offset, const void *buf, size_t len) |
| Copy payload into payload buffer to a specified offset. | |
Protected Attributes | |
| void * | _payload |
| Pointer to payload. | |
| size_t | _payload_size |
| Payloda size. | |
Detailed Description
Fawkes network message content.Interface for complex Fawkes network messages. Use this type if you want either a nicer interface to your network message or if you need a more complex kind of message type, for example by using DynamicBuffer.
Implement all accessor methods that you need and add any data you want. In the end you have to implement serialize() to create a single contiguous buffer that contains all the data that has to be sent. Make _payload point to this buffer and _payload_size contain the size of the buffer.
- See also:
- DynamicBuffer
Definition at line 32 of file message_content.h.
Constructor & Destructor Documentation
| fawkes::FawkesNetworkMessageContent::FawkesNetworkMessageContent | ( | ) |
Constructor.
Definition at line 53 of file message_content.cpp.
References _payload, and _payload_size.
| fawkes::FawkesNetworkMessageContent::~FawkesNetworkMessageContent | ( | ) | [virtual] |
Member Function Documentation
| void fawkes::FawkesNetworkMessageContent::copy_payload | ( | size_t | offset, | |
| const void * | buf, | |||
| size_t | len | |||
| ) | [protected] |
Copy payload into payload buffer to a specified offset.
This assumes that you have made sure that the buffer is big enough!
- Parameters:
-
offset offset in _payload where to copy the data to buf buffer to copy from len number of bytes to copy from buf
Definition at line 104 of file message_content.cpp.
References _payload.
Referenced by fawkes::NetworkLoggerMessageContent::NetworkLoggerMessageContent(), fawkes::PluginListMessage::serialize(), fawkes::ConfigListContent::serialize(), and fawkes::BlackBoardInterfaceListContent::serialize().
| void * fawkes::FawkesNetworkMessageContent::payload | ( | ) | [virtual] |
Return pointer to payload.
- Returns:
- pointer to payload
- Exceptions:
-
NullPointerException thrown if _payload does not point to a valid buffer or if _payload_size is zero.
Definition at line 72 of file message_content.cpp.
References _payload, and _payload_size.
Referenced by fawkes::FawkesNetworkMessage::pack().
| size_t fawkes::FawkesNetworkMessageContent::payload_size | ( | ) | [virtual] |
Return payload size.
- Returns:
- payload size
- Exceptions:
-
NullPointerException thrown if _payload does not point to a valid buffer or if _payload_size is zero.
Definition at line 88 of file message_content.cpp.
References _payload, and _payload_size.
Referenced by fawkes::FawkesNetworkMessage::pack().
| void fawkes::FawkesNetworkMessageContent::serialize | ( | ) | [pure virtual] |
Serialize message content.
Generate a single contiguous buffer. Make _payload point to this buffer and _payload_size contain the size of the buffer.
Implemented in fawkes::BlackBoardInterfaceListContent, fawkes::ConfigListContent, fawkes::NetworkLoggerMessageContent, fawkes::StringContent, and fawkes::PluginListMessage.
Referenced by fawkes::FawkesNetworkMessage::pack().
Member Data Documentation
void* fawkes::FawkesNetworkMessageContent::_payload [protected] |
Pointer to payload.
Definition at line 47 of file message_content.h.
Referenced by copy_payload(), FawkesNetworkMessageContent(), fawkes::NetworkLoggerMessageContent::NetworkLoggerMessageContent(), payload(), payload_size(), fawkes::PluginListMessage::serialize(), fawkes::ConfigListContent::serialize(), fawkes::BlackBoardInterfaceListContent::serialize(), fawkes::StringContent::set_string(), fawkes::StringContent::StringContent(), fawkes::BlackBoardInterfaceListContent::~BlackBoardInterfaceListContent(), fawkes::ConfigListContent::~ConfigListContent(), fawkes::NetworkLoggerMessageContent::~NetworkLoggerMessageContent(), and fawkes::PluginListMessage::~PluginListMessage().
size_t fawkes::FawkesNetworkMessageContent::_payload_size [protected] |
Payloda size.
Definition at line 49 of file message_content.h.
Referenced by FawkesNetworkMessageContent(), fawkes::StringContent::get_string_length(), fawkes::NetworkLoggerMessageContent::NetworkLoggerMessageContent(), payload(), payload_size(), fawkes::PluginListMessage::serialize(), fawkes::ConfigListContent::serialize(), fawkes::BlackBoardInterfaceListContent::serialize(), fawkes::StringContent::set_string(), fawkes::StringContent::StringContent(), fawkes::BlackBoardInterfaceListContent::~BlackBoardInterfaceListContent(), fawkes::ConfigListContent::~ConfigListContent(), and fawkes::PluginListMessage::~PluginListMessage().
The documentation for this class was generated from the following files:
- src/libs/netcomm/fawkes/message_content.h
- src/libs/netcomm/fawkes/message_content.cpp

