small fix
This commit is contained in:
@@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
Work in progress.
|
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
|
# License
|
||||||
|
|
||||||
GNU GPL v3
|
GNU GPL v3
|
||||||
|
|||||||
12
igc.c
12
igc.c
@@ -55,6 +55,14 @@ struct IGC_DataPoint* parse_datapoint(char* line)
|
|||||||
return dp;
|
return dp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void parse_header_record(char* line)
|
||||||
|
{
|
||||||
|
if (strncmp(line, "HFDTEDATE", 9) == 0)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void parse_igc_file(FILE* fp)
|
void parse_igc_file(FILE* fp)
|
||||||
{
|
{
|
||||||
size_t len = 0;
|
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)
|
// Doubly linked list of points (so theyre joined in chronological order; opens possibilities for analysis later)
|
||||||
// append_datapoint(dp);
|
// append_datapoint(dp);
|
||||||
break;
|
break;
|
||||||
|
case HEADER:
|
||||||
|
parse_header_record(line);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
|
printf("Unrecognized record type '%c'\n", line[0]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
20
igc.h
20
igc.h
@@ -17,7 +17,7 @@ void parse_igc_file(FILE* fp);
|
|||||||
enum IGC_RecordType
|
enum IGC_RecordType
|
||||||
{
|
{
|
||||||
MANUFACTURER = 'A',
|
MANUFACTURER = 'A',
|
||||||
METADATA = 'H',
|
HEADER = 'H',
|
||||||
EXTENSION = 'I',
|
EXTENSION = 'I',
|
||||||
J_EXTENSION = 'J',
|
J_EXTENSION = 'J',
|
||||||
DECLARATION = 'C',
|
DECLARATION = 'C',
|
||||||
@@ -46,6 +46,24 @@ struct Coord
|
|||||||
int sec;
|
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
|
struct IGC_DataPoint
|
||||||
{
|
{
|
||||||
// timestamp
|
// timestamp
|
||||||
|
|||||||
Reference in New Issue
Block a user