#include <stdio.h>
#include <stdlib.h>
char* filename = "saved_calibration.bin";
char* serial_number = NULL;
FILE* f = fopen(filename, "wb");
return;
if (calibration_data->
size != 0) {
printf("Saving calibration to file for eye tracker with serial number %s.\n", serial_number);
fwrite(calibration_data->
data, calibration_data->
size, 1, f);
} else {
printf("No calibration available for eye tracker with serial number %s.\n", serial_number);
}
fclose(f);
{
FILE *calibration_file = fopen(filename, "rb" );
size_t file_size;
if( !calibration_file ) {
printf("Calibration file not found!\n");
return;
}
fseek(calibration_file, 0, SEEK_END);
file_size = (size_t)ftell(calibration_file);
rewind(calibration_file);
if(file_size <= 0) {
printf("Calibration file is empty!\n");
return;
};
calibration_data_to_write.
data = malloc(file_size);
calibration_data_to_write.
size = file_size;
file_size = fread(calibration_data_to_write.
data, calibration_data_to_write.
size, 1, calibration_file);
if (file_size > 0) {
printf("Applying calibration on eye tracker with serial number %s.\n", serial_number);
}
free(calibration_data_to_write.
data);
fclose(calibration_file);
}
}
Definition: tobii_research_eyetracker.h:167
size_t size
Definition: tobii_research_eyetracker.h:175
void * data
Definition: tobii_research_eyetracker.h:171
TOBII_RESEARCH_API void TOBII_RESEARCH_CALL tobii_research_free_string(char *str)
Free memory allocation for a string allocated by the SDK.
struct TobiiResearchEyeTracker TobiiResearchEyeTracker
Definition: tobii_research.h:315
TobiiResearchStatus
Definition: tobii_research.h:45
@ TOBII_RESEARCH_STATUS_OK
Definition: tobii_research.h:49
Functionality for an eye tracker.
TOBII_RESEARCH_API void TOBII_RESEARCH_CALL tobii_research_free_calibration_data(TobiiResearchCalibrationData *data)
Free memory allocation for the calibration data received via tobii_research_retrieve_calibration_data...
TOBII_RESEARCH_API TobiiResearchStatus TOBII_RESEARCH_CALL tobii_research_get_serial_number(TobiiResearchEyeTracker *eyetracker, char **serial_number)
Gets the serial number of the eye tracker. All physical eye trackers have a unique serial number.
TOBII_RESEARCH_API TobiiResearchStatus TOBII_RESEARCH_CALL tobii_research_retrieve_calibration_data(TobiiResearchEyeTracker *eyetracker, TobiiResearchCalibrationData **data)
Gets the calibration data used currently by the eye tracker.
TOBII_RESEARCH_API TobiiResearchStatus TOBII_RESEARCH_CALL tobii_research_apply_calibration_data(TobiiResearchEyeTracker *eyetracker, const TobiiResearchCalibrationData *data)
Sets the provided calibration data to the eye tracker, which means it will be active calibration.