Public Member Functions | Private Attributes | List of all members
OfflineDepthSensor Class Reference

#include <offline_depth_sensor.h>

Inheritance diagram for OfflineDepthSensor:
Inheritance graph
[legend]

Public Member Functions

virtual aditof::Status adsd3500_get_status (int &chipStatus, int &imagerStatus) override
 Returns the chip status. More...
 
virtual aditof::Status adsd3500_read_cmd (uint16_t cmd, uint16_t *data, unsigned int usDelay=0) override
 Send a read command to adsd3500. More...
 
virtual aditof::Status adsd3500_read_payload (uint8_t *payload, uint16_t payload_len) override
 Reads a chunk of data from adsd3500. This will perform a burst read making it useful for reading chunks of data. More...
 
virtual aditof::Status adsd3500_read_payload_cmd (uint32_t cmd, uint8_t *readback_data, uint16_t payload_len) override
 Send a read command to adsd3500. This will perform a burst read making it useful for reading chunks of data. More...
 
virtual aditof::Status adsd3500_register_interrupt_callback (aditof::SensorInterruptCallback &cb) override
 Register a function to be called when a ADSD3500 interrupt occurs. More...
 
virtual aditof::Status adsd3500_reset () override
 Reset adsd3500 chip. More...
 
virtual aditof::Status adsd3500_unregister_interrupt_callback (aditof::SensorInterruptCallback &cb) override
 Unregister a function registered with adsd3500_register_interrupt_callback. More...
 
virtual aditof::Status adsd3500_write_cmd (uint16_t cmd, uint16_t data, unsigned int usDelay) override
 Send a write command to adsd3500. More...
 
virtual aditof::Status adsd3500_write_payload (uint8_t *payload, uint16_t payload_len) override
 Send a chunk of data (payload) to adsd3500. This will perform a burst write making it useful for writing chunks of data. More...
 
virtual aditof::Status adsd3500_write_payload_cmd (uint32_t cmd, uint8_t *payload, uint16_t payload_len) override
 Send a write command to adsd3500. This will perform a burst write making it useful for writing chunks of data. More...
 
virtual aditof::Status getAvailableControls (std::vector< std::string > &controls) const override
 Gets the sensors's list of controls. More...
 
virtual aditof::Status getAvailableModes (std::vector< uint8_t > &modes) override
 Return all modes that are supported by the sensor. More...
 
virtual aditof::Status getControl (const std::string &control, std::string &value) const override
 Gets the value of a specific sensor control. More...
 
virtual aditof::Status getDepthComputeParams (std::map< std::string, std::string > &params) override
 Get ini parameters for Depth Compute library. More...
 
virtual aditof::Status getDetails (aditof::SensorDetails &details) const override
 Get a structure that contains information about the instance of the sensor. More...
 
virtual aditof::Status getFrame (uint16_t *buffer) override
 Request a frame from the sensor. More...
 
virtual aditof::Status getHandle (void **handle) override
 Gets a handle to be used by other devices such as Storage, Temperature, etc. This handle will allow the other devices to communicate remotely with the embedded target. More...
 
aditof::Status getIniParamsArrayForMode (int mode, std::string &iniStr) override
 Get ini parameters for Depth Compute library as string. More...
 
virtual aditof::Status getModeDetails (const uint8_t &mode, aditof::DepthSensorModeDetails &details) override
 Returns details of specified mode. More...
 
virtual aditof::Status getName (std::string &name) const override
 Get the name of the sensor. More...
 
virtual aditof::Status initTargetDepthCompute (uint8_t *iniFile, uint16_t iniFileLength, uint8_t *calData, uint16_t calDataLength) override
 Get the name of the sensor. More...
 
 OfflineDepthSensor (std::string path)
 
virtual aditof::Status open () override
 Open the communication channels with the hardware. More...
 
virtual aditof::Status setControl (const std::string &control, const std::string &value) override
 Sets a specific sensor control. More...
 
virtual aditof::Status setDepthComputeParams (const std::map< std::string, std::string > &params) override
 Set ini parameters for Depth Compute library. More...
 
virtual aditof::Status setHostConnectionType (std::string &connectionType) override
 Set the host connection type for target sdk. More...
 
virtual aditof::Status setMode (const aditof::DepthSensorModeDetails &mode) override
 Set the sensor frame mode to the given type. More...
 
