/* Copyright (C) 2011 Her Majesty the Queen in Right of Canada (Communications Research Center Canada) */ /* This file is part of ODR-DabMod. ODR-DabMod is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ODR-DabMod is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with ODR-DabMod. If not, see . */ #ifndef BUFFER_H #define BUFFER_H #ifdef HAVE_CONFIG_H # include #endif #include class Buffer { protected: size_t len; size_t size; void *data; public: Buffer(const Buffer& copy); Buffer(size_t len = 0, const void *data = NULL); ~Buffer(); Buffer &operator=(const Buffer ©); Buffer &operator+=(const Buffer ©); void setLength(size_t len); void setData(const void *data, size_t len); void appendData(const void *data, size_t len); size_t getLength(); void *getData(); }; #endif // BUFFER_H