00001 #ifndef __KSJ_API_MATRIX_H__
00002 #define __KSJ_API_MATRIX_H__
00003
00004
00005
00006 #ifdef KSJAPI_EXPORTS
00007 #define KSJ_API __declspec(dllexport)
00008 #elif defined KSJAPI_STATIC
00009 #define KSJ_API
00010 #else
00011 #define KSJ_API __declspec(dllimport)
00012 #endif
00013
00014
00015 #ifdef __cplusplus
00016 extern "C"{
00017 #endif
00018
00022 enum KSJ_WB_MODE
00023 {
00024 KSJ_WB_DISABLE,
00025 KSJ_SWB_PRESETTINGS,
00026 KSJ_SWB_AUTO_ONCE,
00027 KSJ_SWB_AUTO_CONITNUOUS,
00028 KSJ_SWB_MANUAL,
00029 KSJ_HWB_PRESETTINGS,
00030 KSJ_HWB_AUTO_ONCE,
00031 KSJ_HWB_AUTO_CONITNUOUS,
00032 KSJ_HWB_MANUAL
00033 };
00034
00045 KSJ_API int __stdcall KSJ_WhiteBalanceSet(int nIndex, KSJ_WB_MODE WbMode);
00046
00057 KSJ_API int __stdcall KSJ_WhiteBalanceGet(int nIndex, KSJ_WB_MODE *pWbMode);
00058
00059
00072 KSJ_API int __stdcall KSJ_WhiteBalanceMatrixSet(int nIndex, float fMatrix[3]);
00073
00084 KSJ_API int __stdcall KSJ_WhiteBalanceMatrixGet(int nIndex, float fMatrix[3]);
00085
00097 typedef void(__stdcall *KSJ_WB_CALLBACK)(float fMatrix[3], void *lpContext);
00098
00110 KSJ_API int __stdcall KSJ_WhiteBalanceAutoSetCallBack(int nIndex, KSJ_WB_CALLBACK pfCallBack, void *lpContext);
00111
00125
00126 typedef void(__stdcall *KSJ_WB_CALLBACK_EX)(float fMatrixR, float fMatrixG, float fMatrixB, void *lpContext);
00127
00140 KSJ_API int __stdcall KSJ_WhiteBalanceAutoSetCallBackEx(int nIndex, KSJ_WB_CALLBACK_EX pfCallBackEx, void *lpContext);
00141
00153 KSJ_API int __stdcall KSJ_WhiteBalanceAutoSet(int nIndex, int nPhi);
00154
00165 KSJ_API int __stdcall KSJ_WhiteBalanceAutoGet(int nIndex, int *pnPhi);
00166
00168 enum KSJ_COLOR_TEMPRATURE
00169 {
00170 KSJ_CT_5000K,
00171 KSJ_CT_6500K,
00172 KSJ_CT_2800K
00173 };
00174
00186 KSJ_API int __stdcall KSJ_WhiteBalancePresettingSet(int nIndex, KSJ_COLOR_TEMPRATURE WbPresetting);
00187
00198 KSJ_API int __stdcall KSJ_WhiteBalancePresettingGet(int nIndex, KSJ_COLOR_TEMPRATURE *pWbPresetting);
00199
00201 enum KSJ_CCM_MODE
00202 {
00203 KSJ_CCM_DISABLE,
00204 KSJ_SCCM_PRESETTINGS,
00205 KSJ_SCCM_MANUAL,
00206 KSJ_HCCM_PRESETTINGS,
00207 KSJ_HCCM_MANUAL
00208 };
00209
00220 KSJ_API int __stdcall KSJ_ColorCorrectionSet(int nIndex, KSJ_CCM_MODE CcmMode);
00221
00232 KSJ_API int __stdcall KSJ_ColorCorrectionGet(int nIndex, KSJ_CCM_MODE *pCcmMode);
00233
00234
00249 KSJ_API int __stdcall KSJ_ColorCorrectionMatrixSet(int nIndex, float fMatrix[3][3]);
00250
00261 KSJ_API int __stdcall KSJ_ColorCorrectionMatrixGet(int nIndex, float fMatrix[3][3]);
00262
00263
00274 KSJ_API int __stdcall KSJ_ColorCorrectionPresettingSet(int nIndex, KSJ_COLOR_TEMPRATURE CcmPresetting);
00275
00286 KSJ_API int __stdcall KSJ_ColorCorrectionPresettingGet(int nIndex, KSJ_COLOR_TEMPRATURE *pCcmPresetting);
00290 #ifdef __cplusplus
00291 }
00292 #endif
00293
00294 #endif