public void Save(TelemetryLap lap)
        {
            try
            {
                if (!lap.IsFirstPacketStartLine ||
                    !lap.HasLapFinished ||
                    string.IsNullOrEmpty(lap.CircuitName))
                    return;

                var outputBuffer = new List<string>();
                outputBuffer.AddRange(GetHeaderLines(lap));
                outputBuffer.AddRange(GetPacketData(lap));

                // write to file
                var directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
                var userFilePath = Path.Combine(directory, "F1Speed", "F1PerfView Data");

                if (!fileSystem.DirectoryExists(userFilePath))
                    fileSystem.CreateDirectory(userFilePath);

                var fileName = userFilePath + @"\" + FileName(lap);

                if (fileSystem.FileExists(fileName))
                    fileSystem.DeleteFile(fileName);

                fileSystem.WriteAllLines(fileName, outputBuffer);

            } catch (Exception ex)
            {
                logger.Error("Could not retreive binary telemetry lap", ex);
                throw ex;
            }
        }
        public override void Save(TelemetryLap lap)
        {
            try
            {
                if (lap == null)
                    return;

                var filename = GetFileName(lap);
                if (File.Exists(filename))
                    File.Delete(filename);

                var xmlSer = new XmlSerializer(typeof (TelemetryLap));
                using (var memStm = new MemoryStream())
                {

                    xmlSer.Serialize(memStm, lap);

                    using (var stmR = new StreamReader(memStm))
                    {
                        memStm.Position = 0;
                        File.AppendAllText(filename, stmR.ReadToEnd(), Encoding.UTF8);
                    }
                }
            } catch (Exception ex)
            {
                logger.Error("Could not save xml telemetry lap", ex);
                throw ex;
            }
        }
        public void Save(TelemetryLap lap, string fileName)
        {
            try
            {

                if (lap == null)
                    return;

                if (File.Exists(fileName))
                    File.Delete(fileName);

                using (Stream stream = File.Open(fileName, FileMode.Create))
                {
                    var binFormatter = new BinaryFormatter();
                    binFormatter.Serialize(stream, lap);
                    stream.Close();
                }
            } catch (Exception ex)
            {
                #if DEBUG
                logger.Error("Count not save binary telemetry lap", ex);
            #endif
                throw ex;
            }
        }
        public void Save(TelemetryLap lap, string fileName)
        {
            try
            {
                if (lap == null)
                    return;

                var outputBuffer = new List<string>();
                outputBuffer.AddRange(GetHeaderLines(lap));
                outputBuffer.AddRange(GetPacketData(lap));

                if (!fileSystem.DirectoryExists(DataFolder()))
                    fileSystem.CreateDirectory(DataFolder());

                if (fileSystem.FileExists(fileName))
                    fileSystem.DeleteFile(fileName);

                fileSystem.WriteAllLines(fileName, outputBuffer);
            } catch (Exception ex)
            {
                #if DEBUG
                logger.Error("Could not save csv telemetry lap", ex);
            #endif
                throw ex;
            }
        }
Пример #5
0
        private IEnumerable <string> GetPacketData(TelemetryLap lap)
        {
            var data = new List <string>();

            foreach (var packet in lap.Packets)
            {
                string dataLine =
                    packet.LapTime.ToString("0.000") + ", " +
                    packet.LapDistance.ToString("0.000") + ", " +
                    packet.Speed.ToString("0.0000") + ", " +
                    packet.LongitudinalAcceleration.ToString("0.000") + ", " +
                    packet.LateralAcceleration.ToString("0.000") + ", " +
                    packet.EngineRevs.ToString("0.000") + ", " +
                    (Math.Truncate(packet.Throttle * 100000) / 1000).ToString("0.000") + ", " +
                    (Math.Truncate(packet.Brake * 100000) / 1000).ToString("0.000") + ", " +
                    packet.Steer.ToString("0.000") + ", " +
                    packet.Gear.ToString("0") + ", " +
                    packet.SuspensionPositionRearLeft.ToString("0.000000") + ", " +
                    packet.SuspensionPositionRearRight.ToString("0.000000") + ", " +
                    packet.SuspensionPositionFrontLeft.ToString("0.000000") + ", " +
                    packet.SuspensionPositionFrontRight.ToString("0.000000") + ", " +
                    packet.WheelSpeedBackLeft.ToString("0.0000") + ", " +
                    packet.WheelSpeedBackRight.ToString("0.0000") + ", " +
                    packet.WheelSpeedFrontLeft.ToString("0.0000") + ", " +
                    packet.WheelSpeedFrontRight.ToString("0.0000") + ", " +
                    packet.Z.ToString("0.000") + ", " +
                    packet.X.ToString("0.000");

                data.Add(dataLine);
            }

            return(data);
        }
