1#ifndef _CHRONOPTICS_TOF_KEA_CAMERA_H_
2#define _CHRONOPTICS_TOF_KEA_CAMERA_H_
4#include <chronoptics/tof/camera.h>
5#include <chronoptics/tof/processing_config.h>
6#include <chronoptics/tof/camera_config.h>
14typedef struct tof_kea_camera* tof_kea_camera_t;
16typedef struct tof_kea_camera const* tof_kea_camera_ct;
19TOF_EXPORT
void tof_kea_camera_delete(tof_kea_camera_t ptr);
35TOF_EXPORT tof_kea_camera_t tof_kea_camera_new_both_configs(
const char* serial, tof_processing_config_ct processing_config, tof_camera_config_ct camera_config, tof_error_t *error);
50TOF_EXPORT tof_kea_camera_t tof_kea_camera_new(
const char* serial, tof_processing_config_ct processing_config, tof_error_t *error);
65TOF_EXPORT tof_kea_camera_t tof_kea_camera_new_simple(
const char* serial, tof_error_t *error);
72TOF_EXPORT
bool tof_kea_camera_on_camera_processing_capable(tof_kea_camera_ct ptr, tof_error_t *error);
79TOF_EXPORT
bool tof_kea_camera_get_on_camera_processing(tof_kea_camera_ct ptr, tof_error_t *error);
87TOF_EXPORT
void tof_kea_camera_set_on_camera_processing(tof_kea_camera_t ptr,
bool on_camera_processing, tof_error_t *error);
94TOF_EXPORT
void tof_kea_camera_set_camera_config(tof_kea_camera_t ptr, tof_camera_config_ct camera_config, tof_error_t *error);
102TOF_EXPORT
void tof_kea_camera_set_configurations(tof_kea_camera_t ptr, tof_camera_config_ct camera_config, tof_processing_config_ct processing_config, tof_error_t *error);
109TOF_EXPORT
bool tof_kea_camera_multiple_configurations_possible(tof_kea_camera_ct ptr, tof_error_t *error);
119TOF_EXPORT
void tof_kea_camera_set_multiple_configurations(tof_kea_camera_t ptr,
const tof_camera_config_t* camera_configs,
size_t camera_configs_size,
const tof_processing_config_t* pro_configs,
size_t pro_configs_size, tof_error_t *error);
126TOF_EXPORT
void tof_kea_camera_set_process_config(tof_kea_camera_t ptr, tof_processing_config_ct config, tof_error_t *error);
130typedef struct tof_discovered_camera* tof_discovered_camera_t;
132typedef struct tof_discovered_camera const* tof_discovered_camera_ct;
135TOF_EXPORT
void tof_discovered_camera_delete(tof_discovered_camera_t ptr);
142TOF_EXPORT
const char* tof_discovered_camera_serial(tof_discovered_camera_ct ptr, tof_error_t *error);
149TOF_EXPORT
const char* tof_discovered_camera_info(tof_discovered_camera_ct ptr, tof_error_t *error);
156TOF_EXPORT
const char* tof_discovered_camera_model(tof_discovered_camera_ct ptr, tof_error_t *error);
163TOF_EXPORT
bool tof_discovered_camera_is_tui(tof_discovered_camera_ct ptr, tof_error_t *error);
171TOF_EXPORT
size_t tof_discover_cameras(tof_discovered_camera_t* available_cameras,
size_t capacity, tof_error_t *error);
189TOF_EXPORT tof_kea_camera_t tof_create_kea_camera_gige(tof_processing_config_ct processing_config,
const char* serial, uint16_t packet_size, tof_error_t *error);