1 #include "daq/slc/system/Buffer.h"
7 Buffer::Buffer() : m_memory(NULL), m_size(0), m_allocated(false) {}
9 Buffer::Buffer(
unsigned int size,
unsigned char* memory)
10 : m_memory(memory), m_size(size), m_allocated(false)
12 if (memory == NULL && size > 0) {
13 m_memory =
new unsigned char[size];
14 ::memset(m_memory, 0, size);
19 Buffer::Buffer(
const Buffer& buf)
20 : m_memory(NULL), m_size(buf.m_size),
21 m_allocated(buf.m_allocated)
24 m_memory =
new unsigned char [buf.m_size];
25 ::memset(m_memory, 0, buf.m_size);
26 ::memcpy(m_memory, buf.m_memory, buf.m_size);
28 m_memory = buf.m_memory;
35 if (m_allocated && m_memory != NULL) {
47 m_allocated = buf.m_allocated;
49 m_memory =
new unsigned char [buf.m_size];
50 ::memset(m_memory, 0, buf.m_size);
51 ::memcpy(m_memory, buf.m_memory, buf.m_size);
53 m_memory = buf.m_memory;