23#include <StormByte/logger/log.hxx>
24#include <StormByte/expected.hxx>
105 static_cast<unsigned>(a) |
static_cast<unsigned>(b));
116 static_cast<unsigned>(a) &
static_cast<unsigned>(b));
137 return (
static_cast<unsigned>(mode) &
static_cast<unsigned>(flag)) ==
138 static_cast<unsigned>(flag);
Buffer module of the StormByte suite.
constexpr bool HasExecutionFlag(ExecutionMode mode, ExecutionMode flag) noexcept
Whether mode includes all bits of flag.
Definition typedefs.hxx:136
constexpr ExecutionMode operator|(ExecutionMode a, ExecutionMode b) noexcept
Bitwise OR of execution flags.
Definition typedefs.hxx:103
constexpr ExecutionMode operator&(ExecutionMode a, ExecutionMode b) noexcept
Bitwise AND of execution flags.
Definition typedefs.hxx:114
std::vector< std::byte > DataType
Primary byte storage type used throughout the buffer API.
Definition typedefs.hxx:62
ExecutionMode
Bitmask controlling how Pipeline::Process schedules work.
Definition typedefs.hxx:91
@ Async
Background execution; Process returns immediately.
@ Parallel
One thread per stage (pipeline parallelism).
@ Sync
Sequential on caller thread; Process blocks.
constexpr ExecutionMode & operator|=(ExecutionMode &a, ExecutionMode b) noexcept
Bitwise OR-assignment of execution flags.
Definition typedefs.hxx:125
Position
Forward declaration of the WriteOnly interface.
Definition typedefs.hxx:50
@ Relative
Offset from the current logical read position.
@ Absolute
Offset from the beginning of the buffer (position 0).
#define STORMBYTE_BUFFER_PUBLIC
Definition visibility.h:28