Eric Oulashin's C++ Audio Mixer 1.0
EOUtils::OggFileInfo Class Reference

#include <OggFileInfo.h>

Inheritance diagram for EOUtils::OggFileInfo:
Inheritance graph
Collaboration diagram for EOUtils::OggFileInfo:
Collaboration graph

Public Member Functions

 OggFileInfo (int16_t pNumChannels=2, int32_t pSampleRateHz=44100, int32_t pBytesPerSecond=0, int16_t pByteRate=0, int16_t pBitsPerSample=16)
 OggFileInfo (const AudioFileInfo &pAudioFileInfo)
AudioFileResultType read (std::fstream &pInFStream) override
 Reads the info from a file stream.
AudioFileResultType read (const char *pFilename) override
 Reads the info from a WAV file.
AudioFileResultType write (std::fstream &pOutFStream) override
 Writes the info to a file stream.
Public Member Functions inherited from EOUtils::AudioFileInfo
 AudioFileInfo (int16_t pNumChannels=0, int32_t pSampleRateHz=0, int32_t pBytesPerSecond=0, int16_t pByteRate=0, int16_t pBitsPerSample=0)
 Constructor.
virtual ~AudioFileInfo ()=default
virtual void copyAudioFileInfo (const AudioFileInfo &pAudioFileInfo)
 Copies the values from another AudioFileInfo object.
virtual int32_t FileSize () const
void FileSize (int32_t pFileSize)
virtual int16_t NumChannels () const
virtual void NumChannels (int16_t pNumChannels)
virtual int32_t SampleRateHz () const
virtual void SampleRateHz (int32_t pSampleRateHz)
virtual int32_t BytesPerSecond () const
virtual void BytesPerSecond (int32_t pBytesPerSecond)
virtual int16_t ByteRate () const
virtual void ByteRate (int16_t pByteRate)
virtual int16_t BitsPerSample () const
virtual void BitsPerSample (int16_t pBitsPerSample)
virtual size_t BytesPerSample () const

Static Public Member Functions

static bool matchesExtension (const char *pFilename)
static bool sniffFileHeader (const char *pFilename)

Additional Inherited Members

Protected Attributes inherited from EOUtils::AudioFileInfo
int32_t mFileSize
int16_t mNumChannels
int32_t mSampleRateHz
int32_t mBytesPerSecond
int16_t mByteRate
int16_t mBitsPerSample

Constructor & Destructor Documentation

◆ OggFileInfo() [1/2]

EOUtils::OggFileInfo::OggFileInfo ( int16_t pNumChannels = 2,
int32_t pSampleRateHz = 44100,
int32_t pBytesPerSecond = 0,
int16_t pByteRate = 0,
int16_t pBitsPerSample = 16 )

◆ OggFileInfo() [2/2]

EOUtils::OggFileInfo::OggFileInfo ( const AudioFileInfo & pAudioFileInfo)

Member Function Documentation

◆ matchesExtension()

bool EOUtils::OggFileInfo::matchesExtension ( const char * pFilename)
static

◆ read() [1/2]

AudioFileResultType EOUtils::OggFileInfo::read ( const char * pFilename)
overridevirtual

Reads the info from a WAV file.

Parameters
[in]pFilenameThe name of a WAV file to read from
Returns
An AudioFileResultType object containing error messages on failure, or no errors on success

Reimplemented from EOUtils::AudioFileInfo.

References EOUtils::AudioFileResultType::addError(), EOUtils::sndfile_detail::formatHasMajorMinor(), EOUtils::sndfile_detail::safeFileSize(), and EOUtils::sndfile_detail::sfInfoToAudioFileInfo().

◆ read() [2/2]

AudioFileResultType EOUtils::OggFileInfo::read ( std::fstream & pInFStream)
overridevirtual

Reads the info from a file stream.

Parameters
[in]pInFStreamA file stream object to read the information from. This must be already opened in read and binary mode.
Returns
An AudioFileResultType object containing error messages on failure, or no errors on success

Reimplemented from EOUtils::AudioFileInfo.

References EOUtils::AudioFileResultType::addError().

◆ sniffFileHeader()

bool EOUtils::OggFileInfo::sniffFileHeader ( const char * pFilename)
static

◆ write()

AudioFileResultType EOUtils::OggFileInfo::write ( std::fstream & pOutFStream)
overridevirtual

Writes the info to a file stream.

Parameters
[in]pOutFStreamA file stream object to write the information to. This must be already opened in write and binary mode.
Returns
An AudioFileResultType object containing error messages on failure, or no errors on success

Reimplemented from EOUtils::AudioFileInfo.

References EOUtils::AudioFileResultType::addError().


The documentation for this class was generated from the following files: