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

#include <CamLinkTestSensorBoard.h>

Inheritance diagram for tcCamLinkTestSensorBoard:
Collaboration diagram for tcCamLinkTestSensorBoard:

Public Member Functions

 tcCamLinkTestSensorBoard ()
 
virtual ~tcCamLinkTestSensorBoard ()
 
virtual int32 getIODirection ()
 
virtual int32 getIOValue ()
 
virtual SocCamera::teNackCode setIODirection (int32 anPin, int32 anDirection)
 
virtual SocCamera::teNackCode setIOValue (int32 anPinNum, int32 anValue)
 
- Public Member Functions inherited from SocCamera::tcStdOutSensorBoard
 tcStdOutSensorBoard ()
 
virtual ~tcStdOutSensorBoard ()
 
virtual int GetCameraInfo (tsCameraInfo *apInfo)
 
virtual int32 initialize ()
 
virtual teNackCode setExposure (int32 anMicroseconds, uint32_t anExpIndex=0) override
 
virtual int32 getExposure (uint32_t anExpIndex=0) override
 
virtual teNackCode setFrameInterval (int32 anMicroseconds)
 
virtual int32 getFrameInterval ()
 
virtual teNackCode setROI (ROI region)
 
virtual ROI getROI ()
 
virtual teNackCode setVerticalBin (int32 anPixels)
 
virtual int32 getVerticalBin ()
 
virtual teNackCode setHorizontalBin (int32 anPixels)
 
virtual int32 getHorizontalBin ()
 
virtual teNackCode setShutterMode (teShutterMode eeMode)
 
virtual int32 getShutterMode ()
 
virtual teNackCode setBPP (teBPPMode eeMode)
 
virtual int32 getBPP ()
 
virtual teNackCode setTestPattern (teTestPattern eeSelection)
 
virtual int32 getTestPattern ()
 
virtual teNackCode setTrigger (teTriggerMode eeTrigger)
 
virtual int32 getTrigger ()
 
virtual teNackCode peek (int32 anRegister, int *apValue)
 
virtual teNackCode poke (int32 anRegister, int32 anValue)
 
virtual int32 validate ()
 
virtual bool isCapturing ()
 
virtual teNackCode start ()
 
virtual teNackCode stop ()
 
virtual std::string getTemperature (int32 anSensor=eeThermistor)
 
virtual std::string getVersion ()
 getVersion More...
 
virtual teNackCode save (int32 anConfiguration)
 
virtual teNackCode recall (int32 anConfiguration)
 
virtual teNackCode setIODirection (int32 anMask)
 
virtual teNackCode setIOValue (int32 anMask)
 
virtual void InitBuffers ()
 
virtual void timerTicked (tcTimer *apTimer)
 
- Public Member Functions inherited from SocCamera::tcSensorBoard
 tcSensorBoard (int aeType, uint32 anStreamAddr, int32 length, int32 *aaGpioNum)
 
 tcSensorBoard (int aeType, uint32_t anFpgaBaseAddr, uint32_t anRamStreamAddr, int32 length, int32 *aaGpioNum)
 
virtual ~tcSensorBoard ()
 
int id ()
 
int32 init ()
 
virtual tcAbstractHandlergetCustomHandlers (tcAbstractHandler *apTailHandler, std::map< std::string, tcAbstractHandler * > *apStringMap)
 
virtual void resetFpga ()
 
virtual uint64_t fpgaVersion ()
 
virtual void update (tsUpdate asMessage)
 
virtual teNackCode calibrate ()
 
virtual teNackCode whiteLevelCalibrate ()
 
virtual teNackCode setClockSetting (int32 anSetting)
 
virtual teNackCode getClockSetting (int32 &arSetting)
 
virtual void snap (tsCaptureRequest asSnapRequest)
 start a capture More...
 
teNackCode setExposure (std::chrono::microseconds anMicroseconds, uint32_t anExpIndex=0)
 
virtual uint32 getMinFrameIntervalMicroS ()
 
std::chrono::microseconds getMinFrameInterval ()
 
teNackCode setFrameInterval (std::chrono::microseconds anMicroseconds)
 
virtual ROI getImageROI ()
 
virtual teNackCode setColor (bool)
 
virtual float getTempCelsius ()
 
virtual float getBoardTempCelsius ()
 
virtual teNackCode setIOInverter (int32 anPinNum, int32 anInvertEnable)
 tcSensorBoard::setIOInverter Sets the camera GPIO invert state. More...
 
virtual teNackCode power (bool abOn)
 
virtual int32 getNumPins ()
 
virtual teNackCode setMirroring (bool isX, bool Enabled)
 
virtual teNackCode getMirroring (bool isX, bool *Enabled)
 
virtual teNackCode setNoiseReduct (bool enHi, uint16_t threshhi, bool enLo, uint16_t threshlo)
 
virtual teNackCode getNoiseReduct (bool &enHi, uint16_t &threshhi, bool &enLo, uint16_t &threshlo)
 
virtual teNackCode setSqrtCompression (bool enable)
 
virtual teNackCode getSqrtCompression (bool &enable)
 
virtual teNackCode setDemoMode (int32 anMode)
 
virtual teNackCode getDemoMode (int32 &arMode)
 
virtual teNackCode loadColumnBias (const char *asFilename)
 
virtual teNackCode loadColumnGain (const char *asFilename)
 
virtual teNackCode loadPixelCal (const char *asFilename)
 
virtual tcRAMStreamergetStreamer ()
 
virtual tcTimestamp * getTimestamper ()
 
virtual void setTimestamper (tcTimestamp *apStamper)
 
