using Enigmos.Ports; using Enigmos.Ports.DataPorts; using Nocturnis.DataStructures; using TabulaSmaragdina.Constants; namespace Enigmos.Modules.ComputationalModules.Unary; public partial class LogicalNegationModule : UnaryComputationalModule { private DataOutPort Output1 { get; set; } public override IEnumerable Ports => base.Ports.Union(new[] { Output1 }); public override void Init() { base.Init(); Output1 = GetPort("Output1"); Input1.SetDataType(EnigmosConstant.DataPortTypes.Bit); Output1.SetDataType(EnigmosConstant.DataPortTypes.Bit); PostInit(); } protected override void Compute(IDataPackage input1) { Output1.ResultData.Bit = !input1.Bit; } }