blob: 93b2b3c37016bcc54c56db5eb83fea2a7372dfb6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#ifndef RO_BUFFER_HH
#define RO_BUFFER_HH
#include <cstddef>
class RoBuffer {
public:
virtual ~RoBuffer() = default;
virtual bool empty() const = 0;
virtual char const* rbuf(size_t want, size_t& avail) = 0;
virtual void rcommit(size_t bytes) = 0;
size_t read(void* data, size_t len);
protected:
RoBuffer() = default;
RoBuffer(RoBuffer const&) = delete;
RoBuffer& operator=(RoBuffer const&) = delete;
};
#endif // RO_BUFFER_HH
|