TagDefinitions.h revision e507721000647a7d8afe44c63ef7fd04ef8971b1
1/* 2 * Copyright 2014 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17#ifndef IMG_UTILS_TIFF_TAG_DEFINITION_H 18#define IMG_UTILS_TIFF_TAG_DEFINITION_H 19 20#include <img_utils/TiffEntry.h> 21#include <img_utils/Output.h> 22#include <img_utils/TiffHelpers.h> 23#include <stdint.h> 24 25namespace android { 26namespace img_utils { 27 28/** 29 * Tag definitions contain information about standard TIFF compatible tags. 30 */ 31typedef struct TagDefinition { 32 // The specified tag ID. 33 uint16_t tagId; 34 // The default type for this tag. This must be a valid TIFF type. 35 TagType defaultType; 36 // The default Image File Directory (IFD) for this tag. 37 uint32_t defaultIfd; 38 // The valid count for this tag, or 0 if the count is not fixed. 39 uint32_t fixedCount; 40 // The endianness of the tag value, or UNDEFINED_ENDIAN if there is no fixed endian 41 Endianness fixedEndian; 42} TagDefinition_t; 43 44/** 45 * Convenience defines for tag ids. 46 */ 47enum { 48 TAG_RAWTOPREVIEWGAIN = 0xC7A8u, 49 TAG_NEWRAWIMAGEDIGEST = 0xC7A7u, 50 TAG_ORIGINALDEFAULTCROPSIZE = 0xC793u, 51 TAG_ORIGINALBESTQUALITYFINALSIZE = 0xC792u, 52 TAG_ORIGINALDEFAULTFINALSIZE = 0xC791u, 53 TAG_PROFILEHUESATMAPENCODING = 0xC7A3u, 54 TAG_PROFILELOOKTABLEENCODING = 0xC7A4u, 55 TAG_BASELINEEXPOSUREOFFSET = 0xC7A5u, 56 TAG_DEFAULTBLACKRENDER = 0xC7A6u, 57 TAG_DEFAULTUSERCROP = 0xC7B5u, 58 TAG_NOISEPROFILE = 0xC761u, 59 TAG_OPCODELIST3 = 0xC74Eu, 60 TAG_OPCODELIST2 = 0xC741u, 61 TAG_OPCODELIST1 = 0xC740u, 62 TAG_PROFILELOOKTABLEDATA = 0xC726u, 63 TAG_PROFILELOOKTABLEDIMS = 0xC725u, 64 TAG_ROWINTERLEAVEFACTOR = 0xC71Fu, 65 TAG_SUBTILEBLOCKSIZE = 0xC71Eu, 66 TAG_ORIGINALRAWFILEDIGEST = 0xC71Du, 67 TAG_RAWIMAGEDIGEST = 0xC71Cu, 68 TAG_PREVIEWDATETIME = 0xC71Bu, 69 TAG_PREVIEWCOLORSPACE = 0xC71Au, 70 TAG_PREVIEWSETTINGSDIGEST = 0xC719u, 71 TAG_PREVIEWSETTINGSNAME = 0xC718u, 72 TAG_PREVIEWAPPLICATIONVERSION = 0xC717u, 73 TAG_PREVIEWAPPLICATIONNAME = 0xC716u, 74 TAG_FORWARDMATRIX2 = 0xC715u, 75 TAG_FORWARDMATRIX1 = 0xC714u, 76 TAG_PROFILECOPYRIGHT = 0xC6FEu, 77 TAG_PROFILEEMBEDPOLICY = 0xC6FDu, 78 TAG_PROFILETONECURVE = 0xC6FCu, 79 TAG_PROFILEHUESATMAPDATA2 = 0xC6FBu, 80 TAG_PROFILEHUESATMAPDATA1 = 0xC6FAu, 81 TAG_PROFILEHUESATMAPDIMS = 0xC6F9u, 82 TAG_PROFILENAME = 0xC6F8u, 83 TAG_NOISEREDUCTIONAPPLIED = 0xC6F7u, 84 TAG_ASSHOTPROFILENAME = 0xC6F6u, 85 TAG_EXTRACAMERAPROFILES = 0xC6F5u, 86 TAG_PROFILECALIBRATIONSIGNATURE = 0xC6F4u, 87 TAG_CAMERACALIBRATIONSIGNATURE = 0xC6F3u, 88 TAG_COLORIMETRICREFERENCE = 0xC6BFu, 89 TAG_CURRENTPREPROFILEMATRIX = 0xC692u, 90 TAG_CURRENTICCPROFILE = 0xC691u, 91 TAG_ASSHOTPREPROFILEMATRIX = 0xC690u, 92 TAG_ASSHOTICCPROFILE = 0xC68Fu, 93 TAG_MASKEDAREAS = 0xC68Eu, 94 TAG_ACTIVEAREA = 0xC68Du, 95 TAG_ORIGINALRAWFILEDATA = 0xC68Cu, 96 TAG_ORIGINALRAWFILENAME = 0xC68Bu, 97 TAG_RAWDATAUNIQUEID = 0xC65Du, 98 TAG_MAKERNOTESAFETY = 0xC635u, 99 TAG_DNGPRIVATEDATA = 0xC634u, 100 TAG_SHADOWSCALE = 0xC633u, 101 TAG_ANTIALIASSTRENGTH = 0xC632u, 102 TAG_CHROMABLURRADIUS = 0xC631u, 103 TAG_LENSINFO = 0xC630u, 104 TAG_CAMERASERIALNUMBER = 0xC62Fu, 105 TAG_LINEARRESPONSELIMIT = 0xC62Eu, 106 TAG_BAYERGREENSPLIT = 0xC62Du, 107 TAG_BASELINESHARPNESS = 0xC62Cu, 108 TAG_BASELINENOISE = 0xC62Bu, 109 TAG_BASELINEEXPOSURE = 0xC62Au, 110 TAG_ASSHOTWHITEXY = 0xC629u, 111 TAG_ASSHOTNEUTRAL = 0xC628u, 112 TAG_ANALOGBALANCE = 0xC627u, 113 TAG_REDUCTIONMATRIX2 = 0xC626u, 114 TAG_REDUCTIONMATRIX1 = 0xC625u, 115 TAG_CAMERACALIBRATION2 = 0xC624u, 116 TAG_CAMERACALIBRATION1 = 0xC623u, 117 TAG_COLORMATRIX2 = 0xC622u, 118 TAG_COLORMATRIX1 = 0xC621u, 119 TAG_CALIBRATIONILLUMINANT2 = 0xC65Bu, 120 TAG_CALIBRATIONILLUMINANT1 = 0xC65Au, 121 TAG_DEFAULTCROPSIZE = 0xC620u, 122 TAG_DEFAULTCROPORIGIN = 0xC61Fu, 123 TAG_BESTQUALITYSCALE = 0xC65Cu, 124 TAG_DEFAULTSCALE = 0xC61Eu, 125 TAG_WHITELEVEL = 0xC61Du, 126 TAG_BLACKLEVELDELTAV = 0xC61Cu, 127 TAG_BLACKLEVELDELTAH = 0xC61Bu, 128 TAG_BLACKLEVEL = 0xC61Au, 129 TAG_BLACKLEVELREPEATDIM = 0xC619u, 130 TAG_LINEARIZATIONTABLE = 0xC618u, 131 TAG_CFALAYOUT = 0xC617u, 132 TAG_CFAPLANECOLOR = 0xC616u, 133 TAG_LOCALIZEDCAMERAMODEL = 0xC615u, 134 TAG_UNIQUECAMERAMODEL = 0xC614u, 135 TAG_DNGBACKWARDVERSION = 0xC613u, 136 TAG_DNGVERSION = 0xC612u, 137 TAG_SUBFILETYPE = 0x00FFu, 138 TAG_YRESOLUTION = 0x011Bu, 139 TAG_XRESOLUTION = 0x011Au, 140 TAG_THRESHHOLDING = 0x0107u, 141 TAG_STRIPOFFSETS = 0x0111u, 142 TAG_STRIPBYTECOUNTS = 0x0117u, 143 TAG_SOFTWARE = 0x0131u, 144 TAG_SAMPLESPERPIXEL = 0x0115u, 145 TAG_ROWSPERSTRIP = 0x0116u, 146 TAG_RESOLUTIONUNIT = 0x0128u, 147 TAG_PLANARCONFIGURATION = 0x011Cu, 148 TAG_PHOTOMETRICINTERPRETATION = 0x0106u, 149 TAG_ORIENTATION = 0x0112u, 150 TAG_NEWSUBFILETYPE = 0x00FEu, 151 TAG_MODEL = 0x0110u, 152 TAG_MINSAMPLEVALUE = 0x0118u, 153 TAG_MAXSAMPLEVALUE = 0x0119u, 154 TAG_MAKE = 0x010Fu, 155 TAG_IMAGEWIDTH = 0x0100u, 156 TAG_IMAGELENGTH = 0x0101u, 157 TAG_IMAGEDESCRIPTION = 0x010Eu, 158 TAG_HOSTCOMPUTER = 0x013Cu, 159 TAG_GRAYRESPONSEUNIT = 0x0122u, 160 TAG_GRAYRESPONSECURVE = 0x0123u, 161 TAG_FREEOFFSETS = 0x0120u, 162 TAG_FREEBYTECOUNTS = 0x0121u, 163 TAG_FILLORDER = 0x010Au, 164 TAG_EXTRASAMPLES = 0x0152u, 165 TAG_DATETIME = 0x0132u, 166 TAG_COPYRIGHT = 0x8298u, 167 TAG_COMPRESSION = 0x0103u, 168 TAG_COLORMAP = 0x0140u, 169 TAG_CELLWIDTH = 0x0108u, 170 TAG_CELLLENGTH = 0x0109u, 171 TAG_BITSPERSAMPLE = 0x0102u, 172 TAG_ARTIST = 0x013Bu, 173 TAG_EXIFVERSION = 0x9000u, 174 TAG_CFAREPEATPATTERNDIM = 0x828Du, 175 TAG_CFAPATTERN = 0x828Eu, 176 TAG_SUBIFDS = 0x014Au, 177}; 178 179/** 180 * TIFF_EP_TAG_DEFINITIONS contains tags defined in the TIFF EP spec 181 */ 182const TagDefinition_t TIFF_EP_TAG_DEFINITIONS[] = { 183 { // PhotometricInterpretation 184 0x0106u, 185 SHORT, 186 IFD_0, 187 1, 188 UNDEFINED_ENDIAN 189 }, 190 { // SubIfds 191 0x014Au, 192 LONG, 193 IFD_0, 194 0, 195 UNDEFINED_ENDIAN 196 }, 197 { // CFAPattern 198 0x828Eu, 199 BYTE, 200 IFD_0, 201 0, 202 UNDEFINED_ENDIAN 203 }, 204 { // CFARepeatPatternDim 205 0x828Du, 206 SHORT, 207 IFD_0, 208 2, 209 UNDEFINED_ENDIAN 210 }, 211 /*TODO: Remaining TIFF EP tags*/ 212}; 213 214/** 215 * EXIF_2_3_TAG_DEFINITIONS contains tags defined in the Jeita EXIF 2.3 spec 216 */ 217const TagDefinition_t EXIF_2_3_TAG_DEFINITIONS[] = { 218 { // ExifVersion 219 0x9000u, 220 UNDEFINED, 221 IFD_0, 222 4, 223 UNDEFINED_ENDIAN 224 }, 225 /*TODO: Remaining EXIF 2.3 tags*/ 226}; 227 228/** 229 * TIFF_6_TAG_DEFINITIONS contains tags defined in the TIFF 6.0 spec 230 */ 231const TagDefinition_t TIFF_6_TAG_DEFINITIONS[] = { 232 { // SubFileType 233 0x00FFu, 234 SHORT, 235 IFD_0, 236 1, 237 UNDEFINED_ENDIAN 238 }, 239 { // Artist 240 0x013Bu, 241 ASCII, 242 IFD_0, 243 0, 244 UNDEFINED_ENDIAN 245 }, 246 { // BitsPerSample 247 0x0102u, 248 SHORT, 249 IFD_0, 250 0, 251 UNDEFINED_ENDIAN 252 }, 253 { // CellLength 254 0x0109u, 255 SHORT, 256 IFD_0, 257 1, 258 UNDEFINED_ENDIAN 259 }, 260 { // CellWidth 261 0x0108u, 262 SHORT, 263 IFD_0, 264 1, 265 UNDEFINED_ENDIAN 266 }, 267 { // ColorMap 268 0x0140u, 269 SHORT, 270 IFD_0, 271 0, 272 UNDEFINED_ENDIAN 273 }, 274 { // Compression 275 0x0103u, 276 SHORT, 277 IFD_0, 278 1, 279 UNDEFINED_ENDIAN 280 }, 281 { // Copyright 282 0x8298u, 283 ASCII, 284 IFD_0, 285 0, 286 UNDEFINED_ENDIAN 287 }, 288 { // DateTime 289 0x0132u, 290 ASCII, 291 IFD_0, 292 20, 293 UNDEFINED_ENDIAN 294 }, 295 { // ExtraSamples 296 0x0152u, 297 SHORT, 298 IFD_0, 299 0, 300 UNDEFINED_ENDIAN 301 }, 302 { // FillOrder 303 0x010Au, 304 SHORT, 305 IFD_0, 306 1, 307 UNDEFINED_ENDIAN 308 }, 309 { // FreeByteCounts 310 0x0121u, 311 LONG, 312 IFD_0, 313 1, 314 UNDEFINED_ENDIAN 315 }, 316 { // FreeOffsets 317 0x0120u, 318 LONG, 319 IFD_0, 320 1, 321 UNDEFINED_ENDIAN 322 }, 323 { // GrayResponseCurve 324 0x0123u, 325 SHORT, 326 IFD_0, 327 0, 328 UNDEFINED_ENDIAN 329 }, 330 { // GrayResponseUnit 331 0x0122u, 332 SHORT, 333 IFD_0, 334 1, 335 UNDEFINED_ENDIAN 336 }, 337 { // HostComputer 338 0x013Cu, 339 ASCII, 340 IFD_0, 341 0, 342 UNDEFINED_ENDIAN 343 }, 344 { // ImageDescription 345 0x010Eu, 346 ASCII, 347 IFD_0, 348 0, 349 UNDEFINED_ENDIAN 350 }, 351 { // ImageLength 352 0x0101u, 353 LONG, 354 IFD_0, 355 1, 356 UNDEFINED_ENDIAN 357 }, 358 { // ImageWidth 359 0x0100u, 360 LONG, 361 IFD_0, 362 1, 363 UNDEFINED_ENDIAN 364 }, 365 { // Make 366 0x010Fu, 367 ASCII, 368 IFD_0, 369 0, 370 UNDEFINED_ENDIAN 371 }, 372 { // MaxSampleValue 373 0x0119u, 374 SHORT, 375 IFD_0, 376 0, 377 UNDEFINED_ENDIAN 378 }, 379 { // MinSampleValue 380 0x0118u, 381 SHORT, 382 IFD_0, 383 0, 384 UNDEFINED_ENDIAN 385 }, 386 { // Model 387 0x0110u, 388 ASCII, 389 IFD_0, 390 0, 391 UNDEFINED_ENDIAN 392 }, 393 { // NewSubfileType 394 0x00FEu, 395 LONG, 396 IFD_0, 397 1, 398 UNDEFINED_ENDIAN 399 }, 400 { // Orientation 401 0x0112u, 402 SHORT, 403 IFD_0, 404 1, 405 UNDEFINED_ENDIAN 406 }, 407 { // PhotoMetricInterpretation 408 0x0106u, 409 SHORT, 410 IFD_0, 411 1, 412 UNDEFINED_ENDIAN 413 }, 414 { // PlanarConfiguration 415 0x011Cu, 416 SHORT, 417 IFD_0, 418 1, 419 UNDEFINED_ENDIAN 420 }, 421 { // ResolutionUnit 422 0x0128u, 423 SHORT, 424 IFD_0, 425 1, 426 UNDEFINED_ENDIAN 427 }, 428 { // RowsPerStrip 429 0x0116u, 430 LONG, 431 IFD_0, 432 1, 433 UNDEFINED_ENDIAN 434 }, 435 { // SamplesPerPixel 436 0x0115u, 437 SHORT, 438 IFD_0, 439 1, 440 UNDEFINED_ENDIAN 441 }, 442 { // Software 443 0x0131u, 444 ASCII, 445 IFD_0, 446 0, 447 UNDEFINED_ENDIAN 448 }, 449 { // StripByteCounts 450 0x0117u, 451 LONG, 452 IFD_0, 453 0, 454 UNDEFINED_ENDIAN 455 }, 456 { // StripOffsets 457 0x0111u, 458 LONG, 459 IFD_0, 460 0, 461 UNDEFINED_ENDIAN 462 }, 463 { // SubfileType 464 0x00FFu, 465 SHORT, 466 IFD_0, 467 1, 468 UNDEFINED_ENDIAN 469 }, 470 { // Threshholding 471 0x0107u, 472 SHORT, 473 IFD_0, 474 1, 475 UNDEFINED_ENDIAN 476 }, 477 { // XResolution 478 0x011Au, 479 RATIONAL, 480 IFD_0, 481 1, 482 UNDEFINED_ENDIAN 483 }, 484 { // YResolution 485 0x011Bu, 486 RATIONAL, 487 IFD_0, 488 1, 489 UNDEFINED_ENDIAN 490 }, 491 { // YResolution 492 0x011Bu, 493 RATIONAL, 494 IFD_0, 495 1, 496 UNDEFINED_ENDIAN 497 } 498}; 499 500/** 501 * DNG_TAG_DEFINITIONS contains tags defined in the DNG 1.4 spec 502 */ 503const TagDefinition_t DNG_TAG_DEFINITIONS[] = { 504 { // DNGVersion 505 0xC612u, 506 BYTE, 507 IFD_0, 508 4, 509 UNDEFINED_ENDIAN 510 }, 511 { // DNGBackwardVersion 512 0xC613u, 513 BYTE, 514 IFD_0, 515 4, 516 UNDEFINED_ENDIAN 517 }, 518 { // UniqueCameraModel 519 0xC614u, 520 ASCII, 521 IFD_0, 522 0, 523 UNDEFINED_ENDIAN 524 }, 525 { // LocalizedCameraModel 526 0xC615u, 527 ASCII, 528 IFD_0, 529 0, 530 UNDEFINED_ENDIAN 531 }, 532 { // CFAPlaneColor 533 0xC616u, 534 BYTE, 535 RAW_IFD, 536 0, 537 UNDEFINED_ENDIAN 538 }, 539 { // CFALayout 540 0xC617u, 541 SHORT, 542 RAW_IFD, 543 1, 544 UNDEFINED_ENDIAN 545 }, 546 { // LinearizationTable 547 0xC618u, 548 SHORT, 549 RAW_IFD, 550 0, 551 UNDEFINED_ENDIAN 552 }, 553 { // BlackLevelRepeatDim 554 0xC619u, 555 SHORT, 556 RAW_IFD, 557 2, 558 UNDEFINED_ENDIAN 559 }, 560 { // BlackLevel 561 0xC61Au, 562 LONG, 563 RAW_IFD, 564 0, 565 UNDEFINED_ENDIAN 566 }, 567 { // BlackLevelDeltaH 568 0xC61Bu, 569 SRATIONAL, 570 RAW_IFD, 571 0, 572 UNDEFINED_ENDIAN 573 }, 574 { // BlackLevelDeltaV 575 0xC61Cu, 576 SRATIONAL, 577 RAW_IFD, 578 0, 579 UNDEFINED_ENDIAN 580 }, 581 { // WhiteLevel 582 0xC61Du, 583 LONG, 584 RAW_IFD, 585 0, 586 UNDEFINED_ENDIAN 587 }, 588 { // DefaultScale 589 0xC61Eu, 590 RATIONAL, 591 RAW_IFD, 592 2, 593 UNDEFINED_ENDIAN 594 }, 595 { // BestQualityScale 596 0xC65Cu, 597 RATIONAL, 598 RAW_IFD, 599 1, 600 UNDEFINED_ENDIAN 601 }, 602 { // DefaultCropOrigin 603 0xC61Fu, 604 LONG, 605 RAW_IFD, 606 2, 607 UNDEFINED_ENDIAN 608 }, 609 { // DefaultCropSize 610 0xC620u, 611 LONG, 612 RAW_IFD, 613 2, 614 UNDEFINED_ENDIAN 615 }, 616 { // CalibrationIlluminant1 617 0xC65Au, 618 SHORT, 619 PROFILE_IFD, 620 1, 621 UNDEFINED_ENDIAN 622 }, 623 { // CalibrationIlluminant2 624 0xC65Bu, 625 SHORT, 626 PROFILE_IFD, 627 1, 628 UNDEFINED_ENDIAN 629 }, 630 { // ColorMatrix1 631 0xC621u, 632 SRATIONAL, 633 PROFILE_IFD, 634 0, 635 UNDEFINED_ENDIAN 636 }, 637 { // ColorMatrix2 638 0xC622u, 639 SRATIONAL, 640 PROFILE_IFD, 641 0, 642 UNDEFINED_ENDIAN 643 }, 644 { // CameraCalibration1 645 0xC623u, 646 SRATIONAL, 647 IFD_0, 648 0, 649 UNDEFINED_ENDIAN 650 }, 651 { // CameraCalibration2 652 0xC624u, 653 SRATIONAL, 654 IFD_0, 655 0, 656 UNDEFINED_ENDIAN 657 }, 658 { // ReductionMatrix1 659 0xC625u, 660 SRATIONAL, 661 PROFILE_IFD, 662 0, 663 UNDEFINED_ENDIAN 664 }, 665 { // ReductionMatrix2 666 0xC626u, 667 SRATIONAL, 668 PROFILE_IFD, 669 0, 670 UNDEFINED_ENDIAN 671 }, 672 { // AnalogBalance 673 0xC627u, 674 RATIONAL, 675 IFD_0, 676 0, 677 UNDEFINED_ENDIAN 678 }, 679 { // AsShotNeutral 680 0xC628u, 681 RATIONAL, 682 IFD_0, 683 0, 684 UNDEFINED_ENDIAN 685 }, 686 { // AsShotWhiteXY 687 0xC629u, 688 RATIONAL, 689 IFD_0, 690 2, 691 UNDEFINED_ENDIAN 692 }, 693 { // BaselineExposure 694 0xC62Au, 695 SRATIONAL, 696 IFD_0, 697 1, 698 UNDEFINED_ENDIAN 699 }, 700 { // BaselineNoise 701 0xC62Bu, 702 RATIONAL, 703 IFD_0, 704 1, 705 UNDEFINED_ENDIAN 706 }, 707 { // BaselineSharpness 708 0xC62Cu, 709 RATIONAL, 710 IFD_0, 711 1, 712 UNDEFINED_ENDIAN 713 }, 714 { // BayerGreenSplit 715 0xC62Du, 716 LONG, 717 RAW_IFD, 718 1, 719 UNDEFINED_ENDIAN 720 }, 721 { // LinearResponseLimit 722 0xC62Eu, 723 RATIONAL, 724 IFD_0, 725 1, 726 UNDEFINED_ENDIAN 727 }, 728 { // CameraSerialNumber 729 0xC62Fu, 730 ASCII, 731 IFD_0, 732 0, 733 UNDEFINED_ENDIAN 734 }, 735 { // LensInfo 736 0xC630u, 737 RATIONAL, 738 IFD_0, 739 4, 740 UNDEFINED_ENDIAN 741 }, 742 { // ChromaBlurRadius 743 0xC631u, 744 RATIONAL, 745 RAW_IFD, 746 1, 747 UNDEFINED_ENDIAN 748 }, 749 { // AntiAliasStrength 750 0xC632u, 751 RATIONAL, 752 RAW_IFD, 753 1, 754 UNDEFINED_ENDIAN 755 }, 756 { // ShadowScale 757 0xC633u, 758 RATIONAL, 759 IFD_0, 760 1, 761 UNDEFINED_ENDIAN 762 }, 763 { // DNGPrivateData 764 0xC634u, 765 BYTE, 766 IFD_0, 767 0, 768 UNDEFINED_ENDIAN 769 }, 770 { // MakerNoteSafety 771 0xC635u, 772 SHORT, 773 IFD_0, 774 1, 775 UNDEFINED_ENDIAN 776 }, 777 { // RawDataUniqueID 778 0xC65Du, 779 BYTE, 780 IFD_0, 781 16, 782 UNDEFINED_ENDIAN 783 }, 784 { // OriginalRawFileName 785 0xC68Bu, 786 ASCII, 787 IFD_0, 788 0, 789 UNDEFINED_ENDIAN 790 }, 791 { // OriginalRawFileData 792 0xC68Cu, 793 UNDEFINED, 794 IFD_0, 795 0, 796 BIG 797 }, 798 { // ActiveArea 799 0xC68Du, 800 LONG, 801 RAW_IFD, 802 4, 803 UNDEFINED_ENDIAN 804 }, 805 { // MaskedAreas 806 0xC68Eu, 807 LONG, 808 RAW_IFD, 809 0, 810 UNDEFINED_ENDIAN 811 }, 812 { // AsShotICCProfile 813 0xC68Fu, 814 UNDEFINED, 815 IFD_0, 816 0, 817 UNDEFINED_ENDIAN 818 }, 819 { // AsShotPreProfileMatrix 820 0xC690u, 821 SRATIONAL, 822 IFD_0, 823 0, 824 UNDEFINED_ENDIAN 825 }, 826 { // CurrentICCProfile 827 0xC691u, 828 UNDEFINED, 829 IFD_0, 830 0, 831 UNDEFINED_ENDIAN 832 }, 833 { // CurrentICCProfile 834 0xC691u, 835 UNDEFINED, 836 IFD_0, 837 0, 838 UNDEFINED_ENDIAN 839 }, 840 { // CurrentPreProfileMatrix 841 0xC692u, 842 SRATIONAL, 843 IFD_0, 844 0, 845 UNDEFINED_ENDIAN 846 }, 847 { // ColorimetricReference 848 0xC6BFu, 849 SHORT, 850 IFD_0, 851 1, 852 UNDEFINED_ENDIAN 853 }, 854 { // CameraCalibrationSignature 855 0xC6F3u, 856 ASCII, 857 IFD_0, 858 0, 859 UNDEFINED_ENDIAN 860 }, 861 { // ProfileCalibrationSignature 862 0xC6F4u, 863 ASCII, 864 PROFILE_IFD, 865 0, 866 UNDEFINED_ENDIAN 867 }, 868 { // ExtraCameraProfiles 869 0xC6F5u, 870 LONG, 871 IFD_0, 872 0, 873 UNDEFINED_ENDIAN 874 }, 875 { // AsShotProfileName 876 0xC6F6u, 877 ASCII, 878 IFD_0, 879 0, 880 UNDEFINED_ENDIAN 881 }, 882 { // NoiseReductionApplied 883 0xC6F7u, 884 RATIONAL, 885 RAW_IFD, 886 1, 887 UNDEFINED_ENDIAN 888 }, 889 { // ProfileName 890 0xC6F8u, 891 ASCII, 892 PROFILE_IFD, 893 0, 894 UNDEFINED_ENDIAN 895 }, 896 { // ProfileHueSatMapDims 897 0xC6F9u, 898 LONG, 899 PROFILE_IFD, 900 3, 901 UNDEFINED_ENDIAN 902 }, 903 { // ProfileHueSatMapData1 904 0xC6FAu, 905 FLOAT, 906 PROFILE_IFD, 907 0, 908 UNDEFINED_ENDIAN 909 }, 910 { // ProfileHueSatMapData2 911 0xC6FBu, 912 FLOAT, 913 PROFILE_IFD, 914 0, 915 UNDEFINED_ENDIAN 916 }, 917 { // ProfileToneCurve 918 0xC6FCu, 919 FLOAT, 920 PROFILE_IFD, 921 0, 922 UNDEFINED_ENDIAN 923 }, 924 { // ProfileEmbedPolicy 925 0xC6FDu, 926 LONG, 927 PROFILE_IFD, 928 1, 929 UNDEFINED_ENDIAN 930 }, 931 { // ProfileCopyright 932 0xC6FEu, 933 ASCII, 934 PROFILE_IFD, 935 0, 936 UNDEFINED_ENDIAN 937 }, 938 { // ForwardMatrix1 939 0xC714u, 940 SRATIONAL, 941 PROFILE_IFD, 942 0, 943 UNDEFINED_ENDIAN 944 }, 945 { // ForwardMatrix2 946 0xC715u, 947 SRATIONAL, 948 PROFILE_IFD, 949 0, 950 UNDEFINED_ENDIAN 951 }, 952 { // PreviewApplicationName 953 0xC716u, 954 ASCII, 955 PREVIEW_IFD, 956 0, 957 UNDEFINED_ENDIAN 958 }, 959 { // PreviewApplicationVersion 960 0xC717u, 961 ASCII, 962 PREVIEW_IFD, 963 0, 964 UNDEFINED_ENDIAN 965 }, 966 { // PreviewSettingsName 967 0xC718u, 968 ASCII, 969 PREVIEW_IFD, 970 0, 971 UNDEFINED_ENDIAN 972 }, 973 { // PreviewSettingsDigest 974 0xC719u, 975 BYTE, 976 PREVIEW_IFD, 977 16, 978 UNDEFINED_ENDIAN 979 }, 980 { // PreviewColorSpace 981 0xC71Au, 982 LONG, 983 PREVIEW_IFD, 984 1, 985 UNDEFINED_ENDIAN 986 }, 987 { // PreviewDateTime 988 0xC71Bu, 989 ASCII, 990 PREVIEW_IFD, 991 0, 992 UNDEFINED_ENDIAN 993 }, 994 { // RawImageDigest 995 0xC71Cu, 996 BYTE, 997 IFD_0, 998 16, 999 UNDEFINED_ENDIAN 1000 }, 1001 { // OriginalRawFileDigest 1002 0xC71Du, 1003 BYTE, 1004 IFD_0, 1005 16, 1006 UNDEFINED_ENDIAN 1007 }, 1008 { // SubTileBlockSize 1009 0xC71Eu, 1010 LONG, 1011 RAW_IFD, 1012 2, 1013 UNDEFINED_ENDIAN 1014 }, 1015 { // RowInterleaveFactor 1016 0xC71Fu, 1017 LONG, 1018 RAW_IFD, 1019 1, 1020 UNDEFINED_ENDIAN 1021 }, 1022 { // ProfileLookTableDims 1023 0xC725u, 1024 LONG, 1025 PROFILE_IFD, 1026 3, 1027 UNDEFINED_ENDIAN 1028 }, 1029 { // ProfileLookTableData 1030 0xC726u, 1031 FLOAT, 1032 PROFILE_IFD, 1033 0, 1034 UNDEFINED_ENDIAN 1035 }, 1036 { // OpcodeList1 1037 0xC740u, 1038 UNDEFINED, 1039 RAW_IFD, 1040 0, 1041 BIG 1042 }, 1043 { // OpcodeList2 1044 0xC741u, 1045 UNDEFINED, 1046 RAW_IFD, 1047 0, 1048 BIG 1049 }, 1050 { // OpcodeList3 1051 0xC74Eu, 1052 UNDEFINED, 1053 RAW_IFD, 1054 0, 1055 BIG 1056 }, 1057 { // NoiseProfile 1058 0xC761u, 1059 DOUBLE, 1060 RAW_IFD, 1061 0, 1062 UNDEFINED_ENDIAN 1063 }, 1064 { // DefaultUserCrop 1065 0xC7B5u, 1066 RATIONAL, 1067 RAW_IFD, 1068 4, 1069 UNDEFINED_ENDIAN 1070 }, 1071 { // DefaultBlackRender 1072 0xC7A6u, 1073 LONG, 1074 PROFILE_IFD, 1075 1, 1076 UNDEFINED_ENDIAN 1077 }, 1078 { // BaselineExposureOffset 1079 0xC7A5u, 1080 RATIONAL, 1081 PROFILE_IFD, 1082 1, 1083 UNDEFINED_ENDIAN 1084 }, 1085 { // ProfileLookTableEncoding 1086 0xC7A4u, 1087 LONG, 1088 PROFILE_IFD, 1089 1, 1090 UNDEFINED_ENDIAN 1091 }, 1092 { // ProfileHueSatMapEncoding 1093 0xC7A3u, 1094 LONG, 1095 PROFILE_IFD, 1096 1, 1097 UNDEFINED_ENDIAN 1098 }, 1099 { // OriginalDefaultFinalSize 1100 0xC791u, 1101 LONG, 1102 IFD_0, 1103 2, 1104 UNDEFINED_ENDIAN 1105 }, 1106 { // OriginalBestQualityFinalSize 1107 0xC792u, 1108 LONG, 1109 IFD_0, 1110 2, 1111 UNDEFINED_ENDIAN 1112 }, 1113 { // OriginalDefaultCropSize 1114 0xC793u, 1115 LONG, 1116 IFD_0, 1117 2, 1118 UNDEFINED_ENDIAN 1119 }, 1120 { // NewRawImageDigest 1121 0xC7A7u, 1122 BYTE, 1123 IFD_0, 1124 16, 1125 UNDEFINED_ENDIAN 1126 }, 1127 { // RawToPreviewGain 1128 0xC7A8u, 1129 DOUBLE, 1130 PREVIEW_IFD, 1131 1, 1132 UNDEFINED_ENDIAN 1133 }, 1134}; 1135 1136} /*namespace img_utils*/ 1137} /*namespace android*/ 1138 1139#endif /*IMG_UTILS_TIFF_TAG_DEFINITION_H*/ 1140