TegSensorData.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using Content.Server.Power.Components;
  2. namespace Content.Server.Power.Generation.Teg;
  3. /// <summary>
  4. /// Sensor data reported by the <see cref="TegGeneratorComponent"/> when queried over the device network.
  5. /// </summary>
  6. /// <seealso cref="TegSystem"/>
  7. public sealed class TegSensorData
  8. {
  9. /// <summary>
  10. /// Information for the A-side circulator.
  11. /// </summary>
  12. public Circulator CirculatorA;
  13. /// <summary>
  14. /// Information for the B-side circulator.
  15. /// </summary>
  16. public Circulator CirculatorB;
  17. /// <summary>
  18. /// The amount of energy (Joules) generated by the TEG last atmos tick.
  19. /// </summary>
  20. /// <seealso cref="TegGeneratorComponent.LastGeneration"/>
  21. public float LastGeneration;
  22. /// <summary>
  23. /// Ramping position for the TEG power generation.
  24. /// </summary>
  25. /// <seealso cref="TegGeneratorComponent.RampPosition"/>
  26. public float RampPosition;
  27. /// <summary>
  28. /// Power (Watts) actually being supplied by the TEG to connected power network.
  29. /// </summary>
  30. /// <seealso cref="PowerSupplierComponent.CurrentSupply"/>
  31. public float PowerOutput;
  32. /// <summary>
  33. /// Information for a single TEG circulator.
  34. /// </summary>
  35. /// <param name="InletPressure">Pressure measured at the circulator's input pipe</param>
  36. /// <param name="OutletPressure">Pressure measured at the circulator's output pipe</param>
  37. /// <param name="InletTemperature">Temperature measured at the circulator's input pipe</param>
  38. /// <param name="OutletTemperature">Temperature measured at the circulator's output pipe</param>
  39. public record struct Circulator(
  40. float InletPressure,
  41. float OutletPressure,
  42. float InletTemperature,
  43. float OutletTemperature);
  44. }