Skip to content

ludus::network::BitWriter

Ludus Wiki · API overview · Browse API

Class

Each primitive preflights its entire operation.
Failure preserves cursor, output and backing bytes. Bits are LSB first; integers therefore little endian. AlignToByte writes/checks zero padding. Byte operations require alignment. Buffers must outlive their stream. Byte copy input/output must not overlap.

Declared in modules/network/core/include/ludus/network/core/wire.h

#include <ludus/network/core/wire.h>
class ludus::network::BitWriter final

Methods

BitWriter

explicit ludus::network::BitWriter::BitWriter(std::span< uint8 > bytes) noexcept

Related types: uint8

Declared in modules/network/core/include/ludus/network/core/wire.h

WriteBits

WireStatus ludus::network::BitWriter::WriteBits(uint32 value, uint8 count) noexcept

Related types: uint8 · uint32 · WireStatus

Declared in modules/network/core/include/ludus/network/core/wire.h

AlignToByte

WireStatus ludus::network::BitWriter::AlignToByte() noexcept

Related types: WireStatus

Declared in modules/network/core/include/ludus/network/core/wire.h

WriteBytes

WireStatus ludus::network::BitWriter::WriteBytes(std::span< const uint8 > bytes) noexcept

Related types: uint8 · WireStatus

Declared in modules/network/core/include/ludus/network/core/wire.h

GetBitCount

usize ludus::network::BitWriter::GetBitCount() const noexcept

Related types: usize

Declared in modules/network/core/include/ludus/network/core/wire.h

GetByteCount

usize ludus::network::BitWriter::GetByteCount() const noexcept

Related types: usize

Declared in modules/network/core/include/ludus/network/core/wire.h