📄 okapi32.h
字号:
//---------------okapi32.h---------------------------------
//
// ok api32 header file for user
//
//---------------------------------------------------------
#ifndef __JOINHOPE__
#define __JOINHOPE__
//----contant defines----
//--defines of ok series image board identity
//Mono series
#define OK_M10 1010
#define OK_M10N 1010
#define OK_M10M 1013
#define OK_M10F 1011
#define OK_M10L 1014
#define OK_M10H 1012
#define OK_M20 1020
#define OK_M2KC 1021
#define OK_M20H 1022
#define OK_M30 1030
#define OK_M40 1040
#define OK_M50 1050
#define OK_M60 1060
#define OK_M70 1070
#define OK_M80 1080
#define OK_M80K 1081
//--new updated series
#define OK_M10A 1212 //OK_M10M:1013
#define OK_M10B 1213 //OK_M10L/N:1014
#define OK_M10C 1214 //
#define OK_M10D 1215
#define OK_M10K 1218 //OK_M80K
#define OK_M20A 1222 //OK_M20H:1022
#define OK_M20B 1223 //110M
#define OK_M20C 1224 //160M
#define OK_M20D 1225 //2050M
#define OK_M40A 1240 //OK_M40:1041
#define OK_M40B 1243 //110M
#define OK_M40C 1244 //160M
#define OK_M40D 1245 //205M
#define OK_M60A 1260 //OK_M60:1060
#define OK_M60B 1263 //110M
#define OK_M60C 1264 //160M
#define OK_M60D 1265 //205M
#define OK_M50A 1250
#define OK_M50K 1258
#define OK_M51K 1257
#define OK_M30A 1230
#define OK_M30B 1233
#define OK_M30K 1238
#define OK_M31K 1237
#define OK_M70A 1270
//Color series
#define OK_C20 2020
#define OK_C20C 2021
#define OK_C30 2030
#define OK_C32 2032
#define OK_C30S 2031
#define OK_C40 2040
#define OK_C50 2050
#define OK_C70 2070
#define OK_C80 2080
#define OK_C80M 2081
#define OK_M90 1090
//RGB series
#define OK_RGB10 3010
#define OK_RGB20 3020
#define OK_RGB30 3030
//Monitor Control series
#define OK_MC10 4010
#define OK_MC16 4016
#define OK_MC20 4020
#define OK_MC30 4030
//--new updated series
#define OK_C20A 2220
#define OK_C23A 2221
#define OK_C20B 2223
#define OK_C30A 2230
#define OK_C31A 2231
#define OK_C30B 2233
#define OK_C40A 2240
#define OK_C50A 2250
#define OK_C60A 2260
#define OK_C60B 2263
#define OK_C60C 2264
#define OK_C80A 2280
#define OK_C80K 2288
#define OK_RGB10A 3210
#define OK_RGB10B 3213
#define OK_RGB20A 3220
#define OK_RGB21A 3221
#define OK_RGB20B 3223
#define OK_RGB20C 3224
#define OK_RGB30A 3230
#define OK_RGB30B 3233
#define OK_RGB30C 3234
#define OK_MC10A 4210
#define OK_MC12A 4212
#define OK_MC16A 4216
//---pc/104+ series
#define OK_PC10A 5210
#define OK_PC16A 5216
//---usb series
#define OK_USB20A 5220
//---cPCI series
#define OK_CPC16A 5230
//---Digital series
#define OK_CL20A 6120 //CameraLink
#define OK_CL40A 6140 //
#define OK_CL60A 6160 //
#define OK_LV20A 6220 //LVDS
#define OK_LV40A 6240 //
#define OK_LV60A 6260 //
//---Ok sereis Camera
#define OK_AM1310 201310
#define OK_AC1210 211210
#define OK_AC1310 211310
#define OK_SM1310 301310
#define OK_SC1310 311310
#define OK_SC2010 312010
#define OK_SC3010 313010
//--error code
#define ERR_NOERROR 0 //no error
#define ERR_NOTFOUNDBOARD 1 //not found available ok board
#define ERR_NOTFOUNDVXDDRV 2 //not found ok vxd/ntsys driver
#define ERR_NOTALLOCATEDBUF 3 //not pre-allocated buffer from host memory
#define ERR_BUFFERNOTENOUGH 4 //available buffer not enough for requirment
#define ERR_BEYONDFRAMEBUF 5 //capture iamge size beyond buffer
#define ERR_NOTFOUNDDRIVER 6 //not found the driver responded the card
#define ERR_NOTCORRECTDRIVER 7 //the needed driver not correct
#define ERR_MEMORYNOTENOUGH 8 //host memory not enough for DLL
#define ERR_FUNNOTSUPPORT 9 //the function is not supported
#define ERR_OPERATEFAILED 10 //something wrong with this function call
#define ERR_HANDLEAPIERROR 11 //the handle to okapi32 function wrong
#define ERR_DRVINITWRONG 12 //something wrong with this card's driver on initializing
#define ERR_RECTVALUEWRONG 13 //the rect's parameters set wrong
#define ERR_FORMNOTSUPPORT 14 //the format set not supported by this board
#define ERR_TARGETNOTSUPPORT 15 //the target not support by this function
#define ERR_NOSPECIFIEDBOARD 16 //not found specified board correctly sloted
//--format defines
#define FORM_RGB888 1
#define FORM_RGB565 2
#define FORM_RGB555 3
#define FORM_RGB8888 4
#define FORM_RGB332 5
#define FORM_RGB8886 18
#define FORM_YUV422 6
#define FORM_YUV411 7
#define FORM_YUV16 8
#define FORM_YUV12 9
#define FORM_YUV9 10
#define FORM_YUV8 11
#define FORM_GRAY888 12
#define FORM_GRAY8888 13
#define FORM_GRAY8 14
#define FORM_GRAY10 15
#define FORM_GRAY12 16
#define FORM_GRAY16 17
//--mask command
#define MASK_DISABALE 0 //turn of mask
#define MASK_POSITIVE 1 //0 win clients visible, 1 video visible
#define MASK_NEGATIVE 2 //0 for video 1 for win client (graph)
//--tv system standard
#define TV_PALSTANDARD 0 //PAL
#define TV_NTSCSTANDARD 1 //NTSC
#define TV_NONSTANDARD 2 //NON_STD
#define TV_HDTVSTANDARD 3 //HDTV_STD
//#define TV_SECAMSTANDARD 4 //SECAM
//--HDTV sub mode
#define HDTV_480P 1 //480 Lines Progressive scan
#define HDTV_720P 2 //720 Lines Progressive scan
#define HDTV_1080I 3 //1080 Lines Interlaced scan
#define HDTV_1080P 4 //1080 Lines Interlaced scan
#define TV_PALMAXWIDTH 768
#define TV_PALMAXHEIGHT 576
#define TV_NTSCMAXWIDTH 640 //720
#define TV_NTSCMAXHEIGHT 480
//-----defines lParam for get param
#define GETCURRPARAM -1
//-----sub-function defines for wParam of SetVideoParam
//wParam cab be one of the follow
#define VIDEO_RESETALL 0 //reset all to sys default
#define VIDEO_SOURCECHAN 1
// lParam=0,1.. Comp.Video; 0x100,101...to Y/C(S-Video), 0x200,0x201 to RGB Chan.Input
#define VIDEO_BRIGHTNESS 2 //LOWORD is brightness, for RGB HIWORD is channel (0:red, 1:green, 2:blue)
#define VIDEO_CONTRAST 3 //LOWORD is contrast, for RGB HIWORD is channel (0:red, 1:green, 2:blue)
#define VIDEO_COLORHUE 4
#define VIDEO_SATURATION 5
#define VIDEO_RGBFORMAT 6 //when return low word is code high word is bitcount
#define VIDEO_TVSTANDARD 7 //Main Mode:LOWORD 0 PAL, 1 NTSC, 2 Non-stadard, HDTVSTANDARD,
//Sub Mode: HIWORD 1 HDTV_480P, ...
#define VIDEO_SIGNALTYPE 8 //LOWORD 0: non-interlaced, 1: interlaced
//2:single pixel, 3:double pixels (for digital signal)
//HIWORD 0 no slot in field header, 1 yes
#define VIDEO_RECTSHIFT 9 //video rect shift, makelong (x,y)
#define VIDEO_SYNCSIGCHAN 10 //LOWORD 0:Red,1:Grn,2:Blue, 3:Sync,4 H.V.Sync;
//HIWORD is source 0,1,..for RGB input,
// 0x100,0x101,... for comp.video input
// (in this case LOWORD has no mean more)
#define VIDEO_AUXMONCHANN 11 //monitor video source chann on aux monitor
#define VIDEO_AVAILRECTSIZE 12 //makelong(horz,vert)
//horz available pixels per scan line and
//vert available lines per frame
#define VIDEO_FREQSEG 13 // set horz video frequency range
//0:Low(7.5~15MHz), 1:middle(15~30), 2:High(30~60)
#define VIDEO_LINEPERIOD 14 //line period (in 0.54 us) generated by board
//HIWORD==1, in 0.1 vs
#define VIDEO_FRAMELINES 15 //lines per frame generated by board
//when outlines<2/3* caspture vert lines, it will zoom vert to half lines
//for digtal cards
#define VIDEO_MISCCONTROL 16 //miscellaneous control bits
//b0:-satur, b1:- contr for c20, c30
//b2:agc, b3:gama, b4:b/w,
//b5:fast mode for c30b
#define VIDEO_ENABLEGRAPHS 17 //enable graph
#define VIDEO_GAINADJUST 18 //gain adjust
#define VIDEO_RECTSHIFTEX 19 //general video active rect shift, makelong (x,y)
//replace for VIDEO_RECTSHIFT
#define VIDEO_PHASEADJUST 20 //phase adjust
#define VIDEO_OUTSIGNALTYPE 22 //out signal type, b0:in grn, b1:comp sync, b2:interlace
//b3:neg pole; b4:vert half zoom
#define VIDEO_OUTHORZPIX 23 // set out horz total pixel on the monitor
//-----sub-function defines for wParam of SetCaptureParam
//wParam cab be one of the follow
#define CAPTURE_RESETALL 0 //reset all to sys default
#define CAPTURE_INTERVAL 1
#define CAPTURE_CLIPMODE 2 //LOWORD: clip mode when video and dest rect not same size
//HIWORD: if captrure odd and even field crosslly
#define CAPTURE_SCRRGBFORMAT 3 //when return, loword=code, hiword=bits
#define CAPTURE_BUFRGBFORMAT 4
#define CAPTURE_FRMRGBFORMAT 5
#define CAPTURE_BUFBLOCKSIZE 6 //lParam=MAKELONG(width,height)
//if set it 0 (default), the rect set by user will be as block size
#define CAPTURE_HARDMIRROR 7 //bit0 x, bit1 y;
#define CAPTURE_VIASHARPEN 8 //sample via sharpen filter
#define CAPTURE_VIAKFILTER 9 //sample via recursion filter
#define CAPTURE_SAMPLEFIELD 10 //0 in field (non-interlaced), 1 in frame (interlaced), (0,1 are basic)
//2 in field but keep expend row,3 in field but interlaced one frame
//(2,4 can affect only sampllng field(frame) by field(frame) )
//in 3 up-dn frame
#define CAPTURE_HORZPIXELS 11 // set max horz pixel per scan line
#define CAPTURE_VERTLINES 12 // set max vert lines per frame
#define CAPTURE_ARITHMODE 13 //arithmatic mode
#define CAPTURE_TO8BITMODE 14 //the mode of high (eg. 10 bits) converted to 8bit
//HIWORD(lParam)=0: linear scale,
//HIWORD(lParam)!=0:clip mode, LOWORD(lParam)=offset
#define CAPTURE_SEQCAPWAIT 15 // bit0 if waiting finished for functions of sequence capturing and playbacking
//bit1 if waiting finished capture then call callback function
#define CAPTURE_MISCCONTROL 16 //miscellaneous control bits
//bit0: 1: take one by one |okCapturByBuffer,okGetSeqCapture by interrupt control
//bit1: 1: take last one
//bit2: 1: one by one for usb20
#define CAPTURE_TRIGCAPTURE 17 //set triggered capture, LOWORD cap no of fields, HIWORD delay fields after trigger
#define CAPTURE_TURNCHANNELS 18 //turn channel when sequence capture
//b0~6 for turn number (max 127),
//b8~31(24) mask 0~23 channles, b7=1 keep this pos
#define CAPTURE_EXPOSETIME 20 //set exposed time for camera in microsecond
#define SAMPLE_INFIELD 0 //in field (non-interlaced)
#define SAMPLE_INFRAME 1 //in frame of interlaced fields
//the above two (0,1) are basic
#define SAMPLE_FIELDEXP 2 //in field but expend (keep expend row)
#define SAMPLE_UPDNFRAME 3 //in frame of up-downed fields
#define SAMPLE_FIELDINTER 4 //in field but interlaced to one frame
#define SAMPLE_INTOPFIELD 5 //
//-----defines lParam for CAPTURE_CLIPMODE
#define RECT_SCALERECT 0
#define RECT_CLIPCENTER 1
#define RECT_FIXLEFTTOP 2
//in condition video rect great than screen rect:
//if RECT_SCALERECT video rect will be scaled to match screen rect if it can. else
//video rect will be adjusted to match screen rect
//(1: center, take center video rect 2: left-top fixed, take same size rect)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -