diff options
Diffstat (limited to 'src/survive_cal.h')
-rw-r--r-- | src/survive_cal.h | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/src/survive_cal.h b/src/survive_cal.h index 42ff1ee..bb4eb32 100644 --- a/src/survive_cal.h +++ b/src/survive_cal.h @@ -30,20 +30,34 @@ int survive_cal_get_status( struct SurviveContext * ctx, char * description, int void survive_cal_light( struct SurviveObject * so, int sensor_id, int acode, int timeinsweep, uint32_t timecode, uint32_t length ); void survive_cal_angle( struct SurviveObject * so, int sensor_id, int acode, uint32_t timecode, FLT length, FLT angle ); -#define MAX_TO_CAL 96 -#define DRPTS 512 - +#define MAX_SENSORS_TO_CAL 96 +#define DRPTS 1024 +#define MAX_CAL_PT_DAT (MAX_SENSORS_TO_CAL*NUM_LIGHTHOUSES*2) struct SurviveCalData { + struct SurviveContext * ctx; //OOTX Data is sync'd off of the sync pulses coming from the lighthouses. ootx_decoder_context ootx_decoders[NUM_LIGHTHOUSES]; - //For statistics-gathering phase. - FLT all_lengths[MAX_TO_CAL][NUM_LIGHTHOUSES][2][DRPTS]; - FLT all_angles[MAX_TO_CAL][NUM_LIGHTHOUSES][2][DRPTS]; - int16_t all_counts[MAX_TO_CAL][NUM_LIGHTHOUSES][2]; + //For statistics-gathering phase. (Stage 2/3) + FLT all_lengths[MAX_SENSORS_TO_CAL][NUM_LIGHTHOUSES][2][DRPTS]; + FLT all_angles[MAX_SENSORS_TO_CAL][NUM_LIGHTHOUSES][2][DRPTS]; + int16_t all_counts[MAX_SENSORS_TO_CAL][NUM_LIGHTHOUSES][2]; int16_t peak_counts; int8_t found_common; + int8_t times_found_common; + + //For camfind (4+) + //Index is calculated with: int dataindex = sen*(2*NUM_LIGHTHOUSES)+lh*2+axis; + FLT avgsweeps[MAX_CAL_PT_DAT]; + FLT avglens[MAX_CAL_PT_DAT]; + FLT stdsweeps[MAX_CAL_PT_DAT]; + FLT stdlens[MAX_CAL_PT_DAT]; + int ctsweeps[MAX_CAL_PT_DAT]; + + int senid_of_checkpt; //This is a point on a watchman that can be used to check the lh solution. + + struct SurviveObject * hmd; //Stage: // 0: Idle @@ -52,6 +66,10 @@ struct SurviveCalData }; +//The following function is not included in the core survive_cal and must be compiled from a camfind file. +//It should use data for stage 4 and report if it found the +int survive_cal_lhfind( struct SurviveCalData * cd ); + #endif |