?? ieudef.pas
字號(hào):
//!
//!-----------------------------------------------------------------------------
//! Name IEUDef.PAS
//! Purpose IEUDef模板定義
//! CopyRight (c) 2007,
//! Development Kit Borland Delphi 6.00
//! Author ZhaoXingMei
//! Date 2007/03/12
//!
//!
//! Description Ver 1.00.0000 Beta
//!
//!
//!-----------------------------------------------------------------------------
unit IEUDef;
interface
//相機(jī)分辨率
type FD_RESOLUTION =
(
RESOLUTION0 = $10000000, //圖像分辨率0,大圖像模式
RESOLUTION1 = $10000001 //圖像分辨率1,小圖像模式
);
//相機(jī)型號(hào)標(biāo)識(shí)
type FD_CAMERA_TYPE =
(
UNKNOWN = 0, //未知型號(hào)設(shè)備
ID320C = 1, //FC-1D320C型相機(jī)
ID200C = 2, //FC-ID200C型相機(jī)
ID130C = 3, //FC-ID130C型相機(jī)
ID130M = 4, //FC-ID130M型相機(jī)
IE130C = 5, //FC-IE130C型相機(jī)
IE130M = 6, //FC-IE130M型相機(jī)
IE036C = 7, //FC-IE036C型相機(jī)
IE036M = 8, //FC-IE036M型相機(jī)
ID320PLUS = 9, //FC-ID320PLUS型相機(jī)
ID130PLUS = 10 //FC-ID130PLUS型相機(jī)
);
//相機(jī)輸出圖像數(shù)據(jù)的格式
type FD_DATA_FORMAT =
(
HIGH_8BITS = $10000000, //輸出原10位數(shù)據(jù)的高8位數(shù)據(jù)
MID_8BITS = $10000001, //輸出原10位數(shù)據(jù)的中8位數(shù)據(jù)
LOW_8BITS = $10000002 //輸出原10位數(shù)據(jù)的低8位數(shù)據(jù)
);
//輸出數(shù)據(jù)位反轉(zhuǎn)選項(xiàng)
type FD_BIT_INVERSION =
(
BIT_NORMAL = $10000000, //圖像數(shù)據(jù)正常輸出
BIT_INVERSION = $10000004 //輸出反轉(zhuǎn)位圖像數(shù)據(jù)
);
//相機(jī)的GAMMA功能選項(xiàng)
type FD_GAMMA_CORRECTION =
(
GAMMA_DISABLE = $10000000, //關(guān)閉GAMMA校正功能
GAMMA_ENABLE = $10000002 //使能GAMMA校正功能
);
//相機(jī)的工作模式
type FD_TRIGGER_MODE =
(
FREE_RUN = $00000000, //連續(xù)圖像模式
TRIGGER_SOFTWARE = $03000000, //觸發(fā)模式下的軟件觸發(fā)
TRIGGER_RISING_EDGE = $01000000, //外觸發(fā)模式,外部信號(hào)上升沿觸發(fā)
TRIGGER_FALLING_EDGE = $05000000 //外觸發(fā)模式,外部信號(hào)下降沿觸發(fā)
);
//閃光燈極性
type FD_STROBE_POLARITY =
(
RISING_EDGE_ACTIVE = $00000000, //閃光燈上升延有效
FALLING_EDGE_ACTIVE = $08000000 //閃光燈下延有效
);
//控制模式
type FD_CONTROL =
(
USER_CTRL = $00000000, //用戶控制
AUTO_CTRL = $10000001 //自動(dòng)控制
);
type FD_FPN_CONTROL =
(
FPN_DISABLE = $00000000, //不使能
FPN_ENABLE = $10000001 //使能
);
//相機(jī)參數(shù)標(biāo)識(shí)
type CAM_PARAM =
(
EXPOSURE_TIME = 0, //曝光時(shí)間
GAIN = 1, //增益
BRIGHT = 2, //亮度
RED_GAIN = 3, //紅增益
BLUE_GAIN = 4, //藍(lán)增益
STROBE_DELAY = 5, //閃光燈延遲
STROBE_DURATION = 6, //閃光燈持續(xù)時(shí)間
TRIGGER_DELAY = 7, //觸發(fā)延遲
ANALOG_GAIN = 8, //模擬增益
ADCOFFSET = 9 //偏置
);
//數(shù)據(jù)傳輸狀態(tài)標(biāo)識(shí),用于回調(diào)函數(shù)
type IEU_TRANS_STATE =
(
TRANS_ONE_RSVD = $2000, //收到一幀有效的圖像數(shù)據(jù)
TRANS_TIMEOUT = $2002, //圖像傳輸超過(guò)用戶設(shè)置的時(shí)間限制
TRANS_ONE_FAILED = $2003 //獲取一幀圖像失敗
);
//返回值和窗口句柄標(biāo)識(shí)
type
HRESULT = LongWord;
HWND = LongWord;
//相機(jī)的可調(diào)參數(shù)信息
PARAM_INFO = packed record
fMaxValue: Single; //此參數(shù)的最大值 as the ’float‘ in c\c++
fMinValue: Single; //此參數(shù)的最小值
fScale: Single; //參數(shù)變化單位值
end;
//相機(jī)硬件信息
HARDWARE = packed record
cameraType: BYTE; //1:相機(jī)型號(hào)
hardwareEdition: Array[0..2] of BYTE; //2:4:硬件版本號(hào)
updateDate: Array[0..3] of BYTE; //5:8:硬件程序更新日期,5:6:年(十進(jìn)制數(shù)表示,5:高8位,6:低8位),7:月,8:日
cameraId: LongWord; //相機(jī)標(biāo)識(shí)符
end;
//回調(diào)函數(shù)參數(shù)
IEU_TRANS_INFO = packed record
pDataBuf: Pointer; //接收?qǐng)D像數(shù)據(jù)的緩沖區(qū)地址
cbDataBuf: LongWord; //緩沖區(qū)大小(以字節(jié)計(jì))
dwImgRequested: longint; //用戶要求的圖像幀數(shù)
dwImgTransferred:longint; //已經(jīng)傳輸?shù)膱D像幀數(shù)
dwTimeOutTicks: longword; //用戶設(shè)定超時(shí)間(毫秒)
TransState: IEU_TRANS_STATE; //當(dāng)前狀態(tài)
pParam: Pointer; //用戶自定義參數(shù)指針
end;
//矩形的長(zhǎng)寬定義
SIZE = packed record
cx: longint;
cy: longint;
end;
//定義一個(gè)類型的指針類型
type
PIEU_TRANS_INFO = ^IEU_TRANS_INFO;
//回調(diào)函數(shù)
IEU_CALLBACK = function(pTransInfo: PIEU_TRANS_INFO): Integer; stdcall;
//IEU消息定義,用于消息處理函數(shù)
const WM_USER = $0400;
const IEU_MSG = WM_USER + 200;
const MSG_ONE_RSVD = $2000;
const MSG_ALL_RSVD = $2001;
const MSG_TIMEOUT = $2002;
const MSG_ONE_FAILED = $2003;
const MSG_TRANS_CANCELLED = $2004;
const MSG_TRANS_STARTED = $1000;
const MSG_TRANS_END = $1001;
//返回值定義
FD_SUCCESSED: HRESULT = $2000;
FD_READY: HRESULT = $2001;
FD_UNREADY: HRESULT = $1031;
FD_FAILED: HRESULT = $1000;
FD_OPEN_FAILED: HRESULT = $1001;
FD_START_FAILED: HRESULT = $1002;
FD_STOP_FAILED: HRESULT = $1003;
FD_INVALID_POINTER: HRESULT = $1011;
FD_IMAGE_STOPED: HRESULT = $1012;
FD_WRITE_DEVICE_FAILED:HRESULT = $1013;
FD_READ_DEVICE_FAILED: HRESULT = $1014;
FD_READ_IMAGE_FAILED: HRESULT = $1015;
FD_INVALID_IMAGE: HRESULT = $1016;
FD_OPEN_FILE_FAILED: HRESULT = $1017;
FD_INVALID_HANDLE: HRESULT = $1018;
FD_UPDATE_FAILED: HRESULT = $1019;
FD_GET_HARDWARE_FAILED:HRESULT = $1020;
FD_BAD_PARAM: HRESULT = $1021;
FD_BUSYING: HRESULT = $1028;
FD_UNINITIALIZED: HRESULT = $1029;
FD_CANCEL_FAILED: HRESULT = $1030;
FD_NOT_SUPPORT: HRESULT = $1031;
FD_TIME_OUT: HRESULT = $1032;
//定義關(guān)于相機(jī)增益的常量數(shù)組
//IE130M和IE130C相機(jī)的模擬增益值
AnalogGain: Array[1..17] of Single = (1.0,
1.37, 1.62, 1.96, 2.33,
2.76, 3.50, 4.25, 5.20,
6.25, 7.89, 9.21, 11.00,
11.37, 11.84, 12.32, 12.42);
//IE036M和IE036C相機(jī)的模擬增益值
AnalogGain_IE036: Array[1..4] of Single = (1.0, 2.0, 3.0, 4.0);
//ID130M、ID130C和ID320PLUS相機(jī)的模擬增益
//ID320PLUS的模擬增益與ID130系列相同
AnalogGain_ID130: Array[1..4] of Single = (1.0, 2.0, 3.0, 4.0);
implementation
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -