ome-files  0.1.0
Types.h
1 /*
2  * #%L
3  * OME-FILES C++ library for image IO.
4  * Copyright © 2006 - 2015 Open Microscopy Environment:
5  * - Massachusetts Institute of Technology
6  * - National Institutes of Health
7  * - University of Dundee
8  * - Board of Regents of the University of Wisconsin-Madison
9  * - Glencoe Software, Inc.
10  * %%
11  * Redistribution and use in source and binary forms, with or without
12  * modification, are permitted provided that the following conditions are met:
13  *
14  * 1. Redistributions of source code must retain the above copyright notice,
15  * this list of conditions and the following disclaimer.
16  * 2. Redistributions in binary form must reproduce the above copyright notice,
17  * this list of conditions and the following disclaimer in the documentation
18  * and/or other materials provided with the distribution.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30  * POSSIBILITY OF SUCH DAMAGE.
31  *
32  * The views and conclusions contained in the software and documentation are
33  * those of the authors and should not be interpreted as representing official
34  * policies, either expressed or implied, of any organization.
35  * #L%
36  */
37 
38 #ifndef OME_FILES_TIFF_TYPES_H
39 #define OME_FILES_TIFF_TYPES_H
40 
41 #include <ome/files/Types.h>
42 
43 #include <ome/compat/cstdint.h>
44 
45 namespace ome
46 {
47  namespace files
48  {
49  namespace tiff
50  {
51 
53  typedef uint16_t directory_index_type;
54 
56  typedef uint64_t offset_type;
57 
59  typedef unsigned int tag_type;
60 
62  enum Type
63  {
64  TYPE_NONE = 0,
65  TYPE_BYTE = 1,
66  TYPE_ASCII = 2,
67  TYPE_SHORT = 3,
68  TYPE_LONG = 4,
70  TYPE_SBYTE = 6,
73  TYPE_SLONG = 9,
75  TYPE_FLOAT = 11,
76  TYPE_DOUBLE = 12,
77  TYPE_IFD = 13,
78  TYPE_LONG8 = 16,
79  TYPE_SLONG8 = 17,
80  TYPE_IFD8 = 18
81  };
82 
85  {
98  COMPRESSION_NEXT = 32766,
102  COMPRESSION_IT8CTPAD = 32895,
107  COMPRESSION_PIXARFILM = 32908,
111  COMPRESSION_DCS = 32947,
118  };
119 
122  {
126  };
127 
130  {
133  };
134 
137  {
138  TOP_LEFT = 1,
139  TOP_RIGHT = 2,
142  LEFT_TOP = 5,
143  RIGHT_TOP = 6,
146  };
147 
150  {
153  RGB = 2,
154  PALETTE = 3,
155  MASK = 4,
156  SEPARATED = 5,
157  YCBCR = 6,
158  CIELAB = 8,
159  ICCLAB = 9,
160  ITULAB = 10,
161  CFA_ARRAY = 32803,
162  LOGL = 32844,
163  LOGLUV = 32845
164  };
165 
168  {
169  CONTIG = 1,
170  SEPARATE = 2
171  };
172 
175  {
176  NONE = 1,
179  };
180 
183  {
186  FLOAT = 3,
187  VOID = 4,
190  };
191 
194  {
195  BILEVEL = 1,
196  HALFTONE = 2,
198  };
199 
202  {
203  CENTERED = 1,
204  COSITED = 2
205  };
206 
208  enum TileType
209  {
212  };
213 
214  }
215  }
216 }
217 
218 #endif // OME_FILES_TIFF_TYPES_H
219 
220 /*
221  * Local Variables:
222  * mode:C++
223  * End:
224  */
TileType
Type of tile.
Definition: Types.h:208
CCITT modified Huffman RLE.
Definition: Types.h:87
IT8 Monochrome picture.
Definition: Types.h:105
8-bit signed integer.
Definition: Types.h:70
ITU L*a*b*.
Definition: Types.h:160
Placeholder.
Definition: Types.h:64
FillOrder
Fill order.
Definition: Types.h:129
IT8 Linework RLE.
Definition: Types.h:104
8-bit bytes with NUL terminator.
Definition: Types.h:66
Row 0 bottom, column 0 rhs.
Definition: Types.h:140
Tiles.
Definition: Types.h:211
Least significant bit to most significant bit.
Definition: Types.h:132
CCITT Group 3 fax encoding (deprecated).
Definition: Types.h:88
64-bit IEEE floating point.
Definition: Types.h:76
ISO JBIG.
Definition: Types.h:113
compression code 32947 is reserved for Oceana Matrix dev@oceana.com.
Definition: Types.h:112
SampleFormat
Sample format.
Definition: Types.h:182
Samples are contiguous (chunky).
Definition: Types.h:169
BigTIFF 64-bit signed integer.
Definition: Types.h:79
PlanarConfiguration
Planar configuration of samples.
Definition: Types.h:167
Deflate compression (Adobe).
Definition: Types.h:95
Macintosh RLE.
Definition: Types.h:100
Indexed colour with colormap.
Definition: Types.h:154
unsigned int tag_type
Tag number.
Definition: Types.h:59
No compression.
Definition: Types.h:86
Strips.
Definition: Types.h:210
Threshholding
Thresholding scheme.
Definition: Types.h:193
Most significant bit to least significant bit.
Definition: Types.h:131
LZMA2.
Definition: Types.h:117
Color separations.
Definition: Types.h:156
8-bit unsigned integer.
Definition: Types.h:65
CCITT T.4 (TIFF 6 name).
Definition: Types.h:89
Mask.
Definition: Types.h:155
ICC L*a*b*.
Definition: Types.h:159
1 w/ word alignment.
Definition: Types.h:99
SGI Log 24-bit packed.
Definition: Types.h:115
Complex integer.
Definition: Types.h:188
RGB subchannels.
Definition: Types.h:153
Unsigned integer.
Definition: Types.h:184
CCITT T.6 (TIFF 6 name).
Definition: Types.h:91
IEEE floating point.
Definition: Types.h:186
Row 0 top, column 0 lhs.
Definition: Types.h:138
Leadtools JPEG2000.
Definition: Types.h:116
CIE log2(L) (u',v').
Definition: Types.h:163
Compression
Compression technique.
Definition: Types.h:84
Row 0 lhs, column 0 bottom.
Definition: Types.h:145
Orientation
Image orientation.
Definition: Types.h:136
JPEG DCT compression.
Definition: Types.h:94
uint64_t offset_type
IFD offset.
Definition: Types.h:56
CCITT Group 4 fax encoding (deprecated).
Definition: Types.h:90
Row 0 bottom, column 0 lhs.
Definition: Types.h:141
compression codes 32908-32911 are reserved for Pixar.
Definition: Types.h:108
codes 32895-32898 are reserved for ANSI IT8 TIFF/IT
Definition: Types.h:103
Row 0 rhs, column 0 bottom.
Definition: Types.h:144
Horizontal differencing.
Definition: Types.h:177
Signed integer.
Definition: Types.h:185
Complex IEEE floating point.
Definition: Types.h:189
Row 0 top, column 0 rhs.
Definition: Types.h:139
Co-sited.
Definition: Types.h:204
CIE log2(L).
Definition: Types.h:162
64-bit signed fraction.
Definition: Types.h:74
16-bit signed integer.
Definition: Types.h:72
Pixar companded 11bit ZIP.
Definition: Types.h:109
32-bit unsigned integer (offset).
Definition: Types.h:77
Minimum value is black.
Definition: Types.h:152
SGI Log Luminance RLE.
Definition: Types.h:114
1976 CIE L*a*b*.
Definition: Types.h:158
CCIR 601.
Definition: Types.h:157
No prediction scheme used.
Definition: Types.h:176
ExtraSamples
Extra components description.
Definition: Types.h:121
Lempel-Ziv & Welch.
Definition: Types.h:92
Deflate compression.
Definition: Types.h:110
Row 0 lhs, column 0 top.
Definition: Types.h:142
Unassociated alpha data.
Definition: Types.h:125
YCbCrPosition
YCbCr positioning.
Definition: Types.h:201
NeXT 2-bit RLE.
Definition: Types.h:98
8-bit untyped data.
Definition: Types.h:71
TIFF/FX T.43 colour by layered JBIG compression.
Definition: Types.h:97
ThunderScan RLE.
Definition: Types.h:101
Associated alpha data with pre-multiplied color.
Definition: Types.h:124
64-bit unsigned fraction.
Definition: Types.h:69
Color Filter Array.
Definition: Types.h:161
TIFF/FX T.85 JBIG compression.
Definition: Types.h:96
PhotometricInterpretation
Photometric interpretation of pixel data.
Definition: Types.h:149
Minimum value is white.
Definition: Types.h:151
32-bit IEEE floating point.
Definition: Types.h:75
Centered.
Definition: Types.h:203
uint16_t directory_index_type
IFD index.
Definition: Types.h:53
Predictor
Prediction scheme.
Definition: Types.h:174
Unspecified data.
Definition: Types.h:123
Black and white.
Definition: Types.h:195
32-bit signed integer.
Definition: Types.h:73
BigTIFF 64-bit unsigned integer (offset).
Definition: Types.h:80
Row 0 rhs, column 0 top.
Definition: Types.h:143
BigTIFF 64-bit unsigned integer.
Definition: Types.h:78
IT8 Binary line art.
Definition: Types.h:106
Floating point.
Definition: Types.h:178
Samples are separate (planar).
Definition: Types.h:170
32-bit unsigned integer.
Definition: Types.h:68
Void.
Definition: Types.h:187
Error diffusion (Floyd-Steinberg).
Definition: Types.h:197
JPEG (deprecated).
Definition: Types.h:93
Type
Tag types.
Definition: Types.h:62
16-bit unsigned integer.
Definition: Types.h:67
Dithered.
Definition: Types.h:196