using Enigmos.Modules.ControllingModules; using Enigmos.Ports; using Enigmos.Ports.DataPorts; using Nocturnis.DataStructures; using Nocturnis.Enigmos.Modules; namespace Enigmos.Modules.ComputationalModules; public abstract partial class UnaryComputationalModule : ComputationalModule { protected DataInPort? Input1 { get; set; } public override IEnumerable Ports => new[] { Input1 }!; public override void Init() { base.Init(); Input1 = GetPort("Input1"); } protected abstract void Compute(IDataPackage input1); protected override void Compute(IRootModule root) => Compute(Input1.GetData(root)); }