Critical Link MityCam SoC Firmware  1.0
Critical Link MityCam SoC Firmware
tcBlackLevelEstimate Class Reference

#include <BlackLevelEstimate.h>

Collaboration diagram for tcBlackLevelEstimate:

Public Member Functions

 tcBlackLevelEstimate (int anBaseAddress)
 
 ~tcBlackLevelEstimate ()
 
bool initialized ()
 
void reset (bool abReset)
 
int enableBlackRegion (int index, bool enable)
 
int setBlackRegion (int index, SocCamera::ROI region)
 
int setDivisor (unsigned int value)
 
int getDivisor (void)
 
float getBlackLevelEstimate (void)
 
int setBlackLevelOverride (float value)
 
float getBlackLevelOverride (void)
 
int enableBlackLevelOverride (bool enable)
 

Protected Attributes

bool mbInitialized
 true when the core has been initialized More...
 
tcFPGARegister< uint32_t > mhBLE
 memory mapped FPGA access class More...
 

Detailed Description

The tcBlackLevelEstimate manages the bl_est FPGA core from Critical Link. This core programs the black regions (up to 2) in a received image.

Constructor & Destructor Documentation

◆ tcBlackLevelEstimate()

tcBlackLevelEstimate::tcBlackLevelEstimate ( int  anBaseAddress)

Class constructor.

Parameters
anBaseAddressPhysical Address of the core, typically in the 0xFF20xxxx range

◆ ~tcBlackLevelEstimate()

tcBlackLevelEstimate::~tcBlackLevelEstimate ( )

Class Destructor

Member Function Documentation

◆ enableBlackLevelOverride()

int tcBlackLevelEstimate::enableBlackLevelOverride ( bool  enable)

Enable overriding the computed black level from the core.

Parameters
enabletrue to force overriding the output
Returns
non-zero on error

◆ enableBlackRegion()

int tcBlackLevelEstimate::enableBlackRegion ( int  index,
bool  enable 
)

Enable a region to use for black level integration

Parameters
indexcan be 0 or 1
enabletrue to enable the region
Returns
non-zero on error

◆ getBlackLevelEstimate()

float tcBlackLevelEstimate::getBlackLevelEstimate ( void  )
Returns
returns the current black level estimate from the core, updated once per frame

◆ getBlackLevelOverride()

float tcBlackLevelEstimate::getBlackLevelOverride ( void  )
Returns
the current black level override value programmed into the core

◆ getDivisor()

int tcBlackLevelEstimate::getDivisor ( void  )

Retrieve the current divisor (expected number of black pixels) per frame

Returns
number of black pixels expected

◆ initialized()

bool tcBlackLevelEstimate::initialized ( )
Returns
true when the core has been propely initialized

◆ reset()

void tcBlackLevelEstimate::reset ( bool  abReset)

Request the core reset. When reset, the integrated background estimate is reset and will be re-initialized to the black level computed from the next completed frame.

Parameters
abResettrue to hold reset state, false to enable computation

◆ setBlackLevelOverride()

int tcBlackLevelEstimate::setBlackLevelOverride ( float  value)

Sets the value that should be used for the black level override when enabled

Parameters
valuethe value to use as the override
Returns
non-zero on error

◆ setBlackRegion()

int tcBlackLevelEstimate::setBlackRegion ( int  index,
SocCamera::ROI  region 
)

Configure the ROI for a black region to integrate.

Parameters
indexcan be 0 or 1
regionthe received region that has black pixels
Returns
non-zero on error

◆ setDivisor()

int tcBlackLevelEstimate::setDivisor ( unsigned int  value)

Set the number of pixels in the black regions for the image

Parameters
valuenumber of black pixels in regions, only legal values are 64K, 32K, 16K, or 8K
Returns
non-zero on error.

Member Data Documentation

◆ mbInitialized

bool tcBlackLevelEstimate::mbInitialized
protected

true when the core has been initialized

◆ mhBLE

tcFPGARegister<uint32_t> tcBlackLevelEstimate::mhBLE
protected

memory mapped FPGA access class


The documentation for this class was generated from the following files: