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 #include "aflibFile.h"
00035 #include <audiofile.h>
00036
00037 class aflibWavFile : public aflibFile {
00038
00039 public:
00040
00041 aflibWavFile();
00042
00043 ~aflibWavFile();
00044
00045 aflibStatus
00046 afopen(
00047 const char * file,
00048 aflibConfig* cfg);
00049
00050 aflibStatus
00051 afcreate(
00052 const char * file,
00053 const aflibConfig& cfg);
00054
00055 aflibStatus
00056 afread(
00057 aflibData& data,
00058 long long position = -1);
00059
00060 aflibStatus
00061 afwrite(
00062 aflibData& data,
00063 long long position = -1);
00064
00065 bool
00066 isDataSizeSupported(aflib_data_size size);
00067
00068 bool
00069 isEndianSupported(aflib_data_endian end);
00070
00071 bool
00072 isSampleRateSupported(int& rate);
00073
00074
00075 private:
00076
00077 AFfilehandle _handle;
00078 long long _total_samples;
00079
00080 };
00081
00082
00083 #endif