📄 pvcam.h
字号:
PI Conversion: NORMAL_COOL = TE_COOLED
CRYO_COOL = LN_COOLED
*/
enum
{ NORMAL_COOL, CRYO_COOL };
/************************** Class 2: Name/ID sizes ***************************/
#define CCD_NAME_LEN 17 /* Includes space for the null terminator */
#define MAX_ALPHA_SER_NUM_LEN 32 /* Includes space for the null terminator */
/*********************** Class 2: MPP capability flags ***********************/
/* used with the PARAM_MPP_CAPABLE parameter id. */
enum
{ MPP_UNKNOWN, MPP_ALWAYS_OFF, MPP_ALWAYS_ON, MPP_SELECTABLE };
/************************** Class 2: Shutter flags ***************************/
/* used with the PARAM_SHTR_STATUS parameter id.
PI Conversion: n/a (returns SHTR_OPEN)
*/
enum
{ SHTR_FAULT, SHTR_OPENING, SHTR_OPEN, SHTR_CLOSING, SHTR_CLOSED,
SHTR_UNKNOWN
};
/************************ Class 2: Pmode constants ***************************/
/* used with the PARAM_PMODE parameter id. */
enum
{ PMODE_NORMAL, PMODE_FT, PMODE_MPP, PMODE_FT_MPP,
PMODE_ALT_NORMAL, PMODE_ALT_FT, PMODE_ALT_MPP, PMODE_ALT_FT_MPP,
PMODE_INTERLINE
};
/************************ Class 2: Color support constants *******************/
/* used with the PARAM_COLOR_MODE parameter id. */
enum
{ COLOR_NONE, COLOR_RGGB = 2 };
/************************ Class 2: Attribute IDs *****************************/
/*
Function: pl_get_param()
*/
enum
{ ATTR_CURRENT, ATTR_COUNT, ATTR_TYPE, ATTR_MIN, ATTR_MAX, ATTR_DEFAULT,
ATTR_INCREMENT, ATTR_ACCESS, ATTR_AVAIL
};
/************************ Class 2: Access types ******************************/
/*
Function: pl_get_param( ATTR_ACCESS )
*/
enum
{ ACC_ERROR, ACC_READ_ONLY, ACC_READ_WRITE, ACC_EXIST_CHECK_ONLY,
ACC_WRITE_ONLY
};
/* This enum is used by the access Attribute */
/************************ Class 2: I/O types *********************************/
/* used with the PARAM_IO_TYPE parameter id. */
enum
{ IO_TYPE_TTL, IO_TYPE_DAC };
/************************ Class 2: I/O direction flags ***********************/
/* used with the PARAM_IO_DIRECTION parameter id. */
enum
{ IO_DIR_INPUT, IO_DIR_OUTPUT, IO_DIR_INPUT_OUTPUT };
/************************ Class 2: I/O port attributes ***********************/
enum
{ IO_ATTR_DIR_FIXED, IO_ATTR_DIR_VARIABLE_ALWAYS_READ };
/************************ Class 2: Trigger polarity **************************/
/* used with the PARAM_EDGE_TRIGGER parameter id. */
enum
{ EDGE_TRIG_POS = 2, EDGE_TRIG_NEG };
/************************ Class 2: Logic Output ******************************/
/* used with the PARAM_LOGIC_OUTPUT parameter id. */
enum
{ OUTPUT_NOT_SCAN = 0, OUTPUT_SHUTTER, OUTPUT_NOT_RDY, OUTPUT_LOGIC0,
OUTPUT_CLEARING, OUTPUT_NOT_FT_IMAGE_SHIFT, OUTPUT_RESERVED,
OUTPUT_LOGIC1
};
/************************ Class 2: PI-Max intensifer gating settings *********/
/* used with the PARAM_SHTR_GATE_MODE parameter id. */
enum
{ INTENSIFIER_SAFE = 0, INTENSIFIER_GATING, INTENSIFIER_SHUTTER };
/************************ Class 2: Readout Port ******************************/
/* used with the PARAM_READOUT_PORT parameter id. */
enum
{ READOUT_PORT_MULT_GAIN = 0,
READOUT_PORT_NORMAL,
READOUT_PORT_LOW_NOISE,
READOUT_PORT_HIGH_CAP,
/* deprecated */
READOUT_PORT1 = 0,
READOUT_PORT2 = 1
};
/************************ Class 2: Anti Blooming *****************************/
/* used with the PARAM_ANTI_BLOOMING parameter id. */
enum
{ ANTIBLOOM_NOTUSED = 0, ANTIBLOOM_INACTIVE, ANTIBLOOM_ACTIVE };
/************************ Class 2: Clearing mode flags ***********************/
/* used with the PARAM_CLEAR_MODE parameter id. */
enum
{ CLEAR_NEVER, CLEAR_PRE_EXPOSURE, CLEAR_PRE_SEQUENCE, CLEAR_POST_SEQUENCE,
CLEAR_PRE_POST_SEQUENCE, CLEAR_PRE_EXPOSURE_POST_SEQ
};
/************************ Class 2: Shutter mode flags ************************/
/*
Function: pl_set_param ( PARAM_SHTR_OPEN_MODE )
PI Conversion: OPEN_NEVER: SHUTTER_CLOSE
OPEN_PRE_EXPOSURE: SHUTTER_OPEN & CMP_SHT_PREOPEN = FALSE
OPEN_PRE_SEQUENCE: SHUTTER_DISABLED_OPEN
OPEN_PRE_TRIGGER: SHUTTER_OPEN & CMP_SHT_PREOPEN = TRUE
OPEN_NO_CHANGE: SHUTTER_OPEN
*/
enum
{ OPEN_NEVER, OPEN_PRE_EXPOSURE, OPEN_PRE_SEQUENCE, OPEN_PRE_TRIGGER,
OPEN_NO_CHANGE
};
/************************ Class 2: Exposure mode flags ***********************/
/* used with the PARAM_EXPOSURE_MODE parameter id.
Functions: pl_exp_setup_cont()
pl_exp_setup_seq()
PI Conversion:
Readout Mode: Normal ROM_KINETICS ROM_DIF
---------------------------------------------------------------------------
BULB_MODE: (not supported) CTRL_EEC
FLASH_MODE: (Don't have this)
STROBED_MODE: CTRL_EXTSYNC CTRL_KINETICS_MULTIPLE CTRL_ESABI
TIMED_MODE: CTRL_FREERUN CTRL_KINETICS_NO_TRIGGER
TRIGGER_FIRST_MODE: (not supported) CTRL_KINETICS_SINGLE CTRL_IEC
VARIABLE_TIMED_MODE: (Do not use)
INT_STROBE_MODE: CTRL_INTERNAL_SYNC
*/
enum
{ TIMED_MODE, STROBED_MODE, BULB_MODE, TRIGGER_FIRST_MODE, FLASH_MODE,
VARIABLE_TIMED_MODE, INT_STROBE_MODE
};
/********************** Class 3: Readout status flags ************************/
/*
Function: pl_exp_check_status()
PI Conversion: PICM_LockCurrentFrame()
PICM_Chk_Data()
if NEWDATARDY or NEWDATAFIXED READOUT_COMPLETE
else if RUNNING ACQUISITION_IN_PROGRESS
else if INITIALIZED or DONEDCOK READOUT_NOT_ACTIVE
else READOUT_FAILED
*/
enum
{
READOUT_NOT_ACTIVE,
EXPOSURE_IN_PROGRESS,
READOUT_IN_PROGRESS,
READOUT_COMPLETE, /* Means frame available for a circular buffer acq */
FRAME_AVAILABLE = READOUT_COMPLETE, /* New camera status indicating at least one frame is available */
READOUT_FAILED,
ACQUISITION_IN_PROGRESS,
MAX_CAMERA_STATUS
};
/********************** Class 3: Abort Exposure flags ************************/
/*
Function: pl_exp_abort()
PI Conversion: controller->Stop(), enum spec ignored
*/
enum
{ CCS_NO_CHANGE, CCS_HALT, CCS_HALT_CLOSE_SHTR, CCS_CLEAR,
CCS_CLEAR_CLOSE_SHTR, CCS_OPEN_SHTR, CCS_CLEAR_OPEN_SHTR
};
/************************ Class 3: Event constants ***************************/
enum
{ EVENT_START_READOUT, EVENT_END_READOUT };
/************************ Class 3: EOF/BOF constants *************************/
/* used with the PARAM_BOF_EOF_ENABLE parameter id. */
enum
{ NO_FRAME_IRQS, BEGIN_FRAME_IRQS, END_FRAME_IRQS, BEGIN_END_FRAME_IRQS };
/************************ Class 3: Continuous Mode constants *****************/
/*
Function: pl_exp_setup_cont()
*/
enum
{ CIRC_NONE, CIRC_OVERWRITE, CIRC_NO_OVERWRITE };
/************************ Class 3: Fast Exposure Resolution constants ********/
/* used with the PARAM_EXP_RES parameter id. */
enum
{ EXP_RES_ONE_MILLISEC, EXP_RES_ONE_MICROSEC, EXP_RES_ONE_SEC };
/************************ Class 3: I/O Script Locations **********************/
enum
{ SCR_PRE_OPEN_SHTR, SCR_POST_OPEN_SHTR, SCR_PRE_FLASH, SCR_POST_FLASH,
SCR_PRE_INTEGRATE, SCR_POST_INTEGRATE, SCR_PRE_READOUT, SCR_POST_READOUT,
SCR_PRE_CLOSE_SHTR, SCR_POST_CLOSE_SHTR
};
/************************* Class 3: Region Definition ************************/
typedef struct
{
uns16 s1; /* First pixel in the serial register */
uns16 s2; /* Last pixel in the serial register */
uns16 sbin; /* Serial binning for this region */
uns16 p1; /* First row in the parallel register */
uns16 p2; /* Last row in the parallel register */
uns16 pbin; /* Parallel binning for this region */
}
rgn_type, PV_PTR_DECL rgn_ptr;
typedef const rgn_type PV_PTR_DECL rgn_const_ptr;
/********************** Class 4: Buffer bit depth flags **********************/
enum
{ PRECISION_INT8, PRECISION_UNS8, PRECISION_INT16, PRECISION_UNS16,
PRECISION_INT32, PRECISION_UNS32
};
/************************** Class 6: Export Control **************************/
typedef struct
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -