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

#include <RowAdjuster.h>

Collaboration diagram for tcRowAdjuster:

Public Member Functions

 tcRowAdjuster (uint32_t anAddress)
 
virtual ~tcRowAdjuster ()
 
bool initialized ()
 tcRowAdjuster::initialized More...
 
void reset (bool abReset)
 
bool readReset ()
 tcRowAdjuster::readReset More...
 
void setRowStart (uint32_t anStart)
 
uint32_t getRowStart ()
 
void setRowWidth (uint32_t anWidth)
 
uint32_t getRowWidth ()
 
void setRow (uint32_t anStart, uint32_t anWidth)
 
void setRow (SocCamera::ROI acRegion)
 
bool canDecimateX (void)
 
bool canClipY (void)
 
uint8_t getPixelsPerClock (void)
 
bool headerDecodeError (void)
 
int setColStart (uint32_t anStart)
 
uint32_t getColStart ()
 
int setColHeight (uint32_t anHeight)
 
uint32_t getColHeight ()
 
int setCol (uint32_t anStart, uint32_t anHeight)
 
int setCol (SocCamera::ROI acRegion)
 
int enableDecimateX (bool abEnable)
 
void keepOddDecimatedSamples (bool abKeepOdd)
 
int enableYClip (bool abEnable)
 
void enableTestPattern (bool abEnable)
 
void dumpRegisters ()
 

Constructor & Destructor Documentation

◆ tcRowAdjuster()

tcRowAdjuster::tcRowAdjuster ( uint32_t  anAddress)

◆ ~tcRowAdjuster()

tcRowAdjuster::~tcRowAdjuster ( )
virtual

Member Function Documentation

◆ canClipY()

bool tcRowAdjuster::canClipY ( void  )

When ‘1’, indicates that the compiled core supports Y clipping operations.

Returns
true if setting col start and height is supported

◆ canDecimateX()

bool tcRowAdjuster::canDecimateX ( void  )

When ‘1’, indicates that the compiled core supports X decimation operations.

Returns
true if setting decimate x is supported

◆ dumpRegisters()

void tcRowAdjuster::dumpRegisters ( )

Print register settings

◆ enableDecimateX()

int tcRowAdjuster::enableDecimateX ( bool  abEnable)

Enable X decimation

Parameters
abEnable
Returns

◆ enableTestPattern()

void tcRowAdjuster::enableTestPattern ( bool  abEnable)

Enable test pattern replacement for received pixel data. For debug use.

Parameters
abEnable

◆ enableYClip()

int tcRowAdjuster::enableYClip ( bool  abEnable)

Enable height ROI control This register is only available if Y clipping is enabled. When ‘1’ Y clipping will be performed.

Parameters
abEnable
Returns

◆ getColHeight()

uint32_t tcRowAdjuster::getColHeight ( )

Number of pixels in vertical ROI prior to output following the Col Start pixel. (y-axis) The Col Length is a 14 bit number.

Returns

◆ getColStart()

uint32_t tcRowAdjuster::getColStart ( )

0-based pixel number where vertical ROI begins (with respect to the input frame ROI). (y-axis) The Col Start is a 14 bit number.

Returns

◆ getPixelsPerClock()

uint8_t tcRowAdjuster::getPixelsPerClock ( void  )

Number of packed pixels per clock of the compiled core.

Returns

◆ getRowStart()

uint32_t tcRowAdjuster::getRowStart ( )

0-based pixel number where horizontal ROI begins. (x-axis) The Row Start is a 14 bit number.

Returns

◆ getRowWidth()

uint32_t tcRowAdjuster::getRowWidth ( )

Number of pixels in horizontal ROI prior to decimation (if enabled). (x-axis) The Row Length is a 14 bit number.

Returns

◆ headerDecodeError()

bool tcRowAdjuster::headerDecodeError ( void  )

Error in decoding header data. Read bit will stick high when this occurs Bit can be cleared by writing ‘1’ to bit field. Write ‘1’ also deactivates further header decode error detection. Write ‘0’ to bit field to reactivates detection.

Returns
True if error in decoding header data

◆ initialized()

bool tcRowAdjuster::initialized ( )

◆ keepOddDecimatedSamples()

void tcRowAdjuster::keepOddDecimatedSamples ( bool  abKeepOdd)

When Decimate_X2 is ‘1’, this bit will cause the assembler to discard the odd samples (when ‘0’) or even samples (when ‘1’). This register is only available when X decimation is enabled.

Parameters
abKeepOdd
Returns

◆ readReset()

bool tcRowAdjuster::readReset ( )

◆ reset()

void tcRowAdjuster::reset ( bool  abReset)

Active high synchronous reset

Parameters
abResettrue = reset

◆ setCol() [1/2]

int tcRowAdjuster::setCol ( SocCamera::ROI  acRegion)

Set col start and col height based on camera ROI (y-axis)

Parameters
acRegion
Returns

◆ setCol() [2/2]

int tcRowAdjuster::setCol ( uint32_t  anStart,
uint32_t  anHeight 
)

Set col start and col width (y-axis) See setColStart() and setColHeight()

Parameters
anStart
anHeight
Returns

◆ setColHeight()

int tcRowAdjuster::setColHeight ( uint32_t  anHeight)

Number of pixels in vertical ROI prior to output following the Col Start pixel. (y-axis) The Col Length is a 14 bit number. This register is read-only and all zero if the Y clipping option is not enabled at compile time.

Parameters
anHeight
Returns

◆ setColStart()

int tcRowAdjuster::setColStart ( uint32_t  anStart)

0-based pixel number where vertical ROI begins (with respect to the input frame ROI). (y-axis) The Col Start is a 14 bit number. This register is read-only and all zero if the Y clipping option is not enabled at compile time.

Parameters
anStart
Returns

◆ setRow() [1/2]

void tcRowAdjuster::setRow ( SocCamera::ROI  acRegion)

Set row start and row width based on camera ROI (x-axis)

Parameters
acRegion

◆ setRow() [2/2]

void tcRowAdjuster::setRow ( uint32_t  anStart,
uint32_t  anWidth 
)

Set row start and row width (x-axis) See setRowStart() and setRowWidth()

Parameters
anStart
anWidth

◆ setRowStart()

void tcRowAdjuster::setRowStart ( uint32_t  anStart)

0-based pixel number where horizontal ROI begins. (x-axis) Note that this must be an even number in the x2 pixels per clock case In the x16 pixels per clock case this number must be divisible by 16. The Row Start is a 14 bit number.

Parameters
anStart

◆ setRowWidth()

void tcRowAdjuster::setRowWidth ( uint32_t  anWidth)

Number of pixels in horizontal ROI prior to decimation (if enabled). (x-axis)

Note that this must be even in the x2 pixels per clock case and should be divisible by 4 if decimation-by-2 is enabled. In the x4 pixels per clock case this number must be divisible by 4. It must be divisible by 8 if decimation-by-2 is enabled. In the x8 pixels per clock case this number must be divisible by 8. It must be divisible by 16 if decimation-by-2 is enabled. In the x16 pixels per clock case this number must be divisible by 16. It must be divisible by 32 if decimation-by-2 is enabled. The Row Length is a 14 bit number.

Parameters
anWidth

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