blob: 9999f4390db9855c9602569baf4902cf95c80d69 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#pragma once
#include <vector>
#include <array>
#include <string>
template<int FRAME_SZ>
class ICompressedIO {
public:
typedef std::array<char, FRAME_SZ> TFrame;
virtual void WriteFrame(std::vector<char> data) = 0;
virtual std::unique_ptr<TFrame> ReadFrame() = 0;
virtual std::string GetName() const = 0;
virtual int GetChannelNum() const = 0;
virtual long long GetLengthInSamples() const = 0;
virtual ~ICompressedIO() {}
};
|