DocumentationOverviewBuilding ASL Documentation Library Wiki Docs Indices Browse Perforce More InfoRelease NotesWiki Site Search License Success Stories Contributors MediaDownloadPerforce Depots SupportASL SourceForge HomeMailing Lists Discussion Forums Report Bugs Suggest Features Contribute to ASL RSSShort-text newsFull-text news File releases Other Adobe ProjectsAdobe AirAdobe GIL Adobe Labs Adobe Media Gallery Adobe XMP Tamarin project (Mozilla Foundation) Other ResourcesBoostRIAForge SGI STL |
dng_linearization_info.hGo to the documentation of this file.00001 /*****************************************************************************/ 00002 // Copyright 2006 Adobe Systems Incorporated 00003 // All Rights Reserved. 00004 // 00005 // NOTICE: Adobe permits you to use, modify, and distribute this file in 00006 // accordance with the terms of the Adobe license agreement accompanying it. 00007 /*****************************************************************************/ 00008 00009 /* $Id: //mondo/workarea/stern/camera_raw/dng_sdk/source/dng_linearization_info.h#5 $ */ 00010 /* $DateTime: 2006/04/18 23:24:08 $ */ 00011 /* $Change: 217478 $ */ 00012 /* $Author: stern $ */ 00013 00018 /*****************************************************************************/ 00019 00020 #ifndef __dng_linearization_info__ 00021 #define __dng_linearization_info__ 00022 00023 /*****************************************************************************/ 00024 00025 #include "dng_auto_ptr.h" 00026 #include "dng_classes.h" 00027 #include "dng_memory.h" 00028 #include "dng_rational.h" 00029 #include "dng_rect.h" 00030 #include "dng_sdk_limits.h" 00031 00032 /*****************************************************************************/ 00033 00037 00038 class dng_linearization_info 00039 { 00040 00041 public: 00042 00045 00046 dng_rect fActiveArea; 00047 00049 00050 uint32 fMaskedAreaCount; 00051 00060 00061 dng_rect fMaskedArea [kMaxMaskedAreas]; 00062 00068 00069 AutoPtr<dng_memory_block> fLinearizationTable; 00070 00072 00073 uint32 fBlackLevelRepeatRows; 00074 00076 00077 uint32 fBlackLevelRepeatCols; 00078 00080 00081 real64 fBlackLevel [kMaxBlackPattern] [kMaxBlackPattern] [kMaxSamplesPerPixel]; 00082 00084 00085 AutoPtr<dng_memory_block> fBlackDeltaH; 00086 00088 00089 AutoPtr<dng_memory_block> fBlackDeltaV; 00090 00092 00093 real64 fWhiteLevel [kMaxSamplesPerPixel]; 00094 00095 protected: 00096 00097 int32 fBlackDenom; 00098 00099 public: 00100 00101 dng_linearization_info (); 00102 00103 virtual ~dng_linearization_info (); 00104 00105 void RoundBlacks (); 00106 00107 virtual void Parse (dng_host &host, 00108 dng_stream &stream, 00109 dng_info &info); 00110 00111 virtual void PostParse (dng_host &host, 00112 dng_negative &negative); 00113 00115 00116 real64 MaxBlackLevel (uint32 plane) const; 00117 00122 00123 virtual void Linearize (dng_host &host, 00124 const dng_image &srcImage, 00125 dng_image &dstImage); 00126 00131 00132 dng_urational BlackLevel (uint32 row, 00133 uint32 col, 00134 uint32 plane) const; 00135 00137 00138 uint32 RowBlackCount () const; 00139 00143 00144 dng_srational RowBlack (uint32 row) const; 00145 00147 00148 uint32 ColumnBlackCount () const; 00149 00153 00154 dng_srational ColumnBlack (uint32 col) const; 00155 00156 }; 00157 00158 /*****************************************************************************/ 00159 00160 #endif 00161 00162 /*****************************************************************************/ |