public Flight(Client.Options options, int row, string line) : this(options, row) { //"DATE,SEQ_NR,ID,CALLSIGN,COMPETITION_NUMBER,TYPE, // DETAILED_TYPE,CREW1,CREW2,TKOF_TIME,TKOF_AP,TKOF_RWY,RESERVED, // LDG_TIME,LDG_AP,LDG_RWY,LDG_TURN, // MAX_ALT,AVERAGE_CLIMB_RATE, // FLIGHT_TIME,DAY_DIFFERENCE,LAUNCH_METHOD,INITIAL_CLIMBRATE,TOW_ID,TOW_CALLSIGN,TOW_COMPETITION_NUMBER,TOW_SEQUENCE_NUMBER" string[] data = line.Split(','); this.seq_nr = Parse.Bigint(data[(int)Columns.SEQ_NR]); // 8-bit int this.identifier = data[(int)Columns.ID]; // flarm:xxx this.callsign = data[(int)Columns.CALLSIGN]; this.competition_number = data[(int)Columns.COMPETITION_NUMBER]; this.plane_type = data[(int)Columns.TYPE]; this.detailed_plane_type = data[(int)Columns.DETAILED_TYPE]; this.crew1 = data[(int)Columns.CREW1]; this.crew2 = data[(int)Columns.CREW2]; this.tkof_time = Parse.DateTimeOffset(data[(int)Columns.TKOF_TIME], options.TimeZone); this.tkof_ap = data[(int)Columns.TKOF_AP]; this.tkof_rwy = Parse.Int(data[(int)Columns.TKOF_RWY]); this.ldg_time = Parse.DateTimeOffset(data[(int)Columns.LDG_TIME], options.TimeZone); this.ldg_ap = data[(int)Columns.LDG_AP]; this.ldg_rwy = Parse.Int(data[(int)Columns.LDG_RWY]); this.ldg_turn = Parse.Decimal(data[(int)Columns.LDG_TURN]); this.max_alt = Parse.Int(data[(int)Columns.MAX_ALT]); this.average_climb_rate = Parse.Decimal(data[(int)Columns.AVERAGE_CLIMB_RATE]); this.flight_time = Parse.TimeSpan(data[(int)Columns.FLIGHT_TIME]); this.day_difference = Parse.Int(data[(int)Columns.DAY_DIFFERENCE]); this.launch_method = data[(int)Columns.LAUNCH_METHOD]; this.initial_climbrate = Parse.Decimal(data[(int)Columns.INITIAL_CLIMBRATE]); this.tow_identifier = data[(int)Columns.TOW_ID]; this.tow_callsign = data[(int)Columns.TOW_CALLSIGN]; this.tow_competition_number = data[(int)Columns.TOW_COMPETITION_NUMBER]; this.tow_sequence_number = data[(int)Columns.TOW_SEQUENCE_NUMBER]; }