Time-of-Flight Library(ToF)  3.2.2
chronoptics::tof::Fpo Class Reference

the phase and amplitude calibration for a certain modulation frequency More...

#include <calibration.hpp>

+ Inheritance diagram for chronoptics::tof::Fpo:

Public Member Functions

 Fpo (tof_fpo_t ptr)
 Construct from pointer.
 
 Fpo ()
 Default constructor.
 
 Fpo (int32_t rows, int32_t cols, float modulation_frequency, float duty_cycle, const std::vector< uint16_t > &dac_values, uint32_t integration_time)
 Construct with rows, columns, modulation frequency, duty cycle, dac values and integration time. More...
 
int32_t get_rows () const
 Get the number of rows. More...
 
void set_rows (int32_t rows)
 Set the number of rows. More...
 
int32_t get_cols () const
 Get the number of columns. More...
 
void set_cols (int32_t cols)
 Set the number of columns. More...
 
float get_modulation_frequency () const
 Get the modulation frequency. More...
 
void set_modulation_frequency (float modulation_frequency)
 Set the modulation frequency. More...
 
float get_duty_cycle () const
 Get the duty cycle that the fpo is calibrated for. More...
 
void set_duty_cycle (float duty_cycle)
 Set the duty cycle that the fpo is calibrated for. More...
 
std::vector< uint16_t > get_dac_values () const
 Get the dac values that the fpo is calibrated for. More...
 
void set_dac_values (const std::vector< uint16_t > &dac_values)
 Set the dac values that the fpo is calibrated for. More...
 
uint32_t get_integration_time () const
 Get the integration time that the fpo is calibrated for. More...
 
void set_integration_time (uint32_t integration_time)
 Set the integration time that the fpo is calibrated for. More...
 
uint8_t get_gain_mode () const
 Get the gain mode of the evaluation function. More...
 
void set_gain_mode (uint8_t gain_mode)
 Set the gain mode of the evaluation function. More...
 
std::array< double, 2 > get_mfunc () const
 Get the values to compute the multiplication component. More...
 
void set_mfunc (const std::array< double, 2 > &mfunc)
 Set the values to compute the multiplication component. More...
 
std::array< double, 2 > get_cfunc () const
 Get the values to compute the addition component. More...
 
void set_cfunc (const std::array< double, 2 > &cfunc)
 Set the values to compute the addition component. More...
 
void clear_temperature_cal ()
 Clear the temperature calibration, no temperature calibration will be performed.
 
bool has_old_linear_temperature_cal ()
 Check if fpo is using old linear temperature cal. More...
 
void set_linear_temperature_cal (const std::vector< double > &multiplications, double fpo_temp)
 Set to use linear temperature calibration with given values. More...
 
bool has_linear_temperature_cal ()
 Check if fpo is using linear temperature cal. More...
 
std::vector< double > get_linear_temperature_cal_multiplication ()
 Get the linear temperature cal multiplication. More...
 
double get_linear_temperature_cal_fpo_temp ()
 Get the linear temperature fpo temperature. More...
 
Matrix get_fpo () const
 Get the fixed phase offset for every pixel. More...
 
void set_fpo (Matrix &fpo)
 Set the fixed phase offset for every pixel. More...
 
Matrix get_amp () const
 Get the amplitude correction for every pixel. More...
 
void set_amp (Matrix &amp)
 Set the amplitude correction for every pixel. More...
 

Detailed Description

the phase and amplitude calibration for a certain modulation frequency

Definition at line 115 of file calibration.hpp.

Constructor & Destructor Documentation

◆ Fpo()

chronoptics::tof::Fpo::Fpo ( int32_t  rows,
int32_t  cols,
float  modulation_frequency,
float  duty_cycle,
const std::vector< uint16_t > &  dac_values,
uint32_t  integration_time 
)
inline

Construct with rows, columns, modulation frequency, duty cycle, dac values and integration time.

Parameters
rowsNumber of rows
colsNumber of columns
modulation_frequencyThe modulation frequency
duty_cycleThe duty cycle used
dac_valuesThe dac values
integration_timeThe integration time

Definition at line 137 of file calibration.hpp.

Member Function Documentation

◆ get_amp()

Matrix chronoptics::tof::Fpo::get_amp ( ) const
inline

Get the amplitude correction for every pixel.

Returns
The amplitude correction

Definition at line 343 of file calibration.hpp.

◆ get_cfunc()

std::array<double, 2> chronoptics::tof::Fpo::get_cfunc ( ) const
inline

Get the values to compute the addition component.

Returns
The cfunc values

Definition at line 262 of file calibration.hpp.

◆ get_cols()

int32_t chronoptics::tof::Fpo::get_cols ( ) const
inline

Get the number of columns.

Returns
Number of columns

Definition at line 158 of file calibration.hpp.

◆ get_dac_values()

std::vector<uint16_t> chronoptics::tof::Fpo::get_dac_values ( ) const
inline

Get the dac values that the fpo is calibrated for.

Returns
The dac values

Definition at line 200 of file calibration.hpp.

◆ get_duty_cycle()

float chronoptics::tof::Fpo::get_duty_cycle ( ) const
inline

Get the duty cycle that the fpo is calibrated for.

Returns
The duty cycle

Definition at line 186 of file calibration.hpp.

◆ get_fpo()

Matrix chronoptics::tof::Fpo::get_fpo ( ) const
inline

Get the fixed phase offset for every pixel.

Returns
The fixed phase offset

