openMSX
CassetteImage.hh
Go to the documentation of this file.
1 #ifndef CASSETTEIMAGE_HH
2 #define CASSETTEIMAGE_HH
3 
4 #include "EmuTime.hh"
5 #include "sha1.hh"
6 #include <string>
7 
8 namespace openmsx {
9 
11 {
12 public:
14 
15  virtual ~CassetteImage();
16  virtual short getSampleAt(EmuTime::param time) = 0;
17  virtual EmuTime getEndTime() const = 0;
18  virtual unsigned getFrequency() const = 0;
19  virtual void fillBuffer(unsigned pos, int** bufs, unsigned num) const = 0;
20 
21  FileType getFirstFileType() const;
22  std::string getFirstFileTypeAsString() const;
23 
31  const Sha1Sum& getSha1Sum() const;
32 
33 protected:
34  CassetteImage();
35  void setFirstFileType(FileType type);
36  void setSha1Sum(const Sha1Sum& sha1sum);
37 
38 private:
39  FileType firstFileType;
40  Sha1Sum sha1sum;
41 };
42 
43 } // namespace openmsx
44 
45 #endif