Пример #6
0
        public void Save(TelemetryLap lap, string fileName)
        {
            try
            {
                if (lap == null)
                {
                    return;
                }


                if (File.Exists(fileName))
                {
                    File.Delete(fileName);
                }

                using (Stream stream = File.Open(fileName, FileMode.Create))
                {
                    var binFormatter = new BinaryFormatter();
                    binFormatter.Serialize(stream, lap);
                    stream.Close();
                }
            } catch (Exception ex)
            {
                logger.Error("Count not save binary telemetry lap", ex);
                throw ex;
            }
        }
Пример #7
0
        public void Save(TelemetryLap lap, string fileName)
        {
            try
            {
                if (lap == null)
                {
                    return;
                }

                var outputBuffer = new List <string>();
                outputBuffer.AddRange(GetHeaderLines(lap));
                outputBuffer.AddRange(GetPacketData(lap));

                if (!fileSystem.DirectoryExists(DataFolder()))
                {
                    fileSystem.CreateDirectory(DataFolder());
                }

                if (fileSystem.FileExists(fileName))
                {
                    fileSystem.DeleteFile(fileName);
                }

                fileSystem.WriteAllLines(fileName, outputBuffer);
            } catch (Exception ex)
            {
                logger.Error("Could not save csv telemetry lap", ex);
                throw ex;
            }
        }
Пример #8
0
        public override void Save(TelemetryLap lap)
        {
            try
            {
                if (lap == null)
                {
                    return;
                }

                var filename = GetFileName(lap);
                if (File.Exists(filename))
                {
                    File.Delete(filename);
                }

                var xmlSer = new XmlSerializer(typeof(TelemetryLap));
                using (var memStm = new MemoryStream())
                {
                    xmlSer.Serialize(memStm, lap);

                    using (var stmR = new StreamReader(memStm))
                    {
                        memStm.Position = 0;
                        File.AppendAllText(filename, stmR.ReadToEnd(), Encoding.UTF8);
                    }
                }
            } catch (Exception ex)
            {
                logger.Error("Could not save xml telemetry lap", ex);
                throw ex;
            }
        }
Пример #9
0
        public void GetPacketClosestTo_returns_packet_closest_to_supplied_packet()
        {
            var tLap = new TelemetryLap(Circuit.NullCircuit, "LapType");

            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 0.529f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 1.875f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 3.221f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 4.567f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 5.931f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 7.262f
            });                                                            // should be closest to this
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 8.611f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 9.961f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 11.311f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 12.661f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 14.013f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 15.365f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 16.715f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 18.067f
            });
            tLap.AddPacket(new TelemetryPacket {
                LapDistance = 19.419f
            });

            var tPacketCompare = new TelemetryPacket {
                LapDistance = 7.811f
            };

            var foundPacket = tLap.GetPacketClosestTo(tPacketCompare);

            Assert.AreEqual(7.262f, foundPacket.LapDistance);
        }
Пример #10
0
 private IEnumerable <string> GetHeaderLines(TelemetryLap lap)
 {
     return(new []
     {
         string.Format("\"F1Speed Export - {0}\",\"{1:yyyy-MM-dd HH:mm}\", {2}, {3}, {4}",
                       lap.CircuitName, DateTime.Now, lap.LapTime, GetTrackNumber(lap), lap.LapNumber),
         "\"time\",\"dist\",\"speed\",\"acc_long\",\"acc_lat\",\"revs\",\"throttle\",\"brake\",\"steer\",\"gear\",\"st_lr\",\"st_rr\",\"st_lf\",\"st_rf\",\"ws_lr\",\"ws_rr\",\"ws_lf\",\"ws_rf\",\"pos_x\",\"pos_y\""
     });
 }
