1 /*****************************************************************************/
2 // Copyright 2006-2008 Adobe Systems Incorporated
3 // All Rights Reserved.
4 //
5 // NOTICE:  Adobe permits you to use, modify, and distribute this file in
6 // accordance with the terms of the Adobe license agreement accompanying it.
7 /*****************************************************************************/
8 
9 /* $Id: //mondo/dng_sdk_1_2/dng_sdk/source/dng_tag_codes.h#2 $ */
10 /* $DateTime: 2008/04/02 14:06:57 $ */
11 /* $Change: 440485 $ */
12 /* $Author: tknoll $ */
13 
14 /*****************************************************************************/
15 
16 #ifndef __dng_tag_codes__
17 #define __dng_tag_codes__
18 
19 /*****************************************************************************/
20 
21 // TIFF tags 50706 through 50741 registered at:
22 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
23 // on 2003-11-04 & 2003-12-02, purpose "Digital Negative".
24 
25 // TIFF tags 50778 through 50781 registered at:
26 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
27 // on 2004-08-17, purpose "Digital Negative".
28 
29 // TIFF tags 50827 through 50834 registered at:
30 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
31 // on 2004-12-06, purpose "Digital Negative".
32 
33 // TIFF tags 50879 registered at:
34 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
35 // on 2006-03-23, purpose "Digital Negative".
36 
37 // TIFF compression numbers 34892 through 34895 registered at:
38 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
39 // on 2003-11-04, purpose "Digital Negative".
40 
41 // TIFF tags numbers 50931 through 50942 registered at:
42 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
43 // on 2007-04-30, purpose "Digital Negative".
44 
45 // TIFF tags numbers 50964 through 50975 registered at:
46 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
47 // on 2007-12-17, purpose "Digital Negative".
48 
49 // TIFF tags numbers 50981 through 50982 registered at:
50 // http://partners.adobe.com/asn/tech/tiff/tiffregister.jsp
51 // on 2008-04-01, purpose "Digital Negative".
52 
53 /*****************************************************************************/
54 
55 // TIFF, DNG, TIFF/EP, and Exif tag codes all share the main TIFF tag code
56 // number space.  In cases where TIFF/EP and Exif have different values for
57 // tags with the same name, "Exif" is appended to the name of the Exif version
58 // of the tag.
59 
60 enum
61 	{
62 	tcNewSubFileType				= 254,
63 	tcSubFileType					= 255,
64 	tcImageWidth					= 256,
65 	tcImageLength					= 257,
66 	tcBitsPerSample					= 258,
67 	tcCompression					= 259,
68 	tcPhotometricInterpretation		= 262,
69 	tcThresholding					= 263,
70 	tcCellWidth						= 264,
71 	tcCellLength					= 265,
72 	tcFillOrder						= 266,
73 	tcImageDescription				= 270,
74 	tcMake							= 271,
75 	tcModel							= 272,
76 	tcStripOffsets					= 273,
77 	tcOrientation					= 274,
78 	tcSamplesPerPixel				= 277,
79 	tcRowsPerStrip					= 278,
80 	tcStripByteCounts				= 279,
81 	tcMinSampleValue				= 280,
82 	tcMaxSampleValue				= 281,
83 	tcXResolution					= 282,
84 	tcYResolution					= 283,
85 	tcPlanarConfiguration			= 284,
86 	tcFreeOffsets					= 285,
87 	tcFreeByteCounts				= 286,
88 	tcGrayResponseUnit				= 290,
89 	tcGrayResponseCurve				= 291,
90 	tcResolutionUnit				= 296,
91 	tcTransferFunction				= 301,
92 	tcSoftware						= 305,
93 	tcDateTime						= 306,
94 	tcArtist						= 315,
95 	tcHostComputer					= 316,
96 	tcPredictor						= 317,
97 	tcWhitePoint					= 318,
98 	tcPrimaryChromaticities			= 319,
99 	tcColorMap						= 320,
100 	tcTileWidth						= 322,
101 	tcTileLength					= 323,
102 	tcTileOffsets					= 324,
103 	tcTileByteCounts				= 325,
104 	tcSubIFDs						= 330,
105 	tcExtraSamples					= 338,
106 	tcSampleFormat					= 339,
107 	tcJPEGTables					= 347,
108 	tcJPEGProc						= 512,
109 	tcJPEGInterchangeFormat			= 513,
110 	tcJPEGInterchangeFormatLength	= 514,
111 	tcYCbCrCoefficients				= 529,
112 	tcYCbCrSubSampling				= 530,
113 	tcYCbCrPositioning				= 531,
114 	tcReferenceBlackWhite			= 532,
115 	tcXMP							= 700,
116 	tcKodakCameraSerialNumber		= 33405,
117 	tcCFARepeatPatternDim			= 33421,
118 	tcCFAPattern					= 33422,
119 	tcBatteryLevel					= 33423,
120 	tcKodakDCRPrivateIFD			= 33424,
121 	tcCopyright						= 33432,
122 	tcExposureTime					= 33434,
123 	tcFNumber						= 33437,
124 	tcIPTC_NAA						= 33723,
125 	tcLeafPKTS						= 34310,
126 	tcAdobeData						= 34377,
127 	tcExifIFD						= 34665,
128 	tcICCProfile					= 34675,
129 	tcExposureProgram				= 34850,
130 	tcSpectralSensitivity			= 34852,
131 	tcGPSInfo						= 34853,
132 	tcISOSpeedRatings				= 34855,
133 	tcOECF							= 34856,
134 	tcInterlace						= 34857,
135 	tcTimeZoneOffset				= 34858,
136 	tcSelfTimerMode					= 34859,
137 	tcExifVersion					= 36864,
138 	tcDateTimeOriginal				= 36867,
139 	tcDateTimeDigitized				= 36868,
140 	tcComponentsConfiguration		= 37121,
141 	tcCompressedBitsPerPixel		= 37122,
142 	tcShutterSpeedValue				= 37377,
143 	tcApertureValue					= 37378,
144 	tcBrightnessValue				= 37379,
145 	tcExposureBiasValue				= 37380,
146 	tcMaxApertureValue				= 37381,
147 	tcSubjectDistance				= 37382,
148 	tcMeteringMode					= 37383,
149 	tcLightSource					= 37384,
150 	tcFlash							= 37385,
151 	tcFocalLength					= 37386,
152 	tcFlashEnergy					= 37387,
153 	tcSpatialFrequencyResponse		= 37388,
154 	tcNoise							= 37389,
155 	tcFocalPlaneXResolution 		= 37390,
156 	tcFocalPlaneYResolution			= 37391,
157 	tcFocalPlaneResolutionUnit		= 37392,
158 	tcImageNumber					= 37393,
159 	tcSecurityClassification		= 37394,
160 	tcImageHistory					= 37395,
161 	tcSubjectArea					= 37396,
162 	tcExposureIndex					= 37397,
163 	tcTIFF_EP_StandardID			= 37398,
164 	tcSensingMethod					= 37399,
165 	tcMakerNote						= 37500,
166 	tcUserComment					= 37510,
167 	tcSubsecTime					= 37520,
168 	tcSubsecTimeOriginal			= 37521,
169 	tcSubsecTimeDigitized			= 37522,
170 	tcAdobeLayerData				= 37724,
171 	tcFlashPixVersion				= 40960,
172 	tcColorSpace					= 40961,
173 	tcPixelXDimension				= 40962,
174 	tcPixelYDimension				= 40963,
175 	tcRelatedSoundFile				= 40964,
176 	tcInteroperabilityIFD			= 40965,
177 	tcFlashEnergyExif				= 41483,
178 	tcSpatialFrequencyResponseExif 	= 41484,
179 	tcFocalPlaneXResolutionExif		= 41486,
180 	tcFocalPlaneYResolutionExif		= 41487,
181 	tcFocalPlaneResolutionUnitExif	= 41488,
182 	tcSubjectLocation				= 41492,
183 	tcExposureIndexExif			    = 41493,
184 	tcSensingMethodExif				= 41495,
185 	tcFileSource					= 41728,
186 	tcSceneType						= 41729,
187 	tcCFAPatternExif				= 41730,
188 	tcCustomRendered				= 41985,
189 	tcExposureMode					= 41986,
190 	tcWhiteBalance					= 41987,
191 	tcDigitalZoomRatio				= 41988,
192 	tcFocalLengthIn35mmFilm			= 41989,
193 	tcSceneCaptureType				= 41990,
194 	tcGainControl					= 41991,
195 	tcContrast						= 41992,
196 	tcSaturation					= 41993,
197 	tcSharpness						= 41994,
198 	tcDeviceSettingDescription		= 41995,
199 	tcSubjectDistanceRange			= 41996,
200 	tcImageUniqueID					= 42016,
201 	tcGamma							= 42240,
202 	tcPrintImageMatchingInfo		= 50341,
203 	tcDNGVersion					= 50706,
204 	tcDNGBackwardVersion			= 50707,
205 	tcUniqueCameraModel				= 50708,
206 	tcLocalizedCameraModel			= 50709,
207 	tcCFAPlaneColor					= 50710,
208 	tcCFALayout						= 50711,
209 	tcLinearizationTable			= 50712,
210 	tcBlackLevelRepeatDim			= 50713,
211 	tcBlackLevel					= 50714,
212 	tcBlackLevelDeltaH				= 50715,
213 	tcBlackLevelDeltaV				= 50716,
214 	tcWhiteLevel					= 50717,
215 	tcDefaultScale					= 50718,
216 	tcDefaultCropOrigin				= 50719,
217 	tcDefaultCropSize				= 50720,
218 	tcColorMatrix1					= 50721,
219 	tcColorMatrix2					= 50722,
220 	tcCameraCalibration1			= 50723,
221 	tcCameraCalibration2			= 50724,
222 	tcReductionMatrix1				= 50725,
223 	tcReductionMatrix2				= 50726,
224 	tcAnalogBalance					= 50727,
225 	tcAsShotNeutral					= 50728,
226 	tcAsShotWhiteXY					= 50729,
227 	tcBaselineExposure				= 50730,
228 	tcBaselineNoise					= 50731,
229 	tcBaselineSharpness				= 50732,
230 	tcBayerGreenSplit				= 50733,
231 	tcLinearResponseLimit			= 50734,
232 	tcCameraSerialNumber			= 50735,
233 	tcLensInfo						= 50736,
234 	tcChromaBlurRadius				= 50737,
235 	tcAntiAliasStrength				= 50738,
236 	tcShadowScale					= 50739,
237 	tcDNGPrivateData				= 50740,
238 	tcMakerNoteSafety				= 50741,
239 	tcCalibrationIlluminant1		= 50778,
240 	tcCalibrationIlluminant2		= 50779,
241 	tcBestQualityScale				= 50780,
242 	tcRawDataUniqueID				= 50781,
243 	tcOriginalRawFileName			= 50827,
244 	tcOriginalRawFileData			= 50828,
245 	tcActiveArea					= 50829,
246 	tcMaskedAreas					= 50830,
247 	tcAsShotICCProfile				= 50831,
248 	tcAsShotPreProfileMatrix		= 50832,
249 	tcCurrentICCProfile				= 50833,
250 	tcCurrentPreProfileMatrix		= 50834,
251 	tcColorimetricReference			= 50879,
252 	tcCameraCalibrationSignature	= 50931,
253 	tcProfileCalibrationSignature  	= 50932,
254 	tcExtraCameraProfiles			= 50933,
255 	tcAsShotProfileName				= 50934,
256 	tcNoiseReductionApplied			= 50935,
257 	tcProfileName					= 50936,
258 	tcProfileHueSatMapDims			= 50937,
259 	tcProfileHueSatMapData1			= 50938,
260 	tcProfileHueSatMapData2			= 50939,
261 	tcProfileToneCurve				= 50940,
262 	tcProfileEmbedPolicy			= 50941,
263 	tcProfileCopyright				= 50942,
264 	tcForwardMatrix1				= 50964,
265 	tcForwardMatrix2				= 50965,
266 	tcPreviewApplicationName		= 50966,
267 	tcPreviewApplicationVersion		= 50967,
268 	tcPreviewSettingsName			= 50968,
269 	tcPreviewSettingsDigest			= 50969,
270 	tcPreviewColorSpace				= 50970,
271 	tcPreviewDateTime				= 50971,
272 	tcRawImageDigest				= 50972,
273 	tcOriginalRawFileDigest			= 50973,
274 	tcSubTileBlockSize				= 50974,
275 	tcRowInterleaveFactor			= 50975,
276 	tcProfileLookTableDims			= 50981,
277 	tcProfileLookTableData			= 50982,
278 	tcKodakKDCPrivateIFD			= 65024
279 	};
280 
281 /*****************************************************************************/
282 
283 // Additional values that can be passed as IFD parent codes.
284 
285 enum
286 	{
287 
288 	tcFirstSubIFD					= 0x10000,
289 	tcLastSubIFD					= 0x1FFFF,
290 
291 	tcFirstChainedIFD				= 0x20000,
292 	tcLastChainedIFD				= 0x2FFFF,
293 
294 	tcFirstMakerNoteIFD				= 0x30000,
295 	tcLastMakerNoteIFD				= 0x3FFFF,
296 
297 	tcCanonMakerNote				= tcFirstMakerNoteIFD,
298 	tcEpsonMakerNote,
299 	tcFujiMakerNote,
300 	tcKodakMakerNote,
301 	tcKodakMakerNote65280,
302 	tcLeicaMakerNote,
303 	tcMamiyaMakerNote,
304 	tcMinoltaMakerNote,
305 	tcNikonMakerNote,
306 	tcOlympusMakerNote,
307 	tcOlympusMakerNote8208,
308 	tcOlympusMakerNote8224,
309 	tcOlympusMakerNote8240,
310 	tcOlympusMakerNote8256,
311 	tcOlympusMakerNote8272,
312 	tcOlympusMakerNote12288,
313 	tcPanasonicMakerNote,
314 	tcPentaxMakerNote,
315 	tcPhaseOneMakerNote,
316 	tcRicohMakerNote,
317 	tcRicohMakerNoteCameraInfo,
318 	tcSonyMakerNote,
319 	tcSonyMakerNoteSubInfo,
320 	tcSonyPrivateIFD1,
321 	tcSonyPrivateIFD2,
322 	tcSonyPrivateIFD3A,
323 	tcSonyPrivateIFD3B,
324 	tcSonyPrivateIFD3C,
325 
326 	tcCanonCRW						= 0x40000,
327 	tcContaxRAW,
328 	tcContaxHeader,
329 	tcFujiRAF,
330 	tcFujiHeader,
331 	tcFujiRawInfo1,
332 	tcFujiRawInfo2,
333 	tcLeafMOS,
334 	tcMinoltaMRW,
335 	tcPanasonicRAW,
336 	tcFoveonX3F,
337 	tcJPEG,
338 	tcAdobePSD
339 
340 	};
341 
342 /*****************************************************************************/
343 
344 // GPS tag codes are only valid in the GPS IFD.
345 
346 enum
347 	{
348 	tcGPSVersionID					= 0,
349 	tcGPSLatitudeRef				= 1,
350 	tcGPSLatitude					= 2,
351 	tcGPSLongitudeRef				= 3,
352 	tcGPSLongitude					= 4,
353 	tcGPSAltitudeRef				= 5,
354 	tcGPSAltitude					= 6,
355 	tcGPSTimeStamp					= 7,
356 	tcGPSSatellites					= 8,
357 	tcGPSStatus						= 9,
358 	tcGPSMeasureMode				= 10,
359 	tcGPSDOP						= 11,
360 	tcGPSSpeedRef					= 12,
361 	tcGPSSpeed						= 13,
362 	tcGPSTrackRef					= 14,
363 	tcGPSTrack						= 15,
364 	tcGPSImgDirectionRef			= 16,
365 	tcGPSImgDirection				= 17,
366 	tcGPSMapDatum					= 18,
367 	tcGPSDestLatitudeRef			= 19,
368 	tcGPSDestLatitude				= 20,
369 	tcGPSDestLongitudeRef			= 21,
370 	tcGPSDestLongitude				= 22,
371 	tcGPSDestBearingRef				= 23,
372 	tcGPSDestBearing				= 24,
373 	tcGPSDestDistanceRef			= 25,
374 	tcGPSDestDistance				= 26,
375 	tcGPSProcessingMethod			= 27,
376 	tcGPSAreaInformation			= 28,
377 	tcGPSDateStamp					= 29,
378 	tcGPSDifferential				= 30
379 	};
380 
381 /*****************************************************************************/
382 
383 // Tag codes used in the Interoperability IFD.
384 
385 enum
386 	{
387 	tcInteroperabilityIndex			= 0x0001,
388 	tcInteroperabilityVersion		= 0x0002,
389 	tcRelatedImageFileFormat		= 0x1000,
390 	tcRelatedImageWidth				= 0x1001,
391 	tcRelatedImageLength			= 0x1002
392 	};
393 
394 /*****************************************************************************/
395 
396 // JPEG marker codes.
397 
398 enum JpegMarker
399 	{
400 
401 	M_TEM = 0x01,
402 
403 	M_SOF0  = 0xc0,
404 	M_SOF1  = 0xc1,
405 	M_SOF2  = 0xc2,
406 	M_SOF3  = 0xc3,
407 	M_DHT   = 0xc4,
408 	M_SOF5  = 0xc5,
409 	M_SOF6  = 0xc6,
410 	M_SOF7  = 0xc7,
411 	M_JPG   = 0xc8,
412 	M_SOF9  = 0xc9,
413 	M_SOF10 = 0xca,
414 	M_SOF11 = 0xcb,
415 	M_DAC   = 0xcc,
416 	M_SOF13 = 0xcd,
417 	M_SOF14 = 0xce,
418 	M_SOF15 = 0xcf,
419 
420 	M_RST0 = 0xd0,
421 	M_RST1 = 0xd1,
422 	M_RST2 = 0xd2,
423 	M_RST3 = 0xd3,
424 	M_RST4 = 0xd4,
425 	M_RST5 = 0xd5,
426 	M_RST6 = 0xd6,
427 	M_RST7 = 0xd7,
428 
429 	M_SOI = 0xd8,
430 	M_EOI = 0xd9,
431 	M_SOS = 0xda,
432 	M_DQT = 0xdb,
433 	M_DNL = 0xdc,
434 	M_DRI = 0xdd,
435 	M_DHP = 0xde,
436 	M_EXP = 0xdf,
437 
438 	M_APP0  = 0xe0,
439 	M_APP1  = 0xe1,
440 	M_APP2  = 0xe2,
441 	M_APP3  = 0xe3,
442 	M_APP4  = 0xe4,
443 	M_APP5  = 0xe5,
444 	M_APP6  = 0xe6,
445 	M_APP7  = 0xe7,
446 	M_APP8  = 0xe8,
447 	M_APP9  = 0xe9,
448 	M_APP10 = 0xea,
449 	M_APP11 = 0xeb,
450 	M_APP12 = 0xec,
451 	M_APP13 = 0xed,
452 	M_APP14 = 0xee,
453 	M_APP15 = 0xef,
454 
455 	M_JPG0  = 0xf0,
456 	M_JPG1  = 0xf1,
457 	M_JPG2  = 0xf2,
458 	M_JPG3  = 0xf3,
459 	M_JPG4  = 0xf4,
460 	M_JPG5  = 0xf5,
461 	M_JPG6  = 0xf6,
462 	M_JPG7  = 0xf7,
463 	M_JPG8  = 0xf8,
464 	M_JPG9  = 0xf9,
465 	M_JPG10 = 0xfa,
466 	M_JPG11 = 0xfb,
467 	M_JPG12 = 0xfc,
468 	M_JPG13 = 0xfd,
469 	M_COM   = 0xfe,
470 
471 	M_ERROR = 0x100
472 
473 	};
474 
475 /*****************************************************************************/
476 
477 #endif
478 
479 /*****************************************************************************/
480