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::DecompressAudio Class Reference

Base class for audio decompression codec. More...

Inheritance diagram for Burger::DecompressAudio:
Collaboration diagram for Burger::DecompressAudio:

Public Member Functions

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.
 
virtual eError Reset (void)=0
 Reset the decompression algorithm.
 
virtual eError Process (void *pOutput, uintptr_t uOutputChunkSize, const void *pInput, uintptr_t uInputChunkLength)=0
 Decompress data into the output buffer.
 
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 Attributes

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 Member Functions

 DecompressAudio (SoundManager::eDataType uDataType)
 Constructor.
 

Protected Attributes

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
 

Detailed Description

Base class for audio decompression codec.


This is the class used for audio decompression. It only differs from a standard Decompress class by the addition of a call that will return the preferred data type the decompresser will output.

See also
Decompress

Constructor & Destructor Documentation

◆ DecompressAudio()

Burger::DecompressAudio::DecompressAudio ( SoundManager::eDataType uDataType)
protected

Constructor.


Sets the defaults (Mono)

See also
SoundManager::eDataType

Member Function Documentation

◆ get_StaticRTTI()

const Burger::StaticRTTI * Burger::DecompressAudio::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.

Reimplemented in Burger::DecompressMace3, Burger::DecompressMace6, Burger::DecompressMicrosoftADPCM, Burger::DecompressMP3, Burger::DecompressSigned8BitAudio, Burger::DecompressULaw, and Burger::DecompressUnsigned8BitAudio.

◆ GetDataType()

SoundManager::eDataType Burger::DecompressAudio::GetDataType ( void ) const
inline

Returns the uncompressed data type this codec will output.


See also
SoundManager::eDataType or Decompress

◆ IsStereo()

uint_t Burger::DecompressAudio::IsStereo ( void ) const
inline

Obtain the stereo/mono state of the decompresser.


Returns
TRUE if stereo data is being output
See also
SetMono() or SetStereo()

◆ SetMono()

void Burger::DecompressAudio::SetMono ( void )
inline

Alert the decompression codec to create a single audio channel.


See also
SetStereo() or IsStereo() const

◆ SetStereo()

void Burger::DecompressAudio::SetStereo ( void )
inline

Alert the decompression codec to create stereo channels.


See also
SetMono() or IsStereo() const

Member Data Documentation

◆ g_StaticRTTI

const Burger::StaticRTTI Burger::DecompressAudio::g_StaticRTTI
static

The global description of the class.


This record contains the name of this class and a reference to the parent

◆ m_bStereo

uint_t Burger::DecompressAudio::m_bStereo
protected

TRUE if data is stereo

◆ m_eDataType

SoundManager::eDataType Burger::DecompressAudio::m_eDataType
protected

Data type the decompresser will create.