libopenraw
lib
decompressor.hpp
1
/*
2
* libopenraw - decompressor.h
3
*
4
* Copyright (C) 2007-2015 Hubert Figuiere
5
*
6
* This library is free software: you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public License
8
* as published by the Free Software Foundation, either version 3 of
9
* the License, or (at your option) any later version.
10
*
11
* This library is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this library. If not, see
18
* <http://www.gnu.org/licenses/>.
19
*/
20
21
#ifndef OR_INTERNALS_DECOMPRESS_H_
22
#define OR_INTERNALS_DECOMPRESS_H_
23
24
#include <stddef.h>
25
26
#include "rawdata.hpp"
27
28
namespace
OpenRaw
{
29
30
namespace
IO {
31
class
Stream;
32
}
33
34
namespace
Internals {
35
36
class
RawContainer;
37
38
class
Decompressor
{
39
public
:
40
Decompressor
(
IO::Stream
*stream,
RawContainer
*container);
41
virtual
~
Decompressor
();
42
43
// non copyable
44
Decompressor
(
const
Decompressor
&) =
delete
;
45
Decompressor
&operator=(
const
Decompressor
&) =
delete
;
46
50
virtual
RawDataPtr decompress() = 0;
51
52
protected
:
53
IO::Stream
*m_stream;
54
RawContainer
*m_container;
55
};
56
}
57
}
58
59
#endif
OpenRaw
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard. I guess it failed.
Definition:
arwfile.cpp:30
OpenRaw::Internals::RawContainer
Definition:
rawcontainer.hpp:41
OpenRaw::Internals::Decompressor
Definition:
decompressor.hpp:38
OpenRaw::IO::Stream
base virtual class for IO
Definition:
stream.hpp:41
Generated by
1.8.13