libopenraw
lib
rw2container.hpp
1
/* -*- Mode: C++ -*- */
2
/*
3
* libopenraw - rw2container.h
4
*
5
* Copyright (C) 2011-2015 Hubert Figuiere
6
*
7
* This library is free software: you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public License
9
* as published by the Free Software Foundation, either version 3 of
10
* the License, or (at your option) any later version.
11
*
12
* This library is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with this library. If not, see
19
* <http://www.gnu.org/licenses/>.
20
*/
21
22
#ifndef OR_INTERNALS_ORF_CONTAINER_H_
23
#define OR_INTERNALS_ORF_CONTAINER_H_
24
25
#include <sys/types.h>
26
#include "io/stream.hpp"
27
#include "rawcontainer.hpp"
28
#include "ifdfilecontainer.hpp"
29
30
namespace
OpenRaw
{
31
namespace
Internals {
32
33
static
const
char
ORF_SUBTYPE_16BPP =
'O'
;
34
static
const
char
ORF_SUBTYPE_12BPP =
'S'
;
35
36
class
Rw2Container
:
public
IfdFileContainer
{
37
public
:
38
Rw2Container
(
const
IO::Stream::Ptr &file, off_t offset);
40
virtual
~Rw2Container
();
41
42
Rw2Container
(
const
Rw2Container
&) =
delete
;
43
Rw2Container
&operator=(
const
Rw2Container
&) =
delete
;
44
48
virtual
IfdFileContainer::EndianType
isMagicHeader
(
const
char
*p,
int
len)
override
;
49
50
private
:
51
char
subtype_;
52
};
53
}
54
}
55
56
#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::IfdFileContainer
Definition:
ifdfilecontainer.hpp:47
OpenRaw::Internals::Rw2Container
Definition:
rw2container.hpp:36
OpenRaw::Internals::RawContainer::EndianType
EndianType
Definition:
rawcontainer.hpp:44
OpenRaw::Internals::Rw2Container::isMagicHeader
virtual IfdFileContainer::EndianType isMagicHeader(const char *p, int len) override
Definition:
rw2container.cpp:41
OpenRaw::Internals::Rw2Container::~Rw2Container
virtual ~Rw2Container()
Definition:
rw2container.cpp:37
Generated by
1.8.13