00001
00024 #ifndef FILESTREAM_H_INCLUDED
00025 #define FILESTREAM_H_INCLUDED
00026
00027 #include "openalpp/stream.h"
00028 #include "openalpp/export.h"
00029
00030 #ifdef _DEBUG
00031
00032 #include <crtdbg.h>
00033 #define DEBUG_NEW new(_NORMAL_BLOCK ,__FILE__, __LINE__)
00034 #else
00035 #define DEBUG_NEW new
00036 #endif
00037
00038 struct OggVorbis_File;
00039
00040 namespace openalpp {
00041
00046 class OPENALPP_API FileStream : public Stream {
00047 public:
00055 FileStream(const std::string& filename,const int buffersize=4096)
00056 throw (NameError,InitError,FileError);
00057
00061 FileStream(const FileStream &stream);
00062
00063
00064 FileStream &operator=(const FileStream &stream);
00065
00070 void setLooping(bool loop = true);
00071 protected:
00075 virtual ~FileStream();
00076
00077 OggVorbis_File* oggfile;
00078
00079 };
00080
00081
00082 }
00083
00084 #endif