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_color_spec.hGo to the documentation of this file.00001 /*****************************************************************************/ 00002 // Copyright 2006-2008 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_color_spec.h#12 $ */ 00010 /* $DateTime: 2008/01/21 23:04:13 $ */ 00011 /* $Change: 413885 $ */ 00012 /* $Author: stern $ */ 00013 00018 #ifndef __dng_color_spec__ 00019 #define __dng_color_spec__ 00020 00021 /*****************************************************************************/ 00022 00023 #include "dng_classes.h" 00024 #include "dng_matrix.h" 00025 #include "dng_types.h" 00026 #include "dng_xy_coord.h" 00027 00028 /*****************************************************************************/ 00029 00035 00036 dng_matrix_3by3 MapWhiteMatrix (const dng_xy_coord &white1, 00037 const dng_xy_coord &white2); 00038 00039 /*****************************************************************************/ 00040 00043 00044 class dng_color_spec 00045 { 00046 00047 private: 00048 00049 uint32 fChannels; 00050 00051 real64 fTemperature1; 00052 real64 fTemperature2; 00053 00054 dng_matrix fColorMatrix1; 00055 dng_matrix fColorMatrix2; 00056 00057 dng_matrix fForwardMatrix1; 00058 dng_matrix fForwardMatrix2; 00059 00060 dng_matrix fReductionMatrix1; 00061 dng_matrix fReductionMatrix2; 00062 00063 dng_matrix fCameraCalibration1; 00064 dng_matrix fCameraCalibration2; 00065 00066 dng_matrix fAnalogBalance; 00067 00068 dng_xy_coord fWhiteXY; 00069 00070 dng_vector fCameraWhite; 00071 dng_matrix fCameraToPCS; 00072 00073 public: 00074 00077 00078 dng_color_spec (const dng_negative &negative, 00079 const dng_camera_profile *profile); 00080 00081 virtual ~dng_color_spec () 00082 { 00083 } 00084 00087 00088 uint32 Channels () const 00089 { 00090 return fChannels; 00091 } 00092 00095 00096 void SetWhiteXY (const dng_xy_coord &white); 00097 00100 00101 const dng_xy_coord & WhiteXY () const; 00102 00106 00107 const dng_vector & CameraWhite () const; 00108 00112 00113 const dng_matrix & CameraToPCS () const; 00114 00122 00123 dng_xy_coord NeutralToXY (const dng_vector &neutral); 00124 00125 private: 00126 00127 dng_matrix FindXYZtoCamera (const dng_xy_coord &white, 00128 dng_matrix *forwardMatrix = NULL, 00129 dng_matrix *reductionMatrix = NULL, 00130 dng_matrix *cameraCalibration = NULL); 00131 00132 }; 00133 00134 /*****************************************************************************/ 00135 00136 #endif 00137 00138 /*****************************************************************************/ |