unpack.h

00001 /*
00002  * libopenraw - unpack.cpp
00003  *
00004  * Copyright (C) 2008 Hubert Figuiere
00005  * Copyright (C) 2008 Novell, Inc.
00006  *
00007  * This library is free software: you can redistribute it and/or
00008  * modify it under the terms of the GNU Lesser General Public License
00009  * as published by the Free Software Foundation, either version 3 of
00010  * the License, or (at your option) any later version.
00011  *
00012  * This library is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015  * Lesser General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Lesser General Public
00018  * License along with this library.  If not, see
00019  * <http://www.gnu.org/licenses/>.
00020  */
00021 
00022 
00023 #ifndef __UNPACK_H__
00024 #define __UNPACK_H__
00025 
00026 #include <stdint.h>
00027 #include <stddef.h>
00028 
00029 #include <boost/noncopyable.hpp>
00030 
00031 namespace OpenRaw { namespace Internals {
00032 
00034     class Unpack
00035         : public boost::noncopyable
00036     {
00037     public:
00038         Unpack(uint32_t w, uint32_t t);
00039 
00040         size_t block_size();
00041         size_t unpack_be12to16(uint8_t *dest, const uint8_t *src, size_t size);
00042     private:
00043         uint32_t m_w;
00044         uint32_t m_type;
00045     };
00046 
00047 } }
00048 
00049 #endif
Generated on Thu Jul 29 20:43:09 2010 for libopenraw by  doxygen 1.6.3