Пример #11
0
        public void AddPacket_adds_packets()
        {
            var tLap      = new TelemetryLap(Circuit.NullCircuit, "LapType");
            var origCount = tLap.Packets.Count();

            tLap.AddPacket(new TelemetryPacket());
            var newCount = tLap.Packets.Count();

            Assert.AreEqual(origCount + 1, newCount);
        }
 private IEnumerable<string> GetHeaderLines(TelemetryLap lap)
 {
     return new[]
                {
                    "\"time\",\"laptime\",\"lapdistance\",\"distance\",\"x\",\"y\",\"z\",\"speed\",\"worldspeedx\",\"worldspeedy\",\"worldspeedz\",\"xr\",\"roll\",\"zr\",\"xd\",\"pitch\","+
                    "\"zd\",\"suspensionpositionrearleft\"," +
                    "\"suspensionpositionrearright\",\"suspensionpositionfrontleft\",\"suspensionpositionfrontright\",\"suspensionvelocityrearleft\",\"suspensionvelocityrearright\"," +
                    "\"suspensionvelocityfrontleft\",\"suspensionvelocityfrontright\",\"wheelspeedrearleft\",\"wheelspeedrearright\",\"wheelspeedfrontleft\",\"wheelspeedfrontright\"," +
                    "\"throttle\",\"steer\",\"brake\",\"clutch\",\"gear\",\"lateralacceleration\",\"longitudinalacceleration\",\"lap\",\"enginerevs\""
                };
 }
Пример #13
0
 private IEnumerable <string> GetHeaderLines(TelemetryLap lap)
 {
     return(new[]
     {
         "\"time\",\"laptime\",\"lapdistance\",\"distance\",\"x\",\"y\",\"z\",\"speed\",\"worldspeedx\",\"worldspeedy\",\"worldspeedz\",\"xr\",\"roll\",\"zr\",\"xd\",\"pitch\"," +
         "\"zd\",\"suspensionpositionrearleft\"," +
         "\"suspensionpositionrearright\",\"suspensionpositionfrontleft\",\"suspensionpositionfrontright\",\"suspensionvelocityrearleft\",\"suspensionvelocityrearright\"," +
         "\"suspensionvelocityfrontleft\",\"suspensionvelocityfrontright\",\"wheelspeedrearleft\",\"wheelspeedrearright\",\"wheelspeedfrontleft\",\"wheelspeedfrontright\"," +
         "\"throttle\",\"steer\",\"brake\",\"clutch\",\"gear\",\"lateralacceleration\",\"longitudinalacceleration\",\"lap\",\"enginerevs\""
     });
 }
 public void Delete(TelemetryLap lap)
 {
     try
     {
         var fileName = FileName(lap);
         if (fileSystem.FileExists(fileName))
             fileSystem.DeleteFile(fileName);
     } catch (Exception ex)
     {
         logger.Error("Could not delete f1perfview telemetry lap", ex);
         throw ex;
     }
 }
 public void Delete(TelemetryLap lap)
 {
     try
     {
         var filename = GetFileName(lap);
         if (File.Exists(filename))
             File.Delete(filename);
     }
     catch (Exception ex)
     {
         logger.Error("Count not delete Telemetry Lap", ex);
         throw ex;
     }
 }
