EVOLUTION-MANAGER
Edit File: rawMediaPacket.cpp
/* * RawMediaPacket class to carry a raw bunch of data * * Copyright (C) 2005-2008 Joern Seger * * This program 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 2 of the License, or * (at your option) any later version. * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * */ #include <string.h> #include "rawMediaPacket.h" RawMediaData::RawMediaData() : data(0), length(0) { } RawMediaData::RawMediaData(uint8* _data, uint32 _length, bool copy) { if (copy) memcpy(data=new unsigned char[_length], _data, length=_length); else { data = _data; length = _length; } } RawMediaData::~RawMediaData() { if (data) delete[] data; } uint8* RawMediaData::getData(uint32& _length) { _length = length; return(data); } uint8* RawMediaData::getData() { return(data); } void RawMediaData::setData(uint8* _data, uint32 _length, bool copy) { if (data) delete[] data; length = _length; if (copy) memcpy(data=new unsigned char[length], _data, length); else data = _data; } uint32 RawMediaData::size() { return(length); } /*********************************/ RawMediaPacket::RawMediaPacket() { } RawMediaPacket::RawMediaPacket(const RawMediaPacket& packet) : RefObject<RawMediaData>(packet) { } RawMediaPacket::RawMediaPacket(RawMediaData* dataPtr) : RefObject<RawMediaData>(dataPtr) { } RawMediaPacket::~RawMediaPacket() { } uint8* RawMediaPacket::getData(uint32& length) { return(objPtr->getData(length)); } uint8* RawMediaPacket::getData() { return(objPtr->getData()); } uint32 RawMediaPacket::size() { return(objPtr->size()); }