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

📄 extdev.h

📁 相机传输图像程序源代码 拜耳模式(RAW格式文件)与RGB图像数据互相转换函数库
💻 H
📖 第 1 页 / 共 4 页
字号:
                /** Get actual black level.
                 * Black level is offset applied to the video signal, shifting the output values to desired range.\n
                 * If some of parameters is not in need, just enter NULL instead of pointer to some variable.
                 * @param Current    current black level
                 * @param Min        minimal black level for this camera
                 * @param Max        maximum black level for this camera
                 * @param Reserved   Reserved. Don't use
                 * @return @ref ErrorDefinitions
                 */
                LVSTATUS GetBlackLevel(U32BIT *Current, U32BIT *Min, U32BIT *Max, U32BIT Reserved=0);


                /*! Retrieves the actual contrast level
                 * @return Percentage level to which the level is currently set; in the actual release
                 *         this percentage will not exceed the 100% as it is referred to the actual
                 *         hardware capability.\n
                 *         In further release, this percentage will refer to absolute units or standard.
                 *         The contrast and brightness when working with @b BW or @b RGB @b cameras are
                 *         interrelated.
                 */
                float  GetContrast(void);
                
                /*! Retrieves the actual Brightness level
                 * @return Percentage level to which the level is currently set; in the actual release
                 *         this percentage will not exceed the 100% as it is referred to the actual
                 *         hardware capability.\n
                 *         In further release, this percentage will refer to absolute units or standard.
                 *         The contrast and brightness when working with BW or RGB cameras are
                 *         interrelated.
                 */
                float  GetBrightness(void);
                
                /*! Retrieves the actual Hue level
                 * @return Percentage level to which the level is currently set; in the actual release
                 *         this percentage will not exceed the 100% as it is referred to the actual
                 *         hardware capability.\n
                 *         In further release, this percentage will refer to absolute units or standard.
                 *         This method will fail when applied to @b BW or @b RGB cameras; in this case,
                 *         the return value is -1
                 */
                float  GetHue(void);
                
                /*! Retrieves the actual Saturation level
                 * @return Percentage level to which the level is currently set; in the actual release
                 *         this percentage will not exceed the 100% as it is referred to the actual
                 *         hardware capability.\n
                 *         In further release, this percentage will refer to absolute units or standard.
                 *         This method will fail when applied to @b BW or @b RGB cameras; in this case,
                 *         the return value is -1
                 */
                float  GetSaturation(void);
                
                /*? Returns the actual setting of the ADC upper level
                 * This function returns the actual setting of the ADC upper level. This is a
                 * rough value, depending on the hardware. For high level handling of upper
                 * and lower ADC levels use SetContrast() and SetBrightness()
                 * @return The current setting for the ADC upper level
                 * @sa  SetADCUpperLevel(), GetADCUpperLimit(), SetContrast(), SetBrightness()
                 */
                U32BIT GetADCUpperLevel(void);
                
                /*? Returns the actual setting of the ADC lower level
                 * This function returns the actual setting of the ADC lower level. this is a
                 * rough value, depending on the hardware. For high-level handling of upper
                 * and lower ADC levels use SetContrast() and SetBrightness()
                 * @return The current setting for the ADC lower level
                 * @sa SetADCLowerLevel(), GetADCLowerLimit(), SetContrast(), SetBrightness()
                 */
                U32BIT GetADCLowerLevel(void);


                /** Set the mirroring type for the incoming image.
                 * Modifies the flow of the incoming image to swap it horizontally or vertically.
                 * @param MirrorType one of the @ref MirrorType "MirrorType" value
                 * @return @ref ErrorDefinitions
                 * @sa Live(), Freeze(), GetMirrorType()
                 */
                LVSTATUS SetMirrorType(U8BIT MirrorType);
                
                /** Gets the actual mirroring type for the incoming image.
                 * Retrieves the actual setting of the mirroring type used to transfer the
                 * image from the actual camera.
                 * @return The actual mirroring type set for the camera. One of the @ref MirrorType "MirrorType"
                 *         definitions.
                 * @sa Live(), Freeze(), SetMirrorType()
                 */
                U8BIT  GetMirrorType(void);

                LVSTATUS SelectColorComponent(U8BIT Comp);
                
                /** Waits a synchronization signal on the selected input.
                 * Waits for a synchronization flag on the analog input module to which the
                 * camera is connected.
                 * @param SyncType one of these values:
                 *   @code
                 *     SY_None     No Synchronization required
                 *     SY_Field_0  Synchronize with the start of field 0
                 *     SY_Field_1  Synchronize with the start of field 1
                 *     SY_Frame    Synchronize with the start of frame
                 *     SY_VSync    Synchronize with the vertical sync pulse
                 *   @endcode
                 * @return @ref ErrorDefinitions
                 * @sa Live(), Freeze(), LvGrabberNode
                 */
                LVSTATUS WaitSync(U8BIT SyncType);


                /** Checks if the camera is connected.
                 * Determines if the grabber properly detects a camera.\n
                 * To retrieve a meaningful value the camera has to be already connected
                 * and activated before calling this function.\n
                 * Assuming that the correct camera type was selected when creating the
                 * @ref LvCameraNode object, the reasons for not detecting a camera physically
                 * connected to the grabber are mainly related with settings that do not
                 * match the camera specifications; check the camera manual and set the
                 * proper values in the Camera Editor.\n
                 * This function accesses the hardware to determine if the camera is
                 * connected.
                 * @note In case of GigE camera the function could be used to determine if the link is
                 *       still established. When the link is broken there is a need to recreate the connection.
                 * @return @b TRUE if the grabber properly detects the camera otherwise @b FALSE
                 * @sa LvGrabberNode::ConnectCamera(), LvGrabberNode::ActivateCamera()
                 */
                BOOL IsConnected(void);
                
                /** Checks if the camera is properly locked.
                 * Determines if the grabber properly locks a camera.\n
                 * To retrieve a meaningful value the camera has to be already connected
                 * and activated before calling this function. Assuming that the correct
                 * camera type was selected when creating the LvCameraNode object, the
                 * reasons for not locking a camera connected to the grabber are mainly
                 * related with settings that do not match the camera specifications; check
                 * the camera manual and set the proper values in the @b Camera @b Editor.\n
                 * This function accesses the hardware to determine if the camera is locked.
                 * @warning Calling this function has a meaning only with line locked cameras; for all
                 * other type of camera, the function returns @b TRUE.
                 * @return @b TRUE if the grabber properly locks the camera otherwise @b FALSE
                 * @sa LvGrabberNode::ConnectCamera(), LvGrabberNode::ActivateCamera(), IsConnected()
                 */
                BOOL IsLocked(void);
                
                /** Determines if the camera is in live mode.
                 * This function returns a boolean that reflects the actual live mode for the
                 * camera.
                 * @return @b TRUE if the image is being transferred to target memory otherwise
                 *         @b FALSE.
                 */
                BOOL IsLive(void);
                
                /** Determines if the camera is pixel synchronized.
                 * Determines if the camera is pixel synchronized.
                 * A camera is pixel synchronized if the Pixel clock line is enabled in the
                 * Camera Editor.
                 * @return @b TRUE if the camera is pixel synchronous otherwise @b FALSE.
                 * @sa LvGrabberNode::ConnectCamera(), LvGrabberNode::ActivateCamera()
                 */
                 
                BOOL IsPixelSynchron(void);
                
                /** Determines if the camera is digital.
                 * Determines if the camera is digital.
                 * @return @b TRUE if the camera or monitor is digital otherwise @b FALSE.
                 * @sa LvGrabberNode::ConnectCamera(), LvGrabberNode::ActivateCamera()
                 */
                BOOL IsDigital(void);
                
                /** Load the input Look Up Table.
                 * This function loads the input look up table (LUT) for the camera. Since
                 * LUT can be shared in the hardware among more cameras, it is a good
                 * practice to reload the LUT every time a camera is activated.\n
                 * Passing @b NULL in the @a Values parameter will load a gray scale LUT.\n
                 * For RGB cameras, specifying only 256 values will cause the same 256
                 * table to be loaded for all the three components; by specifying all the three
                 * components values (256 * 3 items) each component can be loaded with a
                 * different LUT: the first 256 values will be loaded in the @b Red component,
                 * the second 256 in the @b green and the last 256 in the @b Blue.
                 * @param Values Array of values to be loaded in the LUT
                 *               associated with the camera.
                 * @param NrItem Number of items in the @a Values array.
                 * @return @ref ErrorDefinitions
                 */
                LVSTATUS LoadLUT(U8BIT *Values=NULL, U16BIT NrItem=256);
                
                /** Color reproduction using 3x3 bilinear interpolation algorithm.
                 * The former PicPort-Pro-CL frame grabbers provide hardware Bayer decoder using
                 * 3x3 bilinear interpolation algorithm.\n
                 * This function inspects the image data pointed to by the passed @ref LvROI object, 
                 * assuming the data should be color neutral (white) and readjusts the internal LUT
                 * used by the Bayer decoder accordingly. The following acquired images will be adjusted
                 * using this LUT. The method thus performs kind of one-push white balance operation.\n
                 * @warning It is not possible to run the function multiple times, the results would usually 
                 *          not be what you want. The reason is that the acquired image you pass to the
                 *          method through the /b Image parameter is not the /a original image, it is
                 *          already compensated using the old (probably now incorrect) LUT. To equalize properly again,

⌨️ 快捷键说明

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