Пример #16
0
        private IEnumerable <string> GetPacketData(TelemetryLap lap)
        {
            var data = new List <string>();

            foreach (var packet in lap.Packets)
            {
                data.Add(
                    packet.Time + ", " +
                    packet.LapTime + ", " +
                    packet.LapDistance + ", " +
                    packet.Distance + ", " +
                    packet.X + ", " +
                    packet.Y + ", " +
                    packet.Z + ", " +
                    packet.Speed + ", " +
                    packet.WorldSpeedX + ", " +
                    packet.WorldSpeedY + ", " +
                    packet.WorldSpeedZ + ", " +
                    packet.XR + ", " +
                    packet.Roll + ", " +
                    packet.ZR + ", " +
                    packet.XD + ", " +
                    packet.Pitch + ", " +
                    packet.ZD + ", " +
                    packet.SuspensionPositionRearLeft + ", " +
                    packet.SuspensionPositionRearRight + ", " +
                    packet.SuspensionPositionFrontLeft + ", " +
                    packet.SuspensionPositionFrontRight + ", " +
                    packet.SuspensionVelocityRearLeft + ", " +
                    packet.SuspensionVelocityRearRight + ", " +
                    packet.SuspensionVelocityFrontLeft + ", " +
                    packet.SuspensionVelocityFrontRight + ", " +
                    packet.WheelSpeedBackLeft + ", " +
                    packet.WheelSpeedBackRight + ", " +
                    packet.WheelSpeedFrontLeft + ", " +
                    packet.WheelSpeedFrontRight + ", " +
                    packet.Throttle + ", " +
                    packet.Steer + ", " +
                    packet.Brake + ", " +
                    packet.Clutch + ", " +
                    packet.Gear + ", " +
                    packet.LateralAcceleration + ", " +
                    packet.LongitudinalAcceleration + ", " +
                    packet.Lap + ", " +
                    packet.EngineRevs
                    );
            }

            return(data);
        }
Пример #17
0
 public void Delete(TelemetryLap lap)
 {
     try
     {
         var fileName = FileName(lap);
         if (fileSystem.FileExists(fileName))
         {
             fileSystem.DeleteFile(fileName);
         }
     } catch (Exception ex)
     {
         logger.Error("Could not delete f1perfview telemetry lap", ex);
         throw ex;
     }
 }
Пример #18
0
        public void HasStartLinePacket_is_false_when_first_packet_time_is_greater_than_one_sixtieth_of_second()
        {
            const float cutoff = (1000 / 60000f) + 0.001f;

            // Samples are taken every 0.017 seconds, so first sample must be < 0.018 into the lap.
            // time differs slightly because last sample of last lap might have been nearly 0.017 before end of that lap.
            var tPacket = new TelemetryPacket()
            {
                LapTime = cutoff * 1.1f
            };
            var tLap = new TelemetryLap(Circuit.NullCircuit, "LapType");

            tLap.AddPacket(tPacket);

            Assert.IsFalse(tLap.IsFirstPacketStartLine);
        }
Пример #19
0
 public void Delete(TelemetryLap lap)
 {
     try
     {
         var filename = GetFileName(lap);
         if (File.Exists(filename))
         {
             File.Delete(filename);
         }
     }
     catch (Exception ex)
     {
         logger.Error("Count not delete Telemetry Lap", ex);
         throw ex;
     }
 }
Пример #20
0
        public static TelemetryLap CreatePopulatedLap(float lapNumber, bool completeLap)
        {
            var         tLap       = new TelemetryLap(Circuit.NullCircuit, "Test");
            const float SampleRate = (1000 / 60000f);

            for (var index = 0; index < lapDistances.Length; index++)
            {
                if (completeLap || index > 0)
                {
                    tLap.AddPacket(new TelemetryPacket {
                        Lap = lapNumber, LapDistance = lapDistances[index], Speed = speeds[index], LapTime = (SampleRate * (index + 1) - 0.0001f)
                    });
                }
            }

            return(tLap);
        }
Пример #21
0
        public static TelemetryLap CreateOutLap()
        {
            var         tLap       = new TelemetryLap(Circuit.NullCircuit, "Test");
            const float SampleRate = (1000 / 60000f);

            for (var index = 0; index < lapDistances.Length; index++)
            {
                if (index > 0)
                {
                    tLap.AddPacket(new TelemetryPacket {
                        Lap = 0f, LapDistance = -((20 - lapDistances[index]) / 20), Speed = speeds[lapDistances.Length - 1 - index], LapTime = (SampleRate * (index + 1) - 0.0001f)
                    });
                }
            }

            return(tLap);
        }
Пример #22
0
        public void Save(TelemetryLap lap, string fileName)
        {
            if (!lap.IsFirstPacketStartLine ||
                !lap.HasLapFinished ||
                string.IsNullOrEmpty(lap.CircuitName))
            {
                return;
            }

            var outputBuffer = new List <string>();

            outputBuffer.AddRange(GetHeaderLines(lap));
            outputBuffer.AddRange(GetPacketData(lap));

            if (fileSystem.FileExists(fileName))
            {
                fileSystem.DeleteFile(fileName);
            }

            fileSystem.WriteAllLines(fileName, outputBuffer);
        }