virtual tcSensorBoardself ()
 
uint32 getFrameSizeBytes ()
 
int getSysIdNumber (unsigned short &major, unsigned short &minor)
 
uint32 getMaxImgCount ()
 
uint32 getNumSnapFramesLeft ()
 
virtual void Handler (unsigned int gpionum, unsigned int val)
 Handler GPIO Handler notifies changes on any gpio with edges enabled. More...
 
virtual uint32 getPixelFormat (void)
 Get the pixel format generated by the pixel pipeline. More...
 
virtual tcVoltageSensorgetVoltageSensor ()
 get the temperature monitor object for this sensor More...
 
virtual tcTemperatureSensorgetTempSensor ()
 get the tcTemperature monitor object for this sensor More...
 
virtual void runPeriodic ()
 can be called by framework to do any periodic work. More...
 
virtual int32_t getSensorWidth ()
 
virtual int32_t getSensorHeight ()
 
- Public Member Functions inherited from tcObserver
 tcObserver ()
 
virtual ~tcObserver ()
 
- Public Member Functions inherited from tcTimedObject
 tcTimedObject ()
 
virtual ~tcTimedObject ()
 

Additional Inherited Members

- Public Types inherited from SocCamera::tcStdOutSensorBoard
enum  teTemperatureSensors { eeThermistor = 0, eeTopTemp = 1, eeBotTemp = 2 }
 
- Static Public Attributes inherited from SocCamera::tcSensorBoard
static const std::string NO_TEMPERATURE_SENSOR
 
static const std::string TEMPERATURE_SENSOR_ERROR
 
- Protected Member Functions inherited from SocCamera::tcSensorBoard
void nextRequest ()
 
void initGpios (int32 length, int32 *aaGpioNum)
 
virtual uint32 GetSkipFrames (bool &reload)
 GetSkipFrames If the current sensor needs to skip initially received frames, they can overload this function, which will be called immediately prior to a ::start() call, to set the number of frames to skip. This only works with the RAMStreamer image data. More...
 
uint32 ConvertPixelFormat (uint32 anFormat, bool abFlipX, bool abFlipY)
 Utility routine to convert PFNC pixel format given flip options. More...
 
teNackCode GetA10BoardTemp (uint32 anIndex, float &anTemp)
 Utility routine to get the temp sensor readings off an A10 processor card. More...
 
- Protected Attributes inherited from SocCamera::tcSensorBoard
bool mbIsPowered
 
tcMutex mhMutex
 
MityDSP::tcGpio * mpCamIO
 
MityDSP::tcGpio::PinConfig * maPinConfigs
 
int32 mnPinCount
 
tcRAMStreamermpStreamer
 
std::map< int, std::pair< tcIntAccessor *, IntAccessorFunction > > mhPeekMap
 
std::map< int, std::pair< tcIntSetter *, IntSetterFunction > > mhPokeMap
 
tcPollingInterruptThread mcInterruptThread
 
MityDSP::tcAD741x * mpTempSensor
 
uint32 mnMaxImgCount
 
const sensors_chip_name * mpChipnameAD7414
 lmsensors chipname for AD7414 on A10/CV More...
 
const sensors_chip_name * mpChipnameLM95235
 lmsensors chipname for LM95235 on A10 More...
 
int mnAD7414_sf
 TEMP input subfeature number needed to get the actual temperature. More...
 
int mnLM95235_die_sf
 TEMP input subfeature for die temperature (CPU) sensor. More...
 
int mnLM95235_board_sf
 TEMP input subfeature for on-chip sensor. More...
 

Constructor & Destructor Documentation

◆ tcCamLinkTestSensorBoard()

tcCamLinkTestSensorBoard::tcCamLinkTestSensorBoard ( )

◆ ~tcCamLinkTestSensorBoard()

tcCamLinkTestSensorBoard::~tcCamLinkTestSensorBoard ( )
virtual

Member Function Documentation

◆ getIODirection()

int32 tcCamLinkTestSensorBoard::getIODirection ( )
virtual

Returns the current direction of the pins as a bit mask where the position of the bit is the gpio and a non-zero value indicates an output.

Returns
The bit mask of the directions; non-zero is output, 0 is input and each bit corresponds to the IO pin.

Reimplemented from SocCamera::tcStdOutSensorBoard.

◆ getIOValue()

int32 tcCamLinkTestSensorBoard::getIOValue ( )
virtual

Returns the current value of the pins; if the pin is an input, this is the value read. If the pin is an output, this is the value it is driving.

Returns
The bit mask of pin values being read or driven.

Reimplemented from SocCamera::tcStdOutSensorBoard.

◆ setIODirection()

teNackCode tcCamLinkTestSensorBoard::setIODirection ( int32  anPin,
int32  anDirection 
)
virtual

Sets the direction of the pins. Use 0 to set the pin to input and 1 to set an output. Uses the input as a bit mask.

Bits in the mask set beyond 0 through (length-1) are ignored and no error is reported.

Parameters
anMask- an int32 - the mask to use.
Returns
Zero if successful, non-zero otherwise.

Reimplemented from SocCamera::tcSensorBoard.

◆ setIOValue()

teNackCode tcCamLinkTestSensorBoard::setIOValue ( int32  anPinNum,
int32  anValue 
)
virtual

Sets the value of the pins which are outputs. If the pin is an input, the value is ignored.

Bits in the mask set beyond 0 through (length-1) are ignored and no error is reported.

Parameters
anMask- the mask of values to write out to the outputs.
Returns
Zero if successful, non-zero otherwise.

Reimplemented from SocCamera::tcSensorBoard.


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