From 539db6940f1e6fb5335289d8e830f4e42236a85b Mon Sep 17 00:00:00 2001 From: LarsLaskowski <26182282+LarsLaskowski@users.noreply.github.com> Date: Sat, 10 Oct 2026 14:04:31 +0200 Subject: [PATCH] Use across codebase MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaced many XML blocks with /// on properties, events, methods and indexers across packet/data types (2019–2024), live data, repositories, processors, telemetry types, IDisposable implementations, and QueryableBase. Made a few small API/implementation tweaks: adjusted/added explicit interface accessors (e.g. IEventDataBase.EventDetails, ILiveSessionData.Drivers/TimeTable), added default initializers for some string properties (e.g. EventCode, DriverName), and standardized several Dispose implementations (many now call GC.SuppressFinalize(this)). Changes are primarily documentation and surface-level; runtime behavior is unchanged except for the added defaults and accessor exposure. Rebuild solution and run tests to verify no regressions and to ensure XML docs/analyzers remain satisfied. --- .../Data/Base/NotifyPropertyBase.cs | 4 +- F1ReplayClient/Data/ContextViewData.cs | 12 +- F1ReplayClient/MainWindow.xaml.cs | 4 +- .../Packets/Data/F1-2019/CarStatus2019.cs | 4 +- .../Packets/Data/F1-2019/CarStatusData2019.cs | 108 +++------- .../Packets/Data/F1-2019/CarTelemetry2019.cs | 4 +- .../Data/F1-2019/CarTelemetryData2019.cs | 60 ++---- .../Packets/Data/F1-2019/EventData2019.cs | 8 +- .../Data/F1-2019/EventDataDetails2019.cs | 12 +- .../Packets/Data/F1-2019/LapData2019.cs | 64 ++---- .../Data/F1-2019/LapDataComplete2019.cs | 4 +- .../Data/F1-2019/ParticipantData2019.cs | 28 +-- .../Data/F1-2019/ParticipantsData2019.cs | 8 +- .../Packets/Data/F1-2019/SessionData2019.cs | 84 ++------ .../Packets/Data/F1-2020/CarStatus2020.cs | 4 +- .../Packets/Data/F1-2020/CarStatusData2020.cs | 120 +++-------- .../Packets/Data/F1-2020/CarTelemetry2020.cs | 4 +- .../Data/F1-2020/CarTelemetryData2020.cs | 60 ++---- .../Packets/Data/F1-2020/EventData2020.cs | 8 +- .../Data/F1-2020/EventDataDetails2020.cs | 28 +-- .../F1-2020/FinalClassificationCarData2020.cs | 52 ++--- .../F1-2020/FinalClassificationData2020.cs | 8 +- .../Packets/Data/F1-2020/LapData2020.cs | 112 +++------- .../Data/F1-2020/LapDataComplete2020.cs | 4 +- .../Data/F1-2020/ParticipantData2020.cs | 28 +-- .../Data/F1-2020/ParticipantsData2020.cs | 8 +- .../Packets/Data/F1-2020/SessionData2020.cs | 92 ++------ .../Packets/Data/F1-2021/CarStatus2021.cs | 4 +- .../Packets/Data/F1-2021/CarStatusData2021.cs | 92 ++------ .../Packets/Data/F1-2021/CarTelemetry2021.cs | 16 +- .../Data/F1-2021/CarTelemetryData2021.cs | 64 ++---- .../Packets/Data/F1-2021/EventData2021.cs | 8 +- .../Data/F1-2021/EventDataDetails2021.cs | 52 ++--- .../F1-2021/FinalClassificationCarData2021.cs | 52 ++--- .../F1-2021/FinalClassificationData2021.cs | 8 +- .../Packets/Data/F1-2021/LapData2021.cs | 100 +++------ .../Data/F1-2021/LapDataComplete2021.cs | 4 +- .../Data/F1-2021/ParticipantData2021.cs | 36 +--- .../Data/F1-2021/ParticipantsData2021.cs | 8 +- .../Packets/Data/F1-2021/SessionData2021.cs | 160 ++++---------- .../Data/F1-2021/SessionHistoryData2021.cs | 36 +--- .../Data/F1-2021/SessionHistoryLapData2021.cs | 36 +--- .../SessionHistoryTyreStintData2021.cs | 12 +- .../Packets/Data/F1-2022/CarStatus2022.cs | 4 +- .../Packets/Data/F1-2022/CarStatusData2022.cs | 92 ++------ .../Packets/Data/F1-2022/CarTelemetry2022.cs | 16 +- .../Data/F1-2022/CarTelemetryData2022.cs | 64 ++---- .../Packets/Data/F1-2022/EventData2022.cs | 8 +- .../Data/F1-2022/EventDataDetails2022.cs | 60 ++---- .../F1-2022/FinalClassificationCarData2022.cs | 56 ++--- .../F1-2022/FinalClassificationData2022.cs | 8 +- .../Packets/Data/F1-2022/LapData2022.cs | 100 +++------ .../Data/F1-2022/LapDataComplete2022.cs | 12 +- .../Data/F1-2022/ParticipantData2022.cs | 36 +--- .../Data/F1-2022/ParticipantsData2022.cs | 8 +- .../Packets/Data/F1-2022/SessionData2022.cs | 176 ++++----------- .../Data/F1-2022/SessionHistoryData2022.cs | 36 +--- .../Data/F1-2022/SessionHistoryLapData2022.cs | 36 +--- .../SessionHistoryTyreStintData2022.cs | 12 +- .../Packets/Data/F1-2023/CarStatus2023.cs | 4 +- .../Packets/Data/F1-2023/CarStatusData2023.cs | 100 +++------ .../Packets/Data/F1-2023/CarTelemetry2023.cs | 16 +- .../Data/F1-2023/CarTelemetryData2023.cs | 64 ++---- .../Packets/Data/F1-2023/EventData2023.cs | 8 +- .../Data/F1-2023/EventDataDetails2023.cs | 72 ++----- .../F1-2023/FinalClassificationCarData2023.cs | 56 ++--- .../F1-2023/FinalClassificationData2023.cs | 8 +- .../Packets/Data/F1-2023/LapData2023.cs | 120 +++-------- .../Data/F1-2023/LapDataComplete2023.cs | 12 +- .../Data/F1-2023/ParticipantData2023.cs | 44 +--- .../Data/F1-2023/ParticipantsData2023.cs | 8 +- .../Packets/Data/F1-2023/SessionData2023.cs | 204 +++++------------- .../Data/F1-2023/SessionHistoryData2023.cs | 36 +--- .../Data/F1-2023/SessionHistoryLapData2023.cs | 48 ++--- .../SessionHistoryTyreStintData2023.cs | 12 +- .../Packets/Data/F1-2024/CarStatus2024.cs | 4 +- .../Packets/Data/F1-2024/CarStatusData2024.cs | 100 +++------ .../Packets/Data/F1-2024/CarTelemetry2024.cs | 16 +- .../Data/F1-2024/CarTelemetryData2024.cs | 64 ++---- .../Packets/Data/F1-2024/EventData2024.cs | 8 +- .../Data/F1-2024/EventDataDetails2024.cs | 88 ++------ .../F1-2024/FinalClassificationCarData2024.cs | 56 ++--- .../F1-2024/FinalClassificationData2024.cs | 8 +- .../Packets/Data/F1-2024/LapData2024.cs | 138 +++--------- .../Data/F1-2024/LapDataComplete2024.cs | 12 +- .../Data/F1-2024/ParticipantData2024.cs | 48 ++--- .../Data/F1-2024/ParticipantsData2024.cs | 8 +- .../Packets/Data/F1-2024/SessionData2024.cs | 112 +++------- .../Data/F1-2024/SessionHistoryData2024.cs | 36 +--- .../Data/F1-2024/SessionHistoryLapData2024.cs | 48 ++--- .../SessionHistoryTyreStintData2024.cs | 12 +- .../Packets/Data/F1-2024/TimeTrialData2024.cs | 12 +- .../Packets/Data/F1-2025/CarTelemetry2025.cs | 12 +- .../Packets/Data/F1-2026/CarTelemetry2026.cs | 12 +- F1Server.Data/IndependentLapData.cs | 20 +- F1Server.Data/LiveDriverData.cs | 64 ++---- F1Server.Data/LiveGameData.cs | 24 +-- F1Server.Data/LiveSessionData.cs | 84 ++------ .../Queryable/Base/QueryableBase{TEntity}.cs | 22 +- F1Server.Db/Entity/RepositoryFactory.cs | 4 +- .../ObservabilityConfiguration.cs | 4 +- .../Processors/ProcessorFactory.cs | 4 +- F1Server.Service/Runtime/PacketProcessor.cs | 4 +- .../Runtime/ParticipantRuntimeData.cs | 4 +- F1Server.Service/TelemetryClient.cs | 4 +- F1Server.Telemetry/TelemetryWriter.cs | 8 +- F1Server.WebApi/Core/TimerManager.cs | 4 +- F1Server.WebApi/WebHosting.cs | 4 +- 108 files changed, 1049 insertions(+), 3155 deletions(-) diff --git a/F1ReplayClient/Data/Base/NotifyPropertyBase.cs b/F1ReplayClient/Data/Base/NotifyPropertyBase.cs index 04e2153..4598b53 100644 --- a/F1ReplayClient/Data/Base/NotifyPropertyBase.cs +++ b/F1ReplayClient/Data/Base/NotifyPropertyBase.cs @@ -22,9 +22,7 @@ public void RaisePropertyChange(string propertyName) #region INotifyPropertyChanged - /// - /// PropertyChanged event - /// + /// public event PropertyChangedEventHandler? PropertyChanged; #endregion // INotifyPropertyChanged diff --git a/F1ReplayClient/Data/ContextViewData.cs b/F1ReplayClient/Data/ContextViewData.cs index 0604548..76cb00d 100644 --- a/F1ReplayClient/Data/ContextViewData.cs +++ b/F1ReplayClient/Data/ContextViewData.cs @@ -575,18 +575,10 @@ public string TimeDuration #region IDataErrorInfo - /// - /// Returns the error text for the object as a whole. This type validates per property only, - /// so the value is never assigned and stays null. WPF binding ignores an object level error - /// and evaluates the indexer instead, which is the supported usage of IDataErrorInfo here - /// + /// public string Error { get; } - /// - /// Check content - /// - /// Name of field - /// Error + /// public string this[string columnName] => CheckFieldContent(columnName); /// diff --git a/F1ReplayClient/MainWindow.xaml.cs b/F1ReplayClient/MainWindow.xaml.cs index ee559f0..87aa20a 100644 --- a/F1ReplayClient/MainWindow.xaml.cs +++ b/F1ReplayClient/MainWindow.xaml.cs @@ -877,9 +877,7 @@ private void UpdateProgressView(int processedFiles, #region IDisposable - /// - /// Dispose method - /// + /// public void Dispose() { Dispose(true); diff --git a/F1Server.Core/Packets/Data/F1-2019/CarStatus2019.cs b/F1Server.Core/Packets/Data/F1-2019/CarStatus2019.cs index 328aec0..b656ac0 100644 --- a/F1Server.Core/Packets/Data/F1-2019/CarStatus2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/CarStatus2019.cs @@ -32,9 +32,7 @@ public CarStatus2019() #region ICarStatusBase - /// - /// Car status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2019/CarStatusData2019.cs b/F1Server.Core/Packets/Data/F1-2019/CarStatusData2019.cs index fd5dfb8..bd81812 100644 --- a/F1Server.Core/Packets/Data/F1-2019/CarStatusData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/CarStatusData2019.cs @@ -10,143 +10,89 @@ public class CarStatusData2019 : ICarStatusData2019 { #region ICarStatusData2019 - /// - /// Tyres wear percentage - /// + /// public ushort[] TyresWear { get; set; } - /// - /// Tyre damage in percent - /// + /// public ushort[] TyreDamage { get; set; } - /// - /// Front left wing damage in percent - /// + /// public ushort FrontLeftWingDamage { get; set; } - /// - /// Front right wing damage in percent - /// + /// public ushort FrontRightWingDamage { get; set; } - /// - /// Rear wing damage in percent - /// + /// public ushort RearWingDamage { get; set; } - /// - /// Engine Damage in percent - /// + /// public ushort EngineDamage { get; set; } - /// - /// Gearbox damage in percent - /// + /// public ushort GearBoxDamage { get; set; } #endregion // ICarStatusData2019 #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - low - 2 - medium - 3 - high - 4 - overtake - 5 - hotlap - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase diff --git a/F1Server.Core/Packets/Data/F1-2019/CarTelemetry2019.cs b/F1Server.Core/Packets/Data/F1-2019/CarTelemetry2019.cs index 222e38b..3f82c09 100644 --- a/F1Server.Core/Packets/Data/F1-2019/CarTelemetry2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/CarTelemetry2019.cs @@ -44,9 +44,7 @@ public CarTelemetry2019() #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2019/CarTelemetryData2019.cs b/F1Server.Core/Packets/Data/F1-2019/CarTelemetryData2019.cs index f35a35c..6e6529b 100644 --- a/F1Server.Core/Packets/Data/F1-2019/CarTelemetryData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/CarTelemetryData2019.cs @@ -9,79 +9,49 @@ public class CarTelemetryData2019 : ICarTelemetryData2019 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2019/EventData2019.cs b/F1Server.Core/Packets/Data/F1-2019/EventData2019.cs index 98d6647..3db9396 100644 --- a/F1Server.Core/Packets/Data/F1-2019/EventData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/EventData2019.cs @@ -21,14 +21,10 @@ public EventData2019() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } - /// - /// Event details - /// + /// public IEventDataDetailsBase EventDetails { get; } #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2019/EventDataDetails2019.cs b/F1Server.Core/Packets/Data/F1-2019/EventDataDetails2019.cs index e465967..5a83c82 100644 --- a/F1Server.Core/Packets/Data/F1-2019/EventDataDetails2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/EventDataDetails2019.cs @@ -10,19 +10,13 @@ internal class EventDataDetails2019 : IEventDataDetailsBase { #region IEventDataDetailsBase - /// - /// Type of event - /// + /// public EventType EventType { get; set; } - /// - /// Car number - /// + /// public ushort VehicleIndex { get; set; } - /// - /// Fastest lap in seconds - /// + /// public float FastestLap { get; set; } #endregion // IEventDataDetailsBase diff --git a/F1Server.Core/Packets/Data/F1-2019/LapData2019.cs b/F1Server.Core/Packets/Data/F1-2019/LapData2019.cs index decb9a9..9b0865c 100644 --- a/F1Server.Core/Packets/Data/F1-2019/LapData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/LapData2019.cs @@ -10,19 +10,13 @@ public class LapData2019 : ILapData2019 { #region ILapData2019 - /// - /// Last lap time - /// + /// public float LastLapTime { get; set; } - /// - /// Current lap time - /// + /// public float CurrentLapTime { get; set; } - /// - /// Best lap time in session in seconds - /// + /// public float BestLapTime { get; set; } /// @@ -35,69 +29,43 @@ public class LapData2019 : ILapData2019 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => CurrentLapNumber == 0 && CarPosition == 0 && GridPosition == 0 && TotalDistance <= 0.0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2019/LapDataComplete2019.cs b/F1Server.Core/Packets/Data/F1-2019/LapDataComplete2019.cs index 385bed0..8d89f83 100644 --- a/F1Server.Core/Packets/Data/F1-2019/LapDataComplete2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/LapDataComplete2019.cs @@ -21,9 +21,7 @@ public LapDataComplete2019() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; set; } #endregion // ILapDataComplete diff --git a/F1Server.Core/Packets/Data/F1-2019/ParticipantData2019.cs b/F1Server.Core/Packets/Data/F1-2019/ParticipantData2019.cs index 4f11a85..bd6a927 100644 --- a/F1Server.Core/Packets/Data/F1-2019/ParticipantData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/ParticipantData2019.cs @@ -9,39 +9,25 @@ public class ParticipantData2019 : IParticipantData2019 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase diff --git a/F1Server.Core/Packets/Data/F1-2019/ParticipantsData2019.cs b/F1Server.Core/Packets/Data/F1-2019/ParticipantsData2019.cs index 318b4d3..aa77409 100644 --- a/F1Server.Core/Packets/Data/F1-2019/ParticipantsData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/ParticipantsData2019.cs @@ -21,14 +21,10 @@ public ParticipantsData2019() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; set; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2019/SessionData2019.cs b/F1Server.Core/Packets/Data/F1-2019/SessionData2019.cs index 9fc5e17..b45bdfb 100644 --- a/F1Server.Core/Packets/Data/F1-2019/SessionData2019.cs +++ b/F1Server.Core/Packets/Data/F1-2019/SessionData2019.cs @@ -22,109 +22,67 @@ public SessionData2019() #region ISessionDataBase - /// - /// Is session recordable? Network games or time trial are not - /// + /// public bool IsRecordable { get; set; } - /// - /// Weather condition - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Track temperature - /// + /// public short TrackTemperature { get; set; } - /// - /// Air temperature - /// + /// public short AirTemperature { get; set; } - /// - /// Total laps - /// + /// public ushort TotalLaps { get; set; } - /// - /// Length of track - /// + /// public int TrackLength { get; set; } - /// - /// Session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Track id, -1 when unknown - /// + /// public short TrackId { get; set; } - /// - /// Name of the track - /// + /// public string TrackName { get; set; } - /// - /// Formula type - F1 and so on - /// + /// public Formula FormulaType { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Duration of current session - /// + /// public int SessionDuration { get; set; } - /// - /// Pit speed limit - /// + /// public ushort PitSpeedLimit { get; set; } - /// - /// Flag if game is paused - /// + /// public bool IsGamePaused { get; set; } - /// - /// Flag if user is spectating - /// + /// public bool IsSpectating { get; set; } - /// - /// Car index spectating - /// + /// public ushort SpectatorCarIndex { get; set; } - /// - /// SLI Pro support - /// + /// public bool IsSliProNativeSupport { get; set; } - /// - /// Number of marshal zones - /// + /// public ushort NumberOfMarshalZones { get; set; } - /// - /// Marshal zone data - /// + /// public MarshalZone[] MarshalZones { get; set; } - /// - /// Safety car status - /// + /// public SafetyCarStatus SafetyCar { get; set; } - /// - /// Online or offline - /// + /// public bool IsNetworkGame { get; set; } #endregion // ISessionDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/CarStatus2020.cs b/F1Server.Core/Packets/Data/F1-2020/CarStatus2020.cs index 959a56c..f5a4303 100644 --- a/F1Server.Core/Packets/Data/F1-2020/CarStatus2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/CarStatus2020.cs @@ -32,9 +32,7 @@ public CarStatus2020() #region ICarStatusBase - /// - /// Car Status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2020/CarStatusData2020.cs b/F1Server.Core/Packets/Data/F1-2020/CarStatusData2020.cs index bb34cfa..90f8424 100644 --- a/F1Server.Core/Packets/Data/F1-2020/CarStatusData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/CarStatusData2020.cs @@ -10,158 +10,98 @@ public class CarStatusData2020 : ICarStatusData2020 { #region ICarStatusData2020 - /// - /// DRS activation distance - 0 - DRS not available - non-zero - DRS will be available - /// + /// public int DRSActivationDistance { get; set; } - /// - /// Age of laps of the current set of tyres - /// + /// public ushort TyresAgeLaps { get; set; } - /// - /// Tyre damage in percent - /// + /// public ushort[] TyreDamage { get; set; } - /// - /// Front left wing damage in percent - /// + /// public ushort FrontLeftWingDamage { get; set; } - /// - /// Front right wing damage in percent - /// + /// public ushort FrontRightWingDamage { get; set; } - /// - /// Rear wing damage in percent - /// + /// public ushort RearWingDamage { get; set; } - /// - /// Engine Damage in percent - /// + /// public ushort EngineDamage { get; set; } - /// - /// Gearbox damage in percent - /// + /// public ushort GearBoxDamage { get; set; } - /// - /// Indicator for DRS fault - 0 - ok - 1 - fault - /// + /// public ushort DRSFault { get; set; } - /// - /// Tyres wear percentage - /// + /// public ushort[] TyresWear { get; set; } #endregion // ICarStatusData2020 #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - medium - 2 - overtake - 3 - hotlap - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/CarTelemetry2020.cs b/F1Server.Core/Packets/Data/F1-2020/CarTelemetry2020.cs index c6586bd..7e2dec2 100644 --- a/F1Server.Core/Packets/Data/F1-2020/CarTelemetry2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/CarTelemetry2020.cs @@ -59,9 +59,7 @@ public CarTelemetry2020() #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2020/CarTelemetryData2020.cs b/F1Server.Core/Packets/Data/F1-2020/CarTelemetryData2020.cs index e23ae82..8c8643f 100644 --- a/F1Server.Core/Packets/Data/F1-2020/CarTelemetryData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/CarTelemetryData2020.cs @@ -9,79 +9,49 @@ public class CarTelemetryData2020 : ICarTelemetryData2020 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/EventData2020.cs b/F1Server.Core/Packets/Data/F1-2020/EventData2020.cs index 1140b5f..4b6c6c1 100644 --- a/F1Server.Core/Packets/Data/F1-2020/EventData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/EventData2020.cs @@ -30,14 +30,10 @@ public EventData2020() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } - /// - /// Event details - /// + /// IEventDataDetailsBase IEventDataBase.EventDetails => EventDetails; #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/EventDataDetails2020.cs b/F1Server.Core/Packets/Data/F1-2020/EventDataDetails2020.cs index c6cdb0f..6a61234 100644 --- a/F1Server.Core/Packets/Data/F1-2020/EventDataDetails2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/EventDataDetails2020.cs @@ -10,39 +10,25 @@ internal class EventDataDetails2020 : EventDataDetails2019, IEventDataDetails202 { #region IEventDataDetails2020 - /// - /// Type of penalty - /// + /// public PenaltyType PenaltyType { get; set; } - /// - /// Type of infringement - /// + /// public InfringementType PenaltyInfringementType { get; set; } - /// - /// Other vehicle index - /// + /// public ushort PenaltyOtherVehicleIndex { get; set; } - /// - /// Time gained or time spent doing action in seconds - /// + /// public ushort PenaltyTimeGained { get; set; } - /// - /// Lap of penalty occurred on - /// + /// public ushort PenaltyLapNumber { get; set; } - /// - /// Number of places gained by this penalty - /// + /// public ushort PenaltyPlacesGained { get; set; } - /// - /// Top speed achieved in km/h - /// + /// public float TopSpeed { get; set; } #endregion // IEventDataDetails2020 diff --git a/F1Server.Core/Packets/Data/F1-2020/FinalClassificationCarData2020.cs b/F1Server.Core/Packets/Data/F1-2020/FinalClassificationCarData2020.cs index df91b41..626c3a6 100644 --- a/F1Server.Core/Packets/Data/F1-2020/FinalClassificationCarData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/FinalClassificationCarData2020.cs @@ -23,69 +23,43 @@ public FinalClassificationCarData2020() #region IFinalClassificationCarBase - /// - /// Finishing position - /// + /// public ushort Position { get; set; } - /// - /// Number of laps completed - /// + /// public ushort LapsCompleted { get; set; } - /// - /// Grid position of the car - /// + /// public ushort GridPosition { get; set; } - /// - /// Number of points scored - /// + /// public ushort Points { get; set; } - /// - /// Number of pit stops made - /// + /// public ushort PitStops { get; set; } - /// - /// Result status - /// + /// public ResultStatus ResultStatus { get; set; } - /// - /// Best lap time of the session in milliseconds - /// + /// public uint BestLapTimeInMs { get; set; } - /// - /// Total race time in seconds without penalties - /// + /// public double TotalRaceTime { get; set; } - /// - /// Total penalties accumulated in seconds - /// + /// public ushort PenaltiesTime { get; set; } - /// - /// Number of penalties applied to this driver - /// + /// public ushort NumPenalties { get; set; } - /// - /// Number of tyre stints up to maximum - /// + /// public ushort NumTyreStints { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort[] TyreStintsActual { get; } - /// - /// Visual tyre stints used by this driver - /// + /// public ushort[] TyreStintsVisual { get; } #endregion // IFinalClassificationCarBase diff --git a/F1Server.Core/Packets/Data/F1-2020/FinalClassificationData2020.cs b/F1Server.Core/Packets/Data/F1-2020/FinalClassificationData2020.cs index f7ef589..c0a613d 100644 --- a/F1Server.Core/Packets/Data/F1-2020/FinalClassificationData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/FinalClassificationData2020.cs @@ -21,14 +21,10 @@ public FinalClassificationData2020() #region IFinalClassificationData - /// - /// Number of cars in the final classification - /// + /// public ushort NumberOfCars { get; set; } - /// - /// Data of final classification for each car - /// + /// public IFinalClassificationCarBase[] FinalClassifications { get; } #endregion // IFinalClassificationData diff --git a/F1Server.Core/Packets/Data/F1-2020/LapData2020.cs b/F1Server.Core/Packets/Data/F1-2020/LapData2020.cs index 71c7f38..a485184 100644 --- a/F1Server.Core/Packets/Data/F1-2020/LapData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/LapData2020.cs @@ -10,148 +10,92 @@ public class LapData2020 : ILapData2020 { #region ILapData2020 - /// - /// Last lap time - /// + /// public float LastLapTime { get; set; } - /// - /// Current lap time - /// + /// public float CurrentLapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Best lap time in session in seconds - /// + /// public float BestLapTime { get; set; } - /// - /// Number of lap achieved best lap time - /// + /// public ushort BestLapNumber { get; set; } - /// - /// Sector 1 time of best lap in milliseconds - /// + /// public ushort BestLapSector1Time { get; set; } - /// - /// Sector 2 time of best lap in milliseconds - /// + /// public ushort BestLapSector2Time { get; set; } - /// - /// Sector 3 time of best lap in milliseconds - /// + /// public ushort BestLapSector3Time { get; set; } - /// - /// Best Sector 1 time overall in milliseconds - /// + /// public ushort BestOverallSector1Time { get; set; } - /// - /// Number of lap achieved best sector 1 time - /// + /// public ushort BestOverallSector1LapNumber { get; set; } - /// - /// Best Sector 2 time overall in milliseconds - /// + /// public ushort BestOverallSector2Time { get; set; } - /// - /// Number of lap achieved best sector 2 time - /// + /// public ushort BestOverallSector2LapNumber { get; set; } - /// - /// Best Sector 3 time overall in milliseconds - /// + /// public ushort BestOverallSector3Time { get; set; } - /// - /// Number of lap achieved best sector 3 time - /// + /// public ushort BestOverallSector3LapNumber { get; set; } #endregion // ILapData2020 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => CurrentLapNumber == 0 && CarPosition == 0 && GridPosition == 0 && TotalDistance <= 0.0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/LapDataComplete2020.cs b/F1Server.Core/Packets/Data/F1-2020/LapDataComplete2020.cs index 92dce76..9eafad7 100644 --- a/F1Server.Core/Packets/Data/F1-2020/LapDataComplete2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/LapDataComplete2020.cs @@ -21,9 +21,7 @@ public LapDataComplete2020() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; set; } #endregion // ILapDataComplete diff --git a/F1Server.Core/Packets/Data/F1-2020/ParticipantData2020.cs b/F1Server.Core/Packets/Data/F1-2020/ParticipantData2020.cs index 2953fc5..624a84d 100644 --- a/F1Server.Core/Packets/Data/F1-2020/ParticipantData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/ParticipantData2020.cs @@ -9,39 +9,25 @@ public class ParticipantData2020 : IParticipantData2020 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase diff --git a/F1Server.Core/Packets/Data/F1-2020/ParticipantsData2020.cs b/F1Server.Core/Packets/Data/F1-2020/ParticipantsData2020.cs index ef63b82..076e0cc 100644 --- a/F1Server.Core/Packets/Data/F1-2020/ParticipantsData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/ParticipantsData2020.cs @@ -21,14 +21,10 @@ public ParticipantsData2020() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; set; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2020/SessionData2020.cs b/F1Server.Core/Packets/Data/F1-2020/SessionData2020.cs index ef2e4b6..4b1c448 100644 --- a/F1Server.Core/Packets/Data/F1-2020/SessionData2020.cs +++ b/F1Server.Core/Packets/Data/F1-2020/SessionData2020.cs @@ -23,123 +23,77 @@ public SessionData2020() #region ISessionDataBase - /// - /// Is session recordable? Network games or time trial are not - /// + /// public bool IsRecordable { get; set; } - /// - /// Weather condition - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Track temperature - /// + /// public short TrackTemperature { get; set; } - /// - /// Air temperature - /// + /// public short AirTemperature { get; set; } - /// - /// Total laps - /// + /// public ushort TotalLaps { get; set; } - /// - /// Length of track - /// + /// public int TrackLength { get; set; } - /// - /// Session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Track id, -1 when unknown - /// + /// public short TrackId { get; set; } - /// - /// Name of the track - /// + /// public string TrackName { get; set; } - /// - /// Formula type - F1 and so on - /// + /// public Formula FormulaType { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Duration of current session - /// + /// public int SessionDuration { get; set; } - /// - /// Pit speed limit - /// + /// public ushort PitSpeedLimit { get; set; } - /// - /// Flag if game is paused - /// + /// public bool IsGamePaused { get; set; } - /// - /// Flag if user is spectating - /// + /// public bool IsSpectating { get; set; } - /// - /// Car index spectating - /// + /// public ushort SpectatorCarIndex { get; set; } - /// - /// SLI Pro support - /// + /// public bool IsSliProNativeSupport { get; set; } - /// - /// Number of marshal zones - /// + /// public ushort NumberOfMarshalZones { get; set; } - /// - /// Marshal zone data - /// + /// public MarshalZone[] MarshalZones { get; set; } - /// - /// Safety car status - /// + /// public SafetyCarStatus SafetyCar { get; set; } - /// - /// Online or offline - /// + /// public bool IsNetworkGame { get; set; } #endregion // ISessionDataBase #region ISessionData2020 - /// - /// Number of weather samples to follow - /// + /// public ushort NumberWeatherForecastSamples { get; set; } - /// - /// Weather forecast data - /// + /// public WeatherForecastSample[] WeatherForecastSamples { get; } #endregion // ISessionData2020 diff --git a/F1Server.Core/Packets/Data/F1-2021/CarStatus2021.cs b/F1Server.Core/Packets/Data/F1-2021/CarStatus2021.cs index b649904..08bd8c0 100644 --- a/F1Server.Core/Packets/Data/F1-2021/CarStatus2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/CarStatus2021.cs @@ -28,9 +28,7 @@ public CarStatus2021() #region ICarStatusBase - /// - /// Car Status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2021/CarStatusData2021.cs b/F1Server.Core/Packets/Data/F1-2021/CarStatusData2021.cs index 1e4a777..dcde652 100644 --- a/F1Server.Core/Packets/Data/F1-2021/CarStatusData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/CarStatusData2021.cs @@ -10,123 +10,77 @@ public class CarStatusData2021 : ICarStatusData2021 { #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - medium - 2 - hotlap - 3 - overtake - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase #region ICarStatusData2021 - /// - /// DRS activation distance - 0 - DRS not available - non-zero - DRS will be available - /// + /// public int DRSActivationDistance { get; set; } - /// - /// Age of laps of the current set of tyres - /// + /// public ushort TyresAgeLaps { get; set; } - /// - /// Whether the car is paused in a network game - /// + /// public ushort NetworkPaused { get; set; } #endregion // ICarStatusData2021 diff --git a/F1Server.Core/Packets/Data/F1-2021/CarTelemetry2021.cs b/F1Server.Core/Packets/Data/F1-2021/CarTelemetry2021.cs index 32542ab..c8fa050 100644 --- a/F1Server.Core/Packets/Data/F1-2021/CarTelemetry2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/CarTelemetry2021.cs @@ -35,28 +35,20 @@ public CarTelemetry2021() #region ICarTelemetry2021 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2021 #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2021/CarTelemetryData2021.cs b/F1Server.Core/Packets/Data/F1-2021/CarTelemetryData2021.cs index fc9dcfe..4d4c862 100644 --- a/F1Server.Core/Packets/Data/F1-2021/CarTelemetryData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/CarTelemetryData2021.cs @@ -9,88 +9,56 @@ public class CarTelemetryData2021 : ICarTelemetryData2021 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase #region ICarTelemetryData2021 - /// - /// Rev lights bit - /// + /// public ushort RevLightsBitValue { get; set; } #endregion // ICarTelemetryData2021 diff --git a/F1Server.Core/Packets/Data/F1-2021/EventData2021.cs b/F1Server.Core/Packets/Data/F1-2021/EventData2021.cs index 6e59c8b..7ece294 100644 --- a/F1Server.Core/Packets/Data/F1-2021/EventData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/EventData2021.cs @@ -21,14 +21,10 @@ public EventData2021() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } - /// - /// Event details - /// + /// public IEventDataDetailsBase EventDetails { get; } #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2021/EventDataDetails2021.cs b/F1Server.Core/Packets/Data/F1-2021/EventDataDetails2021.cs index 8d44c60..662af78 100644 --- a/F1Server.Core/Packets/Data/F1-2021/EventDataDetails2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/EventDataDetails2021.cs @@ -10,69 +10,43 @@ internal class EventDataDetails2021 : EventDataDetails2019, IEventDataDetails202 { #region IEventDataDetails2021 - /// - /// Type of penalty - /// + /// public PenaltyType PenaltyType { get; set; } - /// - /// Type of infringement - /// + /// public InfringementType PenaltyInfringementType { get; set; } - /// - /// Other vehicle index - /// + /// public ushort PenaltyOtherVehicleIndex { get; set; } - /// - /// Time gained or time spent doing action in seconds - /// + /// public ushort PenaltyTimeGained { get; set; } - /// - /// Lap of penalty occurred on - /// + /// public ushort PenaltyLapNumber { get; set; } - /// - /// Number of places gained by this penalty - /// + /// public ushort PenaltyPlacesGained { get; set; } - /// - /// Top speed achieved in km/h - /// + /// public float TopSpeed { get; set; } - /// - /// Overall fastest speed in session - /// + /// public bool IsTopSpeedOverallFastestInSession { get; set; } - /// - /// Fastest speed for driver in session - /// + /// public bool IsTopSpeedDriverFastestInSession { get; set; } - /// - /// Number of lights showing - /// + /// public ushort StartLightsNumbers { get; set; } - /// - /// Frame identifier flashed back - /// + /// public uint FlashbackFrame { get; set; } - /// - /// Session time flashed back - /// + /// public float FlashbackSessionTime { get; set; } - /// - /// Bit flags specifying which buttons are being pressed - /// + /// public uint ButtonsTriggered { get; set; } #endregion // IEventDataDetails2021 diff --git a/F1Server.Core/Packets/Data/F1-2021/FinalClassificationCarData2021.cs b/F1Server.Core/Packets/Data/F1-2021/FinalClassificationCarData2021.cs index d1ccc4e..2a7d29f 100644 --- a/F1Server.Core/Packets/Data/F1-2021/FinalClassificationCarData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/FinalClassificationCarData2021.cs @@ -23,69 +23,43 @@ public FinalClassificationCarData2021() #region IFinalClassificationCarBase - /// - /// Finishing position - /// + /// public ushort Position { get; set; } - /// - /// Number of laps completed - /// + /// public ushort LapsCompleted { get; set; } - /// - /// Grid position of the car - /// + /// public ushort GridPosition { get; set; } - /// - /// Number of points scored - /// + /// public ushort Points { get; set; } - /// - /// Number of pit stops made - /// + /// public ushort PitStops { get; set; } - /// - /// Result status - /// + /// public ResultStatus ResultStatus { get; set; } - /// - /// Best lap time of the session in milliseconds - /// + /// public uint BestLapTimeInMs { get; set; } - /// - /// Total race time in seconds without penalties - /// + /// public double TotalRaceTime { get; set; } - /// - /// Total penalties accumulated in seconds - /// + /// public ushort PenaltiesTime { get; set; } - /// - /// Number of penalties applied to this driver - /// + /// public ushort NumPenalties { get; set; } - /// - /// Number of tyre stints up to maximum - /// + /// public ushort NumTyreStints { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort[] TyreStintsActual { get; } - /// - /// Visual tyre stints used by this driver - /// + /// public ushort[] TyreStintsVisual { get; } #endregion // IFinalClassificationCarBase diff --git a/F1Server.Core/Packets/Data/F1-2021/FinalClassificationData2021.cs b/F1Server.Core/Packets/Data/F1-2021/FinalClassificationData2021.cs index e0fd024..8510cb5 100644 --- a/F1Server.Core/Packets/Data/F1-2021/FinalClassificationData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/FinalClassificationData2021.cs @@ -21,14 +21,10 @@ public FinalClassificationData2021() #region IFinalClassificationData - /// - /// Number of cars in the final classification - /// + /// public ushort NumberOfCars { get; set; } - /// - /// Data of final classification for each car - /// + /// public IFinalClassificationCarBase[] FinalClassifications { get; } #endregion // IFinalClassificationData diff --git a/F1Server.Core/Packets/Data/F1-2021/LapData2021.cs b/F1Server.Core/Packets/Data/F1-2021/LapData2021.cs index 0eca8b7..d2cae4b 100644 --- a/F1Server.Core/Packets/Data/F1-2021/LapData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/LapData2021.cs @@ -10,133 +10,83 @@ public class LapData2021 : ILapData2021 { #region ILapData2021 - /// - /// Last lap time in milliseconds - /// + /// public uint LastLapTime { get; set; } - /// - /// Current lap time in milliseconds - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Accumulated number of warnings - /// + /// public ushort Warnings { get; set; } - /// - /// Number of drive through penalties left to serve - /// + /// public ushort NumberUnservedDriveThroughPens { get; set; } - /// - /// Number of stop and go penalties left to serve - /// + /// public ushort NumberUnservedStopAndGoPenalties { get; set; } - /// - /// Number of pit stops - /// + /// public ushort NumberPitStops { get; set; } - /// - /// Pit lane timing active flag - /// + /// public bool IsPitLaneTimerActive { get; set; } - /// - /// Pit lane time in lan in milliseconds, only if is active - /// + /// public ushort PitLaneTimeInLane { get; set; } - /// - /// Time of actual pit stop in milliseconds - /// + /// public ushort PitStopTimer { get; set; } - /// - /// Flag if the car should serve a penalty at this stop - /// + /// public bool PitStopShouldServePenalty { get; set; } #endregion // ILapData2021 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => GridPosition == 0 && CurrentLapTime == 0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2021/LapDataComplete2021.cs b/F1Server.Core/Packets/Data/F1-2021/LapDataComplete2021.cs index 214bf3c..632772e 100644 --- a/F1Server.Core/Packets/Data/F1-2021/LapDataComplete2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/LapDataComplete2021.cs @@ -21,9 +21,7 @@ public LapDataComplete2021() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; } #endregion // ILapDataComplete diff --git a/F1Server.Core/Packets/Data/F1-2021/ParticipantData2021.cs b/F1Server.Core/Packets/Data/F1-2021/ParticipantData2021.cs index b538642..7aa59d4 100644 --- a/F1Server.Core/Packets/Data/F1-2021/ParticipantData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/ParticipantData2021.cs @@ -9,53 +9,35 @@ public class ParticipantData2021 : IParticipantData2021 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase #region IParticipantData2021 - /// - /// Identifier for network players - /// + /// public ushort NetworkId { get; set; } - /// - /// Is my team? - /// + /// public bool IsMyTeam { get; set; } #endregion // IParticipantData2021 diff --git a/F1Server.Core/Packets/Data/F1-2021/ParticipantsData2021.cs b/F1Server.Core/Packets/Data/F1-2021/ParticipantsData2021.cs index 70e6735..c2a8df2 100644 --- a/F1Server.Core/Packets/Data/F1-2021/ParticipantsData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/ParticipantsData2021.cs @@ -21,14 +21,10 @@ public ParticipantsData2021() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2021/SessionData2021.cs b/F1Server.Core/Packets/Data/F1-2021/SessionData2021.cs index bafdbe4..bf37d91 100644 --- a/F1Server.Core/Packets/Data/F1-2021/SessionData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/SessionData2021.cs @@ -23,212 +23,132 @@ public SessionData2021() #region ISessionDataBase - /// - /// Is session recordable? Network games or time trial are not - /// + /// public bool IsRecordable { get; set; } - /// - /// Weather condition - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Track temperature - /// + /// public short TrackTemperature { get; set; } - /// - /// Air temperature - /// + /// public short AirTemperature { get; set; } - /// - /// Total laps - /// + /// public ushort TotalLaps { get; set; } - /// - /// Length of track - /// + /// public int TrackLength { get; set; } - /// - /// Session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Track id, -1 when unknown - /// + /// public short TrackId { get; set; } - /// - /// Name of the track - /// + /// public string TrackName { get; set; } - /// - /// Formula type - F1 and so on - /// + /// public Formula FormulaType { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Duration of current session - /// + /// public int SessionDuration { get; set; } - /// - /// Pit speed limit - /// + /// public ushort PitSpeedLimit { get; set; } - /// - /// Flag if game is paused - /// + /// public bool IsGamePaused { get; set; } - /// - /// Flag if user is spectating - /// + /// public bool IsSpectating { get; set; } - /// - /// Car index spectating - /// + /// public ushort SpectatorCarIndex { get; set; } - /// - /// SLI Pro support - /// + /// public bool IsSliProNativeSupport { get; set; } - /// - /// Number of marshal zones - /// + /// public ushort NumberOfMarshalZones { get; set; } - /// - /// Marshal zone data - /// + /// public MarshalZone[] MarshalZones { get; set; } - /// - /// Safety car status - /// + /// public SafetyCarStatus SafetyCar { get; set; } - /// - /// Online or offline - /// + /// public bool IsNetworkGame { get; set; } #endregion // ISessionDataBase #region ISessionData2020 - /// - /// Number of weather samples to follow - /// + /// public ushort NumberWeatherForecastSamples { get; set; } - /// - /// Weather forecast data - /// + /// public WeatherForecastSample[] WeatherForecastSamples { get; } #endregion // ISessionData2020 #region ISessionData2021 - /// - /// Forecast accuracy - /// + /// public ForecastAccuracy ForecastAccuracy { get; set; } - /// - /// AI difficulty rating (0 - 110) - /// + /// public ushort AiDifficulty { get; set; } - /// - /// Identifier for season - persists across saves - /// + /// public uint SeasonLinkIdentifier { get; set; } - /// - /// Identifier for weekend - persists across saves - /// + /// public uint WeekendLinkIdentifier { get; set; } - /// - /// Identifier for session - persists across saves - /// + /// public uint SessionLinkIdentifier { get; set; } - /// - /// Ideal lap to pit on current strategy - /// + /// public ushort PitStopWindowIdealLap { get; set; } - /// - /// Latest lap to pit on current strategy - /// + /// public ushort PitStopWindowLatestLap { get; set; } - /// - /// Predicted position to rejoin at - /// + /// public ushort PitStopRejoinPosition { get; set; } - /// - /// Steering assist is on or off - /// + /// public bool IsSteeringAssist { get; set; } - /// - /// Braking assist setting - /// + /// public BrakingAssist BrakingAssist { get; set; } - /// - /// Gearbox assist setting - /// + /// public GearboxAssist GearboxAssist { get; set; } - /// - /// Pit assist on or off - /// + /// public bool IsPitAssist { get; set; } - /// - /// Pit release assist on or off - /// + /// public bool IsPitReleaseAssist { get; set; } - /// - /// ERS assist on or off - /// + /// public bool IsERSAssist { get; set; } - /// - /// DRS assist on or off - /// + /// public bool IsDRSAssist { get; set; } - /// - /// Dynamic race line settings - /// + /// public DynamicRaceLine DynamicRaceLine { get; set; } - /// - /// Type of dynamic race line - /// + /// public DynamicRaceLineType DynamicRaceLineType { get; set; } #endregion // ISessionData2021 diff --git a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryData2021.cs b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryData2021.cs index 42fe162..81163b1 100644 --- a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryData2021.cs @@ -22,49 +22,31 @@ public SessionHistoryData2021() #region ISessionHistoryDataBase - /// - /// Index of car - /// + /// public ushort CarIndex { get; set; } - /// - /// Number of laps in the data (including partial data of current lap) - /// + /// public ushort NumberOfLaps { get; set; } - /// - /// Number of tyre stints in the data - /// + /// public ushort NumberOfTyreStints { get; set; } - /// - /// Number of the lap on which the best lap time was achieved - /// + /// public ushort BestLapNumber { get; set; } - /// - /// Number of lap with best sector 1 time - /// + /// public ushort BestSector1LapNumber { get; set; } - /// - /// Number of lap with best sector 2 time - /// + /// public ushort BestSector2LapNumber { get; set; } - /// - /// Number of lap with best sector 3 time - /// + /// public ushort BestSector3LapNumber { get; set; } - /// - /// Array (max 100) lap data - /// + /// public ILapHistoryDataBase[] LapHistory { get; } - /// - /// History data of tyre stints - /// + /// public ITyreStintHistoryDataBase[] TyreStintHistory { get; } #endregion // ISessionHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryLapData2021.cs b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryLapData2021.cs index 391c9b5..a105ccb 100644 --- a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryLapData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryLapData2021.cs @@ -9,49 +9,31 @@ public class SessionHistoryLapData2021 : ILapHistoryDataBase { #region ILapHistoryDataBase - /// - /// Lap time in milliseconds - /// + /// public uint LapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 3 time in milliseconds - /// + /// public ushort Sector3Time { get; set; } - /// - /// Valid lap flag (0x01 - lap valid, 0x02 - sector 1 valid, 0x04 - sector 2 valid, 0x08 - sector 3 valid) - /// + /// public ushort LapValidFlag { get; set; } - /// - /// Is sector 1 time valid? - /// + /// public bool IsValidSector1 => (LapValidFlag & 0x02) == 0x02; - /// - /// Is sector 2 time valid? - /// + /// public bool IsValidSector2 => (LapValidFlag & 0x04) == 0x04; - /// - /// Is sector 3 time valid? - /// + /// public bool IsValidSector3 => (LapValidFlag & 0x08) == 0x08; - /// - /// Is lap time valid? - /// + /// public bool IsLapTimeValid => (LapValidFlag & 0x01) == 0x01; #endregion // ILapHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryTyreStintData2021.cs b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryTyreStintData2021.cs index 4a6015c..98dfe89 100644 --- a/F1Server.Core/Packets/Data/F1-2021/SessionHistoryTyreStintData2021.cs +++ b/F1Server.Core/Packets/Data/F1-2021/SessionHistoryTyreStintData2021.cs @@ -9,19 +9,13 @@ internal class SessionHistoryTyreStintData2021 : ITyreStintHistoryDataBase { #region ITyreStintHistoryDataBase - /// - /// Lap the tyre usage ends on (255 of current tyre) - /// + /// public ushort EndLap { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort TyreActualCompound { get; set; } - /// - /// Visual tyres used by this driver - /// + /// public ushort TyreVisualCompound { get; set; } #endregion // ITyreStintHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2022/CarStatus2022.cs b/F1Server.Core/Packets/Data/F1-2022/CarStatus2022.cs index aff80eb..e19315a 100644 --- a/F1Server.Core/Packets/Data/F1-2022/CarStatus2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/CarStatus2022.cs @@ -28,9 +28,7 @@ public CarStatus2022() #region ICarStatusBase - /// - /// Car Status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2022/CarStatusData2022.cs b/F1Server.Core/Packets/Data/F1-2022/CarStatusData2022.cs index 1c03d5a..c7d1d2f 100644 --- a/F1Server.Core/Packets/Data/F1-2022/CarStatusData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/CarStatusData2022.cs @@ -10,123 +10,77 @@ public class CarStatusData2022 : ICarStatusData2022 { #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - medium - 2 - hotlap - 3 - overtake - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase #region ICarStatusData2022 - /// - /// DRS activation distance - 0 - DRS not available - non-zero - DRS will be available - /// + /// public int DRSActivationDistance { get; set; } - /// - /// Age of laps of the current set of tyres - /// + /// public ushort TyresAgeLaps { get; set; } - /// - /// Whether the car is paused in a network game - /// + /// public ushort NetworkPaused { get; set; } #endregion // ICarStatusData2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/CarTelemetry2022.cs b/F1Server.Core/Packets/Data/F1-2022/CarTelemetry2022.cs index ad27495..c5b76f7 100644 --- a/F1Server.Core/Packets/Data/F1-2022/CarTelemetry2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/CarTelemetry2022.cs @@ -35,28 +35,20 @@ public CarTelemetry2022() #region ICarTelemetry2022 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2022 #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2022/CarTelemetryData2022.cs b/F1Server.Core/Packets/Data/F1-2022/CarTelemetryData2022.cs index b62cc9f..3f8bbd2 100644 --- a/F1Server.Core/Packets/Data/F1-2022/CarTelemetryData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/CarTelemetryData2022.cs @@ -9,88 +9,56 @@ public class CarTelemetryData2022 : ICarTelemetryData2022 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase #region ICarTelemetryData2022 - /// - /// Rev lights bit - /// + /// public ushort RevLightsBitValue { get; set; } #endregion // ICarTelemetryData2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/EventData2022.cs b/F1Server.Core/Packets/Data/F1-2022/EventData2022.cs index 0db8a95..43b8b39 100644 --- a/F1Server.Core/Packets/Data/F1-2022/EventData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/EventData2022.cs @@ -21,14 +21,10 @@ public EventData2022() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } - /// - /// Event details - /// + /// public IEventDataDetailsBase EventDetails { get; } #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2022/EventDataDetails2022.cs b/F1Server.Core/Packets/Data/F1-2022/EventDataDetails2022.cs index d7e6f02..0a31410 100644 --- a/F1Server.Core/Packets/Data/F1-2022/EventDataDetails2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/EventDataDetails2022.cs @@ -10,79 +10,49 @@ internal class EventDataDetails2022 : EventDataDetails2019, IEventDataDetails202 { #region IEventDataDetails2022 - /// - /// Type of penalty - /// + /// public PenaltyType PenaltyType { get; set; } - /// - /// Type of infringement - /// + /// public InfringementType PenaltyInfringementType { get; set; } - /// - /// Other vehicle index - /// + /// public ushort PenaltyOtherVehicleIndex { get; set; } - /// - /// Time gained or time spent doing action in seconds - /// + /// public ushort PenaltyTimeGained { get; set; } - /// - /// Lap of penalty occurred on - /// + /// public ushort PenaltyLapNumber { get; set; } - /// - /// Number of places gained by this penalty - /// + /// public ushort PenaltyPlacesGained { get; set; } - /// - /// Top speed achieved in km/h - /// + /// public float TopSpeed { get; set; } - /// - /// Overall fastest speed in session - /// + /// public bool IsOverallFastestInSession { get; set; } - /// - /// Fastest speed for driver in session - /// + /// public bool IsDriverFastestInSession { get; set; } - /// - /// Fastest id of car in session - /// + /// public ushort FastestVehicleIndexInSession { get; set; } - /// - /// Speed of the vehicle that is the fastest in session - /// + /// public float FastestSpeedInSession { get; set; } - /// - /// Number of lights showing - /// + /// public ushort StartLightsNumbers { get; set; } - /// - /// Frame identifier flashed back - /// + /// public uint FlashbackFrame { get; set; } - /// - /// Session time flashed back - /// + /// public float FlashbackSessionTime { get; set; } - /// - /// Bit flags specifying which buttons are being pressed - /// + /// public uint ButtonsTriggered { get; set; } #endregion // IEventDataDetails2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/FinalClassificationCarData2022.cs b/F1Server.Core/Packets/Data/F1-2022/FinalClassificationCarData2022.cs index 6540688..3c6b49c 100644 --- a/F1Server.Core/Packets/Data/F1-2022/FinalClassificationCarData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/FinalClassificationCarData2022.cs @@ -24,78 +24,50 @@ public FinalClassificationCarData2022() #region IFinalClassificationCarBase - /// - /// Finishing position - /// + /// public ushort Position { get; set; } - /// - /// Number of laps completed - /// + /// public ushort LapsCompleted { get; set; } - /// - /// Grid position of the car - /// + /// public ushort GridPosition { get; set; } - /// - /// Number of points scored - /// + /// public ushort Points { get; set; } - /// - /// Number of pit stops made - /// + /// public ushort PitStops { get; set; } - /// - /// Result status - /// + /// public ResultStatus ResultStatus { get; set; } - /// - /// Best lap time of the session in milliseconds - /// + /// public uint BestLapTimeInMs { get; set; } - /// - /// Total race time in seconds without penalties - /// + /// public double TotalRaceTime { get; set; } - /// - /// Total penalties accumulated in seconds - /// + /// public ushort PenaltiesTime { get; set; } - /// - /// Number of penalties applied to this driver - /// + /// public ushort NumPenalties { get; set; } - /// - /// Number of tyre stints up to maximum - /// + /// public ushort NumTyreStints { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort[] TyreStintsActual { get; } - /// - /// Visual tyre stints used by this driver - /// + /// public ushort[] TyreStintsVisual { get; } #endregion // IFinalClassificationCarBase #region IFinalClassification2022 - /// - /// The lap number stints end on - /// + /// public ushort[] TyreStintsEndLaps { get; set; } #endregion // IFinalClassification2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/FinalClassificationData2022.cs b/F1Server.Core/Packets/Data/F1-2022/FinalClassificationData2022.cs index e83c02f..c991d2f 100644 --- a/F1Server.Core/Packets/Data/F1-2022/FinalClassificationData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/FinalClassificationData2022.cs @@ -26,14 +26,10 @@ public FinalClassificationData2022() #region IFinalClassificationData - /// - /// Number of cars in the final classification - /// + /// public ushort NumberOfCars { get; set; } - /// - /// Data of final classification for each car - /// + /// public IFinalClassificationCarBase[] FinalClassifications { get; } #endregion // IFinalClassificationData diff --git a/F1Server.Core/Packets/Data/F1-2022/LapData2022.cs b/F1Server.Core/Packets/Data/F1-2022/LapData2022.cs index f5d473d..85a63d1 100644 --- a/F1Server.Core/Packets/Data/F1-2022/LapData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/LapData2022.cs @@ -10,133 +10,83 @@ public class LapData2022 : ILapData2022 { #region ILapData2022 - /// - /// Last lap time in milliseconds - /// + /// public uint LastLapTime { get; set; } - /// - /// Current lap time in milliseconds - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Number of pit stops - /// + /// public ushort NumberPitStops { get; set; } - /// - /// Accumulated number of warnings - /// + /// public ushort Warnings { get; set; } - /// - /// Number of drive through penalties left to serve - /// + /// public ushort NumberUnservedDriveThroughPens { get; set; } - /// - /// Number of stop and go penalties left to serve - /// + /// public ushort NumberUnservedStopAndGoPenalties { get; set; } - /// - /// Pit lane timing active flag - /// + /// public bool IsPitLaneTimerActive { get; set; } - /// - /// Pit lane time in lan in milliseconds, only if is active - /// + /// public ushort PitLaneTimeInLane { get; set; } - /// - /// Time of actual pit stop in milliseconds - /// + /// public ushort PitStopTimer { get; set; } - /// - /// Flag if the car should serve a penalty at this stop - /// + /// public bool PitStopShouldServePenalty { get; set; } #endregion // ILapData2022 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => GridPosition == 0 && CurrentLapTime == 0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2022/LapDataComplete2022.cs b/F1Server.Core/Packets/Data/F1-2022/LapDataComplete2022.cs index 92ce720..a7fa3c1 100644 --- a/F1Server.Core/Packets/Data/F1-2022/LapDataComplete2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/LapDataComplete2022.cs @@ -26,23 +26,17 @@ public LapDataComplete2022() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; } #endregion // ILapDataComplete #region ILapDataComplete2022 - /// - /// Index of personal best car in time trial (255 - invalid) - /// + /// public ushort TimeTrialPersonalBestCarIndex { get; set; } - /// - /// Index of rival car in time trial (255 - invalid) - /// + /// public ushort TimeTrialRivalCarIndex { get; set; } #endregion // ILapDataComplete2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/ParticipantData2022.cs b/F1Server.Core/Packets/Data/F1-2022/ParticipantData2022.cs index 88646fc..c570d14 100644 --- a/F1Server.Core/Packets/Data/F1-2022/ParticipantData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/ParticipantData2022.cs @@ -9,53 +9,35 @@ public class ParticipantData2022 : IParticipantData2022 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase #region IParticipantData2021 - /// - /// Identifier for network players - /// + /// public ushort NetworkId { get; set; } - /// - /// Is my team? - /// + /// public bool IsMyTeam { get; set; } #endregion // IParticipantData2021 diff --git a/F1Server.Core/Packets/Data/F1-2022/ParticipantsData2022.cs b/F1Server.Core/Packets/Data/F1-2022/ParticipantsData2022.cs index 05b0cb1..4fd74c1 100644 --- a/F1Server.Core/Packets/Data/F1-2022/ParticipantsData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/ParticipantsData2022.cs @@ -26,14 +26,10 @@ public ParticipantsData2022() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2022/SessionData2022.cs b/F1Server.Core/Packets/Data/F1-2022/SessionData2022.cs index e62b22d..8947db2 100644 --- a/F1Server.Core/Packets/Data/F1-2022/SessionData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/SessionData2022.cs @@ -23,236 +23,148 @@ public SessionData2022() #region ISessionDataBase - /// - /// Is session recordable? Network games or time trial are not - /// + /// public bool IsRecordable { get; set; } - /// - /// Weather condition - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Track temperature - /// + /// public short TrackTemperature { get; set; } - /// - /// Air temperature - /// + /// public short AirTemperature { get; set; } - /// - /// Total laps - /// + /// public ushort TotalLaps { get; set; } - /// - /// Length of track - /// + /// public int TrackLength { get; set; } - /// - /// Session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Track id, -1 when unknown - /// + /// public short TrackId { get; set; } - /// - /// Name of the track - /// + /// public string TrackName { get; set; } - /// - /// Formula type - F1 and so on - /// + /// public Formula FormulaType { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Duration of current session - /// + /// public int SessionDuration { get; set; } - /// - /// Pit speed limit - /// + /// public ushort PitSpeedLimit { get; set; } - /// - /// Flag if game is paused - /// + /// public bool IsGamePaused { get; set; } - /// - /// Flag if user is spectating - /// + /// public bool IsSpectating { get; set; } - /// - /// Car index spectating - /// + /// public ushort SpectatorCarIndex { get; set; } - /// - /// SLI Pro support - /// + /// public bool IsSliProNativeSupport { get; set; } - /// - /// Number of marshal zones - /// + /// public ushort NumberOfMarshalZones { get; set; } - /// - /// Marshal zone data - /// + /// public MarshalZone[] MarshalZones { get; set; } - /// - /// Safety car status - /// + /// public SafetyCarStatus SafetyCar { get; set; } - /// - /// Online or offline - /// + /// public bool IsNetworkGame { get; set; } #endregion // ISessionDataBase #region ISessionData2020 - /// - /// Number of weather samples to follow - /// + /// public ushort NumberWeatherForecastSamples { get; set; } - /// - /// Weather forecast data - /// + /// public WeatherForecastSample[] WeatherForecastSamples { get; } #endregion // ISessionData2020 #region ISessionData2021 - /// - /// Forecast accuracy - /// + /// public ForecastAccuracy ForecastAccuracy { get; set; } - /// - /// AI difficulty rating (0 - 110) - /// + /// public ushort AiDifficulty { get; set; } - /// - /// Identifier for season - persists across saves - /// + /// public uint SeasonLinkIdentifier { get; set; } - /// - /// Identifier for weekend - persists across saves - /// + /// public uint WeekendLinkIdentifier { get; set; } - /// - /// Identifier for session - persists across saves - /// + /// public uint SessionLinkIdentifier { get; set; } - /// - /// Ideal lap to pit on current strategy - /// + /// public ushort PitStopWindowIdealLap { get; set; } - /// - /// Latest lap to pit on current strategy - /// + /// public ushort PitStopWindowLatestLap { get; set; } - /// - /// Predicted position to rejoin at - /// + /// public ushort PitStopRejoinPosition { get; set; } - /// - /// Steering assist is on or off - /// + /// public bool IsSteeringAssist { get; set; } - /// - /// Braking assist setting - /// + /// public BrakingAssist BrakingAssist { get; set; } - /// - /// Gearbox assist setting - /// + /// public GearboxAssist GearboxAssist { get; set; } - /// - /// Pit assist on or off - /// + /// public bool IsPitAssist { get; set; } - /// - /// Pit release assist on or off - /// + /// public bool IsPitReleaseAssist { get; set; } - /// - /// ERS assist on or off - /// + /// public bool IsERSAssist { get; set; } - /// - /// DRS assist on or off - /// + /// public bool IsDRSAssist { get; set; } - /// - /// Dynamic race line settings - /// + /// public DynamicRaceLine DynamicRaceLine { get; set; } - /// - /// Type of dynamic race line - /// + /// public DynamicRaceLineType DynamicRaceLineType { get; set; } #endregion // ISessionData2021 #region ISessionData2022 - /// - /// Game mode - /// + /// public GameMode GameMode { get; set; } - /// - /// Ruleset - /// + /// public RuleSet RuleSet { get; set; } - /// - /// Local time of day - minutes since midnight - /// + /// public uint LocalTimeOfDay { get; set; } - /// - /// Length of session - /// + /// public SessionLength SessionLength { get; set; } #endregion // ISessionData2022 diff --git a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryData2022.cs b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryData2022.cs index 4e08357..18e879a 100644 --- a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryData2022.cs @@ -32,49 +32,31 @@ public SessionHistoryData2022() #region ISessionHistoryDataBase - /// - /// Index of car - /// + /// public ushort CarIndex { get; set; } - /// - /// Number of laps in the data (including partial data of current lap) - /// + /// public ushort NumberOfLaps { get; set; } - /// - /// Number of tyre stints in the data - /// + /// public ushort NumberOfTyreStints { get; set; } - /// - /// Number of the lap on which the best lap time was achieved - /// + /// public ushort BestLapNumber { get; set; } - /// - /// Number of lap with best sector 1 time - /// + /// public ushort BestSector1LapNumber { get; set; } - /// - /// Number of lap with best sector 2 time - /// + /// public ushort BestSector2LapNumber { get; set; } - /// - /// Number of lap with best sector 3 time - /// + /// public ushort BestSector3LapNumber { get; set; } - /// - /// Array (max 100) lap data - /// + /// public ILapHistoryDataBase[] LapHistory { get; } - /// - /// History data of tyre stints - /// + /// public ITyreStintHistoryDataBase[] TyreStintHistory { get; } #endregion // ISessionHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryLapData2022.cs b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryLapData2022.cs index acc3859..3f59dbd 100644 --- a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryLapData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryLapData2022.cs @@ -9,49 +9,31 @@ public class SessionHistoryLapData2022 : ILapHistoryDataBase { #region ILapHistoryDataBase - /// - /// Lap time in milliseconds - /// + /// public uint LapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 3 time in milliseconds - /// + /// public ushort Sector3Time { get; set; } - /// - /// Valid lap flag (0x01 - lap valid, 0x02 - sector 1 valid, 0x04 - sector 2 valid, 0x08 - sector 3 valid) - /// + /// public ushort LapValidFlag { get; set; } - /// - /// Is sector 1 time valid? - /// + /// public bool IsValidSector1 => (LapValidFlag & 0x02) == 0x02; - /// - /// Is sector 2 time valid? - /// + /// public bool IsValidSector2 => (LapValidFlag & 0x04) == 0x04; - /// - /// Is sector 3 time valid? - /// + /// public bool IsValidSector3 => (LapValidFlag & 0x08) == 0x08; - /// - /// Is lap time valid? - /// + /// public bool IsLapTimeValid => (LapValidFlag & 0x01) == 0x01; #endregion // ILapHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryTyreStintData2022.cs b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryTyreStintData2022.cs index 65b0b28..4bcd239 100644 --- a/F1Server.Core/Packets/Data/F1-2022/SessionHistoryTyreStintData2022.cs +++ b/F1Server.Core/Packets/Data/F1-2022/SessionHistoryTyreStintData2022.cs @@ -9,19 +9,13 @@ internal class SessionHistoryTyreStintData2022 : ITyreStintHistoryDataBase { #region ITyreStintHistoryDataBase - /// - /// Lap the tyre usage ends on (255 of current tyre) - /// + /// public ushort EndLap { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort TyreActualCompound { get; set; } - /// - /// Visual tyres used by this driver - /// + /// public ushort TyreVisualCompound { get; set; } #endregion // ITyreStintHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2023/CarStatus2023.cs b/F1Server.Core/Packets/Data/F1-2023/CarStatus2023.cs index 9179c70..70cd010 100644 --- a/F1Server.Core/Packets/Data/F1-2023/CarStatus2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/CarStatus2023.cs @@ -28,9 +28,7 @@ public CarStatus2023() #region ICarStatusBase - /// - /// Car Status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2023/CarStatusData2023.cs b/F1Server.Core/Packets/Data/F1-2023/CarStatusData2023.cs index 041050a..e8ad8f9 100644 --- a/F1Server.Core/Packets/Data/F1-2023/CarStatusData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/CarStatusData2023.cs @@ -10,133 +10,83 @@ public class CarStatusData2023 : ICarStatusData2023 { #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - medium - 2 - hotlap - 3 - overtake - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase #region ICarStatusData2023 - /// - /// Engine power output of ICE (W) - /// + /// public float EnginePowerICE { get; set; } - /// - /// Engine power output of MGU-K (W) - /// + /// public float EnginePowerMGUK { get; set; } - /// - /// DRS activation distance - 0 - DRS not available - non-zero - DRS will be available - /// + /// public int DRSActivationDistance { get; set; } - /// - /// Age of laps of the current set of tyres - /// + /// public ushort TyresAgeLaps { get; set; } - /// - /// Whether the car is paused in a network game - /// + /// public ushort NetworkPaused { get; set; } #endregion // ICarStatusData2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/CarTelemetry2023.cs b/F1Server.Core/Packets/Data/F1-2023/CarTelemetry2023.cs index 3056f78..4ecf471 100644 --- a/F1Server.Core/Packets/Data/F1-2023/CarTelemetry2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/CarTelemetry2023.cs @@ -35,28 +35,20 @@ public CarTelemetry2023() #region ICarTelemetry2023 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2023 #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2023/CarTelemetryData2023.cs b/F1Server.Core/Packets/Data/F1-2023/CarTelemetryData2023.cs index b81f3b3..46b7788 100644 --- a/F1Server.Core/Packets/Data/F1-2023/CarTelemetryData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/CarTelemetryData2023.cs @@ -9,88 +9,56 @@ public class CarTelemetryData2023 : ICarTelemetryData2023 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase #region ICarTelemetryData2023 - /// - /// Rev lights bit - /// + /// public ushort RevLightsBitValue { get; set; } #endregion // ICarTelemetryData2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/EventData2023.cs b/F1Server.Core/Packets/Data/F1-2023/EventData2023.cs index fb35943..c626dbb 100644 --- a/F1Server.Core/Packets/Data/F1-2023/EventData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/EventData2023.cs @@ -21,14 +21,10 @@ public EventData2023() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } = string.Empty; - /// - /// Event details - /// + /// public IEventDataDetailsBase EventDetails { get; } #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2023/EventDataDetails2023.cs b/F1Server.Core/Packets/Data/F1-2023/EventDataDetails2023.cs index a9de920..385ffd1 100644 --- a/F1Server.Core/Packets/Data/F1-2023/EventDataDetails2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/EventDataDetails2023.cs @@ -10,94 +10,58 @@ internal class EventDataDetails2023 : EventDataDetails2019, IEventDataDetails202 { #region IEventDataDetails2023 - /// - /// Type of penalty - /// + /// public PenaltyType PenaltyType { get; set; } - /// - /// Type of infringement - /// + /// public InfringementType PenaltyInfringementType { get; set; } - /// - /// Other vehicle index - /// + /// public ushort PenaltyOtherVehicleIndex { get; set; } - /// - /// Time gained or time spent doing action in seconds - /// + /// public ushort PenaltyTimeGained { get; set; } - /// - /// Lap of penalty occurred on - /// + /// public ushort PenaltyLapNumber { get; set; } - /// - /// Number of places gained by this penalty - /// + /// public ushort PenaltyPlacesGained { get; set; } - /// - /// Top speed achieved in km/h - /// + /// public float TopSpeed { get; set; } - /// - /// Overall fastest speed in session - /// + /// public bool IsOverallFastestInSession { get; set; } - /// - /// Fastest speed for driver in session - /// + /// public bool IsDriverFastestInSession { get; set; } - /// - /// Fastest id of car in session - /// + /// public ushort FastestVehicleIndexInSession { get; set; } - /// - /// Speed of the vehicle that is the fastest in session - /// + /// public float FastestSpeedInSession { get; set; } - /// - /// Number of lights showing - /// + /// public ushort StartLightsNumbers { get; set; } - /// - /// Frame identifier flashed back - /// + /// public uint FlashbackFrame { get; set; } - /// - /// Session time flashed back - /// + /// public float FlashbackSessionTime { get; set; } - /// - /// Bit flags specifying which buttons are being pressed - /// + /// public uint ButtonsTriggered { get; set; } - /// - /// Vehicle index of the vehicle overtaking - /// + /// public ushort OvertakingVehicleIndex { get; set; } - /// - /// Vehicle index of vehicle being overtaken - /// + /// public ushort BeingOvertakenVehicleIndex { get; set; } - /// - /// Red flag shown - /// + /// public bool IsRedFlag { get; set; } #endregion // IEventDataDetails2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/FinalClassificationCarData2023.cs b/F1Server.Core/Packets/Data/F1-2023/FinalClassificationCarData2023.cs index cdf5ae5..3dd9fee 100644 --- a/F1Server.Core/Packets/Data/F1-2023/FinalClassificationCarData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/FinalClassificationCarData2023.cs @@ -24,78 +24,50 @@ public FinalClassificationCarData2023() #region IFinalClassificationCarBase - /// - /// Finishing position - /// + /// public ushort Position { get; set; } - /// - /// Number of laps completed - /// + /// public ushort LapsCompleted { get; set; } - /// - /// Grid position of the car - /// + /// public ushort GridPosition { get; set; } - /// - /// Number of points scored - /// + /// public ushort Points { get; set; } - /// - /// Number of pit stops made - /// + /// public ushort PitStops { get; set; } - /// - /// Result status - /// + /// public ResultStatus ResultStatus { get; set; } - /// - /// Best lap time of the session in milliseconds - /// + /// public uint BestLapTimeInMs { get; set; } - /// - /// Total race time in seconds without penalties - /// + /// public double TotalRaceTime { get; set; } - /// - /// Total penalties accumulated in seconds - /// + /// public ushort PenaltiesTime { get; set; } - /// - /// Number of penalties applied to this driver - /// + /// public ushort NumPenalties { get; set; } - /// - /// Number of tyre stints up to maximum - /// + /// public ushort NumTyreStints { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort[] TyreStintsActual { get; } - /// - /// Visual tyre stints used by this driver - /// + /// public ushort[] TyreStintsVisual { get; } #endregion // IFinalClassificationCarBase #region IFinalClassification2023 - /// - /// The lap number stints end on - /// + /// public ushort[] TyreStintsEndLaps { get; set; } #endregion // IFinalClassification2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/FinalClassificationData2023.cs b/F1Server.Core/Packets/Data/F1-2023/FinalClassificationData2023.cs index 3fa534d..bec6e7d 100644 --- a/F1Server.Core/Packets/Data/F1-2023/FinalClassificationData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/FinalClassificationData2023.cs @@ -26,14 +26,10 @@ public FinalClassificationData2023() #region IFinalClassificationData - /// - /// Number of cars in the final classification - /// + /// public ushort NumberOfCars { get; set; } - /// - /// Data of final classification for each car - /// + /// public IFinalClassificationCarBase[] FinalClassifications { get; } #endregion // IFinalClassificationData diff --git a/F1Server.Core/Packets/Data/F1-2023/LapData2023.cs b/F1Server.Core/Packets/Data/F1-2023/LapData2023.cs index 8241e6f..f04a770 100644 --- a/F1Server.Core/Packets/Data/F1-2023/LapData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/LapData2023.cs @@ -10,158 +10,98 @@ public class LapData2023 : ILapData2023 { #region ILapData2023 - /// - /// Last lap time in milliseconds - /// + /// public uint LastLapTime { get; set; } - /// - /// Current lap time in milliseconds - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 1 whole minutes part - /// + /// public ushort Sector1TimeMinutes { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 2 whole minutes part - /// + /// public ushort Sector2TimeMinutes { get; set; } - /// - /// Delta to car in front in milliseconds - /// + /// public ushort DeltaToCarInFront { get; set; } - /// - /// Delta to race leader in milliseconds - /// + /// public ushort DeltaToRaceLeader { get; set; } - /// - /// Number of pit stops - /// + /// public ushort NumberPitStops { get; set; } - /// - /// Accumulated number of warnings - /// + /// public ushort Warnings { get; set; } - /// - /// Accumulated number of corner cutting warnings - /// + /// public ushort CornerCuttingWarnings { get; set; } - /// - /// Number of drive through penalties left to serve - /// + /// public ushort NumberUnservedDriveThroughPens { get; set; } - /// - /// Number of stop and go penalties left to serve - /// + /// public ushort NumberUnservedStopAndGoPenalties { get; set; } - /// - /// Pit lane timing active flag - /// + /// public bool IsPitLaneTimerActive { get; set; } - /// - /// Pit lane time in lane in milliseconds, only if is active - /// + /// public ushort PitLaneTimeInLane { get; set; } - /// - /// Time of actual pit stop in milliseconds - /// + /// public ushort PitStopTimer { get; set; } - /// - /// Flag if the car should serve a penalty at this stop - /// + /// public bool PitStopShouldServePenalty { get; set; } #endregion // ILapData2023 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => GridPosition == 0 && CurrentLapTime == 0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2023/LapDataComplete2023.cs b/F1Server.Core/Packets/Data/F1-2023/LapDataComplete2023.cs index 44cfc53..be9b9a3 100644 --- a/F1Server.Core/Packets/Data/F1-2023/LapDataComplete2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/LapDataComplete2023.cs @@ -26,23 +26,17 @@ public LapDataComplete2023() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; } #endregion // ILapDataComplete #region ILapDataComplete2023 - /// - /// Index of personal best car in time trial (255 - invalid) - /// + /// public ushort TimeTrialPersonalBestCarIndex { get; set; } - /// - /// Index of rival car in time trial (255 - invalid) - /// + /// public ushort TimeTrialRivalCarIndex { get; set; } #endregion // ILapDataComplete2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/ParticipantData2023.cs b/F1Server.Core/Packets/Data/F1-2023/ParticipantData2023.cs index 4f400d2..6752b4d 100644 --- a/F1Server.Core/Packets/Data/F1-2023/ParticipantData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/ParticipantData2023.cs @@ -10,67 +10,45 @@ public class ParticipantData2023 : IParticipantData2023 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } = string.Empty; - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase #region IParticipantData2021 - /// - /// Identifier for network players - /// + /// public ushort NetworkId { get; set; } - /// - /// Is my team? - /// + /// public bool IsMyTeam { get; set; } #endregion // IParticipantData2021 #region IParticipantData2023 - /// - /// Players show online name setting - /// + /// public bool IsShowOnlineNames { get; set; } - /// - /// Platform of player - /// + /// public Platforms Platform { get; set; } #endregion // IParticipantData2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/ParticipantsData2023.cs b/F1Server.Core/Packets/Data/F1-2023/ParticipantsData2023.cs index fe44ca9..fcf0d14 100644 --- a/F1Server.Core/Packets/Data/F1-2023/ParticipantsData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/ParticipantsData2023.cs @@ -26,14 +26,10 @@ public ParticipantsData2023() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2023/SessionData2023.cs b/F1Server.Core/Packets/Data/F1-2023/SessionData2023.cs index 3a51163..3e32359 100644 --- a/F1Server.Core/Packets/Data/F1-2023/SessionData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/SessionData2023.cs @@ -24,275 +24,173 @@ public SessionData2023(int forecastSamples = 56) #region ISessionDataBase - /// - /// Is session recordable? Network games or time trial are not - /// + /// public bool IsRecordable { get; set; } - /// - /// Weather condition - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Track temperature - /// + /// public short TrackTemperature { get; set; } - /// - /// Air temperature - /// + /// public short AirTemperature { get; set; } - /// - /// Total laps - /// + /// public ushort TotalLaps { get; set; } - /// - /// Length of track - /// + /// public int TrackLength { get; set; } - /// - /// Session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Track id, -1 when unknown - /// + /// public short TrackId { get; set; } - /// - /// Name of the track - /// + /// public string TrackName { get; set; } - /// - /// Formula type - F1 and so on - /// + /// public Formula FormulaType { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Duration of current session - /// + /// public int SessionDuration { get; set; } - /// - /// Pit speed limit - /// + /// public ushort PitSpeedLimit { get; set; } - /// - /// Flag if game is paused - /// + /// public bool IsGamePaused { get; set; } - /// - /// Flag if user is spectating - /// + /// public bool IsSpectating { get; set; } - /// - /// Car index spectating - /// + /// public ushort SpectatorCarIndex { get; set; } - /// - /// SLI Pro support - /// + /// public bool IsSliProNativeSupport { get; set; } - /// - /// Number of marshal zones - /// + /// public ushort NumberOfMarshalZones { get; set; } - /// - /// Marshal zone data - /// + /// public MarshalZone[] MarshalZones { get; } - /// - /// Safety car status - /// + /// public SafetyCarStatus SafetyCar { get; set; } - /// - /// Online or offline - /// + /// public bool IsNetworkGame { get; set; } #endregion // ISessionDataBase #region ISessionData2020 - /// - /// Number of weather samples to follow - /// + /// public ushort NumberWeatherForecastSamples { get; set; } - /// - /// Weather forecast data - /// + /// public WeatherForecastSample[] WeatherForecastSamples { get; } #endregion // ISessionData2020 #region ISessionData2021 - /// - /// Forecast accuracy - /// + /// public ForecastAccuracy ForecastAccuracy { get; set; } - /// - /// AI difficulty rating (0 - 110) - /// + /// public ushort AiDifficulty { get; set; } - /// - /// Identifier for season - persists across saves - /// + /// public uint SeasonLinkIdentifier { get; set; } - /// - /// Identifier for weekend - persists across saves - /// + /// public uint WeekendLinkIdentifier { get; set; } - /// - /// Identifier for session - persists across saves - /// + /// public uint SessionLinkIdentifier { get; set; } - /// - /// Ideal lap to pit on current strategy - /// + /// public ushort PitStopWindowIdealLap { get; set; } - /// - /// Latest lap to pit on current strategy - /// + /// public ushort PitStopWindowLatestLap { get; set; } - /// - /// Predicted position to rejoin at - /// + /// public ushort PitStopRejoinPosition { get; set; } - /// - /// Steering assist is on or off - /// + /// public bool IsSteeringAssist { get; set; } - /// - /// Braking assist setting - /// + /// public BrakingAssist BrakingAssist { get; set; } - /// - /// Gearbox assist setting - /// + /// public GearboxAssist GearboxAssist { get; set; } - /// - /// Pit assist on or off - /// + /// public bool IsPitAssist { get; set; } - /// - /// Pit release assist on or off - /// + /// public bool IsPitReleaseAssist { get; set; } - /// - /// ERS assist on or off - /// + /// public bool IsERSAssist { get; set; } - /// - /// DRS assist on or off - /// + /// public bool IsDRSAssist { get; set; } - /// - /// Dynamic race line settings - /// + /// public DynamicRaceLine DynamicRaceLine { get; set; } - /// - /// Type of dynamic race line - /// + /// public DynamicRaceLineType DynamicRaceLineType { get; set; } #endregion // ISessionData2021 #region ISessionData2022 - /// - /// Game mode - /// + /// public GameMode GameMode { get; set; } - /// - /// Ruleset - /// + /// public RuleSet RuleSet { get; set; } - /// - /// Local time of day - minutes since midnight - /// + /// public uint LocalTimeOfDay { get; set; } - /// - /// Length of session - /// + /// public SessionLength SessionLength { get; set; } #endregion // ISessionData2022 #region ISessionData2023 - /// - /// Players speed unit - /// + /// public SpeedUnits SpeedUnit { get; set; } - /// - /// Players temperature unit - /// + /// public TemperatureUnits TemperatureUnit { get; set; } - /// - /// Secondary players speed unit - /// + /// public SpeedUnits SpeedUnitSecondaryPlayer { get; set; } - /// - /// Secondary players temperature unit - /// + /// public TemperatureUnits TemperatureUnitSecondaryPlayer { get; set; } - /// - /// Number of safety car periods during session - /// + /// public uint SafetyCarPeriods { get; set; } - /// - /// Number of virtual safety car periods during session - /// + /// public uint VirtualSafetyCarPeriods { get; set; } - /// - /// Number of red flags during session - /// + /// public uint RedFlags { get; set; } #endregion // ISessionData2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryData2023.cs b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryData2023.cs index 09e02da..dc2e537 100644 --- a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryData2023.cs @@ -32,49 +32,31 @@ public SessionHistoryData2023() #region ISessionHistoryDataBase - /// - /// Index of car - /// + /// public ushort CarIndex { get; set; } - /// - /// Number of laps in the data (including partial data of current lap) - /// + /// public ushort NumberOfLaps { get; set; } - /// - /// Number of tyre stints in the data - /// + /// public ushort NumberOfTyreStints { get; set; } - /// - /// Number of the lap on which the best lap time was achieved - /// + /// public ushort BestLapNumber { get; set; } - /// - /// Number of lap with best sector 1 time - /// + /// public ushort BestSector1LapNumber { get; set; } - /// - /// Number of lap with best sector 2 time - /// + /// public ushort BestSector2LapNumber { get; set; } - /// - /// Number of lap with best sector 3 time - /// + /// public ushort BestSector3LapNumber { get; set; } - /// - /// Array (max 100) lap data - /// + /// public ILapHistoryDataBase[] LapHistory { get; } - /// - /// History data of tyre stints - /// + /// public ITyreStintHistoryDataBase[] TyreStintHistory { get; } #endregion // ISessionHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryLapData2023.cs b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryLapData2023.cs index a5d3f64..78e2614 100644 --- a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryLapData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryLapData2023.cs @@ -9,68 +9,44 @@ public class SessionHistoryLapData2023 : ILapHistoryDataBase, ILapHistoryData202 { #region ILapHistoryDataBase - /// - /// Lap time in milliseconds - /// + /// public uint LapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 3 time in milliseconds - /// + /// public ushort Sector3Time { get; set; } - /// - /// Valid lap flag (0x01 - lap valid, 0x02 - sector 1 valid, 0x04 - sector 2 valid, 0x08 - sector 3 valid) - /// + /// public ushort LapValidFlag { get; set; } - /// - /// Is sector 1 time valid? - /// + /// public bool IsValidSector1 => (LapValidFlag & 0x02) == 0x02; - /// - /// Is sector 2 time valid? - /// + /// public bool IsValidSector2 => (LapValidFlag & 0x04) == 0x04; - /// - /// Is sector 3 time valid? - /// + /// public bool IsValidSector3 => (LapValidFlag & 0x08) == 0x08; - /// - /// Is lap time valid? - /// + /// public bool IsLapTimeValid => (LapValidFlag & 0x01) == 0x01; #endregion // ILapHistoryDataBase #region ILapHistoryData2023 - /// - /// Sector 1 whole minute part - /// + /// public ushort Sector1TimeMinutes { get; set; } - /// - /// Sector 2 whole minute part - /// + /// public ushort Sector2TimeMinutes { get; set; } - /// - /// Sector 3 whole minute part - /// + /// public ushort Sector3TimeMinutes { get; set; } #endregion // ILapHistoryData2023 diff --git a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryTyreStintData2023.cs b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryTyreStintData2023.cs index 6424752..c4b6914 100644 --- a/F1Server.Core/Packets/Data/F1-2023/SessionHistoryTyreStintData2023.cs +++ b/F1Server.Core/Packets/Data/F1-2023/SessionHistoryTyreStintData2023.cs @@ -9,19 +9,13 @@ internal class SessionHistoryTyreStintData2023 : ITyreStintHistoryDataBase { #region ITyreStintHistoryDataBase - /// - /// Lap the tyre usage ends on (255 of current tyre) - /// + /// public ushort EndLap { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort TyreActualCompound { get; set; } - /// - /// Visual tyres used by this driver - /// + /// public ushort TyreVisualCompound { get; set; } #endregion // ITyreStintHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2024/CarStatus2024.cs b/F1Server.Core/Packets/Data/F1-2024/CarStatus2024.cs index e211c15..faaa90c 100644 --- a/F1Server.Core/Packets/Data/F1-2024/CarStatus2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/CarStatus2024.cs @@ -28,9 +28,7 @@ public CarStatus2024() #region ICarStatusBase - /// - /// Car Status of all cars - /// + /// public ICarStatusDataBase[] CarStatusData { get; } #endregion // ICarStatusBase diff --git a/F1Server.Core/Packets/Data/F1-2024/CarStatusData2024.cs b/F1Server.Core/Packets/Data/F1-2024/CarStatusData2024.cs index d0d7dd4..a15903d 100644 --- a/F1Server.Core/Packets/Data/F1-2024/CarStatusData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/CarStatusData2024.cs @@ -10,133 +10,83 @@ public class CarStatusData2024 : ICarStatusData2024 { #region ICarStatusDataBase - /// - /// Traction control 0 - off - 2 - high - /// + /// public ushort TractionControl { get; set; } - /// - /// Anti lock brakes - 0 - off - 1 - on - /// + /// public ushort AntiLockBrakes { get; set; } - /// - /// Fuel mix - 0 - lean - 1 - standard - 2 - rich - 3 - max - /// + /// public ushort FuelMix { get; set; } - /// - /// Front brake bias in percentage - /// + /// public ushort FrontBrakeBias { get; set; } - /// - /// Pit limiter status - 0 - off - 1 - on - /// + /// public ushort PitLimiterStatus { get; set; } - /// - /// Current fuel mass - /// + /// public float FuelInTank { get; set; } - /// - /// Fuel capacity - /// + /// public float FuelCapacity { get; set; } - /// - /// Fuel remaining in terms of laps (value on MFD) - /// + /// public float FuelRemainingLaps { get; set; } - /// - /// Cars max RPM, point of rev limiter - /// + /// public uint MaxRPM { get; set; } - /// - /// Cars idle RPM - /// + /// public uint IdleRPM { get; set; } - /// - /// Maximum number of gears - /// + /// public ushort MaxGears { get; set; } - /// - /// DRS allowed - 0 - not allowed - 1 - allowed - -1 - unknown - /// + /// public short DRSAllowed { get; set; } - /// - /// Tyre compound - /// + /// public ushort ActualTyreCompound { get; set; } - /// - /// Visual tyre compound - can be different from actual compound - /// + /// public VisualTyreCompound VisualTyreCompound { get; set; } - /// - /// FIA flags - /// + /// public VehicleFiaFlagColor FiaFlags { get; set; } - /// - /// ERS energy store in Joules - /// + /// public float ERSStoreEnergy { get; set; } - /// - /// ERS deployment mode - 0 - none - 1 - medium - 2 - hotlap - 3 - overtake - /// + /// public ushort ERSDeployMode { get; set; } - /// - /// ERS energy harvested this lap by MGU-K - /// + /// public float ERSHarvestedThisLapMGUK { get; set; } - /// - /// ERS energy harvested this lap by MGU-H - /// + /// public float ERSHarvestedThisLapMGUH { get; set; } - /// - /// ERS energy deployed this lap - /// + /// public float ERSDeployedThisLap { get; set; } #endregion // ICarStatusDataBase #region ICarStatusData2023 - /// - /// Engine power output of ICE (W) - /// + /// public float EnginePowerICE { get; set; } - /// - /// Engine power output of MGU-K (W) - /// + /// public float EnginePowerMGUK { get; set; } - /// - /// DRS activation distance - 0 - DRS not available - non-zero - DRS will be available - /// + /// public int DRSActivationDistance { get; set; } - /// - /// Age of laps of the current set of tyres - /// + /// public ushort TyresAgeLaps { get; set; } - /// - /// Whether the car is paused in a network game - /// + /// public ushort NetworkPaused { get; set; } #endregion // ICarStatusData2023 diff --git a/F1Server.Core/Packets/Data/F1-2024/CarTelemetry2024.cs b/F1Server.Core/Packets/Data/F1-2024/CarTelemetry2024.cs index 229f08e..72443b1 100644 --- a/F1Server.Core/Packets/Data/F1-2024/CarTelemetry2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/CarTelemetry2024.cs @@ -35,28 +35,20 @@ public CarTelemetry2024() #region ICarTelemetry2024 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2024 #region ICarTelemetryBase - /// - /// Car telemetry of all cars - /// + /// public ICarTelemetryDataBase[] CarTelemetryData { get; } #endregion // ICarTelemetryBase diff --git a/F1Server.Core/Packets/Data/F1-2024/CarTelemetryData2024.cs b/F1Server.Core/Packets/Data/F1-2024/CarTelemetryData2024.cs index 6f4ed04..c3962fc 100644 --- a/F1Server.Core/Packets/Data/F1-2024/CarTelemetryData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/CarTelemetryData2024.cs @@ -9,88 +9,56 @@ public class CarTelemetryData2024 : ICarTelemetryData2024 { #region ICarTelemetryDataBase - /// - /// Speed - /// + /// public ushort Speed { get; set; } - /// - /// Amount of throttle applied (0.0 - 1.0) - /// + /// public float Throttle { get; set; } - /// - /// Steering (-1.0 [full left] - 1.0 [full right]) - /// + /// public float Steer { get; set; } - /// - /// Amount of brake applied (0.0 - 1.0) - /// + /// public float Brake { get; set; } - /// - /// Amount of clutch applied (0 - 100) - /// + /// public ushort Clutch { get; set; } - /// - /// Current gear (1-8, N = 0, R = -1) - /// + /// public short Gear { get; set; } - /// - /// Engine RPM - /// + /// public ushort EngineRPM { get; set; } - /// - /// DRS active or not - /// + /// public bool IsDRS { get; set; } - /// - /// Rev lights indicator in percent - /// + /// public ushort RevLightsIndicator { get; set; } - /// - /// Brakes temperatures (celsius) - /// + /// public Temperature BrakesTemperature { get; set; } - /// - /// Tyres surface temperature (celsius) - /// + /// public Temperature TyresSurfaceTemperature { get; set; } - /// - /// Tyres inner temperature (celsius) - /// + /// public Temperature TyresInnerTemperature { get; set; } - /// - /// Engine temperature (celsius) - /// + /// public ushort EngineTemperature { get; set; } - /// - /// Tyres pressure - /// + /// public TyresPressure TyresPressure { get; set; } - /// - /// Type of surface - /// + /// public WheelSurface SurfaceType { get; set; } #endregion // ICarTelemetryDataBase #region ICarTelemetryData2023 - /// - /// Rev lights bit - /// + /// public ushort RevLightsBitValue { get; set; } #endregion // ICarTelemetryData2023 diff --git a/F1Server.Core/Packets/Data/F1-2024/EventData2024.cs b/F1Server.Core/Packets/Data/F1-2024/EventData2024.cs index 6e49592..c95291c 100644 --- a/F1Server.Core/Packets/Data/F1-2024/EventData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/EventData2024.cs @@ -21,14 +21,10 @@ public EventData2024() #region IEventDataBase - /// - /// Event code - /// + /// public string EventCode { get; set; } = string.Empty; - /// - /// Event details - /// + /// public IEventDataDetailsBase EventDetails { get; } #endregion // IEventDataBase diff --git a/F1Server.Core/Packets/Data/F1-2024/EventDataDetails2024.cs b/F1Server.Core/Packets/Data/F1-2024/EventDataDetails2024.cs index bdc291e..98bb51a 100644 --- a/F1Server.Core/Packets/Data/F1-2024/EventDataDetails2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/EventDataDetails2024.cs @@ -10,114 +10,70 @@ internal class EventDataDetails2024 : EventDataDetails2019, IEventDataDetails202 { #region IEventDataDetails2024 - /// - /// Type of penalty - /// + /// public PenaltyType PenaltyType { get; set; } - /// - /// Type of infringement - /// + /// public InfringementType PenaltyInfringementType { get; set; } - /// - /// Other vehicle index - /// + /// public ushort PenaltyOtherVehicleIndex { get; set; } - /// - /// Time gained or time spent doing action in seconds - /// + /// public ushort PenaltyTimeGained { get; set; } - /// - /// Lap of penalty occurred on - /// + /// public ushort PenaltyLapNumber { get; set; } - /// - /// Number of places gained by this penalty - /// + /// public ushort PenaltyPlacesGained { get; set; } - /// - /// Top speed achieved in km/h - /// + /// public float TopSpeed { get; set; } - /// - /// Overall fastest speed in session - /// + /// public bool IsOverallFastestInSession { get; set; } - /// - /// Fastest speed for driver in session - /// + /// public bool IsDriverFastestInSession { get; set; } - /// - /// Fastest id of car in session - /// + /// public ushort FastestVehicleIndexInSession { get; set; } - /// - /// Speed of the vehicle that is the fastest in session - /// + /// public float FastestSpeedInSession { get; set; } - /// - /// Number of lights showing - /// + /// public ushort StartLightsNumbers { get; set; } - /// - /// Frame identifier flashed back - /// + /// public uint FlashbackFrame { get; set; } - /// - /// Session time flashed back - /// + /// public float FlashbackSessionTime { get; set; } - /// - /// Bit flags specifying which buttons are being pressed - /// + /// public uint ButtonsTriggered { get; set; } - /// - /// Vehicle index of the vehicle overtaking - /// + /// public ushort OvertakingVehicleIndex { get; set; } - /// - /// Vehicle index of vehicle being overtaken - /// + /// public ushort BeingOvertakenVehicleIndex { get; set; } - /// - /// Red flag shown - /// + /// public bool IsRedFlag { get; set; } - /// - /// Type of safety car - /// + /// public SafetyCarStatus SafetyCarType { get; set; } - /// - /// Safety car event type - /// + /// public SafetyCarEventType SafetyCarEvent { get; set; } - /// - /// Vehicle index of the first vehicle involved in the collision - /// + /// public ushort CollisionVehicleIndex1 { get; set; } - /// - /// Vehicle index of the second vehicle involved in the collision - /// + /// public ushort CollisionVehicleIndex2 { get; set; } #endregion // IEventDataDetails2024 diff --git a/F1Server.Core/Packets/Data/F1-2024/FinalClassificationCarData2024.cs b/F1Server.Core/Packets/Data/F1-2024/FinalClassificationCarData2024.cs index 9655ed9..dc08e02 100644 --- a/F1Server.Core/Packets/Data/F1-2024/FinalClassificationCarData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/FinalClassificationCarData2024.cs @@ -24,78 +24,50 @@ public FinalClassificationCarData2024() #region IFinalClassificationCarBase - /// - /// Finishing position - /// + /// public ushort Position { get; set; } - /// - /// Number of laps completed - /// + /// public ushort LapsCompleted { get; set; } - /// - /// Grid position of the car - /// + /// public ushort GridPosition { get; set; } - /// - /// Number of points scored - /// + /// public ushort Points { get; set; } - /// - /// Number of pit stops made - /// + /// public ushort PitStops { get; set; } - /// - /// Result status - /// + /// public ResultStatus ResultStatus { get; set; } - /// - /// Best lap time of the session in milliseconds - /// + /// public uint BestLapTimeInMs { get; set; } - /// - /// Total race time in seconds without penalties - /// + /// public double TotalRaceTime { get; set; } - /// - /// Total penalties accumulated in seconds - /// + /// public ushort PenaltiesTime { get; set; } - /// - /// Number of penalties applied to this driver - /// + /// public ushort NumPenalties { get; set; } - /// - /// Number of tyre stints up to maximum - /// + /// public ushort NumTyreStints { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort[] TyreStintsActual { get; } - /// - /// Visual tyre stints used by this driver - /// + /// public ushort[] TyreStintsVisual { get; } #endregion // IFinalClassificationCarBase #region IFinalClassification2024 - /// - /// The lap number stints end on - /// + /// public ushort[] TyreStintsEndLaps { get; set; } #endregion // IFinalClassification2024 diff --git a/F1Server.Core/Packets/Data/F1-2024/FinalClassificationData2024.cs b/F1Server.Core/Packets/Data/F1-2024/FinalClassificationData2024.cs index cf74ab9..16e60c4 100644 --- a/F1Server.Core/Packets/Data/F1-2024/FinalClassificationData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/FinalClassificationData2024.cs @@ -26,14 +26,10 @@ public FinalClassificationData2024() #region IFinalClassificationData - /// - /// Number of cars in the final classification - /// + /// public ushort NumberOfCars { get; set; } - /// - /// Data of final classification for each car - /// + /// public IFinalClassificationCarBase[] FinalClassifications { get; } #endregion // IFinalClassificationData diff --git a/F1Server.Core/Packets/Data/F1-2024/LapData2024.cs b/F1Server.Core/Packets/Data/F1-2024/LapData2024.cs index 108d4df..efb3d49 100644 --- a/F1Server.Core/Packets/Data/F1-2024/LapData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/LapData2024.cs @@ -10,184 +10,114 @@ public class LapData2024 : ILapData2023, ILapData2024 { #region ILapData2023 - /// - /// Last lap time in milliseconds - /// + /// public uint LastLapTime { get; set; } - /// - /// Current lap time in milliseconds - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 1 whole minutes part - /// + /// public ushort Sector1TimeMinutes { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 2 whole minutes part - /// + /// public ushort Sector2TimeMinutes { get; set; } - /// - /// Milliseconds part of the delta to the car in front (max representable value 59999), the whole - /// minutes part is held separately in - /// + /// public ushort DeltaToCarInFront { get; set; } - /// - /// Milliseconds part of the delta to the race leader (max representable value 59999), the whole - /// minutes part is held separately in - /// + /// public ushort DeltaToRaceLeader { get; set; } - /// - /// Number of pit stops - /// + /// public ushort NumberPitStops { get; set; } - /// - /// Accumulated number of warnings - /// + /// public ushort Warnings { get; set; } - /// - /// Accumulated number of corner cutting warnings - /// + /// public ushort CornerCuttingWarnings { get; set; } - /// - /// Number of drive through penalties left to serve - /// + /// public ushort NumberUnservedDriveThroughPens { get; set; } - /// - /// Number of stop and go penalties left to serve - /// + /// public ushort NumberUnservedStopAndGoPenalties { get; set; } - /// - /// Pit lane timing active flag - /// + /// public bool IsPitLaneTimerActive { get; set; } - /// - /// Pit lane time in lane in milliseconds, only if is active - /// + /// public ushort PitLaneTimeInLane { get; set; } - /// - /// Time of actual pit stop in milliseconds - /// + /// public ushort PitStopTimer { get; set; } - /// - /// Flag if the car should serve a penalty at this stop - /// + /// public bool PitStopShouldServePenalty { get; set; } #endregion // ILapData2023 #region ILapData2024 - /// - /// Time delta to car in front whole minute part - /// + /// public ushort DeltaToCarInFrontMinutes { get; set; } - /// - /// Time delta to race leader whole minute part - /// + /// public ushort DeltaToRaceLeaderMinutes { get; set; } - /// - /// Fastest speed through speed trap for this car in kmph - /// + /// public float SpeedTrapFastestSpeed { get; set; } - /// - /// Lap no the fastest speed was achieved, 255 = not set - /// + /// public ushort SpeedTrapFastestLap { get; set; } #endregion // ILapData2024 #region ILapDataBase - /// - /// Flag if there is no car available (is nothing from the game) - /// + /// public bool IsEmpty => GridPosition == 0 && CurrentLapTime == 0; - /// - /// Distance vehicle is around current lap in meters, negative is finish line not crossed yet - /// + /// public float LapDistance { get; set; } - /// - /// Total distance travelled in session in meters, can be negative like - /// + /// public float TotalDistance { get; set; } - /// - /// Delta in seconds for safety car - /// + /// public float SafetyCarDelta { get; set; } - /// - /// Actual race position - /// + /// public ushort CarPosition { get; set; } - /// - /// Current lap number - /// + /// public ushort CurrentLapNumber { get; set; } - /// - /// Current pit status - /// + /// public PitStatus CurrentPitStatus { get; set; } - /// - /// Current sector - /// + /// public Sector CurrentSector { get; set; } - /// - /// Is current lap invalid? - /// + /// public bool IsCurrentLapInvalid { get; set; } - /// - /// Accumulated time penalties in seconds to be added - /// + /// public ushort TimePenalties { get; set; } - /// - /// Grid start position - /// + /// public ushort GridPosition { get; set; } - /// - /// Current driver status - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current result status - /// + /// public ResultStatus CurrentResultStatus { get; set; } #endregion // ILapDataBase diff --git a/F1Server.Core/Packets/Data/F1-2024/LapDataComplete2024.cs b/F1Server.Core/Packets/Data/F1-2024/LapDataComplete2024.cs index 8efcf19..bacf3b2 100644 --- a/F1Server.Core/Packets/Data/F1-2024/LapDataComplete2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/LapDataComplete2024.cs @@ -26,23 +26,17 @@ public LapDataComplete2024() #region ILapDataComplete - /// - /// Array with all lap data information of all cars - /// + /// public ILapDataBase[] LapData { get; } #endregion // ILapDataComplete #region ILapDataComplete2023 - /// - /// Index of personal best car in time trial (255 - invalid) - /// + /// public ushort TimeTrialPersonalBestCarIndex { get; set; } - /// - /// Index of rival car in time trial (255 - invalid) - /// + /// public ushort TimeTrialRivalCarIndex { get; set; } #endregion // ILapDataComplete2023 diff --git a/F1Server.Core/Packets/Data/F1-2024/ParticipantData2024.cs b/F1Server.Core/Packets/Data/F1-2024/ParticipantData2024.cs index 8c3f9b0..0a68473 100644 --- a/F1Server.Core/Packets/Data/F1-2024/ParticipantData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/ParticipantData2024.cs @@ -10,76 +10,52 @@ public class ParticipantData2024 : IParticipantData2024 { #region IParticipantDataBase - /// - /// Is AI controlled or human - /// + /// public bool IsAIControlled { get; set; } - /// - /// Id of driver - /// + /// public ushort DriverId { get; set; } - /// - /// Id of team - /// + /// public ushort TeamId { get; set; } - /// - /// Race number of the car - /// + /// public ushort RaceNumber { get; set; } - /// - /// Nationality of the driver - /// + /// public ushort Nationality { get; set; } - /// - /// Name of the driver - /// + /// public string DriverName { get; set; } = string.Empty; - /// - /// Is telemetry restricted or public? - /// + /// public bool IsPublicTelemetry { get; set; } #endregion // IParticipantDataBase #region IParticipantData2021 - /// - /// Identifier for network players - /// + /// public ushort NetworkId { get; set; } - /// - /// Is my team? - /// + /// public bool IsMyTeam { get; set; } #endregion // IParticipantData2021 #region IParticipantData2023 - /// - /// Players show online name setting - /// + /// public bool IsShowOnlineNames { get; set; } - /// - /// Platform of player - /// + /// public Platforms Platform { get; set; } #endregion // IParticipantData2023 #region IParticipantData2024 - /// - /// F1 World tech level - /// + /// public ushort TechLevel { get; set; } #endregion // IParticipantData2024 diff --git a/F1Server.Core/Packets/Data/F1-2024/ParticipantsData2024.cs b/F1Server.Core/Packets/Data/F1-2024/ParticipantsData2024.cs index 6e8d5ba..e7737b3 100644 --- a/F1Server.Core/Packets/Data/F1-2024/ParticipantsData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/ParticipantsData2024.cs @@ -26,14 +26,10 @@ public ParticipantsData2024() #region IParticipantsBase - /// - /// Active cars - /// + /// public ushort ActiveCars { get; set; } - /// - /// Data about participants in current session - /// + /// public IParticipantDataBase[] Participants { get; } #endregion // IParticipantsBase diff --git a/F1Server.Core/Packets/Data/F1-2024/SessionData2024.cs b/F1Server.Core/Packets/Data/F1-2024/SessionData2024.cs index f2ae87f..c14deb6 100644 --- a/F1Server.Core/Packets/Data/F1-2024/SessionData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/SessionData2024.cs @@ -23,144 +23,88 @@ public SessionData2024() #region ISessionData2024 - /// - /// Equal car performance? - /// + /// public bool EqualCarPerformance { get; set; } - /// - /// Recovery mode - /// + /// public RecoveryMode RecoveryMode { get; set; } - /// - /// Flashback limit - /// + /// public FlashbackLimit FlashbackLimit { get; set; } - /// - /// Realistic (true) surface type or simplified (false) - /// + /// public bool IsRealisticSurfaceType { get; set; } - /// - /// Hard low fuel mode (true) or easy (false) - /// + /// public bool IsHardLowFuelMode { get; set; } - /// - /// Assisted race starts or manual (false)? - /// + /// public bool AssistedRaceStarts { get; set; } - /// - /// Tyre temperature with carcass (true) or surface only (false) - /// + /// public bool TyreTemperatureWithCarcass { get; set; } - /// - /// With formation lap? - /// + /// public bool PitLaneTyreSimulation { get; set; } - /// - /// Car damage - /// + /// public CarDamage CarDamage { get; set; } - /// - /// Car damage rate - /// + /// public CarDamageRate CarDamageRate { get; set; } - /// - /// Collions - /// + /// public Collisions Collisions { get; set; } - /// - /// Collisions off for first lap only - /// + /// public bool CollisionsOffForFirstLapOnly { get; set; } - /// - /// Unsafe pit release (multi player) - /// + /// public bool MultiPlayerUnsafePitRelease { get; set; } - /// - /// Off for griefing (multi player) - /// + /// public bool MultiPlayerOffForGriefing { get; set; } - /// - /// Strict corner cutting stringency or regular - /// + /// public bool IsStrictCornerCuttingStringency { get; set; } - /// - /// Parc ferme rules? - /// + /// public bool ParcFermeRules { get; set; } - /// - /// Pit stop experience - /// + /// public PitStopExperience PitStopExperience { get; set; } - /// - /// Safety car - /// + /// public SafetyCarAppearance SafetyCarAppearance { get; set; } - /// - /// Immersive safety car experience or broadcast? - /// + /// public bool IsImmersiveSafetyCarExperience { get; set; } - /// - /// With formation lap? - /// + /// public bool WithFormationLap { get; set; } - /// - /// Immersive formation lap experience or broadcast - /// + /// public bool IsImmersiveFormationLapExperience { get; set; } - /// - /// Red flags - /// + /// public RedFlagAppearance RedFlagAppearance { get; set; } - /// - /// Affects license level in solo - /// + /// public bool AffectsLicenceLevelSolo { get; set; } - /// - /// Affects license level in multi player - /// + /// public bool AffectsLicenceLevelMultiPlayer { get; set; } - /// - /// Number of sessions in weekend - /// + /// public short SessionsInWeekend { get; set; } - /// - /// List of session types to show weekend - /// + /// public SessionType[] WeekendStructure { get; } - /// - /// Distance in meters around track where sector 2 starts - /// + /// public float Sector2LapDistanceStart { get; set; } - /// - /// Distance in meters around track where sector 3 starts - /// + /// public float Sector3LapDistanceStart { get; set; } #endregion // ISessionData2024 diff --git a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryData2024.cs b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryData2024.cs index fa28bff..cae7f33 100644 --- a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryData2024.cs @@ -32,49 +32,31 @@ public SessionHistoryData2024() #region ISessionHistoryDataBase - /// - /// Index of car - /// + /// public ushort CarIndex { get; set; } - /// - /// Number of laps in the data (including partial data of current lap) - /// + /// public ushort NumberOfLaps { get; set; } - /// - /// Number of tyre stints in the data - /// + /// public ushort NumberOfTyreStints { get; set; } - /// - /// Number of the lap on which the best lap time was achieved - /// + /// public ushort BestLapNumber { get; set; } - /// - /// Number of lap with best sector 1 time - /// + /// public ushort BestSector1LapNumber { get; set; } - /// - /// Number of lap with best sector 2 time - /// + /// public ushort BestSector2LapNumber { get; set; } - /// - /// Number of lap with best sector 3 time - /// + /// public ushort BestSector3LapNumber { get; set; } - /// - /// Array (max 100) lap data - /// + /// public ILapHistoryDataBase[] LapHistory { get; } - /// - /// History data of tyre stints - /// + /// public ITyreStintHistoryDataBase[] TyreStintHistory { get; } #endregion // ISessionHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryLapData2024.cs b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryLapData2024.cs index c852936..5613d57 100644 --- a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryLapData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryLapData2024.cs @@ -9,68 +9,44 @@ public class SessionHistoryLapData2024 : ILapHistoryDataBase, ILapHistoryData202 { #region ILapHistoryDataBase - /// - /// Lap time in milliseconds - /// + /// public uint LapTime { get; set; } - /// - /// Sector 1 time in milliseconds - /// + /// public ushort Sector1Time { get; set; } - /// - /// Sector 2 time in milliseconds - /// + /// public ushort Sector2Time { get; set; } - /// - /// Sector 3 time in milliseconds - /// + /// public ushort Sector3Time { get; set; } - /// - /// Valid lap flag (0x01 - lap valid, 0x02 - sector 1 valid, 0x04 - sector 2 valid, 0x08 - sector 3 valid) - /// + /// public ushort LapValidFlag { get; set; } - /// - /// Is sector 1 time valid? - /// + /// public bool IsValidSector1 => (LapValidFlag & 0x02) == 0x02; - /// - /// Is sector 2 time valid? - /// + /// public bool IsValidSector2 => (LapValidFlag & 0x04) == 0x04; - /// - /// Is sector 3 time valid? - /// + /// public bool IsValidSector3 => (LapValidFlag & 0x08) == 0x08; - /// - /// Is lap time valid? - /// + /// public bool IsLapTimeValid => (LapValidFlag & 0x01) == 0x01; #endregion // ILapHistoryDataBase #region ILapHistoryData2023 - /// - /// Sector 1 whole minute part - /// + /// public ushort Sector1TimeMinutes { get; set; } - /// - /// Sector 2 whole minute part - /// + /// public ushort Sector2TimeMinutes { get; set; } - /// - /// Sector 3 whole minute part - /// + /// public ushort Sector3TimeMinutes { get; set; } #endregion // ILapHistoryData2023 diff --git a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryTyreStintData2024.cs b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryTyreStintData2024.cs index 7f6c305..3a0f1c1 100644 --- a/F1Server.Core/Packets/Data/F1-2024/SessionHistoryTyreStintData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/SessionHistoryTyreStintData2024.cs @@ -9,19 +9,13 @@ internal class SessionHistoryTyreStintData2024 : ITyreStintHistoryDataBase { #region ITyreStintHistoryDataBase - /// - /// Lap the tyre usage ends on (255 if current tyre) - /// + /// public ushort EndLap { get; set; } - /// - /// Actual tyres used by this driver - /// + /// public ushort TyreActualCompound { get; set; } - /// - /// Visual tyres used by this driver - /// + /// public ushort TyreVisualCompound { get; set; } #endregion // ITyreStintHistoryDataBase diff --git a/F1Server.Core/Packets/Data/F1-2024/TimeTrialData2024.cs b/F1Server.Core/Packets/Data/F1-2024/TimeTrialData2024.cs index c671411..091d614 100644 --- a/F1Server.Core/Packets/Data/F1-2024/TimeTrialData2024.cs +++ b/F1Server.Core/Packets/Data/F1-2024/TimeTrialData2024.cs @@ -23,19 +23,13 @@ public TimeTrialData2024() #region ITimeTrialDataBase - /// - /// Player session best data set - /// + /// public ITimeTrialDataSetBase PlayerSessionBestDataSet { get; } - /// - /// Personal best data set - /// + /// public ITimeTrialDataSetBase PersonalBestDataSet { get; } - /// - /// Rival data set - /// + /// public ITimeTrialDataSetBase RivalDataSet { get; } #endregion // ITimeTrialDataBase diff --git a/F1Server.Core/Packets/Data/F1-2025/CarTelemetry2025.cs b/F1Server.Core/Packets/Data/F1-2025/CarTelemetry2025.cs index f421457..8fe2a22 100644 --- a/F1Server.Core/Packets/Data/F1-2025/CarTelemetry2025.cs +++ b/F1Server.Core/Packets/Data/F1-2025/CarTelemetry2025.cs @@ -35,19 +35,13 @@ public CarTelemetry2025() #region ICarTelemetry2024 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2024 diff --git a/F1Server.Core/Packets/Data/F1-2026/CarTelemetry2026.cs b/F1Server.Core/Packets/Data/F1-2026/CarTelemetry2026.cs index 0052c6f..93abdff 100644 --- a/F1Server.Core/Packets/Data/F1-2026/CarTelemetry2026.cs +++ b/F1Server.Core/Packets/Data/F1-2026/CarTelemetry2026.cs @@ -36,19 +36,13 @@ public CarTelemetry2026() #region ICarTelemetry2024 - /// - /// Index of MFD panel open - 255 = closed - /// + /// public ushort MfdPanelIndex { get; set; } - /// - /// Index of MFD panel open (second player) - /// + /// public ushort MfdPanelIndexSecondary { get; set; } - /// - /// Suggested gear - /// + /// public ushort SuggestedGear { get; set; } #endregion // ICarTelemetry2024 diff --git a/F1Server.Data/IndependentLapData.cs b/F1Server.Data/IndependentLapData.cs index 1c58719..baca004 100644 --- a/F1Server.Data/IndependentLapData.cs +++ b/F1Server.Data/IndependentLapData.cs @@ -9,29 +9,19 @@ public class IndependentLapData : IIndependentLapData { #region IIndependentLapData - /// - /// Current lap time - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Last lap time - /// + /// public uint LastLapTime { get; set; } - /// - /// Sector 1 time - /// + /// public uint Sector1Time { get; set; } - /// - /// Sector 2 time - /// + /// public uint Sector2Time { get; set; } - /// - /// Sector 3 time - /// + /// public uint Sector3Time { get; set; } #endregion // IIndependentLapData diff --git a/F1Server.Data/LiveDriverData.cs b/F1Server.Data/LiveDriverData.cs index 5d5b65b..71f1db9 100644 --- a/F1Server.Data/LiveDriverData.cs +++ b/F1Server.Data/LiveDriverData.cs @@ -10,88 +10,56 @@ public class LiveDriverData : ILiveDriverData { #region ILiveBaseData - /// - /// Database id - /// + /// public long DbId { get; set; } #endregion // ILiveBaseData #region ILiveDriverData - /// - /// Index in game packet - /// + /// public int ArrayIndex { get; set; } - /// - /// Driver name - /// + /// public string DriverName { get; set; } - /// - /// Car number - /// + /// public int CarNumber { get; set; } - /// - /// Grid position - /// + /// public int GridPosition { get; set; } - /// - /// Car position on track - /// + /// public int CarPosition { get; set; } - /// - /// Nationality - /// + /// public string Nationality { get; set; } - /// - /// Team name - /// + /// public string TeamName { get; set; } - /// - /// Current driver status - in garage or out lap or something else - /// + /// public DriverStatus CurrentDriverStatus { get; set; } - /// - /// Current lap time in milliseconds (since F1 2020) - /// + /// public uint CurrentLapTime { get; set; } - /// - /// Fastest time needed for sector 1 in milliseconds - /// + /// public uint FastestSector1 { get; set; } - /// - /// Fastest time needed for sector 2 in milliseconds - /// + /// public uint FastestSector2 { get; set; } - /// - /// Fastest time needed for sector 3 in milliseconds - /// + /// public uint FastestSector3 { get; set; } - /// - /// Fastest lap in milliseconds - /// + /// public uint FastestLapTime { get; set; } - /// - /// Number of laps driven by this driver - /// + /// public int LapsDriven { get; set; } - /// - /// Currently used tyre type - /// + /// public VisualTyreCompound CurrentUsedTyre { get; set; } #endregion // ILiveDriverData diff --git a/F1Server.Data/LiveGameData.cs b/F1Server.Data/LiveGameData.cs index 137bf49..bc64a20 100644 --- a/F1Server.Data/LiveGameData.cs +++ b/F1Server.Data/LiveGameData.cs @@ -9,38 +9,26 @@ public class LiveGameData : ILiveGameData { #region ILiveBaseData - /// - /// Database id - /// + /// public long DbId { get; set; } #endregion // ILiveBaseData #region ILiveGameData - /// - /// Actual game version - /// + /// public int GameVersion { get; set; } - /// - /// Major version - /// + /// public int MajorVersion { get; set; } - /// - /// Minor version - /// + /// public int MinorVersion { get; set; } - /// - /// Name of the game - /// + /// public string Name { get; set; } - /// - /// Last usage timestamp - /// + /// public DateTime? LastTimeUsed { get; set; } #endregion // ILiveGameData diff --git a/F1Server.Data/LiveSessionData.cs b/F1Server.Data/LiveSessionData.cs index e1f1a98..5ac72a1 100644 --- a/F1Server.Data/LiveSessionData.cs +++ b/F1Server.Data/LiveSessionData.cs @@ -10,103 +10,65 @@ public class LiveSessionData : ILiveSessionData { #region ILiveBaseData - /// - /// Database id - /// + /// public long DbId { get; set; } #endregion // ILiveBaseData #region ILiveSessionData - /// - /// Current session game id from game - /// + /// public ulong SessionGameId { get; set; } - /// - /// Session is finished - /// + /// public bool IsFinished { get; set; } - /// - /// Current number of cars on track - /// + /// public int CurrentCarsOnTrack { get; set; } - /// - /// Current session type - /// + /// public SessionType SessionType { get; set; } - /// - /// Duration of session in seconds - /// + /// public int SessionDuration { get; set; } - /// - /// Session time left in seconds - /// + /// public int SessionTimeLeft { get; set; } - /// - /// Air temperature - /// + /// public int AirTemperature { get; set; } - /// - /// Track temperature - /// + /// public int TrackTemperature { get; set; } - /// - /// Safety car on track? - /// + /// public bool IsSafetyCar { get; set; } - /// - /// Weather - /// + /// public WeatherCondition Weather { get; set; } - /// - /// Fastest sector 1 time in milliseconds - /// + /// public uint FastestSector1 { get; set; } - /// - /// Fastest sector 1 driver (index from game array) - /// + /// public int FastestSector1Driver { get; set; } - /// - /// Fastest sector 2 time in milliseconds - /// + /// public uint FastestSector2 { get; set; } - /// - /// Fastest sector 2 driver (index from game array) - /// + /// public int FastestSector2Driver { get; set; } - /// - /// Fastest sector3 time in milliseconds - /// + /// public uint FastestSector3 { get; set; } - /// - /// Fastest sector 3 driver (index from game array) - /// + /// public int FastestSector3Driver { get; set; } - /// - /// Fastest lap time in milliseconds - /// + /// public uint FastestLap { get; set; } - /// - /// Fastest lap driver (index from game array) - /// + /// public int FastestLapDriver { get; set; } /// @@ -119,14 +81,10 @@ public class LiveSessionData : ILiveSessionData /// public List TimeTable { get; set; } = []; - /// - /// Participants in session, exposed read-only to callers holding the contract - /// + /// IReadOnlyList ILiveSessionData.Drivers => Drivers; - /// - /// Current time table, exposed read-only to callers holding the contract - /// + /// IReadOnlyList ILiveSessionData.TimeTable => TimeTable; #endregion // ILiveSessionData diff --git a/F1Server.Db/Entity/Queryable/Base/QueryableBase{TEntity}.cs b/F1Server.Db/Entity/Queryable/Base/QueryableBase{TEntity}.cs index b180500..934e00b 100644 --- a/F1Server.Db/Entity/Queryable/Base/QueryableBase{TEntity}.cs +++ b/F1Server.Db/Entity/Queryable/Base/QueryableBase{TEntity}.cs @@ -33,38 +33,26 @@ public QueryableBase(IQueryable queryable) #region IQueryable - /// - /// Element type - /// + /// public Type ElementType => QueryableInternal.ElementType; - /// - /// Expression - /// + /// public Expression Expression => QueryableInternal.Expression; - /// - /// Provider - /// + /// public IQueryProvider Provider => QueryableInternal.Provider; #endregion // IQueryable #region IEnumerable - /// - /// Returns an enumerator - /// - /// Enumerator + /// public IEnumerator GetEnumerator() { return QueryableInternal.GetEnumerator(); } - /// - /// Returns an enumerator - /// - /// Enumerator + /// IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)QueryableInternal).GetEnumerator(); diff --git a/F1Server.Db/Entity/RepositoryFactory.cs b/F1Server.Db/Entity/RepositoryFactory.cs index 831817b..e5cf2b2 100644 --- a/F1Server.Db/Entity/RepositoryFactory.cs +++ b/F1Server.Db/Entity/RepositoryFactory.cs @@ -213,9 +213,7 @@ public void InitDatabase() #region IDisposable - /// - /// Dispose - /// + /// public void Dispose() { _dbContext?.Dispose(); diff --git a/F1Server.Observability/ObservabilityConfiguration.cs b/F1Server.Observability/ObservabilityConfiguration.cs index 939713e..58489bb 100644 --- a/F1Server.Observability/ObservabilityConfiguration.cs +++ b/F1Server.Observability/ObservabilityConfiguration.cs @@ -212,9 +212,7 @@ public bool ConfigureLogging(IServiceProvider serviceProvider) #region IDisposable - /// - /// Releases the resources used by the current instance of the class - /// + /// public void Dispose() { _traceProvider?.ForceFlush(); diff --git a/F1Server.Service/Processors/ProcessorFactory.cs b/F1Server.Service/Processors/ProcessorFactory.cs index 6ddc54b..03d03c4 100644 --- a/F1Server.Service/Processors/ProcessorFactory.cs +++ b/F1Server.Service/Processors/ProcessorFactory.cs @@ -135,9 +135,7 @@ private void RemoveAllProcessors() #region IDisposable - /// - /// Dispose method - /// + /// public void Dispose() { Dispose(true); diff --git a/F1Server.Service/Runtime/PacketProcessor.cs b/F1Server.Service/Runtime/PacketProcessor.cs index 361101c..c5eae33 100644 --- a/F1Server.Service/Runtime/PacketProcessor.cs +++ b/F1Server.Service/Runtime/PacketProcessor.cs @@ -771,9 +771,7 @@ private void CheckNewSession(PacketTypes packetType, SessionData? sessionData) #region IDisposable - /// - /// Dispose - /// + /// public void Dispose() { Dispose(true); diff --git a/F1Server.Service/Runtime/ParticipantRuntimeData.cs b/F1Server.Service/Runtime/ParticipantRuntimeData.cs index ffa6c94..34e746c 100644 --- a/F1Server.Service/Runtime/ParticipantRuntimeData.cs +++ b/F1Server.Service/Runtime/ParticipantRuntimeData.cs @@ -478,9 +478,7 @@ public bool ValidateLapTimes(uint lapTime, uint sector1Time, uint sector2Time, u #region IDisposable - /// - /// Dispose - /// + /// public void Dispose() { Dispose(true); diff --git a/F1Server.Service/TelemetryClient.cs b/F1Server.Service/TelemetryClient.cs index 29d107c..ead4d39 100644 --- a/F1Server.Service/TelemetryClient.cs +++ b/F1Server.Service/TelemetryClient.cs @@ -1106,9 +1106,7 @@ private void WriteLastSessionStatistics(ulong lastSessionId, ushort lastGameVers #region IDisposable - /// - /// Dispose - /// + /// public void Dispose() { if (_applicationData != null) diff --git a/F1Server.Telemetry/TelemetryWriter.cs b/F1Server.Telemetry/TelemetryWriter.cs index 77c4767..5e3a244 100644 --- a/F1Server.Telemetry/TelemetryWriter.cs +++ b/F1Server.Telemetry/TelemetryWriter.cs @@ -104,9 +104,7 @@ public TelemetryWriter(IServiceProvider serviceProvider) #region Properties - /// - /// Gets a value indicating whether the telemetry writer is ready to write data - /// + /// public bool IsReady { get; private set; } #endregion // Properties @@ -376,9 +374,7 @@ private async Task WriteToInflux(CancellationToken cancellationToken) #region IDisposable - /// - /// Releases all resources used by the current instance of the class - /// + /// public void Dispose() { // Complete the channel so the write task exits once it is drained diff --git a/F1Server.WebApi/Core/TimerManager.cs b/F1Server.WebApi/Core/TimerManager.cs index 185015c..f8209d8 100644 --- a/F1Server.WebApi/Core/TimerManager.cs +++ b/F1Server.WebApi/Core/TimerManager.cs @@ -96,9 +96,7 @@ private void Execute(object? stateInfo) #region IDisposable - /// - /// Dispose method - /// + /// public void Dispose() { Dispose(true); diff --git a/F1Server.WebApi/WebHosting.cs b/F1Server.WebApi/WebHosting.cs index 51ad23f..a70e22e 100644 --- a/F1Server.WebApi/WebHosting.cs +++ b/F1Server.WebApi/WebHosting.cs @@ -342,9 +342,7 @@ public bool StopWebHosting() #region IDisposable - /// - /// Dispose - /// + /// public void Dispose() { Dispose(true);