Manipulates the underlying camera system. More...
#include <camera.h>
Public Member Functions | |
virtual Status | adsd3500DisableCCBM (bool disable)=0 |
Enable/disable ccb as master. More... | |
virtual Status | adsd3500GetABinvalidationThreshold (int &threshold)=0 |
Get the AB invalidation threshold. More... | |
virtual Status | adsd3500GetConfidenceThreshold (int &threshold)=0 |
Get the confidence threshold. More... | |
virtual aditof::Status | adsd3500GetEnableMetadatainAB (uint16_t &value)=0 |
Get state of Enable Metadata in the AB frame. More... | |
virtual Status | adsd3500GetFirmwareVersion (std::string &fwVersion, std::string &fwHash)=0 |
virtual Status | adsd3500GetFrameRate (uint16_t &fps)=0 |
Get Frame Rate. More... | |
virtual Status | adsd3500GetGenericTemplate (uint16_t reg, uint16_t &value)=0 |
Generic ADSD3500 function for commands not defined in the SDK (yet) More... | |
virtual Status | adsd3500GetImagerErrorCode (uint16_t &errcode)=0 |
Get error code from the imager. More... | |
virtual Status | adsd3500GetJBLFExponentialTerm (uint16_t &value)=0 |
Get JBLF Exponential Term. More... | |
virtual Status | adsd3500GetJBLFfilterEnableState (bool &enabled)=0 |
Get the JBLF enabled state. More... | |
virtual Status | adsd3500GetJBLFfilterSize (int &size)=0 |
Get the JBLF filter size. More... | |
virtual Status | adsd3500GetJBLFGaussianSigma (uint16_t &value)=0 |
Get JBLF Gaussian Sigma. More... | |
virtual Status | adsd3500GetLaserTemperature (uint16_t &tmpValue)=0 |
Get the laser temperature. More... | |
virtual Status | adsd3500GetMIPIOutputSpeed (uint16_t &speed)=0 |
Get ADSD3500 MIPI output speed. More... | |
virtual Status | adsd3500GetRadialThresholdMax (int &threshold)=0 |
Get the radial threshold max. More... | |
virtual Status | adsd3500GetRadialThresholdMin (int &threshold)=0 |
Get the radial threshold min. More... | |
virtual Status | adsd3500GetSensorTemperature (uint16_t &tmpValue)=0 |
Get the sensor temperature. More... | |
virtual Status | adsd3500GetStatus (int &chipStatus, int &imagerStatus)=0 |
Returns the chip status. More... | |
virtual Status | adsd3500GetTemperatureCompensationStatus (uint16_t &value)=0 |
Get Temperature Compensation Status. More... | |
virtual Status | adsd3500GetVCSELDelay (uint16_t &delay)=0 |
Get the delay for VCSEL - ADSD3100 imager only. More... | |
virtual Status | adsd3500IsCCBMsupported (bool &supported)=0 |
Check whether CCB as master is supported or not. More... | |
virtual aditof::Status | adsd3500ResetIniParamsForMode (const uint16_t mode)=0 |
Reset the ini parameters from the chip and sets the ones stored in CCB. More... | |
virtual Status | adsd3500SetABinvalidationThreshold (int threshold)=0 |
Set the AB invalidation threshold. More... | |
virtual Status | adsd3500SetConfidenceThreshold (int threshold)=0 |
Set the confidence threshold. More... | |
virtual aditof::Status | adsd3500setEnableDynamicModeSwitching (bool enable)=0 |
Allows enabling or disabling the Dynamic Mode Switching. NOTE: This must be enabled before configuring the sequence! More... | |
virtual Status | adsd3500SetEnableEdgeConfidence (uint16_t value)=0 |
Set Enable Edge Confidence. More... | |
virtual aditof::Status | adsd3500SetEnableMetadatainAB (uint16_t value)=0 |
Set Enable Metadata in the AB frame. More... | |
virtual Status | adsd3500SetEnablePhaseInvalidation (uint16_t value)=0 |
Set Enable Phase Invalidation. More... | |
virtual Status | adsd3500SetEnableTemperatureCompensation (uint16_t value)=0 |
Set Enable Temperature Compensation. More... | |
virtual Status | adsd3500SetFrameRate (uint16_t fps)=0 |
Set Frame Rate. More... | |
virtual Status | adsd3500SetGenericTemplate (uint16_t reg, uint16_t value)=0 |
Generic ADSD3500 function for commands not defined in the SDK (yet) More... | |
virtual Status | adsd3500SetJBLFABThreshold (uint16_t threshold)=0 |
Get JBLF Max Edge Threshold. More... | |
virtual Status | adsd3500SetJBLFExponentialTerm (uint16_t value)=0 |
Set JBLF Exponential Term. More... | |
virtual Status | adsd3500SetJBLFfilterEnableState (bool enable)=0 |
Enable/disable the JBLF filter. More... | |
virtual Status | adsd3500SetJBLFfilterSize (int size)=0 |
Set the JBLF filter size. More... | |
virtual Status | adsd3500SetJBLFGaussianSigma (uint16_t value)=0 |
Set JBLF Gaussian Sigma. More... | |
virtual Status | adsd3500SetJBLFMaxEdgeThreshold (uint16_t threshold)=0 |
Set JBLF Max Edge Threshold. More... | |
virtual Status | adsd3500SetMIPIOutputSpeed (uint16_t speed)=0 |
Set ADSD3500 MIPI output speed. More... | |
virtual Status | adsd3500SetRadialThresholdMax (int threshold)=0 |
Set the radial threshold max. More... | |
virtual Status | adsd3500SetRadialThresholdMin (int threshold)=0 |
Set the radial threshold min. More... | |
virtual Status | adsd3500SetToggleMode (int mode)=0 |
Enables or disables FSYNC toggle for ADSD3500. More... | |
virtual Status | adsd3500SetVCSELDelay (uint16_t delay)=0 |
Set the delay for VCSEL - ADSD3100 imager only. More... | |
virtual Status | adsd3500ToggleFsync ()=0 |
Toggles ADSD3500 FSYNC once if automated FSYNC is disabled. More... | |
virtual Status | adsd3500UpdateFirmware (const std::string &fwFilePath)=0 |
Update the firmware of ADSD3500 with the content found in the specified file. More... | |
virtual aditof::Status | adsds3500setDynamicModeSwitchingSequence (const std::vector< std::pair< uint8_t, uint8_t >> &sequence)=0 |
Configures the sequence to be captured. More... | |
virtual void | dropFirstFrame (bool dropFrame)=0 |
Allow drop first frame. More... | |
virtual Status | enableDepthCompute (bool enable)=0 |
Enable or disable the depth processing on the frames received from the sensor Must be called after getFrame() where the depth processing happens. More... | |
virtual Status | enableXYZframe (bool enable)=0 |
Enable the generation of a XYZ frame. The XYZ frame can be enabled or disabled through .ini configuration file but if this method is explicitly called then it will override the option in the .ini file. By default XYZ frame is disabled. More... | |
virtual Status | getAvailableControls (std::vector< std::string > &controls) const =0 |
Gets the camera's list of controls. More... | |
virtual Status | getAvailableModes (std::vector< uint8_t > &availableModes) const =0 |
Returns all the modes that are supported by the camera. More... | |
virtual Status | getControl (const std::string &control, std::string &value) const =0 |
Gets the value of a specific camera control. More... | |
virtual Status | getDetails (CameraDetails &details) const =0 |
Gets the current details of the camera. More... | |
virtual Status | getFrameProcessParams (std::map< std::string, std::string > ¶ms)=0 |
Get the Depth Compute Library ini parameters. More... | |
virtual Status | getImagerType (ImagerType &imagerType) const =0 |
Provides the type of the imager. More... | |
virtual std::shared_ptr< DepthSensorInterface > | getSensor ()=0 |
Gets the sensor of the camera. This gives direct access to low level configuration of the camera sensor. More... | |
virtual Status | initialize (const std::string &configFilepath={})=0 |
Initialize the camera. This is required before performing any operation on the camera. More... | |
virtual aditof::Status | loadDepthParamsFromJsonFile (const std::string &pathFileloadDepthParamsFromJsonFile, const int16_t mode_in_use=-1)=0 |
Load adsd parameters from json file. Need setMode to apply. More... | |
virtual void | normalizeABBuffer (uint16_t *abBuffer, uint16_t abWidth, uint16_t abHeight, bool advanceScaling, bool useLogScaling)=0 |
Scale AB image with logarithmic base 10. More... | |
virtual aditof::Status | normalizeABFrame (aditof::Frame *frame, bool advanceScaling, bool useLogScaling)=0 |
Scale AB image with logarithmic base 10 in a Frame instance. More... | |
virtual Status | readSerialNumber (std::string &serialNumber, bool useCacheValue=false)=0 |
Read serial number from camera and update cache. More... | |
virtual Status | requestFrame (Frame *frame)=0 |
Captures data from the camera and assigns it to the given frame. More... | |
virtual aditof::Status | saveDepthParamsToJsonFile (const std::string &savePathFile)=0 |
Save ini file to json format. More... | |
virtual Status | saveModuleCCB (const std::string &filepath)=0 |
Save the CCB content which is obtained from module memory to a given file path. More... | |
virtual Status | saveModuleCFG (const std::string &filepath) const =0 |
Save the CFG content which is obtained from module memory to a given file path. More... | |
virtual Status | setControl (const std::string &control, const std::string &value)=0 |
Sets a specific camera control. More... | |
virtual Status | setFrameProcessParams (std::map< std::string, std::string > ¶ms)=0 |
Set the Depth Compute Library ini parameters. More... | |
virtual Status | setMode (const uint8_t &mode)=0 |
Puts the camera into the given mode. More... | |
virtual aditof::Status | setSensorConfiguration (const std::string &sensorConf)=0 |
Set sensor configutation table. More... | |
virtual Status | start ()=0 |
Start the camera. This starts the streaming of data from the camera. More... | |
virtual Status | stop ()=0 |
Stop the camera. This makes the camera to stop streaming. More... | |
virtual | ~Camera ()=default |
Destructor. More... | |
|
virtualdefault |
Destructor.
|
pure virtual |
Enable/disable ccb as master.
[in] | disable | - set to: 1 - disable, 0 - enable |
Implemented in CameraItof.
|
pure virtual |
Get the AB invalidation threshold.
[out] | threshold |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
Get state of Enable Metadata in the AB frame.
[out] | value | - See "Get Output Metadata in AB Frame status" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Get the ASDSD3500 firmware version from the ADSD3500
[out] | fwVersion | - the ADSD3500 firmware version |
[out] | fwHash | - the ADSD3500 firmware git commit hash |
Implemented in CameraItof.
|
pure virtual |
Get Frame Rate.
[out] | fps | - See "Get Frame Rate" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Generic ADSD3500 function for commands not defined in the SDK (yet)
[in] | reg | - 16-bit ADSD3500 register |
[out] | value | - 16-bit value read from the register |
Implemented in CameraItof.
|
pure virtual |
Get error code from the imager.
[out] | errcode | - See "Get Imager Error Code" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Get JBLF Exponential Term.
[out] | value | - See "Get JBLF Exponential Term" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Get JBLF Gaussian Sigma.
[out] | value | - See "Get JBLF Gaussian Sigma" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Get the laser temperature.
[out] | tmpValue | - Values in Celsius degree |
Implemented in CameraItof.
|
pure virtual |
Get ADSD3500 MIPI output speed.
[out] | speed | - See "Get MIPI Output Speed" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Get the sensor temperature.
[out] | tmpValue | - Values in Celsius degree |
Implemented in CameraItof.
|
pure virtual |
Returns the chip status.
[out] | chipStatus | - chip status (error) value |
[out] | imagerStatus | - imager status (error) value |
Implemented in CameraItof.
|
pure virtual |
Get Temperature Compensation Status.
[out] | value | - See "Get Temperature Compensation Status" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Get the delay for VCSEL - ADSD3100 imager only.
[out] | delay | - See "Get VCSEL Delay" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Check whether CCB as master is supported or not.
[out] | supported | - Will be set to true in case CCBM is supported |
Implemented in CameraItof.
|
pure virtual |
Reset the ini parameters from the chip and sets the ones stored in CCB.
mode | - Camera mode to be reset |
Implemented in CameraItof.
|
pure virtual |
Set the AB invalidation threshold.
[in] | threshold |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
Allows enabling or disabling the Dynamic Mode Switching. NOTE: This must be enabled before configuring the sequence!
[in] | enable | - Set to true to enable and false to disable |
Implemented in CameraItof.
|
pure virtual |
Set Enable Edge Confidence.
[in] | value | - See "Set Enable Edge Confidence" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set Enable Metadata in the AB frame.
[in] | value | - See "Enable/Disable Output Metadata in AB Frame" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set Enable Phase Invalidation.
[out] | value | - See "Set Enable Phase Invalidation" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set Enable Temperature Compensation.
[out] | value | - See "Set Enable Temperature Compensation" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set Frame Rate.
[out] | fps | - See "Set Frame Rate" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Generic ADSD3500 function for commands not defined in the SDK (yet)
[in] | reg | - 16-bit ADSD3500 register |
[in] | value | - 16-bit value to write to the register |
Implemented in CameraItof.
|
pure virtual |
Get JBLF Max Edge Threshold.
[out] | threshold | - See "Get JBLF Max Edge Threshold" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set JBLF Exponential Term.
[in] | value | - See "Set JBLF Exponential Term" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
Set the JBLF filter size.
[in] | size | - Supported sizes are: 3, 5, 7 |
Implemented in CameraItof.
|
pure virtual |
Set JBLF Gaussian Sigma.
[in] | value | - See "Set JBLF Gaussian Sigma" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set JBLF Max Edge Threshold.
[in] | threshold | - See "Set JBLF Max Edge Threshold" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Set ADSD3500 MIPI output speed.
[in] | speed | - See "Set MIPI Output Speed" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Enables or disables FSYNC toggle for ADSD3500.
[in] | mode | - 2 = Fsync pin set as HiZ ; 1 = Toggle at user specified framerate ; 0 = Toggle controlled via adsd3500ToggleFsync ; |
Implemented in CameraItof.
|
pure virtual |
Set the delay for VCSEL - ADSD3100 imager only.
[in] | delay | - See "Set VCSEL Delay" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
Implemented in CameraItof.
|
pure virtual |
Toggles ADSD3500 FSYNC once if automated FSYNC is disabled.
Implemented in CameraItof.
|
pure virtual |
Update the firmware of ADSD3500 with the content found in the specified file.
[in] | fwFilePath | - A path to a file (including file name and extension) where the firmware for adsd3500 is stored. |
Implemented in CameraItof.
|
pure virtual |
Configures the sequence to be captured.
[in] | sequence | - accepts a list of maximum 8 pairs. The first item of the pair refers to the mode to be captured and the second item refers to how many times the mode should be repeated before moving on to the next pair. The entire sequence will repeat over and over again until streaming is stopped. The first item must be a valid mode. The modes being sequenced must have the exact same resolution. The second item must be between 0 and 15. If 0 is set, the mode will be skipped (will repeat 0 times). Usage example 1: calling this: adsds3500setDynamicModeSwitchingSequence( { {6, 1}, {5, 2}, {2, 3}, {3, 4}, {2, 5} } ); will create sequence: 655222333322222655222... |
Usage example 2: calling this: adsds3500setDynamicModeSwitchingSequence( { {6, 15}, {6, 15}, {6, 15}, {6, 15}, {6, 15}, {5, 1} } ); will create sequence: 6666(75 times)5666...
NOTE: Only ADSD3030 supports setting how many times the mode should be repeated!
Implemented in CameraItof.
|
pure virtual |
Allow drop first frame.
dropFrame | - Drop the first frame if true |
Implemented in CameraItof.
|
pure virtual |
Enable or disable the depth processing on the frames received from the sensor Must be called after getFrame() where the depth processing happens.
[in] | enable | - set to true to enable depth processing. Set to false otherwise. |
Implemented in CameraItof.
|
pure virtual |
Enable the generation of a XYZ frame. The XYZ frame can be enabled or disabled through .ini configuration file but if this method is explicitly called then it will override the option in the .ini file. By default XYZ frame is disabled.
[in] | enable | - set to true to enable the generation of XYZ, set to false otherwise. |
Implemented in CameraItof.
|
pure virtual |
Gets the camera's list of controls.
[out] | controls |
Implemented in CameraItof.
|
pure virtual |
Returns all the modes that are supported by the camera.
[out] | availableModes |
Implemented in CameraItof.
|
pure virtual |
Gets the value of a specific camera control.
[in] | control | - Control name |
[out] | value | - Control value |
Implemented in CameraItof.
|
pure virtual |
Gets the current details of the camera.
[out] | details |
Implemented in CameraItof.
|
pure virtual |
Get the Depth Compute Library ini parameters.
params | - a dictionary of parameters |
Implemented in CameraItof.
|
pure virtual |
Provides the type of the imager.
[out] | imagerType | - Will be set with the imager type |
Implemented in CameraItof.
|
pure virtual |
Gets the sensor of the camera. This gives direct access to low level configuration of the camera sensor.
Implemented in CameraItof.
|
pure virtual |
Initialize the camera. This is required before performing any operation on the camera.
configFilepath | - The JSON configuration files which should be specific to the given module. The expected value is a file name (including extension) or left empty. |
Implemented in CameraItof.
|
pure virtual |
Load adsd parameters from json file. Need setMode to apply.
pathFileloadDepthParamsFromJsonFile | - Path to load from json file |
mode_in_use | - Specify to read details for a specifc mode |
Implemented in CameraItof.
|
pure virtual |
Scale AB image with logarithmic base 10.
abBuffer | - Pointer to the AB buffer |
abWidth | - Width (in pixels) of the AB buffer |
abHeight | - Height (in pixels) of the AB buffer |
advanceScaling | - If is true then use advance AB scaling. |
useLogScaling | - If is false is applied the normalization between 0 and 255, if is true is applied normalization between 0 and 255 and log10 |
Implemented in CameraItof.
|
pure virtual |
Scale AB image with logarithmic base 10 in a Frame instance.
frame | - The frame of the camera |
advanceScaling | - If is true then use advance AB scaling. |
useLogScaling | - If is false is applied the normalization between 0 and 255, if is true is applied normalization between 0 and 255 and log10 |
Implemented in CameraItof.
|
pure virtual |
Read serial number from camera and update cache.
[out] | serialNumber | - Will contain serial number |
[in] | useCacheValue | - If it is false it will read from camera and if it is true it will return serialNumber from cache |
Implemented in CameraItof.
Captures data from the camera and assigns it to the given frame.
frame | - The frame to which the camera data should be assign |
Implemented in CameraItof.
|
pure virtual |
Save ini file to json format.
savePathFile | - Path to save json file |
Implemented in CameraItof.
|
pure virtual |
Save the CCB content which is obtained from module memory to a given file path.
[in] | filepath | - A path to a file (including file name and extension) where the CCB should be stored. |
Implemented in CameraItof.
|
pure virtual |
Save the CFG content which is obtained from module memory to a given file path.
[in] | filepath | - A path to a file (including file name and extension) where the CFG should be stored. |
Implemented in CameraItof.
|
pure virtual |
Sets a specific camera control.
[in] | control | - Control name |
[in] | value | - Control value |
Implemented in CameraItof.
|
pure virtual |
Set the Depth Compute Library ini parameters.
params | - a dictionary of parameters |
Implemented in CameraItof.
|
pure virtual |
Puts the camera into the given mode.
mode | - The mode of the camera |
Implemented in CameraItof.
|
pure virtual |
Set sensor configutation table.
sensorConf | - Configuration table name string like e.g. standard, standardraw, custom and customraw |
Implemented in CameraItof.
|
pure virtual |
Start the camera. This starts the streaming of data from the camera.
Implemented in CameraItof.
|
pure virtual |