using Content.Shared.Atmos;
namespace Content.Server.Power.Generation.Teg;
///
/// A "circulator" for the thermo-electric generator (TEG).
/// Circulators are used by the TEG to take in a side of either hot or cold gas.
///
///
[RegisterComponent]
[Access(typeof(TegSystem))]
public sealed class TegCirculatorComponent : Component
{
///
/// The difference between the inlet and outlet pressure at the start of the previous tick.
///
[DataField("last_pressure_delta")] [ViewVariables(VVAccess.ReadWrite)]
public float LastPressureDelta;
///
/// The amount of moles transferred by the circulator last tick.
///
[DataField("last_moles_transferred")] [ViewVariables(VVAccess.ReadWrite)]
public float LastMolesTransferred;
///
/// Minimum pressure delta between inlet and outlet for which the circulator animation speed is "fast".
///
[DataField("visual_speed_delta")] [ViewVariables(VVAccess.ReadWrite)]
public float VisualSpeedDelta = 5 * Atmospherics.OneAtmosphere;
///
/// Light color of this circulator when it's running at "slow" speed.
///
[DataField("light_color_slow")] [ViewVariables(VVAccess.ReadWrite)]
public Color LightColorSlow;
///
/// Light color of this circulator when it's running at "fast" speed.
///
[DataField("light_color_fast")] [ViewVariables(VVAccess.ReadWrite)]
public Color LightColorFast;
}