virtual aditof::Status setMode (const uint8_t &mode) override
 Set the sensor frame mode to the given type. More...
 
virtual aditof::Status setSensorConfiguration (const std::string &sensorConf) override
 Set sensor configutation table. More...
 
virtual aditof::Status start () override
 Start the streaming of data from the sensor. More...
 
virtual aditof::Status stop () override
 Stop the sensor data stream. More...
 
 ~OfflineDepthSensor ()
 
- Public Member Functions inherited from aditof::DepthSensorInterface
virtual ~DepthSensorInterface ()=default
 Destructor. More...
 

Private Attributes

const std::vector< aditof::DepthSensorModeDetailsavailableModes
 
std::string m_connectionType
 
std::vector< aditof::DepthSensorModeDetailsm_depthSensorModeDetails
 
std::map< std::string, std::pair< std::uint16_t *, std::size_t > > m_frameTypes
 
std::string m_path
 
uint8_t m_selectedMode
 
aditof::SensorDetails m_sensorDetails
 

Detailed Description

Definition at line 14 of file offline_depth_sensor.h.

Constructor & Destructor Documentation

◆ OfflineDepthSensor()

OfflineDepthSensor::OfflineDepthSensor ( std::string  path)

Definition at line 18 of file offline_depth_sensor.cpp.

◆ ~OfflineDepthSensor()

OfflineDepthSensor::~OfflineDepthSensor ( )

Definition at line 29 of file offline_depth_sensor.cpp.

Member Function Documentation

◆ adsd3500_get_status()

aditof::Status OfflineDepthSensor::adsd3500_get_status ( int &  chipStatus,
int &  imagerStatus 
)
overridevirtual

Returns the chip status.

Parameters
[out]chipStatus- chip status (error) value
[out]imagerStatus- imager status (error) value
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 389 of file offline_depth_sensor.cpp.

◆ adsd3500_read_cmd()

aditof::Status OfflineDepthSensor::adsd3500_read_cmd ( uint16_t  cmd,
uint16_t *  data,
unsigned int  usDelay = 0 
)
overridevirtual

Send a read command to adsd3500.

Parameters
cmd- the command to be sent
[out]data- the variable where the read data will be stored
usDelay- the number of microseconds to wait between the host command and the actual read
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 218 of file offline_depth_sensor.cpp.

◆ adsd3500_read_payload()

aditof::Status OfflineDepthSensor::adsd3500_read_payload ( uint8_t *  payload,
uint16_t  payload_len 
)
overridevirtual

Reads a chunk of data from adsd3500. This will perform a burst read making it useful for reading chunks of data.

Parameters
payload- the location from where to take the data chunk and read it
payload_len- the number of bytes to read
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 351 of file offline_depth_sensor.cpp.

◆ adsd3500_read_payload_cmd()

aditof::Status OfflineDepthSensor::adsd3500_read_payload_cmd ( uint32_t  cmd,
uint8_t *  readback_data,
uint16_t  payload_len 
)
overridevirtual

Send a read command to adsd3500. This will perform a burst read making it useful for reading chunks of data.

Parameters
cmd- the command to be sent
[out]readback_data- the location where the read data chunk will be stored
payload_len- the number of bytes to read
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 235 of file offline_depth_sensor.cpp.

◆ adsd3500_register_interrupt_callback()

aditof::Status OfflineDepthSensor::adsd3500_register_interrupt_callback ( aditof::SensorInterruptCallback cb)
overridevirtual

Register a function to be called when a ADSD3500 interrupt occurs.

Parameters
cb- the function to be called whenever the interrupt occurs
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 373 of file offline_depth_sensor.cpp.

◆ adsd3500_reset()

aditof::Status OfflineDepthSensor::adsd3500_reset ( )
overridevirtual

Reset adsd3500 chip.

Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 369 of file offline_depth_sensor.cpp.

◆ adsd3500_unregister_interrupt_callback()

aditof::Status OfflineDepthSensor::adsd3500_unregister_interrupt_callback ( aditof::SensorInterruptCallback cb)
overridevirtual

Unregister a function registered with adsd3500_register_interrupt_callback.

Parameters
cb- the function to be unregistred
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 381 of file offline_depth_sensor.cpp.

