Definition at line 49 of file overlay/Message.h.
◆ Compressed
◆ Algorithm
◆ Message()
| ripple::Message::Message |
( |
::google::protobuf::Message const & |
message, |
|
|
int |
type |
|
) |
| |
Constructor.
- Parameters
-
| message | Protocol message to serialize |
| type | Protocol message type |
Definition at line 26 of file Message.cpp.
◆ getBuffer()
Retrieve the packed message data.
If compressed message is requested but the message is not compressible then the uncompressed buffer is returned.
- Parameters
-
| compressed | Request compressed (Compress::On) or uncompressed (Compress::Off) payload buffer |
- Returns
- Payload buffer
Definition at line 153 of file Message.cpp.
◆ getCategory()
◆ setHeader()
Set the payload header.
Set payload header Uncompressed message header 47-42 Set to 0 41-16 Payload size 15-0 Message Type Compressed message header 79 Set to 0, indicates the message is compressed 78-76 Compression algorithm, value 1-7.
- Parameters
-
| in | Pointer to the payload |
| payloadBytes | Size of the payload excluding the header size |
| type | Protocol message type |
| comprAlgorithm | Compression algorithm used in compression, currently LZ4 only. If None then the message is uncompressed. |
| uncompressedBytes | Size of the uncompressed message |
Set to 1 to indicate LZ4 compression 75-74 Set to 0 73-48 Payload size 47-32 Message Type 31-0 Uncompressed message size
Definition at line 123 of file Message.cpp.
◆ compress()
| void ripple::Message::compress |
( |
| ) |
|
|
private |
Try to compress the payload.
Can be called concurrently by multiple peers but is compressed once. If the message is not compressible then the serialized buffer_ is used.
Definition at line 48 of file Message.cpp.
◆ getType()
| int ripple::Message::getType |
( |
std::uint8_t const * |
in | ) |
const |
|
private |
Get the message type from the payload header.
First four bytes are the compression/algorithm flag and the payload size. Next two bytes are the message type
- Parameters
-
- Returns
- Message type
Definition at line 167 of file Message.cpp.
◆ buffer_
◆ bufferCompressed_
| std::vector<uint8_t> ripple::Message::bufferCompressed_ |
|
private |
◆ category_
◆ once_flag_