00001 #ifndef INPUT_HPP
00002 #define INPUT_HPP
00003
00004
00005 #include "file.hpp"
00006
00007
00008
00009
00010 class ISampleSource
00011 {
00012 public:
00013 ~ISampleSource() { }
00014
00015 virtual void GetFormat(
00016 int& channel_count,
00017 int& sample_rate,
00018 int& bits_per_sample) = 0;
00019
00020
00021
00022 virtual int Read(int sample_count, void* samples) = 0;
00023 virtual bool Reset() = 0;
00024 };
00025
00026
00027 extern ISampleSource* OpenInputStream(IFileSystem* fs, const char* filename);
00028
00029
00030 #endif