public void CreateControlpath(FlowMatrix flowSpec, string procName) { var sens = flowSpec.FlowSources.Select(sr => sr.Desc) .Concat(Enumerable.Repeat((ISignalOrPortDescriptor)_stateSignal.Descriptor, 1)) .Distinct(); var tscTempl = new TristateConcTemplate(this, flowSpec); var tscFunc = tscTempl.GetAlgorithm(); _binder.CreateProcess(SystemSharp.Components.Process.EProcessKind.Triggered, tscFunc, sens.ToArray()); var fudTempl = new FUDriveTemplate(this, flowSpec, tscTempl.NonTristateTargets); var fudFunc = fudTempl.GetAlgorithm(); _binder.CreateProcess(SystemSharp.Components.Process.EProcessKind.Triggered, fudFunc, sens.ToArray()); }
public void CreateControlpath(FlowMatrix flowSpec, string procName) { var sens = flowSpec.FlowSources.Select(sr => sr.Desc) .Concat(Enumerable.Repeat((ISignalOrPortDescriptor)_stateSignal.Descriptor, 1)) .Distinct(); var tscTempl = new TristateConcTemplate(this, flowSpec); var tscFunc = tscTempl.GetAlgorithm(); _binder.CreateProcess(SystemSharp.Components.Process.EProcessKind.Triggered, tscFunc, sens.ToArray()); var fudTempl = new FUDriveTemplate(this, flowSpec, tscTempl.NonTristateTargets); var fudFunc = fudTempl.GetAlgorithm(); _binder.CreateProcess(SystemSharp.Components.Process.EProcessKind.Triggered, fudFunc, sens.ToArray()); }