small fix
This commit is contained in:
@@ -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
12
igc.c
@@ -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
20
igc.h
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user