WavFileReader Class Reference

#include <WavFileReader.h>

Inherits AudioFileReader.

Inheritance diagram for WavFileReader:

Inheritance graph
[legend]
Collaboration diagram for WavFileReader:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 26 of file WavFileReader.h.

Signals

void frameCountChanged ()

Public Member Functions

 WavFileReader (FileSource source, bool fileUpdating=false)
virtual ~WavFileReader ()
virtual QString getLocation () const
 Return the location of the audio data in the reader (as passed in to the FileSource constructor, for example).
virtual QString getError () const
virtual void getInterleavedFrames (size_t start, size_t count, SampleBlock &frames) const
 Must be safe to call from multiple threads with different arguments on the same object at the same time.
virtual int getDecodeCompletion () const
bool isUpdating () const
void updateFrameCount ()
void updateDone ()
bool isOK () const
size_t getFrameCount () const
size_t getChannelCount () const
size_t getSampleRate () const
size_t getNativeRate () const
virtual QString getTitle () const
 Return the title of the work in the audio file, if known.
virtual QString getMaker () const
 Return the "maker" of the work in the audio file, if known.
virtual void getDeInterleavedFrames (size_t start, size_t count, std::vector< SampleBlock > &frames) const
 Return de-interleaved samples for count frames from index start.

Static Public Member Functions

static void getSupportedExtensions (std::set< QString > &extensions)
static bool supportsExtension (QString ext)
static bool supportsContentType (QString type)
static bool supports (FileSource &source)

Protected Attributes

SF_INFO m_fileInfo
SNDFILE * m_file
FileSource m_source
QString m_path
QString m_error
QMutex m_mutex
float * m_buffer
size_t m_bufsiz
size_t m_lastStart
size_t m_lastCount
bool m_updating
size_t m_frameCount
size_t m_channelCount
size_t m_sampleRate


Constructor & Destructor Documentation

WavFileReader::WavFileReader ( FileSource  source,
bool  fileUpdating = false 
)

Definition at line 23 of file WavFileReader.cpp.

References AudioFileReader::m_channelCount, m_error, m_file, m_fileInfo, AudioFileReader::m_frameCount, m_path, and AudioFileReader::m_sampleRate.

WavFileReader::~WavFileReader (  )  [virtual]

Definition at line 65 of file WavFileReader.cpp.

References m_file.


Member Function Documentation

virtual QString WavFileReader::getLocation (  )  const [inline, virtual]

Return the location of the audio data in the reader (as passed in to the FileSource constructor, for example).

Reimplemented from AudioFileReader.

Definition at line 32 of file WavFileReader.h.

References FileSource::getLocation(), and m_source.

virtual QString WavFileReader::getError (  )  const [inline, virtual]

Reimplemented from AudioFileReader.

Definition at line 33 of file WavFileReader.h.

References m_error.

Referenced by CodedAudioFileReader::initialiseDecodeCache(), and ResamplingWavFileReader::ResamplingWavFileReader().

void WavFileReader::getInterleavedFrames ( size_t  start,
size_t  count,
SampleBlock frames 
) const [virtual]

Must be safe to call from multiple threads with different arguments on the same object at the same time.

Implements AudioFileReader.

Definition at line 109 of file WavFileReader.cpp.

References m_buffer, m_bufsiz, AudioFileReader::m_channelCount, m_file, m_fileInfo, m_lastCount, m_lastStart, and m_mutex.

Referenced by ResamplingWavFileReader::ResamplingWavFileReader(), and ResamplingWavFileReader::DecodeThread::run().

void WavFileReader::getSupportedExtensions ( std::set< QString > &  extensions  )  [static]

Definition at line 170 of file WavFileReader.cpp.

Referenced by AudioFileReaderFactory::getKnownExtensions(), ResamplingWavFileReader::getSupportedExtensions(), and supportsExtension().

bool WavFileReader::supportsExtension ( QString  ext  )  [static]

Definition at line 192 of file WavFileReader.cpp.

References getSupportedExtensions().

Referenced by supports(), and ResamplingWavFileReader::supportsExtension().

bool WavFileReader::supportsContentType ( QString  type  )  [static]

Definition at line 200 of file WavFileReader.cpp.

