4 #include "manes/implementation.h"
7 class buffer
: public manes::implementation
{
9 virtual operator void*() = 0;
11 virtual void get_memory(int) = 0;
13 virtual void set(void*) = 0;
14 virtual void set(void*,int) = 0;
16 virtual void unsafe() = 0;
18 virtual char &operator[](int) = 0;
19 virtual void * const get_address() const = 0;
22 class buffer_impl
: public buffer
{
35 virtual void get_memory(int);
37 virtual void set(void*) ;
38 virtual void set(void*,int);
40 virtual void unsafe();
42 virtual char &operator[](int);
43 virtual void * const get_address() const;
45 static void register_type();