source generator
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
using Nocturnis.Enigmos.Cables;
|
||||
using Nocturnis.Enigmos.Ports;
|
||||
using Nocturnis.UIElements;
|
||||
using Nocturnis.UIElements.Layers;
|
||||
|
||||
namespace Nocturnis.Enigmos.Boards;
|
||||
|
||||
public interface IBaseBoard
|
||||
{
|
||||
IPanelViewer? PanelViewer { get; set; }
|
||||
IEnumerable<IBasePort> OnBoardPorts { get; }
|
||||
IBasePort? ConnectPending { get; set; }
|
||||
Dictionary<IBasePort, IBaseCable> CablePairing { get; set; }
|
||||
void AddCable(IBaseCable cable);
|
||||
@@ -15,4 +18,6 @@ public interface IBaseBoard
|
||||
IModuleManualLayer? ModuleManualLayer { get; set; }
|
||||
IModuleMovingLayer? ModuleMovingLayer { get; set; }
|
||||
void Reset();
|
||||
void SetCableVisualMode(bool mode);
|
||||
void SetLabelVisualMode(bool mode);
|
||||
}
|
||||
8
src/Enigmos/Boards/IPrimaryBoard.cs
Normal file
8
src/Enigmos/Boards/IPrimaryBoard.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using Nocturnis.Enigmos.Modules;
|
||||
|
||||
namespace Nocturnis.Enigmos.Boards;
|
||||
|
||||
public interface IPrimaryBoard : IBaseBoard
|
||||
{
|
||||
IEngineModule Engine { get; set; }
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
namespace Nocturnis.Enigmos.ModuleManuals;
|
||||
|
||||
public interface IModuleManualTab
|
||||
public interface IModuleManualTab : INodeInterface
|
||||
{
|
||||
string FullName();
|
||||
}
|
||||
@@ -7,6 +7,7 @@ namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IBaseModule
|
||||
{
|
||||
Texture2D? PreviewTexture { get; }
|
||||
IEnumerable<IBasePort> Ports { get; }
|
||||
IBaseBoard? Board { get; set; }
|
||||
Vector2 PositionToBoard { get; }
|
||||
@@ -14,7 +15,7 @@ public interface IBaseModule
|
||||
double MaintenanceAlpha { get; }
|
||||
double MaintenanceBeta { get; }
|
||||
string GetDescription { get; }
|
||||
ISimpleLabel? Label { get; }
|
||||
Label? Label { get; }
|
||||
Node AsNode { get; }
|
||||
Vector2 Position { get; set; }
|
||||
string LabelString { get; set; }
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface ICompositeModule
|
||||
public interface ICompositeModule : IBaseModule
|
||||
{
|
||||
IBaseModule[] SubModules { get; }
|
||||
}
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
using Godot;
|
||||
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IComputationalCompositeModule : ICompositeModule
|
||||
{
|
||||
Vector2 PositionToBoard { get; }
|
||||
}
|
||||
6
src/Enigmos/Modules/IEngineModule.cs
Normal file
6
src/Enigmos/Modules/IEngineModule.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IEngineModule : ITerminalModule
|
||||
{
|
||||
|
||||
}
|
||||
9
src/Enigmos/Modules/IEnumerableProcessingModule.cs
Normal file
9
src/Enigmos/Modules/IEnumerableProcessingModule.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Nocturnis.DataStructures;
|
||||
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IEnumerableProcessingModule : ICompositeModule
|
||||
{
|
||||
IData[] CachedInputArray { get; set; }
|
||||
int ProcessingIndex { get; set; }
|
||||
}
|
||||
11
src/Enigmos/Modules/IInternalComputationalModule.cs
Normal file
11
src/Enigmos/Modules/IInternalComputationalModule.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using Nocturnis.DataStructures;
|
||||
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IInternalComputationalModule : ICompositeModule
|
||||
{
|
||||
IData? CachedResult { get; set; }
|
||||
void Compute();
|
||||
bool ComputationFinished { get; set; }
|
||||
bool ComputationStarted { get; set; }
|
||||
}
|
||||
@@ -5,7 +5,7 @@ namespace Nocturnis.Enigmos.Modules;
|
||||
public interface IOptimizationModule : IProgrammableModule
|
||||
{
|
||||
IData CachedResult { get; set; }
|
||||
bool OptimizationStarted { get; set; }
|
||||
bool OptimizationFinished { get; set; }
|
||||
bool ComputationStarted { get; set; }
|
||||
bool ComputationFinished { get; set; }
|
||||
void Optimize();
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
namespace Nocturnis.Enigmos.Modules;
|
||||
|
||||
public interface IProgrammableModule : IBaseModule
|
||||
public interface IProgrammableModule : ICompositeModule
|
||||
{
|
||||
}
|
||||
@@ -3,5 +3,6 @@ namespace Nocturnis.Enigmos.Modules;
|
||||
public interface ITerminalModule : IParameterModule
|
||||
{
|
||||
void Drain();
|
||||
bool Finished { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using Nocturnis.DataStructures;
|
||||
using Skeleton.DataStructure;
|
||||
|
||||
namespace Nocturnis.Enigmos.Ports.DataPorts.Directions;
|
||||
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
using Nocturnis.DataStructures;
|
||||
using Nocturnis.Enigmos.Modules;
|
||||
using Nocturnis.Enigmos.Modules.ComputationalModules;
|
||||
using Skeleton.DataStructure;
|
||||
|
||||
namespace Nocturnis.Enigmos.Ports.DataPorts.Directions;
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ namespace Nocturnis.Enigmos.Ports;
|
||||
|
||||
public interface IBasePort
|
||||
{
|
||||
Vector2 PositionToBoard { get; }
|
||||
bool Connected { get; }
|
||||
IBaseModule? Module { get; set; }
|
||||
bool IsMatch(IBasePort oth);
|
||||
|
||||
Reference in New Issue
Block a user