◆ adsd3500_write_cmd()

aditof::Status OfflineDepthSensor::adsd3500_write_cmd ( uint16_t  cmd,
uint16_t  data,
unsigned int  usDelay 
)
overridevirtual

Send a write command to adsd3500.

Parameters
cmd- the command to be sent
data- the data to be written
usDelay- the number of microseconds to wait between the host command and the actual write
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 229 of file offline_depth_sensor.cpp.

◆ adsd3500_write_payload()

aditof::Status OfflineDepthSensor::adsd3500_write_payload ( uint8_t *  payload,
uint16_t  payload_len 
)
overridevirtual

Send a chunk of data (payload) to adsd3500. This will perform a burst write making it useful for writing chunks of data.

Parameters
payload- the location from where to take the data chunk and write it
payload_len- the number of bytes to write
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 364 of file offline_depth_sensor.cpp.

◆ adsd3500_write_payload_cmd()

aditof::Status OfflineDepthSensor::adsd3500_write_payload_cmd ( uint32_t  cmd,
uint8_t *  payload,
uint16_t  payload_len 
)
overridevirtual

Send a write command to adsd3500. This will perform a burst write making it useful for writing chunks of data.

Parameters
cmd- the command to be sent
payload- the location from where to take the data chunk and write it
payload_len- the number of bytes to write
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 358 of file offline_depth_sensor.cpp.

◆ getAvailableControls()

aditof::Status OfflineDepthSensor::getAvailableControls ( std::vector< std::string > &  controls) const
overridevirtual

Gets the sensors's list of controls.

Parameters
[out]controls
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 185 of file offline_depth_sensor.cpp.

◆ getAvailableModes()

aditof::Status OfflineDepthSensor::getAvailableModes ( std::vector< uint8_t > &  modes)
overridevirtual

Return all modes that are supported by the sensor.

Parameters
[out]modes
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 142 of file offline_depth_sensor.cpp.

◆ getControl()

aditof::Status OfflineDepthSensor::getControl ( const std::string control,
std::string value 
) const
overridevirtual

Gets the value of a specific sensor control.

Parameters
[in]control- Control name
[out]value- Control value
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 195 of file offline_depth_sensor.cpp.

◆ getDepthComputeParams()

aditof::Status OfflineDepthSensor::getDepthComputeParams ( std::map< std::string, std::string > &  params)
overridevirtual

Get ini parameters for Depth Compute library.

Parameters
[in]params- a dictionary of parameters
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 430 of file offline_depth_sensor.cpp.

◆ getDetails()

aditof::Status OfflineDepthSensor::getDetails ( aditof::SensorDetails details) const
overridevirtual

Get a structure that contains information about the instance of the sensor.

Parameters
[out]details- the variable where the sensor details should be stored
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 204 of file offline_depth_sensor.cpp.

◆ getFrame()

aditof::Status OfflineDepthSensor::getFrame ( uint16_t *  buffer)
overridevirtual

Request a frame from the sensor.

Parameters
buffer- a valid location where the new frame should be stored. The size of the frame is known (cached) internally and gets updated each time setMode() is called.
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 47 of file offline_depth_sensor.cpp.

◆ getHandle()

aditof::Status OfflineDepthSensor::getHandle ( void **  handle)
overridevirtual

Gets a handle to be used by other devices such as Storage, Temperature, etc. This handle will allow the other devices to communicate remotely with the embedded target.

Parameters
[out]handle- the handle which is owned by this instance
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 209 of file offline_depth_sensor.cpp.

◆ getIniParamsArrayForMode()

aditof::Status OfflineDepthSensor::getIniParamsArrayForMode ( int  mode,
std::string iniStr 
)
overridevirtual

Get ini parameters for Depth Compute library as string.

Parameters
[in]mode- desired mode
[out]iniStr- a string that contain ini params
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 447 of file offline_depth_sensor.cpp.

◆ getModeDetails()

aditof::Status OfflineDepthSensor::getModeDetails ( const uint8_t &  mode,
aditof::DepthSensorModeDetails details 
)
overridevirtual

Returns details of specified mode.

Parameters
mode
[out]details
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 151 of file offline_depth_sensor.cpp.

◆ getName()

aditof::Status OfflineDepthSensor::getName ( std::string name) const
overridevirtual

