[][src]Constant aeron_rs::concurrent::logbuffer::frame_descriptor::FRAME_ALIGNMENT

pub const FRAME_ALIGNMENT: Index = 32;

Description of the structure for message framing in a log buffer.

All messages are logged in frames that have a minimum header layout as follows plus a reserve then the encoded message follows:

  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |R|                       Frame Length                          |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-------------------------------+
 |  Version      |B|E| Flags     |             Type              |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-------------------------------+
 |R|                       Term Offset                           |
 +-+-------------------------------------------------------------+
 |                      Additional Fields                       ...
...                                                              |
 +---------------------------------------------------------------+
 |                        Encoded Message                       ...
...                                                              |
 +---------------------------------------------------------------+

The (B)egin and (E)nd flags are used for message fragmentation. (R) is for reserved bit. Both are set for a message that does not span frames.