Kicking it Olde Sküül! Burgerlib on Github Follow Olde Sküül on Twitter Burgerbecky on LinkedIn Burgerbecky on LinkedIn
Loading...
Searching...
No Matches
Burger::Decompress32BitLEAudio Class Reference

Process 32 bit audio data in Little Endian format. More...

Inheritance diagram for Burger::Decompress32BitLEAudio:
Collaboration diagram for Burger::Decompress32BitLEAudio:

Public Member Functions

const Burger::StaticRTTIget_StaticRTTI (void) const noexcept override
 Get the description to the class.
 
 Decompress32BitLEAudio ()
 Default constructor.
 
eError Reset (void) override
 Resets the decompresser to defaults.
 
eError Process (void *pOutput, uintptr_t uOutputChunkSize, const void *pInput, uintptr_t uInputChunkLength) override
 Decompress audio data using little endian 32 bit words.
 
- Public Member Functions inherited from Burger::DecompressAudio
const Burger::StaticRTTIget_StaticRTTI (void) const noexcept override
 Get the description to the class.
 
SoundManager::eDataType GetDataType (void) const
 Returns the uncompressed data type this codec will output.
 
void SetMono (void)
 Alert the decompression codec to create a single audio channel.
 
void SetStereo (void)
 Alert the decompression codec to create stereo channels.
 
uint_t IsStereo (void) const
 Obtain the stereo/mono state of the decompresser.
 
- Public Member Functions inherited from Burger::Decompress
 Decompress (void)
 Default constructor.
 
uintptr_t GetTotalInputSize (void) const noexcept
 Get the total processed input data in bytes.
 
uintptr_t GetTotalOutputSize (void) const noexcept
 Get the total processed output data in bytes.
 
uintptr_t GetProcessedInputSize (void) const noexcept
 Get the total processed output data in bytes from the last process pass.
 
uintptr_t GetProcessedOutputSize (void) const noexcept
 Get the total processed output data in bytes from the last process pass.
 
uint32_t GetSignature (void) const noexcept
 Return the signature for this decompressor.
 
- Public Member Functions inherited from Burger::Base
const char * get_class_name (void) const noexcept
 Get the name of the class.
 
virtual ~Base () noexcept=default
 Destructor.
 

Static Public Member Functions

static Decompress32BitLEAudioNew (void)
 Allocate and initialize a Decompress32BitLEAudio.
 

Static Public Attributes

static const Burger::StaticRTTI g_StaticRTTI
 
static const uint32_t Signature = 0x4C453332
 'LE32'
 
- Static Public Attributes inherited from Burger::DecompressAudio
static const Burger::StaticRTTI g_StaticRTTI
 The global description of the class.
 
- Static Public Attributes inherited from Burger::Decompress
static const Burger::StaticRTTI g_StaticRTTI
 The global description of the class.
 
- Static Public Attributes inherited from Burger::Base
static const Burger::StaticRTTI g_StaticRTTI
 The global description of the class.
 

Protected Types

enum  eState { STATE_INIT , STATE_FILLINGCACHE , STATE_CACHEFULL }
 

Protected Attributes

uint_t m_uCacheCount
 Number of valid bytes in m_Cache.
 
eState m_eState
 Cache state.
 
uint8_t m_Cache [4]
 Cache for data being swapped.
 
- Protected Attributes inherited from Burger::DecompressAudio
SoundManager::eDataType m_eDataType
 Data type the decompresser will create.
 
uint_t m_bStereo
 TRUE if data is stereo
 
- Protected Attributes inherited from Burger::Decompress
uintptr_t m_uTotalInput
 Total number of bytes processed for input.
 
uintptr_t m_uTotalOutput
 Total number of bytes processed for output.
 
uintptr_t m_uInputLength
 Number of input bytes processed from the last call to Process()
 
uintptr_t m_uOutputLength
 Number of output bytes processed from the last call to Process()
 
uint32_t m_uSignature
 4 character code to identify this decompresser
 

Additional Inherited Members

- Protected Member Functions inherited from Burger::DecompressAudio
 DecompressAudio (SoundManager::eDataType uDataType)
 Constructor.
 

Detailed Description

Process 32 bit audio data in Little Endian format.


Convert 32 bit little endian audio data to native format

See also
Decompress and DecompressAudio

Member Enumeration Documentation

◆ eState

Enumerator
STATE_INIT 

Basic state.

STATE_FILLINGCACHE 

Waiting for input data.

STATE_CACHEFULL 

Cache is full, need to output before more input.

Constructor & Destructor Documentation

◆ Decompress32BitLEAudio()

Burger::Decompress32BitLEAudio::Decompress32BitLEAudio ( )

Default constructor.


Initializes the defaults

Member Function Documentation

◆ get_StaticRTTI()

const Burger::StaticRTTI * Burger::Decompress32BitLEAudio::get_StaticRTTI ( void ) const
overridevirtualnoexcept

Get the description to the class.


This virtual function will pull the pointer to the StaticRTTI instance that has the name of the class. Due to it being virtual, it will be the name of the most derived class.

Returns
Pointer to a global, read only instance of StaticRTTI for the true class

Reimplemented from Burger::Decompress.

◆ New()

Burger::Decompress32BitLEAudio *BURGER_API Burger::Decompress32BitLEAudio::New ( void )
static

Allocate and initialize a Decompress32BitLEAudio.


Returns
A pointer to a default Decompress32BitLEAudio class or NULL if out of memory
See also
Delete(const T *)

◆ Process()

Burger::eError Burger::Decompress32BitLEAudio::Process ( void * pOutput,
uintptr_t uOutputChunkLength,
const void * pInput,
uintptr_t uInputChunkLength )
overridevirtual

Decompress audio data using little endian 32 bit words.


Input data is assumed to be little endian 32 bit words. There is no decompression being performed.

Parameters
pOutputPointer to the buffer to accept the decompressed data
uOutputChunkLengthNumber of bytes in the output buffer
pInputPointer to data to decompress
uInputChunkLengthNumber of bytes in the data to decompress
Returns
Decompress::eError code with zero if no failure, non-zero is an error code

Implements Burger::Decompress.

◆ Reset()

Burger::eError Burger::Decompress32BitLEAudio::Reset ( void )
overridevirtual

Resets the decompresser to defaults.


Returns
kErrorNone if successful

Implements Burger::Decompress.

Member Data Documentation

◆ g_StaticRTTI

const Burger::StaticRTTI Burger::Decompress32BitLEAudio::g_StaticRTTI
static

◆ m_Cache

uint8_t Burger::Decompress32BitLEAudio::m_Cache[4]
protected

Cache for data being swapped.

◆ m_eState

eState Burger::Decompress32BitLEAudio::m_eState
protected

Cache state.

◆ m_uCacheCount

uint_t Burger::Decompress32BitLEAudio::m_uCacheCount
protected

Number of valid bytes in m_Cache.

◆ Signature

const uint32_t Burger::Decompress32BitLEAudio::Signature = 0x4C453332
static

'LE32'