00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00031 #ifndef _AFLIBWAVFILE_H
00032 #define _AFLIBWAVFILE_H
00033
00034 #ifdef HAVE_CONFIG_H
00035 #include <config.h>
00036 #endif
00037
00038 #include "aflibFile.h"
00039 #include <audiofile.h>
00040
00041 class aflibWavFile : public aflibFile {
00042
00043 public:
00044
00045 aflibWavFile();
00046
00047 ~aflibWavFile();
00048
00049 aflibStatus
00050 afopen(
00051 const char * file,
00052 aflibConfig* cfg);
00053
00054 aflibStatus
00055 afcreate(
00056 const char * file,
00057 const aflibConfig& cfg);
00058
00059 aflibStatus
00060 afread(
00061 aflibData& data,
00062 long long position = -1);
00063
00064 aflibStatus
00065 afwrite(
00066 aflibData& data,
00067 long long position = -1);
00068
00069 bool
00070 isDataSizeSupported(aflib_data_size size);
00071
00072 bool
00073 isEndianSupported(aflib_data_endian end);
00074
00075 bool
00076 isSampleRateSupported(int& rate);
00077
00078
00079 private:
00080
00081 AFfilehandle _handle;
00082 long long _total_samples;
00083
00084 };
00085
00086
00087 #endif