28 lines
1.0 KiB
C#
28 lines
1.0 KiB
C#
using Enigmos.Modules.InterlayerModules;
|
|
using Enigmos.Modules.ProgrammableModules.OptimizationModule;
|
|
using Nocturnis;
|
|
|
|
namespace Enigmos.Boards;
|
|
|
|
public partial class OptimizationModuleBoard : BaseBoard, ISceneConcept
|
|
{
|
|
public OptimizationModule? OptimizationModule { get; set; }
|
|
|
|
public OptimizationInputProviderModule? InputProvider { get; set; }
|
|
public OptimizationSelectorModule? Selector { get; set; }
|
|
public InterlayerDataOutModule[] ImplicitDataOuts { get; set; } = Array.Empty<InterlayerDataOutModule>();
|
|
public void Init(OptimizationModule m)
|
|
{
|
|
|
|
OptimizationModule = m;
|
|
ImplicitDataOuts = new InterlayerDataOutModule[3];
|
|
base.Init();
|
|
for (int i = 0; i < 3; i++)
|
|
ImplicitDataOuts[i] = GetModule<InterlayerDataOutModule>($"IO{i + 1}");
|
|
InputProvider = GetModule<OptimizationInputProviderModule>("InputProvider");
|
|
Selector = GetModule<OptimizationSelectorModule>("Selector");
|
|
InputProvider.Init(this);
|
|
Selector.Init();
|
|
}
|
|
}
|