Referenced by supports(), and ResamplingWavFileReader::supportsContentType().

bool WavFileReader::supports ( FileSource source  )  [static]

Definition at line 208 of file WavFileReader.cpp.

References FileSource::getContentType(), FileSource::getExtension(), supportsContentType(), and supportsExtension().

Referenced by AudioFileReaderFactory::create(), and ResamplingWavFileReader::supports().

virtual int WavFileReader::getDecodeCompletion (  )  const [inline, virtual]

Reimplemented from AudioFileReader.

Definition at line 47 of file WavFileReader.h.

bool WavFileReader::isUpdating (  )  const [inline, virtual]

Reimplemented from AudioFileReader.

Definition at line 49 of file WavFileReader.h.

References m_updating.

void WavFileReader::updateFrameCount (  ) 

Definition at line 71 of file WavFileReader.cpp.

References AudioFileReader::frameCountChanged(), AudioFileReader::m_channelCount, m_file, m_fileInfo, AudioFileReader::m_frameCount, m_mutex, m_path, and AudioFileReader::m_sampleRate.

Referenced by WritableWaveFileModel::addSamples(), CodedAudioFileReader::addSamplesToDecodeCache(), CodedAudioFileReader::finishDecodeCache(), and updateDone().

void WavFileReader::updateDone (  ) 

Definition at line 102 of file WavFileReader.cpp.

References m_updating, and updateFrameCount().

Referenced by WritableWaveFileModel::setCompletion().

bool AudioFileReader::isOK (  )  const [inline, inherited]

Definition at line 34 of file AudioFileReader.h.

References AudioFileReader::m_channelCount.

Referenced by AudioFileReaderFactory::create(), WaveFileModel::getData(), CodedAudioFileReader::getInterleavedFrames(), CodedAudioFileReader::initialiseDecodeCache(), WaveFileModel::isOK(), and ResamplingWavFileReader::ResamplingWavFileReader().

size_t AudioFileReader::getFrameCount (  )  const [inline, inherited]

Definition at line 38 of file AudioFileReader.h.

References AudioFileReader::m_frameCount.

Referenced by ResamplingWavFileReader::addBlock(), WaveFileModel::getFrameCount(), ResamplingWavFileReader::ResamplingWavFileReader(), and ResamplingWavFileReader::DecodeThread::run().

size_t AudioFileReader::getChannelCount (  )  const [inline, inherited]

Definition at line 39 of file AudioFileReader.h.

References AudioFileReader::m_channelCount.

Referenced by WritableWaveFileModel::addSamples(), WaveFileModel::getChannelCount(), AudioFileReader::getDeInterleavedFrames(), and ResamplingWavFileReader::ResamplingWavFileReader().

size_t AudioFileReader::getSampleRate (  )  const [inline, inherited]

Definition at line 40 of file AudioFileReader.h.

References AudioFileReader::m_sampleRate.

Referenced by AudioFileReaderFactory::create(), WaveFileModel::getSampleRate(), ResamplingWavFileReader::ResamplingWavFileReader(), and WaveFileModel::WaveFileModel().

size_t AudioFileReader::getNativeRate (  )  const [inline, inherited]

Reimplemented in CodedAudioFileReader.

Definition at line 41 of file AudioFileReader.h.

References AudioFileReader::m_sampleRate.

Referenced by WaveFileModel::getNativeRate().

virtual QString AudioFileReader::getTitle (  )  const [inline, virtual, inherited]

Return the title of the work in the audio file, if known.

This may be implemented by subclasses that support file tagging. This is not the same thing as the file name.

Reimplemented in MP3FileReader, and OggVorbisFileReader.

Definition at line 54 of file AudioFileReader.h.

Referenced by WaveFileModel::getTitle(), and WaveFileModel::WaveFileModel().

virtual QString AudioFileReader::getMaker (  )  const [inline, virtual, inherited]

Return the "maker" of the work in the audio file, if known.

This could represent almost anything (band, composer, conductor, artist etc).

Reimplemented in MP3FileReader, and OggVorbisFileReader.

Definition at line 61 of file AudioFileReader.h.

Referenced by WaveFileModel::getMaker().

void AudioFileReader::getDeInterleavedFrames ( size_t  start,
size_t  count,
std::vector< SampleBlock > &  frames 
) const [virtual, inherited]

Return de-interleaved samples for count frames from index start.

Implemented in this class (it calls getInterleavedFrames and de-interleaves). The resulting vector will contain getChannelCount() sample blocks of count samples each (or fewer if end of file is reached).

Definition at line 19 of file AudioFileReader.cpp.

References AudioFileReader::getChannelCount(), and AudioFileReader::getInterleavedFrames().

void AudioFileReader::frameCountChanged (  )  [signal, inherited]

Referenced by updateFrameCount().


Member Data Documentation

SF_INFO WavFileReader::m_fileInfo [protected]

Definition at line 55 of file WavFileReader.h.

Referenced by getInterleavedFrames(), updateFrameCount(), and WavFileReader().

SNDFILE* WavFileReader::m_file [protected]

Definition at line 56 of file WavFileReader.h.

Referenced by getInterleavedFrames(), updateFrameCount(), WavFileReader(), and ~WavFileReader().

FileSource WavFileReader::m_source [protected]

Definition at line 58 of file WavFileReader.h.

Referenced by getLocation().

QString WavFileReader::m_path [protected]

Definition at line 59 of file WavFileReader.h.

Referenced by updateFrameCount(), and WavFileReader().

QString WavFileReader::m_error [protected]

Definition at line 60 of file WavFileReader.h.

Referenced by getError(), and WavFileReader().

QMutex WavFileReader::m_mutex [mutable, protected]

Definition at line 62 of file WavFileReader.h.

Referenced by getInterleavedFrames(), and updateFrameCount().

float* WavFileReader::m_buffer [mutable, protected]

Definition at line 63 of file WavFileReader.h.

Referenced by getInterleavedFrames().

size_t WavFileReader::m_bufsiz [mutable, protected]

Definition at line 64 of file WavFileReader.h.

Referenced by getInterleavedFrames().

size_t WavFileReader::m_lastStart [mutable, protected]

Definition at line 65 of file WavFileReader.h.

Referenced by getInterleavedFrames().

size_t WavFileReader::m_lastCount [mutable, protected]

Definition at line 66 of file WavFileReader.h.

Referenced by getInterleavedFrames().

bool WavFileReader::m_updating [protected]

Definition at line 68 of file WavFileReader.h.

Referenced by isUpdating(), and updateDone().

size_t AudioFileReader::m_frameCount [protected, inherited]

Definition at line 95 of file AudioFileReader.h.

Referenced by MP3FileReader::accept(), CodedAudioFileReader::CodedAudioFileReader(), AudioFileReader::getFrameCount(), CodedAudioFileReader::pushBuffer(), updateFrameCount(), and WavFileReader().

size_t AudioFileReader::m_channelCount [protected, inherited]

Definition at line 96 of file AudioFileReader.h.

Referenced by MP3FileReader::accept(), OggVorbisFileReader::acceptFrames(), CodedAudioFileReader::addSamplesToDecodeCache(), CodedAudioFileReader::finishDecodeCache(), AudioFileReader::getChannelCount(), getInterleavedFrames(), CodedAudioFileReader::getInterleavedFrames(), CodedAudioFileReader::initialiseDecodeCache(), AudioFileReader::isOK(), MP3FileReader::MP3FileReader(), OggVorbisFileReader::OggVorbisFileReader(), CodedAudioFileReader::pushBuffer(), ResamplingWavFileReader::ResamplingWavFileReader(), MP3FileReader::DecodeThread::run(), updateFrameCount(), and WavFileReader().

size_t AudioFileReader::m_sampleRate [protected, inherited]

Definition at line 97 of file AudioFileReader.h.

Referenced by MP3FileReader::accept(), CodedAudioFileReader::CodedAudioFileReader(), AudioFileReader::getNativeRate(), AudioFileReader::getSampleRate(), CodedAudioFileReader::initialiseDecodeCache(), CodedAudioFileReader::pushBuffer(), updateFrameCount(), and WavFileReader().


The documentation for this class was generated from the following files:
Generated on Wed Feb 20 15:45:37 2008 for SonicVisualiser by  doxygen 1.5.1