/**
 ********************************************************************
 * @file   Camera.h
 *         Camera的头文件
 *
 *********************************************************************
 */

/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
#ifndef CAMERA_H
#define CAMERA_H

/* Includes ------------------------------------------------------------------*/
#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"
#include "Kt_Irc/Kt_Irc.h"

#ifdef __cplusplus
extern "C" {
#endif

/* Exported constants --------------------------------------------------------*/
/* 常亮定义*/


/* Exported types ------------------------------------------------------------*/


typedef enum CameraParam
{
    CAMERA_PSEUDO_COLOR = 0x000001,
    CAMERA_PIXEL_PSEUDO_COLOR_MODE = 0x000002,
    CAMERA_REGION_BOX = 0x000003,
    CAMERA_CORRCTION_MODE = 0x000004,
    CAMERA_GAS_ENHANCEMENT_COLOR = 0x000005,
    CAMERA_GAS_ENHANCEMENT_CORRCTION = 0x000006,

}CameraParam;

typedef enum CameraCorrectionMode
{
    CAMERA_CORRCTION_SPC = 0x000001, //单点纠正
    CAMERA_CORRCTION_TPC = 0x000002, //两点纠正

}CameraCorrectionMode;

typedef enum GasEnhancementColor
{
    CAMERA_GAS_ENHANCEMENT_RED = 0x000000, //红
    CAMERA_GAS_ENHANCEMENT_GREEN = 0x000001, //绿
    CAMERA_GAS_ENHANCEMENT_BLUE = 0x000002, //蓝
}GasEnhancementColor;

/* Exported functions --------------------------------------------------------*/
T_JZsdkReturnCode JZsdk_Camera_ShutterSwitch(int value);
T_JZsdkReturnCode Camera_param(int flagcode, enum CameraParam paramflag, int *value);
T_JZsdkReturnCode JZsdk_Camera_BadPixelSwitch(int value);
T_JZsdkReturnCode JZsdk_CameraSPC_ResetSwitch(int value);
T_JZsdkReturnCode JZsdk_H150ST_CameraInit(int width, int height, int frame_num);

#ifdef __cplusplus
}
#endif

#endif