small fix

This commit is contained in:
2025-11-07 19:37:55 +01:00
parent 41b7075457
commit 3eb2f57103
3 changed files with 33 additions and 1 deletions

View File

@@ -2,6 +2,8 @@
Work in progress.
Goals are: parsing an IGC file containing flight data, giving analytics about the flight, and if I really have time to kill, making some kind of (3D??) view of the flight..
# License
GNU GPL v3

12
igc.c
View File

@@ -55,6 +55,14 @@ struct IGC_DataPoint* parse_datapoint(char* line)
return dp;
}
void parse_header_record(char* line)
{
if (strncmp(line, "HFDTEDATE", 9) == 0)
{
}
}
void parse_igc_file(FILE* fp)
{
size_t len = 0;
@@ -69,7 +77,11 @@ void parse_igc_file(FILE* fp)
// Doubly linked list of points (so theyre joined in chronological order; opens possibilities for analysis later)
// append_datapoint(dp);
break;
case HEADER:
parse_header_record(line);
break;
default:
printf("Unrecognized record type '%c'\n", line[0]);
break;
}
}

20
igc.h
View File

@@ -17,7 +17,7 @@ void parse_igc_file(FILE* fp);
enum IGC_RecordType
{
MANUFACTURER = 'A',
METADATA = 'H',
HEADER = 'H',
EXTENSION = 'I',
J_EXTENSION = 'J',
DECLARATION = 'C',
@@ -46,6 +46,24 @@ struct Coord
int sec;
};
struct IGC_Header
{
int day;
int month;
int year;
// Not exhaustive
char pilot_name[NAME_MAX] = {0};
char crew2_name[NAME_MAX] = {0};
char aircraft_name[NAME_MAX] = {0};
char aircraft_registration_no[NAME_MAX] = {0};
char gps_datum[NAME_MAX] = {0};
char firmware_ver[NAME_MAX] = {0};
char hardware_ver[NAME_MAX] = {0};
char frtype[NAME_MAX] = {0};
char press_alt_sensor[NAME_MAX] = {0};
}
struct IGC_DataPoint
{
// timestamp