libopenraw
rawdata.h
1 /*
2  * libopenraw - rawdata.h
3  *
4  * Copyright (C) 2007-2008 Hubert Figuiere
5  * Copyright (C) 2008 Novell, Inc.
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 
23 #ifndef __OPENRAW_RAWDATA_H__
24 #define __OPENRAW_RAWDATA_H__
25 
26 #include <vector>
27 
28 #include <libopenraw/libopenraw.h>
29 #include <libopenraw++/bitmapdata.h>
30 
31 
32 namespace OpenRaw {
33 
34 class RawData
35  : public BitmapData
36 {
37 public:
38  typedef or_cfa_pattern CfaPattern;
39  static RawData * getAndExtractRawData(const char* filename,
40  uint32_t options,
41  or_error & err);
42 
43  RawData();
44  virtual ~RawData();
45 
46  uint16_t min();
47  uint16_t max();
48  void setMin(uint16_t _m);
49  void setMax(uint16_t _m);
50 
52  void swap(RawData & with);
53 
54  virtual void *allocData(const size_t s);
55  virtual void setDimensions(uint32_t x, uint32_t y);
56  void setCfaPattern(CfaPattern t);
57  CfaPattern cfaPattern();
58  uint32_t compression();
59  void setCompression(uint32_t c);
60 
61 
62  void setSlices(const std::vector<uint16_t> & slices);
63 
65 // BitmapData &append(uint8_t c);
67  RawData &append(uint16_t c);
69  void nextRow();
70 private:
71  class Private;
73 
75  RawData(const RawData& f);
77  RawData & operator=(const RawData&);
78 };
79 
80 }
81 
82 /*
83  Local Variables:
84  mode:c++
85  c-file-style:"stroustrup"
86  c-file-offsets:((innamespace . 0))
87  indent-tabs-mode:nil
88  fill-column:80
89  End:
90 */
91 #endif
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:33
virtual void setDimensions(uint32_t x, uint32_t y)
Definition: rawdata.cpp:132
RawData & append(uint16_t c)
Definition: rawdata.cpp:185
void swap(RawData &with)
Definition: rawdata.cpp:117