libopenraw
Main Page
Related Pages
Namespaces
Classes
Files
File List
lib
crwfile.h
1
/*
2
* libopenraw - crwfile.h
3
*
4
* Copyright (C) 2006-2008 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
22
23
24
#ifndef __CRWFILE_H_
25
#define __CRWFILE_H_
26
27
#include <libopenraw++/rawfile.h>
28
29
#include "rawfilefactory.h"
30
31
namespace
OpenRaw {
32
33
class
Thumbnail;
34
35
namespace
IO {
36
class
File;
37
}
38
39
namespace
Internals {
40
class
CIFFContainer;
41
42
class
CRWFile
43
:
public
OpenRaw::RawFile
44
{
45
public
:
46
static
RawFile
*factory(
IO::Stream
*);
47
CRWFile
(
IO::Stream
*);
48
virtual
~
CRWFile
();
49
50
protected
:
51
52
53
virtual ::or_error
_enumThumbnailSizes
(std::vector<uint32_t> &list);
54
55
virtual ::or_error
_getThumbnail
(uint32_t size,
Thumbnail
& thumbnail);
56
57
virtual ::or_error
_getRawData
(
RawData
& data, uint32_t options);
58
virtual
MetaValue
*_getMetaValue(int32_t meta_index);
59
60
virtual
void
_identifyId();
61
private
:
62
CRWFile
(
const
CRWFile
&);
63
CRWFile
& operator=(
const
CRWFile
&);
64
65
IO::Stream
*m_io;
66
CIFFContainer
*m_container;
67
uint32_t m_x;
68
uint32_t m_y;
69
70
static
const
RawFile::camera_ids_t
s_def[];
71
};
72
}
73
74
}
75
76
#endif
Generated on Sat Jan 12 2013 13:31:44 for libopenraw by
1.8.3