refactor programmable modules

This commit is contained in:
h z
2024-07-06 02:12:54 +01:00
parent 42e06a0d0c
commit e1a74ad614
5 changed files with 8 additions and 5 deletions

View File

@@ -19,7 +19,6 @@ public interface IBaseModule
Vector2 Position { get; set; }
string LabelString { get; set; }
void UpdateCables();
//T GetPort<T>(NodePath path);
Node GetNode(NodePath path);
void Init();

View File

@@ -2,5 +2,5 @@ namespace Nocturnis.Enigmos.Modules;
public interface ICompositeModule
{
IBaseModule[] SubModules();
IBaseModule[] SubModules { get; }
}

View File

@@ -5,6 +5,9 @@ namespace Nocturnis.Enigmos.Modules;
public interface IFilterModule : IProgrammableModule
{
void Filter();
IData[] CachedInputArray { get; set; }
IData[] CachedResult { get; set; }
int ProcessingIndex { get; set; }
bool FilterFinished { get; set; }
bool FilterStarted { get; set; }
}

View File

@@ -5,6 +5,7 @@ namespace Nocturnis.Enigmos.Modules;
public interface IOptimizationModule : IProgrammableModule
{
IData CachedResult { get; set; }
bool Calculated { get; set; }
bool OptimizationStarted { get; set; }
bool OptimizationFinished { get; set; }
void Optimize();
}

View File

@@ -2,7 +2,7 @@ using Nocturnis.Enigmos.Ports;
namespace Nocturnis.Enigmos.Modules.InterlayerModules;
public interface IInterlayerModule
public interface IInterlayerModule : IBaseModule
{
IBasePort? UnderlyingPort { get; }
IProgrammableModule? ParentModule { get; set; }