Пример #23
0
        public void Save(TelemetryLap lap)
        {
            try
            {
                if (!lap.IsFirstPacketStartLine ||
                    !lap.HasLapFinished ||
                    string.IsNullOrEmpty(lap.CircuitName))
                {
                    return;
                }

                var outputBuffer = new List <string>();
                outputBuffer.AddRange(GetHeaderLines(lap));
                outputBuffer.AddRange(GetPacketData(lap));

                // write to file
                var directory    = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
                var userFilePath = Path.Combine(directory, "F1Speed", "F1PerfView Data");

                if (!fileSystem.DirectoryExists(userFilePath))
                {
                    fileSystem.CreateDirectory(userFilePath);
                }

                var fileName = userFilePath + @"\" + FileName(lap);

                if (fileSystem.FileExists(fileName))
                {
                    fileSystem.DeleteFile(fileName);
                }

                fileSystem.WriteAllLines(fileName, outputBuffer);
            } catch (Exception ex)
            {
                logger.Error("Could not retreive binary telemetry lap", ex);
                throw ex;
            }
        }
 private string GetTrackNumber(TelemetryLap lap)
 {
     return Tracks[lap.CircuitName];
 }
 private string FileName(TelemetryLap lap)
 {
     return string.Format("{0}_{1}.csv", lap.CircuitName, lap.LapTime.ToString("#.000"));
 }
Пример #26
0
 protected override string GetFileName(TelemetryLap lap)
 {
     return(string.Format(@"{0}\{1}_{2}_{3:0.000}.{4}", DataFolder(),
                          lap.CircuitName, lap.LapType, lap.LapTime, GetFileExtension()));
 }
