JUCE  v5.4.1-191-g0ab5e696f
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes > Struct Template Reference

This helper class allocates a block of 7-bit bytes and can push sequences of bits into it. More...

#include <juce_BitPackingUtilities.h>

Inheritance diagram for juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >:
Collaboration diagram for juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >:

Classes

struct  State
 Describes the current building state. More...
 

Public Member Functions

const void * getData () const noexcept
 
State getState () const noexcept
 
bool hasCapacity (int bitsNeeded) const noexcept
 
template<int numBits>
Packed7BitArrayBuilderoperator<< (IntegerWithBitSize< numBits > value) noexcept
 
void restore (State state) noexcept
 
int size () const noexcept
 
void writeBits (uint32 value, int numBits) noexcept
 
void writeHeaderSysexBytes (uint8 deviceIndex) noexcept
 
void writePacketSysexFooter () noexcept
 

Private Attributes

int bitsInCurrentByte = 0
 
int bytesWritten = 0
 
uint8 data [allocatedBytes]
 

Detailed Description

template<int allocatedBytes>
struct juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >

This helper class allocates a block of 7-bit bytes and can push sequences of bits into it.

See also
Packed7BitArrayReader

{Blocks}

Member Function Documentation

◆ getData()

template<int allocatedBytes>
const void* juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::getData ( ) const
inlinenoexcept

◆ getState()

◆ hasCapacity()

◆ operator<<()

template<int allocatedBytes>
template<int numBits>
Packed7BitArrayBuilder& juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::operator<< ( IntegerWithBitSize< numBits >  value)
inlinenoexcept

◆ restore()

◆ size()

template<int allocatedBytes>
int juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::size ( ) const
inlinenoexcept

◆ writeBits()

template<int allocatedBytes>
void juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::writeBits ( uint32  value,
int  numBits 
)
inlinenoexcept

◆ writeHeaderSysexBytes()

template<int allocatedBytes>
void juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::writeHeaderSysexBytes ( uint8  deviceIndex)
inlinenoexcept

◆ writePacketSysexFooter()

template<int allocatedBytes>
void juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::writePacketSysexFooter ( )
inlinenoexcept

Member Data Documentation

◆ bitsInCurrentByte

template<int allocatedBytes>
int juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::bitsInCurrentByte = 0
private

◆ bytesWritten

template<int allocatedBytes>
int juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::bytesWritten = 0
private

◆ data

template<int allocatedBytes>
uint8 juce::BlocksProtocol::Packed7BitArrayBuilder< allocatedBytes >::data[allocatedBytes]
private

The documentation for this struct was generated from the following file: