Initial
This commit is contained in:
82
sample/PCMForm.hpp
Normal file
82
sample/PCMForm.hpp
Normal file
@@ -0,0 +1,82 @@
|
||||
#ifndef _SAMPLE_WAVEFORMATPCM_HPP_
|
||||
#define _SAMPLE_WAVEFORMATPCM_HPP_
|
||||
#ifndef _SAMPLE_WAVEFORMATEX_HPP_
|
||||
#include <sample/wavefmex.hpp>
|
||||
#endif
|
||||
#ifndef _SAMPLE_FORMATCHUNK_HPP_
|
||||
#include <sample/fmtchnk.hpp>
|
||||
#endif
|
||||
|
||||
class WaveFormatPCM : public WaveFormatEx
|
||||
{
|
||||
public:
|
||||
WaveFormatPCM(void);
|
||||
WaveFormatPCM(const WaveFormatPCM &someWaveFormatPCM);
|
||||
WaveFormatPCM(const FormatChunk &someFormatChunk);
|
||||
~WaveFormatPCM();
|
||||
WaveFormatPCM &operator=(const WaveFormatPCM &someWaveFormatPCM);
|
||||
WaveFormatPCM &operator=(const FormatChunk &someFormatChunk);
|
||||
operator PCMWAVEFORMAT &(void)const;
|
||||
WORD bitsPerSample(void)const;
|
||||
void bitsPerSample(WORD bitsPerSample);
|
||||
private:
|
||||
WORD mBitsPerSample;
|
||||
};
|
||||
|
||||
inline
|
||||
WaveFormatPCM::WaveFormatPCM(void)
|
||||
: mBitsPerSample(0)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM::WaveFormatPCM(const WaveFormatPCM &someWaveFormatPCM)
|
||||
: WaveFormatEx((WaveFormatEx&)*this), mBitsPerSample(someWaveFormatPCM.mBitsPerSample)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM::WaveFormatPCM(const FormatChunk &someFormatChunk)
|
||||
{
|
||||
*this=someFormatChunk;
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM::~WaveFormatPCM()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM &WaveFormatPCM::operator=(const WaveFormatPCM &someWaveFormatPCM)
|
||||
{
|
||||
mBitsPerSample=someWaveFormatPCM.mBitsPerSample;
|
||||
(WaveFormatEx&)*this=(WaveFormatEx&)someWaveFormatPCM;
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM::operator PCMWAVEFORMAT &(void)const
|
||||
{
|
||||
return *((PCMWAVEFORMAT*)this);
|
||||
}
|
||||
|
||||
inline
|
||||
WORD WaveFormatPCM::bitsPerSample(void)const
|
||||
{
|
||||
return mBitsPerSample;
|
||||
}
|
||||
|
||||
inline
|
||||
void WaveFormatPCM::bitsPerSample(WORD bitsPerSample)
|
||||
{
|
||||
mBitsPerSample=bitsPerSample;
|
||||
}
|
||||
|
||||
inline
|
||||
WaveFormatPCM &WaveFormatPCM::operator=(const FormatChunk &someFormatChunk)
|
||||
{
|
||||
(WaveFormatEx&)*this=someFormatChunk;
|
||||
bitsPerSample(someFormatChunk.bitsPerSample());
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user