Пример #27
0
 public override void Save(TelemetryLap lap)
 {
     Save(lap, GetFileName(lap));
 }
 private IEnumerable<string> GetHeaderLines(TelemetryLap lap)
 {
     return new []
                {
                    string.Format("\"F1Speed Export - {0}\",\"{1:yyyy-MM-dd HH:mm}\", {2}, {3}, {4}",
                                  lap.CircuitName, DateTime.Now, lap.LapTime, GetTrackNumber(lap), lap.LapNumber),
                    "\"time\",\"dist\",\"speed\",\"acc_long\",\"acc_lat\",\"revs\",\"throttle\",\"brake\",\"steer\",\"gear\",\"st_lr\",\"st_rr\",\"st_lf\",\"st_rf\",\"ws_lr\",\"ws_rr\",\"ws_lf\",\"ws_rf\",\"pos_x\",\"pos_y\""
                };
 }
 protected override string GetFileName(TelemetryLap lap)
 {
     return string.Format(@"{0}\{1}_{2}_{3:0.000}.{4}", DataFolder(),
         lap.CircuitName, lap.LapType, lap.LapTime, GetFileExtension());
 }
 public override void Save(TelemetryLap lap)
 {
     Save(lap, GetFileName(lap.CircuitName, lap.LapType));
 }
        private IEnumerable<string> GetPacketData(TelemetryLap lap)
        {
            var data = new List<string>();
            foreach(var packet in lap.Packets)
            {
                data.Add(
                        packet.Time + ", " +
                        packet.LapTime + ", " +
                        packet.LapDistance + ", " +
                        packet.Distance + ", " +
                        packet.X + ", " +
                        packet.Y + ", " +
                        packet.Z + ", " +
                        packet.Speed + ", " +
                        packet.WorldSpeedX + ", " +
                        packet.WorldSpeedY + ", " +
                        packet.WorldSpeedZ + ", " +
                        packet.XR + ", " +
                        packet.Roll + ", " +
                        packet.ZR + ", " +
                        packet.XD + ", " +
                        packet.Pitch + ", " +
                        packet.ZD + ", " +
                        packet.SuspensionPositionRearLeft + ", " +
                        packet.SuspensionPositionRearRight + ", " +
                        packet.SuspensionPositionFrontLeft + ", " +
                        packet.SuspensionPositionFrontRight + ", " +
                        packet.SuspensionVelocityRearLeft + ", " +
                        packet.SuspensionVelocityRearRight + ", " +
                        packet.SuspensionVelocityFrontLeft + ", " +
                        packet.SuspensionVelocityFrontRight + ", " +
                        packet.WheelSpeedBackLeft + ", " +
                        packet.WheelSpeedBackRight + ", " +
                        packet.WheelSpeedFrontLeft + ", " +
                        packet.WheelSpeedFrontRight + ", " +
                        packet.Throttle + ", " +
                        packet.Steer + ", " +
                        packet.Brake + ", " +
                        packet.Clutch + ", " +
                        packet.Gear + ", " +
                        packet.LateralAcceleration + ", " +
                        packet.LongitudinalAcceleration + ", " +
                        packet.Lap + ", " +
                        packet.EngineRevs
                    );
            }

            return data;
        }
        private IEnumerable<string> GetPacketData(TelemetryLap lap)
        {
            var data = new List<string>();

            foreach(var packet in lap.Packets)
            {
                string dataLine =
                    packet.LapTime.ToString("0.000") + ", " +
                    packet.LapDistance.ToString("0.000") + ", " +
                    packet.Speed.ToString("0.0000") + ", " +
                    packet.LongitudinalAcceleration.ToString("0.000") + ", " +
                    packet.LateralAcceleration.ToString("0.000") + ", " +
                    packet.EngineRevs.ToString("0.000") + ", " +
                    (Math.Truncate(packet.Throttle * 100000) / 1000).ToString("0.000") + ", " +
                    (Math.Truncate(packet.Brake * 100000) / 1000).ToString("0.000") + ", " +
                    packet.Steer.ToString("0.000") + ", " +
                    packet.Gear.ToString("0") + ", " +
                    packet.SuspensionPositionRearLeft.ToString("0.000000") + ", " +
                    packet.SuspensionPositionRearRight.ToString("0.000000") + ", " +
                    packet.SuspensionPositionFrontLeft.ToString("0.000000") + ", " +
                    packet.SuspensionPositionFrontRight.ToString("0.000000") + ", " +
                    packet.WheelSpeedBackLeft.ToString("0.0000") + ", " +
                    packet.WheelSpeedBackRight.ToString("0.0000") + ", " +
                    packet.WheelSpeedFrontLeft.ToString("0.0000") + ", " +
                    packet.WheelSpeedFrontRight.ToString("0.0000") + ", " +
                    packet.Z.ToString("0.000") + ", " +
                    packet.X.ToString("0.000");

                data.Add(dataLine);
            }

            return data;
        }
        public void Save(TelemetryLap lap, string fileName)
        {
            if (!lap.IsFirstPacketStartLine ||
                !lap.HasLapFinished ||
                string.IsNullOrEmpty(lap.CircuitName))
                return;

            var outputBuffer = new List<string>();
            outputBuffer.AddRange(GetHeaderLines(lap));
            outputBuffer.AddRange(GetPacketData(lap));

            if (fileSystem.FileExists(fileName))
                fileSystem.DeleteFile(fileName);

            fileSystem.WriteAllLines(fileName, outputBuffer);
        }
Пример #34
0
 public abstract void Save(TelemetryLap lap);
 public override void Save(TelemetryLap lap)
 {
     Save(lap, GetFileName(lap));
 }
 protected virtual string GetFileName(TelemetryLap lap)
 {
     return GetFileName(lap.Circuit, lap.LapType);
 }
 public abstract void Save(TelemetryLap lap);
Пример #38
0
 protected virtual string GetFileName(TelemetryLap lap)
 {
     return(GetFileName(lap.Circuit, lap.LapType));
 }
Пример #39
0
 public override void Save(TelemetryLap lap)
 {
     Save(lap, GetFileName(lap.Circuit, lap.LapType));
 }
 private string GetTrackNumber(TelemetryLap lap)
 {
     return(Tracks[lap.CircuitName]);
 }
Пример #41
0
 private string GetTrackNumber(TelemetryLap lap)
 {
     return(lap.Circuit.Order.ToString());
 }
Пример #42
0
 private string FileName(TelemetryLap lap)
 {
     return(string.Format("{0}_{1}.csv", lap.CircuitName, lap.LapTime.ToString("#.000")));
 }
 private string GetTrackNumber(TelemetryLap lap)
 {
     return lap.Circuit.Order.ToString();
 }