Get the name of the sensor.

Parameters
[out]name- the string in which the name is stored
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 213 of file offline_depth_sensor.cpp.

◆ initTargetDepthCompute()

aditof::Status OfflineDepthSensor::initTargetDepthCompute ( uint8_t *  iniFile,
uint16_t  iniFileLength,
uint8_t *  calData,
uint16_t  calDataLength 
)
overridevirtual

Get the name of the sensor.

Parameters
[in]iniFile- iniFile content parsed as uint8_t*
[in]iniFileLength- iniFile content length
[in]calData- calibration data parsed as uint8_t*
[in]calDataLength- calibration data content length
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 394 of file offline_depth_sensor.cpp.

◆ open()

aditof::Status OfflineDepthSensor::open ( )
overridevirtual

Open the communication channels with the hardware.

Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 82 of file offline_depth_sensor.cpp.

◆ setControl()

aditof::Status OfflineDepthSensor::setControl ( const std::string control,
const std::string value 
)
overridevirtual

Sets a specific sensor control.

Parameters
[in]control- Control name
[in]value- Control value
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 190 of file offline_depth_sensor.cpp.

◆ setDepthComputeParams()

aditof::Status OfflineDepthSensor::setDepthComputeParams ( const std::map< std::string, std::string > &  params)
overridevirtual

Set ini parameters for Depth Compute library.

Parameters
[in]params- a dictionary of parameters
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 435 of file offline_depth_sensor.cpp.

◆ setHostConnectionType()

aditof::Status OfflineDepthSensor::setHostConnectionType ( std::string connectionType)
overridevirtual

Set the host connection type for target sdk.

Parameters
[in]connectionType- the string that sets the host type on the target
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 225 of file offline_depth_sensor.cpp.

◆ setMode() [1/2]

aditof::Status OfflineDepthSensor::setMode ( const aditof::DepthSensorModeDetails type)
overridevirtual

Set the sensor frame mode to the given type.

Parameters
type- frame details structure containing the frame type
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 175 of file offline_depth_sensor.cpp.

◆ setMode() [2/2]

aditof::Status OfflineDepthSensor::setMode ( const uint8_t &  mode)
overridevirtual

Set the sensor frame mode to the given type.

Parameters
mode- desired mode
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 164 of file offline_depth_sensor.cpp.

◆ setSensorConfiguration()

aditof::Status OfflineDepthSensor::setSensorConfiguration ( const std::string sensorConf)
overridevirtual

Set sensor configutation table.

Parameters
sensorConf- Configuration table name string like e.g. standard, standardraw, custom and customraw
Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 441 of file offline_depth_sensor.cpp.

◆ start()

aditof::Status OfflineDepthSensor::start ( )
overridevirtual

Start the streaming of data from the sensor.

Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 137 of file offline_depth_sensor.cpp.

◆ stop()

aditof::Status OfflineDepthSensor::stop ( )
overridevirtual

Stop the sensor data stream.

Returns
Status

Implements aditof::DepthSensorInterface.

Definition at line 139 of file offline_depth_sensor.cpp.

Member Data Documentation

◆ availableModes

const std::vector<aditof::DepthSensorModeDetails> OfflineDepthSensor::availableModes
private

Definition at line 86 of file offline_depth_sensor.h.

◆ m_connectionType

std::string OfflineDepthSensor::m_connectionType
private

Definition at line 80 of file offline_depth_sensor.h.

◆ m_depthSensorModeDetails

std::vector<aditof::DepthSensorModeDetails> OfflineDepthSensor::m_depthSensorModeDetails
private

Definition at line 82 of file offline_depth_sensor.h.

◆ m_frameTypes

std::map<std::string, std::pair<std::uint16_t *, std::size_t> > OfflineDepthSensor::m_frameTypes
private

Definition at line 85 of file offline_depth_sensor.h.

◆ m_path

std::string OfflineDepthSensor::m_path
private

Definition at line 83 of file offline_depth_sensor.h.

◆ m_selectedMode

uint8_t OfflineDepthSensor::m_selectedMode
private

Definition at line 84 of file offline_depth_sensor.h.

◆ m_sensorDetails

aditof::SensorDetails OfflineDepthSensor::m_sensorDetails
private

Definition at line 81 of file offline_depth_sensor.h.


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


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:07:06