20 buffer =
new char[
cap];
29 buffer =
new char[
size];
39 if(size + len >= cap){
40 char * new_buffer =
new char[2*(cap+len)];
41 memcpy(new_buffer, buffer, size);
46 memcpy(buffer + size, data, len);
51 if(read_pos + len <= size) {
52 memcpy(data, buffer + read_pos, len);
55 fprintf(stderr,
"error: mem_recv_data\n");
60 #endif//MEM_IO_CHANNEL_H__ MemIO(int _cap=1024 *1024)
Definition: mem_io_channel.h:18
void recv_data(void *data, int nbyte)
Definition: io_channel.h:17
Definition: mem_io_channel.h:12
void send_data_impl(const void *data, int len)
Definition: mem_io_channel.h:38
void load_from_file(FileIO *fio, uint64_t size)
Definition: mem_io_channel.h:27
~MemIO()
Definition: mem_io_channel.h:23
int cap
Definition: mem_io_channel.h:16
void recv_data_impl(void *data, int len)
Definition: mem_io_channel.h:50
void clear()
Definition: mem_io_channel.h:35
int read_pos
Definition: mem_io_channel.h:15
int size
Definition: mem_io_channel.h:14
char * buffer
Definition: mem_io_channel.h:13
Definition: io_channel.h:12
Definition: file_io_channel.h:21