blob: a538f78be2715d5337bee915a94a3260ba387f0e (
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 <stddef.h>
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;
static size_t read(RoBuffer* buf, void* data, size_t len);
protected:
RoBuffer() = default;
RoBuffer(RoBuffer const&) = delete;
RoBuffer& operator=(RoBuffer const&) = delete;
};
#endif // RO_BUFFER_HH
|