Cross plantform versiongit status !

This commit is contained in:
xinyang
2019-05-14 22:22:33 +08:00
parent 601bf2a510
commit f9eab62680
30 changed files with 13231 additions and 392 deletions

View File

@@ -0,0 +1,333 @@
#ifndef _MV_CAMERA_GRABBER_H_
#define _MV_CAMERA_GRABBER_H_
#include "CameraDefine.h"
#include "CameraStatus.h"
/// @ingroup GRABBER_CREATE
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD>û<EFBFBD>ѡ<EFBFBD><D1A1>Ҫ<EFBFBD>򿪵<EFBFBD><F2BFAAB5><EFBFBD><EFBFBD><EFBFBD>
/// \param [out] Grabber <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD>IJɼ<C4B2><C9BC><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \note <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD> @link CameraInit @endlink <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>ʹ<EFBFBD><CAB9> @link CameraGrabber_GetCameraHandle @endlink <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK API<50><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \~english
/// \brief Pop-up camera list allows the user to select the camera to open
/// \param [out] Grabber returns newly created grabber
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \note This function uses @link CameraInit @endlink internally to open the camera, so you can use @link CameraGrabber_GetCameraHandle @endlink to get the camera handle and use other SDK APIs to operate the camera.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_CreateFromDevicePage(
void** Grabber
);
/// @ingroup GRABBER_CREATE
/// \~chinese
/// \brief ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Grabber
/// \param [out] Grabber <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD>IJɼ<C4B2><C9BC><EFBFBD>
/// \param [in] Index <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \note <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD> @link CameraInit @endlink <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>ʹ<EFBFBD><CAB9> @link CameraGrabber_GetCameraHandle @endlink <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK API<50><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \~english
/// \brief Creating a Grabber Using a Camera List Index
/// \param [out] Grabber returns newly created grabber
/// \param [in] Index Camera index
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \note This function uses @link CameraInit @endlink internally to open the camera, so you can use @link CameraGrabber_GetCameraHandle @endlink to get the camera handle and use other SDK APIs to operate the camera.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_CreateByIndex(
void** Grabber,
int Index
);
/// @ingroup GRABBER_CREATE
/// \~chinese
/// \brief ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD>Grabber
/// \param [out] Grabber <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD>IJɼ<C4B2><C9BC><EFBFBD>
/// \param [in] Name <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD>@link #tSdkCameraDevInfo.acFriendlyName @endlink
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \note <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD> @link CameraInit @endlink <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>ʹ<EFBFBD><CAB9> @link CameraGrabber_GetCameraHandle @endlink <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK API<50><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \~english
/// \brief Create a Grabber with a Camera Name
/// \param [out] Grabber returns newly created grabber
/// \param [in] Name Camera name.@link #tSdkCameraDevInfo.acFriendlyName @endlink
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \note This function uses @link CameraInit @endlink internally to open the camera, so you can use @link CameraGrabber_GetCameraHandle @endlink to get the camera handle and use other SDK APIs to operate the camera.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_CreateByName(
void** Grabber,
char* Name
);
/// @ingroup GRABBER_CREATE
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Grabber
/// \param [out] Grabber <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD>IJɼ<C4B2><C9BC><EFBFBD>
/// \param [in] pDevInfo <20><EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2>@link #CameraEnumerateDevice @endlink
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \note <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD> @link CameraInit @endlink <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>ʹ<EFBFBD><CAB9> @link CameraGrabber_GetCameraHandle @endlink <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK API<50><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \~english
/// \brief Create Grabber from device info
/// \param [out] Grabber returns newly created grabber
/// \param [in] pDevInfo device information. @link #CameraEnumerateDevice @endlink
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \note This function uses @link CameraInit @endlink internally to open the camera, so you can use @link CameraGrabber_GetCameraHandle @endlink to get the camera handle and use other SDK APIs to operate the camera.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_Create(
void** Grabber,
tSdkCameraDevInfo* pDevInfo
);
/// @ingroup GRABBER_DESTROY
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>Grabber
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Destroy Grabber
/// \param [in] Grabber
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_Destroy(
void* Grabber
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] hWnd <20><>ʾ<EFBFBD><CABE><EFBFBD>ڵĴ<DAB5><C4B4>ھ<EFBFBD><DABE><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Set the preview video display window
/// \param [in] Grabber
/// \param [in] hWnd window handle of the display window
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetHWnd(
void* Grabber,
HWND hWnd
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>Grabberȡͼʱʹ<CAB1>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ȼ<EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] Priority ȡͼ<C8A1><CDBC><EFBFBD>ȼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>@link #emCameraGetImagePriority @endlink
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Sets the priority used by Grabber when fetching graphs
/// \param [in] Grabber
/// \param [in] Priority GetImageBuffer priority, For details see: @link #emCameraGetImagePriority @endlink
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetPriority(
void* Grabber,
UINT Priority
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><>ʼ<EFBFBD>ɼ<EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \note Grabber<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD>״̬<D7B4><CCAC><EFBFBD>ɼ<EFBFBD><C9BC>ص<EFBFBD><D8B5><EFBFBD>ץͼ<D7A5>ȹ<EFBFBD><C8B9>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \~english
/// \brief Start Grabber
/// \param [in] Grabber
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \note Grabber must enter the acquisition state, grab callbacks, snapshot and other functions in order to function properly
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_StartLive(
void* Grabber
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief ֹͣ<CDA3>ɼ<EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \warning <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>лص<D0BB><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ڵȴ<DAB5>ʱ<EFBFBD><CAB1><EFBFBD>ɷ<EFBFBD>windows<77><73>Ϣ<EFBFBD><CFA2>
/// \~english
/// \brief Stop Grabber
/// \param [in] Grabber
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \warning This function will wait for all callbacks to end before returning to the caller,And it will dispatch windows messages while waiting.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_StopLive(
void* Grabber
);
/// @ingroup GRABBER_SNAPSHOT
/// \~chinese
/// \brief ͬ<><CDAC>ץͼ
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [out] Image <20><><EFBFBD><EFBFBD>ץȡ<D7A5><C8A1><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC> \note <20><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>@link #CameraImage_Destroy @endlink<6E>ͷ<EFBFBD>
/// \param [in] TimeOut <20><>ʱʱ<CAB1><EFBFBD><E4A3A8><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Synchronized snapshot
/// \param [in] Grabber
/// \param [out] Image Returns Captured Image \note Need to Call @link #CameraImage_Destroy @endlink Release
/// \param [in] TimeOut Timeout (milliseconds)
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SaveImage(
void* Grabber,
void** Image,
DWORD TimeOut
);
/// @ingroup GRABBER_SNAPSHOT
/// \~chinese
/// \brief <20>һ<E1BDBB><D2BB><EFBFBD><EFBFBD><ECB2BD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD>ɻ<EFBFBD><C9BB>ص<EFBFBD><D8B5>û<EFBFBD><C3BB><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \see CameraGrabber_SetSaveImageCompleteCallback
/// \~english
/// \brief Submit an asynchronous snapshot request, complete the user's completion function after the completion of the submission.
/// \param [in] Grabber
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \see CameraGrabber_SetSaveImageCompleteCallback
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SaveImageAsync(
void* Grabber
);
/// @ingroup GRABBER_SNAPSHOT
/// \~chinese
/// \brief <20>һ<E1BDBB><D2BB><EFBFBD><EFBFBD><ECB2BD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD>ɻ<EFBFBD><C9BB>ص<EFBFBD><D8B5>û<EFBFBD><C3BB><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] UserData <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD>ʹ<EFBFBD><CAB9> @link CameraImage_GetUserData @endlink <20><>Image<67><65>ȡ<EFBFBD><C8A1>ֵ
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \see CameraGrabber_SetSaveImageCompleteCallback
/// \~english
/// \brief Submit an asynchronous snapshot request, complete the user's completion function after the completion of the submission.
/// \param [in] Grabber
/// \param [in] UserData user data, which can be obtained from Image using @link CameraImage_GetUserData @endlink
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \see CameraGrabber_SetSaveImageCompleteCallback
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SaveImageAsyncEx(
void* Grabber,
void* UserData
);
/// @ingroup GRABBER_SNAPSHOT
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB2BD>ʽץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] Callback <20><><EFBFBD>첽ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Context <20><>Callback<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Callback
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \see CameraGrabber_SaveImageAsync CameraGrabber_SaveImageAsyncEx
/// \~english
/// \brief Set the completion function of asynchronous mode snapshot
/// \param [in] Grabber
/// \param [in] Callback Callback is called when the asynchronous snapshot task completes
/// \param [in] Context Passed as a parameter when the Callback is invoked
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
/// \see CameraGrabber_SaveImageAsync CameraGrabber_SaveImageAsyncEx
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetSaveImageCompleteCallback(
void* Grabber,
pfnCameraGrabberSaveImageComplete Callback,
void* Context
);
/// @ingroup GRABBER_CB
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] Listener <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Context <20><>Listener<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Listener
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Set frame listening function
/// \param [in] Grabber
/// \param [in] Listener listener function
/// \param [in] Context Passed as a parameter when the Listener is invoked
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetFrameListener(
void* Grabber,
pfnCameraGrabberFrameListener Listener,
void* Context
);
/// @ingroup GRABBER_CB
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>RAW<41><57><EFBFBD>ݻص<DDBB><D8B5><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] Callback Raw<61>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Context <20><>Callback<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Callback
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Set RAW data callback function
/// \param [in] Grabber
/// \param [in] Callback Raw data callback function
/// \param [in] Context Passed as a parameter when the Callback is invoked
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetRawCallback(
void* Grabber,
pfnCameraGrabberFrameCallback Callback,
void* Context
);
/// @ingroup GRABBER_CB
/// \~chinese
/// \brief <20><><EFBFBD><EFBFBD>RGB<47>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [in] Callback RGB<47>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Context <20><>Callback<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Callback
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Set RGB callback function
/// \param [in] Grabber
/// \param [in] Callback RGB data callback function
/// \param [in] Context Passed as a parameter when the Callback is invoked
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_SetRGBCallback(
void* Grabber,
pfnCameraGrabberFrameCallback Callback,
void* Context
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [out] hCamera <20><><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Get camera handle
/// \param [in] Grabber
/// \param [out] hCamera returned camera handle
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_GetCameraHandle(
void* Grabber,
CameraHandle *hCamera
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><>ȡ֡ͳ<D6A1><CDB3><EFBFBD><EFBFBD>Ϣ
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [out] stat <20><><EFBFBD>ص<EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Get frame statistics
/// \param [in] Grabber
/// \param [out] stat returned statistics
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_GetStat(
void* Grabber,
tSdkGrabberStat *stat
);
/// @ingroup GRABBER_CTRL
/// \~chinese
/// \brief <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>DevInfo
/// \param [in] Grabber <20>ɼ<EFBFBD><C9BC><EFBFBD>
/// \param [out] DevInfo <20><><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>DevInfo
/// \return <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD> CAMERA_STATUS_SUCCESS(0)<29><><EFBFBD><EFBFBD><EFBFBD>򷵻ط<F2B7B5BB><30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>ο<EFBFBD> CameraStatus.h <20>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>
/// \~english
/// \brief Get Camera DevInfo
/// \param [in] Grabber
/// \param [out] DevInfo Returns Camera DevInfo
/// \return Returns CAMERA_STATUS_SUCCESS(0) successfully. Otherwise, it returns a non-zero error code. Please refer to the definition of the error code in CameraStatus.h.
MVSDK_API CameraSdkStatus __stdcall CameraGrabber_GetCameraDevInfo(
void* Grabber,
tSdkCameraDevInfo *DevInfo
);
#endif // _MV_CAMERA_GRABBER_H_