public override IList <TrackFileHeader> UnpackTrackHeaders() { int numHeaders = this.PacketLength / TrackHeaderLength; IList <TrackFileHeader> headers = new List <TrackFileHeader>(); for (int i = 0; i < numHeaders; i++) { int trackStart = i * TrackHeaderLength; TrackFileHeader header = new TrackFileHeader(); ReadHeader(header, trackStart); header.TrackPointIndex = ReadInt32(trackStart + 20); headers.Add(header); } return(headers); }
public IList <TrackFileHeader> UnpackTrackHeaders() { int numHeaders = this.PacketData.Length / 24; IList <TrackFileHeader> headers = new List <TrackFileHeader>(); for (int i = 0; i < numHeaders; i++) { int trackStart = i * 24; TrackFileHeader header = new TrackFileHeader(); ReadHeader(header, trackStart); header.TrackPointCount = ReadInt16(trackStart + 20); header.TrackPointIndex = ReadInt16(trackStart + 22); headers.Add(header); } return(headers); }
public override IList <TrackFileHeader> UnpackTrackHeaders() { int numTrains = this.PacketLength / TrackHeaderLength; IList <TrackFileHeader> trains = new List <TrackFileHeader>(); int offset = 0; for (int i = 0; i < numTrains; i++) { TrackFileHeader train = new TrackFileHeader(); ReadHeader(train, offset); train.TrackPointIndex = ReadInt16(offset + 18); //20 listed as TrainLap record index too //train.LapIndexEndPt = ReadInt16(offset + 20); //cDataType or MultiSport 22 //pad 23 offset += TrackHeaderLength; trains.Add(train); } CheckOffset(this.PacketLength, offset); return(trains); }