1 /*****************************************************************************/ 2 // Copyright 2006-2019 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 /** \file 10 * Collection of constants detailing maximum values used in processing in the DNG SDK. 11 */ 12 13 /*****************************************************************************/ 14 15 #ifndef __dng_sdk_limits__ 16 #define __dng_sdk_limits__ 17 18 /*****************************************************************************/ 19 20 #include "dng_types.h" 21 22 /*****************************************************************************/ 23 24 /// The maximum number of previews (in addition to the main IFD's thumbnail) 25 /// that we support embedded in a DNG. 26 27 const uint32 kMaxDNGPreviews = 20; 28 29 /// The maximum number of SubIFDs that will be parsed. 30 31 const uint32 kMaxSubIFDs = kMaxDNGPreviews + 1; 32 33 /// The maximum number of chained IFDs that will be parsed. 34 35 const uint32 kMaxChainedIFDs = 10; 36 37 /// The maximum number of samples per pixel. 38 39 const uint32 kMaxSamplesPerPixel = 4; 40 41 /// Maximum number of color planes. 42 43 const uint32 kMaxColorPlanes = kMaxSamplesPerPixel; 44 45 /// The maximum size of a CFA repeating pattern. 46 47 const uint32 kMaxCFAPattern = 8; 48 49 /// The maximum size of a black level repeating pattern. 50 51 const uint32 kMaxBlackPattern = 8; 52 53 /// The maximum number of masked area rectangles. 54 55 const uint32 kMaxMaskedAreas = 4; 56 57 /// The maximum image size supported (pixels per side). 58 59 const uint32 kMaxImageSide = 65000; 60 61 /// The maximum number of tone curve points supported. 62 63 const uint32 kMaxToneCurvePoints = 8192; 64 65 /// Maximum number of MP threads for dng_area_task operations. 66 67 #if qDNG64Bit 68 const uint32 kMaxMPThreads = 128; // EP! Needs much larger max! 69 #else 70 const uint32 kMaxMPThreads = 8; 71 #endif 72 73 /// Maximum supported value of Stage3BlackLevelNormalized. 74 75 const real64 kMaxStage3BlackLevelNormalized = 0.2; 76 77 /*****************************************************************************/ 78 79 #endif 80 81 /*****************************************************************************/ 82