Definition at line 326 of file calibration.hpp.

◆ get_gain_mode()

uint8_t chronoptics::tof::Fpo::get_gain_mode ( ) const
inline

Get the gain mode of the evaluation function.

Returns
The gain mode

Definition at line 231 of file calibration.hpp.

◆ get_integration_time()

uint32_t chronoptics::tof::Fpo::get_integration_time ( ) const
inline

Get the integration time that the fpo is calibrated for.

Returns
The integration time

Definition at line 217 of file calibration.hpp.

◆ get_linear_temperature_cal_fpo_temp()

double chronoptics::tof::Fpo::get_linear_temperature_cal_fpo_temp ( )
inline

Get the linear temperature fpo temperature.

Returns
FPO temperature

Definition at line 319 of file calibration.hpp.

◆ get_linear_temperature_cal_multiplication()

std::vector<double> chronoptics::tof::Fpo::get_linear_temperature_cal_multiplication ( )
inline

Get the linear temperature cal multiplication.

Returns
The multiplier values

Definition at line 309 of file calibration.hpp.

◆ get_mfunc()

std::array<double, 2> chronoptics::tof::Fpo::get_mfunc ( ) const
inline

Get the values to compute the multiplication component.

Returns
The mfunc values

Definition at line 245 of file calibration.hpp.

◆ get_modulation_frequency()

float chronoptics::tof::Fpo::get_modulation_frequency ( ) const
inline

Get the modulation frequency.

Returns
The modulation frequency

Definition at line 172 of file calibration.hpp.

◆ get_rows()

int32_t chronoptics::tof::Fpo::get_rows ( ) const
inline

Get the number of rows.

Returns
Number of rows

Definition at line 144 of file calibration.hpp.

◆ has_linear_temperature_cal()

bool chronoptics::tof::Fpo::has_linear_temperature_cal ( )
inline

Check if fpo is using linear temperature cal.

Returns
Is using linear temperature cal

Definition at line 302 of file calibration.hpp.

◆ has_old_linear_temperature_cal()

bool chronoptics::tof::Fpo::has_old_linear_temperature_cal ( )
inline

Check if fpo is using old linear temperature cal.

Returns
Is using old linear temperature cal

Definition at line 286 of file calibration.hpp.

◆ set_amp()

void chronoptics::tof::Fpo::set_amp ( Matrix amp)
inline

Set the amplitude correction for every pixel.

Parameters
ampThe amplitude correction

Definition at line 353 of file calibration.hpp.

◆ set_cfunc()

void chronoptics::tof::Fpo::set_cfunc ( const std::array< double, 2 > &  cfunc)
inline

Set the values to compute the addition component.

Parameters
cfuncThe cfunc values

Definition at line 272 of file calibration.hpp.

◆ set_cols()

void chronoptics::tof::Fpo::set_cols ( int32_t  cols)
inline

Set the number of columns.

Parameters
colsNumber of columns

Definition at line 165 of file calibration.hpp.

◆ set_dac_values()

void chronoptics::tof::Fpo::set_dac_values ( const std::vector< uint16_t > &  dac_values)
inline

Set the dac values that the fpo is calibrated for.

Parameters
dac_valuesThe dac values

Definition at line 210 of file calibration.hpp.

◆ set_duty_cycle()

void chronoptics::tof::Fpo::set_duty_cycle ( float  duty_cycle)
inline

Set the duty cycle that the fpo is calibrated for.

Parameters
duty_cycleThe duty cycle

Definition at line 193 of file calibration.hpp.

◆ set_fpo()

void chronoptics::tof::Fpo::set_fpo ( Matrix fpo)
inline

Set the fixed phase offset for every pixel.

Parameters
fpoThe fixed phase offset

Definition at line 336 of file calibration.hpp.

◆ set_gain_mode()

void chronoptics::tof::Fpo::set_gain_mode ( uint8_t  gain_mode)
inline

Set the gain mode of the evaluation function.

Parameters
gain_modeThe gain mode

Definition at line 238 of file calibration.hpp.

◆ set_integration_time()

void chronoptics::tof::Fpo::set_integration_time ( uint32_t  integration_time)
inline

Set the integration time that the fpo is calibrated for.

Parameters
integration_timeThe integration time

Definition at line 224 of file calibration.hpp.

◆ set_linear_temperature_cal()

void chronoptics::tof::Fpo::set_linear_temperature_cal ( const std::vector< double > &  multiplications,
double  fpo_temp 
)
inline

Set to use linear temperature calibration with given values.

Parameters
multiplicationsThe multiplier values. These values multiple with the temperatures in the data class
fpo_tempThe average measured temperature when the fpo was done

Definition at line 295 of file calibration.hpp.

◆ set_mfunc()

void chronoptics::tof::Fpo::set_mfunc ( const std::array< double, 2 > &  mfunc)
inline

Set the values to compute the multiplication component.

Parameters
mfuncThe mfunc values

Definition at line 255 of file calibration.hpp.

◆ set_modulation_frequency()

void chronoptics::tof::Fpo::set_modulation_frequency ( float  modulation_frequency)
inline

Set the modulation frequency.

Parameters
modulation_frequencyThe modulation frequency

Definition at line 179 of file calibration.hpp.

◆ set_rows()

void chronoptics::tof::Fpo::set_rows ( int32_t  rows)
inline

Set the number of rows.

Parameters
rowsNumber of rows

Definition at line 151 of file calibration.hpp.