Data Structures

Duties

class efj_parser.Duty(start, duration, ftl_correction, extra_flags, comment)
comment: str

Remarks

duration: int

Length of duty in minutes

extra_flags: tuple[str, ...]

Any unprocessed flags

ftl_correction: int

Minutes to reduce duty length for FTL

start: datetime

Start of duty

Sectors

class efj_parser.Sector(start, total, roles, conditions, landings, aircraft, airports, captain, extra_flags, comment, crew)
aircraft: Aircraft

Type and registration of the aircraft

airports: Airports

Origin and destination airports

captain: str

Name(s) of captain(s), Self for oneself

comment: str

Remarks

conditions: Conditions

Minutes operating in ifr and at night

crew: tuple[Crewmember, ...]

A (possible empty) list of crew

extra_flags: tuple[str, ...]

Any flags not processed by the parser

landings: Landings

Number of day and night landings

roles: Roles

Minutes operating in each role

start: datetime

Off chocks date and time

total: int

Minutes between off chocks and on chocks

Crewmembers

class efj_parser.Crewmember(role, name)
name: str

The crewmember’s name

role: str

The crewmember’s role (e.g. CP, FO, PU, FA)

Roles

class efj_parser.Roles(p1, p1s, p2, put, instructor)
instructor: int

Minutes operating as instructor

p1: int

Minutes operating as p1

p1s: int

Minutes operating as p1s

p2: int

Minutes operating as p2

put: int

Minutes operating as put

Conditions

class efj_parser.Conditions(night, ifr)
ifr: int

Minutes operating under IFR

night: int

Minutes operating at night

Landings

class efj_parser.Landings(day, night)
day: int

Number of day landings

night: int

Number of night landings

Airports

class efj_parser.Airports(origin, dest)
dest: str

The destination airport

origin: str

The origin airport

Aircraft

class efj_parser.Aircraft(reg, type_, class_)
class_: str

Override to class based on type: spse, spme or mc

reg: str

The registration of the aircraft

type_: str

The type of the aircraft