⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mvcapi.h

📁 图像捕捉 可以用来捕捉图像的 适用于工业相机
💻 H
字号:
    #ifndef _MVC1000APIUSER_H
#define _MVC1000APIUSER_H

#include "CommonDataType.h"

#ifdef MVC1000API_EXPORTS
#define MV_API extern __declspec(dllexport) MV_RETURN_CODE WINAPI
#else
#define MV_API extern __declspec(dllimport) MV_RETURN_CODE WINAPI
#endif

#ifdef __cplusplus
extern "C"{
#else
#endif


/*--------------------------------------------------------------
	initial device
  --------------------------------------------------------------*/
MV_API MV_Usb2Init(	IN LPCSTR pFilterName, OUT int*  index,	
				    IN struct CapInfoStruct *pCapInfo, OUT HANDLE* hImager);

/*--------------------------------------------------------------
	uninitial device
  --------------------------------------------------------------*/
MV_API MV_Usb2Uninit(IN HANDLE* hImager);


/*--------------------------------------------------------------
	start preview
  --------------------------------------------------------------*/
MV_API 
MV_Usb2Start(IN HANDLE hImager,	
			 LPCTSTR   title,								//="My View"
			 ULONG     style,								//=WS_OVERLAPPEDWINDOW|WS_VISIBLE
			 ULONG     x,									//=0
			 ULONG     y,									//=0
			 ULONG     width,								//=-1
			 ULONG     height,								//=-1
			 HWND      parent,								//=NULL
			 ULONG     nId,									//=0
			 IN int    ViewDataThreadPriority,				//=THREAD_PRIORITY_NORMAL
			 IN int    ViewDrawThreadPriority);				 //=THREAD_PRIORITY_NORMAL


/*--------------------------------------------------------------
	pause preview
  --------------------------------------------------------------*/
MV_API
MV_Usb2Pause(IN HANDLE hImager,	IN ULONG pause);


/*--------------------------------------------------------------
	stop preview
  --------------------------------------------------------------*/
MV_API
MV_Usb2Stop(IN HANDLE hImager);			// Imager object handle


/*--------------------------------------------------------------
	auto white balance
  --------------------------------------------------------------*/
MV_API 
MV_Usb2AWB(IN HANDLE   hImager,	
		   IN BOOL     bDoAgc, 
		   IN BYTE     btRTarget, 
		   IN BYTE     btGTarget, 
		   IN BYTE     btBTarget, 
		   IN LPVOID   lpFunc, 
		   IN LONG     *pParam);

/*--------------------------------------------------------------
	auto exposure
  --------------------------------------------------------------*/
MV_API 
MV_Usb2AutoExposure(IN HANDLE  hImager, 
					IN BOOL    bAdjustExp, 
					IN BYTE    btTarget, 
					IN LPVOID  lpFunc, 
					IN LONG    *pParam);

/*--------------------------------------------------------------
	load gammatable
  --------------------------------------------------------------*/
MV_API 
MV_Usb2SetGamma(IN HANDLE hImager, 
				IN BYTE   *pGamma, 
				IN BOOL   bGamma);


/*--------------------------------------------------------------
	B/W preview
  --------------------------------------------------------------*/
MV_API 
MV_Usb2SetBw(IN HANDLE hImager,	
			 IN BOOL   bBw);


/*--------------------------------------------------------------
	set capture and preview property
  --------------------------------------------------------------*/
MV_API  
MV_Usb2SetCapInfo(IN HANDLE hImager, 
				  struct CapInfoStruct *pCapInfo);

/*--------------------------------------------------------------
	set capture and preview property
  --------------------------------------------------------------*/
MV_API 
MV_Usb2SetPartOfCapInfo(IN HANDLE hImager, 
						IN struct CapInfoStruct *pCapInfo);


/*--------------------------------------------------------------
	get frame rate
  --------------------------------------------------------------*/
MV_API
MV_Usb2GetFrameRate(IN HANDLE hImager,	
					OUT float *pfFrameRate);

/*--------------------------------------------------------------
	save paused frame to bmp
  --------------------------------------------------------------*/
MV_API 
MV_Usb2SavePausedFrameAsBmp(IN HANDLE   hImager, 
							IN LPCTSTR  FileName);

/*--------------------------------------------------------------
	capture one frame and save to bmp file
  --------------------------------------------------------------*/
MV_API
MV_Usb2SaveFrameAsBmp(IN HANDLE   hImager, 
					  IN struct   CapInfoStruct *pCapInfo, 
					  OUT BYTE    *pDest, 
					  IN LPCTSTR  FileName);

/*--------------------------------------------------------------
	get the paused frame, when you call, you must in pause state
  --------------------------------------------------------------*/
MV_API 
MV_Usb2GetPausedRgbData(IN HANDLE hImager, 
						OUT BYTE* pDest);


/*--------------------------------------------------------------
	get the raw data of one frame
  --------------------------------------------------------------*/
MV_API
MV_Usb2GetRawData(IN HANDLE hImager, IN struct CapInfoStruct *pCapInfo);

/*--------------------------------------------------------------
	convert 8bit raw to 24bit rgb 
  --------------------------------------------------------------*/
MV_API
MV_Usb2ConvertRawToRgb(IN HANDLE   hImager,
					   IN BYTE*    pSrc,		// Ptr to the source buffer
					   IN ULONG    width,		//image width
					   IN ULONG    height,		//image height
					   OUT BYTE*   pDest,
					   IN  BOOL    bRGB    );

/*--------------------------------------------------------------
	get 24bit rgb data of frame
  --------------------------------------------------------------*/
MV_API
MV_Usb2GetRgbData(IN HANDLE hImager, 
				  IN struct CapInfoStruct *pCapInfo, ///////change
				  OUT BYTE* pDest);



/*--------------------------------------------------------------
	set preivew window's size
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetViewWin(IN HANDLE hImager, 
				  IN PMVRECT pRect);	


/*--------------------------------------------------------------
	get preview window's size
  --------------------------------------------------------------*/
MV_API
MV_Usb2GetViewWin( IN  HANDLE   hImager,  
				   OUT PMVRECT pRect);

/*--------------------------------------------------------------
	set preview window same to capture window size
  --------------------------------------------------------------*/
MV_API
MV_Usb2ResetViewWin(IN HANDLE hImager);


/*--------------------------------------------------------------
	get fps
  --------------------------------------------------------------*/
MV_API
MV_Usb2GetNumberDevices(IN HANDLE hImager,	
						OUT PU32 pNumberDevices);


/*--------------------------------------------------------------
	set gamma value to correlation, (0~2)
  --------------------------------------------------------------*/
MV_API 
MV_Usb2SetGammaValue(HANDLE hImager, 
					 float  GammaValue,  
					 BOOL   bGammaOn);

/*--------------------------------------------------------------
	auto flash photo
  --------------------------------------------------------------*/
MV_API 
MV_Usb2AutoFlash(IN HANDLE hImager, 
				 IN struct CapInfoStruct *pCapInfo, 
				 OUT BYTE *pRGBData );


/*--------------------------------------------------------------
	set selectable region AWB'S callback function
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetAwbCallBackFunction(IN HANDLE hImager,
							  IN BYTE   btRTarget,
							  IN BYTE   btGTarget,
							  IN BYTE   btBTarget, 
							  IN LPVOID lpFunc, 
							  IN LONG   *pParam);

/*--------------------------------------------------------------
	set selectable region AE'S callback function
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetAeCallBackFunction(IN HANDLE hImager,
							 IN BYTE   btAeTarget, 
							 IN LPVOID lpFunc, 
							 IN LONG * pParam);



/*--------------------------------------------------------------
	set GDI MASK'S callback function
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetMaskCallBack(IN HANDLE hImager, LPMV_CALLBACK2 MaskCallBackFunction, LPVOID lpUser);

/*--------------------------------------------------------------
	if GDI MASK
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetMask(IN HANDLE hImager,BOOL bMask);



/*--------------------------------------------------------------
	clear view function
  --------------------------------------------------------------*/
MV_API
MV_Usb2ClearView(IN HANDLE hImager,IN BOOL bClearView);


/*--------------------------------------------------------------
	set frame arrive callback function. when one frame finished transfer,
	callback function will be called
  --------------------------------------------------------------*/
MV_API
MV_Usb2SetFrameArriveCallBack(
							  IN HANDLE hImager, 
							  LPMV_CALLBACK fpFrameArriveCallBackFunction, 
							  LPVOID lpUser
							  );

/*--------------------------------------------------------------------------
	real time image process.
--------------------------------------------------------------*/
MV_API
MV_Usb2SharpPreview( IN HANDLE hImager, BOOL bSharp );


/*--------------------------------------------------------------------------
	real time image process.
  --------------------------------------------------------------*/
MV_API
MV_Usb2MeanPreview( IN HANDLE hImager, BOOL bMean );

/*--------------------------------------------------------------------------
	real time image process.
  --------------------------------------------------------------*/
MV_API
MV_Usb2EmbossPreview(IN HANDLE hImager, BOOL bEmboss);


/*--------------------------------------------------------------------------
	real time image process.
  --------------------------------------------------------------*/
MV_API
MV_Usb2EdgeDetectPreview(IN HANDLE hImager, BOOL bEdgeDetect);

/*--------------------------------------------------------------------------
	real time image process.
  --------------------------------------------------------------*/
MV_API
MV_Usb2GaussBlurPreview(IN HANDLE hImager, BOOL bGaussBlur);


/*--------------------------------------------------------------------------
	detect Noise Pixel.
  --------------------------------------------------------------*/
MV_API
MV_Usb2DetectNoisePixel( IN HANDLE hImager );


/*--------------------------------------------------------------------------
	removal Noise Pixel. first, you should do detect noise pixels
  --------------------------------------------------------------*/
MV_API
MV_Usb2RemoveNoisePixel( IN HANDLE hImager, BOOL bRemoveNoise );


MV_API
MV_Usb2SetFrameCallBack( IN HANDLE hImager, LPMV_CALLBACK2 FrameCallBackFunction, LPVOID lpUser);

MV_API
MV_Usb2Enhanced( IN HANDLE hImager, IN BYTE nDelta, BOOL bEnhance );

MV_API
MV_Usb2VerifyUserPwd( IN HANDLE hImager, BYTE WRRDFlag, BYTE CH, BYTE *ptr );

MV_API
MV_Usb2ModifyUserPwd( IN HANDLE hImager, BYTE WRRDFlag, BYTE CH, BYTE *OldPtr, BYTE *NewPtr );

MV_API
MV_Usb2WriteUserDate( IN HANDLE hImager, BYTE CH, BYTE StartAdd, BYTE Num, BYTE *Ptr );

MV_API
MV_Usb2ReadUserDate( IN HANDLE hImager, BYTE CH, BYTE StartAdd, BYTE Num, BYTE *Ptr );

/*--------------------------------------------------------------
	Reserved,Can not used.
	set pin2 capture signal without preview callback function.
	callback function's first paramete is state of pin2 back to user. 0-low level, 1-high level
MV_API
MV_Usb2SetOutTriggerCallBack(IN HANDLE hImager, LPMV_OUTRIGGERCALLBACK pOutTriggerCallBackFunction, LPVOID lpUser);
  --------------------------------------------------------------*/


/*--------------------------------------------------------------
	Reserved,Can not used.
	set capture pin2 with preview callback function
MV_API
MV_Usb2SetOutTriggerCallBackWithPreview(IN HANDLE hImager, LPMV_OUTRIGGERCALLBACK pOutTriggerCallBackFunction, LPVOID lpUser);
  --------------------------------------------------------------*/


/*--------------------------------------------------------------
	Reserved,Can not used.
	read or write GPIO, extended pin2,pin3,pin4,pin5
  --------------------------------------------------------------*/
MV_API
MV_Usb2BitOperation( IN  HANDLE hImager,
			         IN  int   bOut,
			         OUT int   *bIn ); 

/*--------------------------------------------------------------
	Reserved,Can not used.
	get serial no. no need call for now.
  --------------------------------------------------------------*/
MV_API	
MV_Usb2GetSerial(IN HANDLE hImager, OUT LPTSTR szSerial);


/*
--------------------------------------------------------------
	Reserved,Can not used.
	capture external input, and capture one frame if an rising edge occur on pin6
--------------------------------------------------------------*/
MV_API
MV_Usb2GetOneFrameByExternal( IN HANDLE  hImager,
							  IN struct  CapInfoStruct *pCapInfo,
							  IN long    nTimeout,
							  OUT BOOL   *bTriggered
							  );

#ifdef __cplusplus
}
#endif

#endif //_MVC1000APIUSER_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -