#ifndef CWAVDECODER_H_INCLUDED #define CWAVDECODER_H_INCLUDED #include "../include/IAudioDecoder.h" namespace cAudio { class cWavDecoder : public IAudioDecoder { public: cWavDecoder(IDataSource* stream); ~cWavDecoder(); //!Retruns the format of the audio data virtual AudioFormats getFormat(); //!Returns the frequency of the audio data virtual int getFrequency(); //!Returns whether seeking is supported virtual bool isSeekingSupported(); //!Returns whether the stream is valid for this codec virtual bool isValid(); //!Reads a section of data out of the audio stream virtual int readAudioData(void* output, int amount); //!Sets the position to read data out of virtual bool setPosition(int position, bool relative); //!If seeking is supported, will seek the stream to seconds virtual bool seek(float seconds,bool relative); private: short Channels; int SampleRate; int ByteRate; short BlockAlign; short BitsPerSample; int DataSize; int DataOffset; bool Valid; }; } #endif //! CFLACDECODER_H_INCLUDED