📄 extdev.h
字号:
* you need to reset the LUT (passing NULL pointer to the Image parameter), acquiring
* a new image and passing that image to the method again.
* @param Image pointer to LvROI object with the image data
* @param Reserved reserved, don't use.
* @return @ref ErrorDefinitions
*/
LVSTATUS EqualizeColorImage(LvROI *Image, void *Reserved=NULL);
/** Sets LUT data.
* The look up table (LUT) can be applied to the input data, changing each pixel value
* using a simple lookup: every possible input value is assigned to a corresponding output
* value through the table. It is an exception among the preprocessing functions available
* for the frame grabbers. First, it is available also on some non-RTF frame grabber models.
* Second, it is not controlled through the methods using the LvImgProcessParam structure,
* but via dedicated methods of the @ref LvExtDeviceNode (and its child @ref LvCameraNode).\n
* The LvLUTData structure contains a /b Type field and a /b LUT union. To use the table,
* you should set its type in the /b Type field, using one of the values of the LvLUTType
* enumeration. Corresponding part of the LUT union should then be filled with the desired look up
* table data.
* @param LUTData pointer to LvLUTData structure which contain the new LUT data
* @return @ref ErrorDefinitions
* @sa GetLUTData()
*/
LVSTATUS SetLUTData(LvLUTData *LUTData);
/** Gets actual LUT data.
* The look up table (LUT) can be applied to the input data, changing each pixel value
* using a simple lookup: every possible input value is assigned to a corresponding output
* value through the table. It is an exception among the preprocessing functions available
* for the frame grabbers. First, it is available also on some non-RTF frame grabber models.
* Second, it is not controlled through the methods using the LvImgProcessParam structure,
* but via dedicated methods of the @ref LvExtDeviceNode (and its child @ref LvCameraNode).\n
* The LvLUTData structure contains a /b Type field and a /b LUT union. To use the table,
* you should set its type in the /b Type field, using one of the values of the LvLUTType
* enumeration. Corresponding part of the LUT union should then be filled with the desired look up
* table data.
* @param LUTData pointer to LvLUTData structure which contains the current LUT data
* @return @ref ErrorDefinitions
* @sa SetLUTData()
*/
LVSTATUS GetLUTData(LvLUTData *LUTData);
// Communication functions
/** Open a dedicated serial communication port to the camera.
* The function allows to open the grabber communication port associated
* with the current camera, if present. Depending on the grabber type, one or
* more communication ports may be available and simultaneously
* accessible.
* - @b PicPort (all model) - No dedicated communication port
* available
* - @b PicProdigy @b Color and @b CLP - No dedicated communication port
* available. General purpose communication
* ports available on LvGrabberNode.
* - @b PicProdigy @b Color @b Lite - No dedicated communication port
* available
* - @b PicPortPro @b CL - Serial communications go over the
* @a CameraLink interface. There is one
* communication port for each @a CameraLink
* connector.
* .
*
* @return
* @code
* DSY_I_NoError on success.
* DSY_E_NotSupported the grabber does not provide dedicated communication ports.
* DSY_E_InvalidParameter the required communication port is not present on the grabber.
* DSY_E_InvalidPortCfg the communication interface is busy and the port cannot be opened.
* @endcode
* @sa LvGrabberNode::CommOpen(), CommClose(), CommSend(), CommSetParam()
*/
LVSTATUS CommOpen(int ComPort=-1, U32BIT *CommRef=NULL);
/** Sets the dedicated serial communication port parameters.
* The function sets up the grabber communication port associated with the
* current camera with the specified communication parameters. The port
* must have been previously opened with CommOpen()
* @param baudeRate Required baud rate. Numeric. This value
* must match that set in the camera.
* @param parity Parity to be used. One of the
* @ref SerCommParity "SerCommParity" definitions.
* @param byteSize Data size to be used. One of the
* @ref SerCommDataSize "SerCommDataSize" definitions.
* @param stopBit Number of stop bits to use. One of the
* @ref SerCommStopBit "SerCommStopBit" definitions.
* @return
* @code
* DSY_I_NoError on success.
* DSY_E_NotSupported the grabber does not provide dedicated communication ports.
* DSY_E_InvalidPort the communication port was not previously opened.
* @endcode
* @sa CommOpen(), CommSend(), CommClose()
*/
LVSTATUS CommSetParam(U32BIT baudeRate,
U32BIT parity,
U32BIT byteSize,
U32BIT stopBit);
/** Sends a command to the camera over its dedicated serial communication port.
* The function sends a command to the camera over the grabber
* communication port associated with the current camera. The port must
* have been previously opened with CommOpen().\n
* For proper communications, the grabber must use the same
* communication parameters as the camera.\n
* \n
* If no @a EOT character is specified or the @a EOT is invalid, the function
* terminates always with a timeout error. The characters received until the
* timeout occurred are anyway stored to the @a Response buffer.
* @param Command Command to send. It can be either ASCII or
* binary. The function sends the number of
* bytes specified in the @a CommandLen
* parameter.
* @param CommandLen Number of characters to send from the @a Command buffer.
* @param Response User allocated buffer to store the response from the camera.
* @param MaxResponseLen Maximum number of characters to store in
* the @a Response buffer.
* @param Timeoutms Timeout in milliseconds to wait for camera
* response after sending the command.
* @param EOT End-Of-Transmission character. The
* response from the camera is considered
* terminated when the character specified is
* received. Valid @a EOT characters are from @b 0 to
* @b 256.
* @param NrRecChar Number of received characters
* @return
* @code
* DSY_I_NoError on success.
* DSY_E_NotSupported the grabber does not provide dedicated communication ports.
* DSY_E_InvalidPort the communication port was not previously opened.
* DSY_E_CameraNotConnected the communication times out.
* @endcode
* @sa CommOpen(), CommSetParam(), CommClose()
*/
LVSTATUS CommSend(char *Command,
int CommandLen,
char *Response,
U32BIT MaxResponseLen,
U32BIT Timeoutms,
U32BIT EOT=0x100,
U32BIT *NrRecChar=NULL);
/** Close a dedicated serial communication port to the camera.
* The function closes the grabber communication port associated with the
* current camera. The port must have been previously opened with CommOpen().
* @return
* @code
* DSY_I_NoError on success.
* DSY_E_NotSupported the grabber does not provide dedicated communication ports.
* DSY_E_InvalidPort the communication port was not previously opened.
* @endcode
* @sa CommOpen(), CommSend(), CommSetParam()
*/
LVSTATUS CommClose(void);
LVSTATUS CommSendConfiguration(void);
/** Retrieves the subgrabber the camera is connected to.
* Retrieves the subgrabber the camera is connected to
* @return The subgrabber index on the current grabber.
*/
U32BIT GetSubGrabber(void);
/** Returns information about the last acquired image.
* This function retrieves information about the last acquired image from the
* current camera.
* @param ImgInfo Pointer to a user allocated
* LvAcquiredImageInfo structure that will
* be filled with the requested information.
* @param Reserved Reserved, do not use
* @return @ref ErrorDefinitions
*/
LVSTATUS GetAcquiredImageInfo(LvAcquiredImageInfo *ImgInfo, U32BIT Reserved=0);
/** Returns information about frame grabber board diagnose and its real time status.
* The application can retrieve various status flags appended to every acquired image and
* other information related to the current status of the acquisition process. One of structures
* of this information could be obtained by calling GetFrameBufferFillInfo() function.\n
* The contents of the /b LvFMBInfo structure is meaningful only for diagnosing the
* frame grabber boards and reflects the real time status.\n
* This information can be useful especially in some heavy load applications that need to inspect
* the status of the on board frame buffer, that can get overloaded for example if the throughput
* of the system bus (PCI/PCI-Express) is not good enough.
* @param FmbInfo pointer to /b LvFMBInfo structure
* - FrameDelay: Delay, in frames, between frame buffer input and output, i.e. number
* of frames currently queued in the frame buffer
* - FreePerc: Percentage of the frame buffer memory that is still free.
*
* @param Reserved Reserved, don't use.
* @return @ref ErrorDefinitions
*/
LVSTATUS GetFrameBufferFillInfo(LvFMBInfo *FmbInfo, U32BIT Reserved=0);
/** Initialize preprocessing functionality.
* The /b PicPort
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -