using System.Windows.Controls; namespace PamhagenSysCtrl.Helpers.Pipeline { class Tank : INode, ISink, ISource { public double CenterX { get; set; } public double CenterY { get; set; } public string Label { get; set; } public bool IsFull => CallbackIsFull(); public bool IsFilled => CallbackIsFilled(); public ISet Inputs { get; init; } public ISet Outputs { get; init; } protected Func CallbackIsFilled; protected Func CallbackIsFull; public Tank(string label, double x, double y, Func cbFilled, Func cbFull) { CenterX = x; CenterY = y; Label = label; CallbackIsFilled = cbFilled; CallbackIsFull = cbFull; Inputs = new HashSet(); Outputs = new HashSet(); } public void Draw(Canvas canvas) { } public bool Update(double x, double y) { return false; } } }