1 #ifndef _CHRONOPTICS_TOF_DATA_H_
2 #define _CHRONOPTICS_TOF_DATA_H_
4 #include <chronoptics/tof/stream.h>
13 TOF_MAT_TYPE_UINT8 = 0,
14 TOF_MAT_TYPE_INT8 = 1,
15 TOF_MAT_TYPE_UINT16 = 2,
16 TOF_MAT_TYPE_INT16 = 3,
17 TOF_MAT_TYPE_INT32 = 4,
18 TOF_MAT_TYPE_FLOAT = 5,
19 TOF_MAT_TYPE_DOUBLE = 6,
20 TOF_MAT_TYPE_FLOAT_4 = 29,
21 TOF_MAT_TYPE_FLOAT_8 = 61,
30 typedef void (*tof_user_pointer_destructed_t)(uint8_t* pointer,
size_t capacity,
void* user_data);
34 typedef struct tof_data* tof_data_t;
37 TOF_EXPORT
void tof_data_delete(tof_data_t ptr);
44 TOF_EXPORT
void* tof_data_data(tof_data_t ptr, tof_error_t *error);
51 TOF_EXPORT
size_t tof_data_size(
const tof_data_t ptr, tof_error_t *error);
58 TOF_EXPORT uint64_t tof_data_get_user_data(
const tof_data_t ptr, tof_error_t *error);
65 TOF_EXPORT
void tof_data_set_user_data(tof_data_t ptr, uint64_t user_data, tof_error_t *error);
72 TOF_EXPORT
enum tof_mat_type tof_data_mat_type(
const tof_data_t ptr, tof_error_t *error);
79 TOF_EXPORT int32_t tof_data_rows(
const tof_data_t ptr, tof_error_t *error);
86 TOF_EXPORT int32_t tof_data_cols(
const tof_data_t ptr, tof_error_t *error);
93 TOF_EXPORT uint16_t tof_data_frame_count(
const tof_data_t ptr, tof_error_t *error);
100 TOF_EXPORT
enum tof_frame_type tof_data_frame_type(
const tof_data_t ptr, tof_error_t *error);
107 TOF_EXPORT uint32_t tof_data_frame_id(
const tof_data_t ptr, tof_error_t *error);
114 TOF_EXPORT
float tof_data_modulation_frequency(
const tof_data_t ptr, tof_error_t *error);
121 TOF_EXPORT uint32_t tof_data_integration_time(
const tof_data_t ptr, tof_error_t *error);
128 TOF_EXPORT uint32_t tof_data_process(
const tof_data_t ptr, tof_error_t *error);
136 TOF_EXPORT
float tof_data_scale(
const tof_data_t ptr, tof_error_t *error);
144 TOF_EXPORT
float tof_data_addition(
const tof_data_t ptr, tof_error_t *error);
153 TOF_EXPORT
size_t tof_data_temperatures(
const tof_data_t ptr,
float* temperatures,
size_t capacity, tof_error_t *error);
160 TOF_EXPORT uint8_t tof_data_sync_count(
const tof_data_t ptr, tof_error_t *error);
167 TOF_EXPORT
bool tof_data_user_allocated(
const tof_data_t ptr, tof_error_t *error);
174 TOF_EXPORT
void* tof_data_user_pointer(
const tof_data_t ptr, tof_error_t *error);