Skip to content

Commit 1273782

Browse files
authored
Merge pull request #612 from PHOENIXCONTACT/future-cleanup
Integrate simulation in other projects to reduce number of packages
1 parent 71a2f29 commit 1273782

33 files changed

+65
-93
lines changed

MORYX-Framework.sln

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Orders", "src\Moryx.O
151151
EndProject
152152
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.ProcessData", "src\Moryx.ProcessData\Moryx.ProcessData.csproj", "{26AA1F0D-C667-4070-8464-C0B3BBA59F4D}"
153153
EndProject
154-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Simulation", "src\Moryx.Simulation\Moryx.Simulation.csproj", "{61E04D4E-A5CC-46BE-A75A-54047C9C506D}"
155-
EndProject
156154
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Users", "src\Moryx.Users\Moryx.Users.csproj", "{D43E59E4-7E68-4F3E-AB4F-6DC91CD2937D}"
157155
EndProject
158156
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.ControlSystem.Tests", "src\Tests\Moryx.ControlSystem.Tests\Moryx.ControlSystem.Tests.csproj", "{F5C2E437-E4F6-4F05-A602-E4CB1AD703AE}"
@@ -261,14 +259,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.ProcessData.InfluxDbL
261259
EndProject
262260
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.ProcessData.SpreadsheetsListener.Tests", "src\Tests\Moryx.ProcessData.SpreadsheetsListener.Tests\Moryx.ProcessData.SpreadsheetsListener.Tests.csproj", "{0470D9C6-FEE3-4D84-AB66-55BC0A90B36E}"
263261
EndProject
264-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Simulation", "Simulation", "{EE89F8D0-6D20-4778-B2DB-95A7DE9334F5}"
265-
EndProject
266-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Simulation.Simulator", "src\Moryx.Simulation.Simulator\Moryx.Simulation.Simulator.csproj", "{ED68454D-5302-4F4F-A5C5-EC5AD178D627}"
262+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.ControlSystem.Simulator", "src\Moryx.ControlSystem.Simulator\Moryx.ControlSystem.Simulator.csproj", "{ED68454D-5302-4F4F-A5C5-EC5AD178D627}"
267263
EndProject
268264
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Drivers.Simulation", "src\Moryx.Drivers.Simulation\Moryx.Drivers.Simulation.csproj", "{FE8335A2-7C38-45AF-8C8D-5484C8D58165}"
269265
EndProject
270-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Simulation.Examples", "src\Moryx.Simulation.Examples\Moryx.Simulation.Examples.csproj", "{A9DFA74A-73EF-4E4F-B160-F76BE05619F8}"
271-
EndProject
272266
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moryx.Simulation.Tests", "src\Tests\Moryx.Simulation.Tests\Moryx.Simulation.Tests.csproj", "{9FD7876E-2D02-41D1-82E7-41C44079AD60}"
273267
EndProject
274268
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Media", "Media", "{403ADD8F-C9D8-490F-AAF2-852C81B5694B}"
@@ -549,10 +543,6 @@ Global
549543
{26AA1F0D-C667-4070-8464-C0B3BBA59F4D}.Debug|Any CPU.Build.0 = Debug|Any CPU
550544
{26AA1F0D-C667-4070-8464-C0B3BBA59F4D}.Release|Any CPU.ActiveCfg = Release|Any CPU
551545
{26AA1F0D-C667-4070-8464-C0B3BBA59F4D}.Release|Any CPU.Build.0 = Release|Any CPU
552-
{61E04D4E-A5CC-46BE-A75A-54047C9C506D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
553-
{61E04D4E-A5CC-46BE-A75A-54047C9C506D}.Debug|Any CPU.Build.0 = Debug|Any CPU
554-
{61E04D4E-A5CC-46BE-A75A-54047C9C506D}.Release|Any CPU.ActiveCfg = Release|Any CPU
555-
{61E04D4E-A5CC-46BE-A75A-54047C9C506D}.Release|Any CPU.Build.0 = Release|Any CPU
556546
{D43E59E4-7E68-4F3E-AB4F-6DC91CD2937D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
557547
{D43E59E4-7E68-4F3E-AB4F-6DC91CD2937D}.Debug|Any CPU.Build.0 = Debug|Any CPU
558548
{D43E59E4-7E68-4F3E-AB4F-6DC91CD2937D}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -749,10 +739,6 @@ Global
749739
{FE8335A2-7C38-45AF-8C8D-5484C8D58165}.Debug|Any CPU.Build.0 = Debug|Any CPU
750740
{FE8335A2-7C38-45AF-8C8D-5484C8D58165}.Release|Any CPU.ActiveCfg = Release|Any CPU
751741
{FE8335A2-7C38-45AF-8C8D-5484C8D58165}.Release|Any CPU.Build.0 = Release|Any CPU
752-
{A9DFA74A-73EF-4E4F-B160-F76BE05619F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
753-
{A9DFA74A-73EF-4E4F-B160-F76BE05619F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
754-
{A9DFA74A-73EF-4E4F-B160-F76BE05619F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
755-
{A9DFA74A-73EF-4E4F-B160-F76BE05619F8}.Release|Any CPU.Build.0 = Release|Any CPU
756742
{9FD7876E-2D02-41D1-82E7-41C44079AD60}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
757743
{9FD7876E-2D02-41D1-82E7-41C44079AD60}.Debug|Any CPU.Build.0 = Debug|Any CPU
758744
{9FD7876E-2D02-41D1-82E7-41C44079AD60}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -904,7 +890,6 @@ Global
904890
{1D385BC3-81CB-458A-A996-332623D2D43E} = {893AA1C8-0FF6-4A47-B79D-E72059F93118}
905891
{680AB730-DA8C-480A-94F7-4CCB8147149E} = {893AA1C8-0FF6-4A47-B79D-E72059F93118}
906892
{26AA1F0D-C667-4070-8464-C0B3BBA59F4D} = {893AA1C8-0FF6-4A47-B79D-E72059F93118}
907-
{61E04D4E-A5CC-46BE-A75A-54047C9C506D} = {893AA1C8-0FF6-4A47-B79D-E72059F93118}
908893
{D43E59E4-7E68-4F3E-AB4F-6DC91CD2937D} = {893AA1C8-0FF6-4A47-B79D-E72059F93118}
909894
{F5C2E437-E4F6-4F05-A602-E4CB1AD703AE} = {0A466330-6ED6-4861-9C94-31B1949CDDB9}
910895
{AD19999E-0D04-43BC-8781-1D0F05B0C38D} = {0A466330-6ED6-4861-9C94-31B1949CDDB9}
@@ -952,9 +937,8 @@ Global
952937
{6B45F977-0017-4897-8B8A-0892C13694A8} = {EFA3F41A-1DEF-4E49-B3F0-D34DFA4BD56B}
953938
{E2DFD219-FD94-47B8-8364-65037B75960B} = {0A466330-6ED6-4861-9C94-31B1949CDDB9}
954939
{0470D9C6-FEE3-4D84-AB66-55BC0A90B36E} = {0A466330-6ED6-4861-9C94-31B1949CDDB9}
955-
{ED68454D-5302-4F4F-A5C5-EC5AD178D627} = {EE89F8D0-6D20-4778-B2DB-95A7DE9334F5}
956-
{FE8335A2-7C38-45AF-8C8D-5484C8D58165} = {EE89F8D0-6D20-4778-B2DB-95A7DE9334F5}
957-
{A9DFA74A-73EF-4E4F-B160-F76BE05619F8} = {EE89F8D0-6D20-4778-B2DB-95A7DE9334F5}
940+
{ED68454D-5302-4F4F-A5C5-EC5AD178D627} = {E0E7AB53-7008-476A-AADA-ED49220C1B6F}
941+
{FE8335A2-7C38-45AF-8C8D-5484C8D58165} = {93C94C82-873F-4D31-8A9C-0227047BD5A8}
958942
{9FD7876E-2D02-41D1-82E7-41C44079AD60} = {0A466330-6ED6-4861-9C94-31B1949CDDB9}
959943
{714D52F8-9C9C-4E8B-92B7-13A16680423E} = {403ADD8F-C9D8-490F-AAF2-852C81B5694B}
960944
{48D2BCB7-3F1F-482E-BBCB-2B4470131F0B} = {403ADD8F-C9D8-490F-AAF2-852C81B5694B}
@@ -981,8 +965,8 @@ Global
981965
{5E02B439-B91F-4297-9AE4-7B92F2AA2AFF} = {8517D209-5BC1-47BD-A7C7-9CF9ADD9F5B6}
982966
EndGlobalSection
983967
GlobalSection(ExtensibilityGlobals) = postSolution
984-
RESX_ShowErrorsInErrorList = True
985-
RESX_TaskErrorCategory = Message
986968
SolutionGuid = {36EFC961-F4E7-49DC-A36A-99594FFB8243}
969+
RESX_TaskErrorCategory = Message
970+
RESX_ShowErrorsInErrorList = True
987971
EndGlobalSection
988972
EndGlobal

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ Here we list all available packages in the MORYX ecosystem separated into compon
6565
|[MORYX - Communication](./docs/articles/communication/index.md)|[Moryx.Communication.Serial](./src/Moryx.Communication.Serial)|to be done|
6666
|[MORYX - Tools](./docs/articles/tools/index.md)|[Moryx.Tools](./src/Moryx.Tools)<br>[Moryx.Tools.Wcf](./src/Moryx.Tools.Wcf)[Moryx.TestTools.NUnit](./src/Moryx.TestTools.NUnit)<br>[Moryx.TestTools.SystemTest](./src/Moryx.TestTools.SystemTest)<br>[Moryx.TestTools.Test.Model](./src/Moryx.TestTools.Test.Model)<br>[Moryx.TestTools.UnitTest](./src/Moryx.TestTools.UnitTest)<br>[Moryx.ControlSystem.TestTools](./src/Moryx.ControlSystem.TestTools)<br>[Moryx.ControlSystem.TestTools.Assemble](./src/Moryx.ControlSystem.Assemble)<br>[Moryx.TestTools.IntegrationTest](./src/Moryx.TestTools.IntegrationTest)|to be done|
6767
|[MORYX - Command Center](./docs/articles/command-center/index.md)|[Moryx.CommandCenter.Web](./src/Moryx.CommandCenter.Web)|to be done|
68-
|Samples|[Moryx.Benchmarking](./src/Moryx.Benchmarking)<br>[Moryx.Orders.Samples](./src/Moryx.Orders.Samples)<br>[Moryx.ProcessData.Samples](./src/Moryx.ProcessData.Samples)<br>[Moryx.Products.Samples](./src/Moryx.Products.Samples)<br>[Moryx.Simulation.Examples](./src/Moryx.Simulation.Examples)<br>[TestModule](./src/TestModule)<br>[Moryx.TestModule.Kestrel](./src/Moryx.TestModule.Kestrel)<br>|-|
68+
|Samples|[Moryx.Benchmarking](./src/Moryx.Benchmarking)<br>[Moryx.Orders.Samples](./src/Moryx.Orders.Samples)<br>[Moryx.ProcessData.Samples](./src/Moryx.ProcessData.Samples)<br>[Moryx.Products.Samples](./src/Moryx.Products.Samples)<br>[TestModule](./src/TestModule)<br>[Moryx.TestModule.Kestrel](./src/Moryx.TestModule.Kestrel)<br>|-|
6969

7070
</details>
7171

@@ -88,7 +88,7 @@ Here we list all available packages in the MORYX ecosystem separated into compon
8888
|[Module - Process Data](./docs/articles/module-process-data/index.md)|[Moryx.ProcessData](./src/Moryx.ProcessData)<br>[Moryx.ProcessData.Adapter.NotificationPublisher](./src/Moryx.ProcessData.Adapter.NotificationPublisher)<br>[Moryx.ProcessData.Adapter.OrderManagement](./src/Moryx.ProcessData.Adapter.OrderManagement)<br>[Moryx.ProcessData.Adapter.ProcessEngine](./src/Moryx.ProcessData.Adapter.ProcessEngine)<br>[Moryx.ProcessData.Adapter.ResourceManagement](./src/Moryx.ProcessData.Adapter.ResourceManagement)<br>[Moryx.ProcessData.Endpoints](./src/Moryx.ProcessData.Endpoints)<br>[Moryx.ProcessData.Monitor](./src/Moryx.ProcessData.Monitor)|to be done|
8989
|[Module - Process Engine](./docs/articles/module-process-engine/index.md)|[Moryx.ControlSystem.ProcessEngine](./src/Moryx.ControlSystem.ProcessEngine)<br>[Moryx.ControlSystem.ProcessEngine.Web](./src/Moryx.ControlSystem.ProcessEngine.Web)<br>[Moryx.ControlSystem.Processes.Endpoints](./src/Moryx.ControlSystem.Processes.Endpoints)<br>[Moryx.ControlSystem.Jobs.Endpoints](./src/Moryx.ControlSystem.Jobs.Endpoints)|to be done|
9090
|[Module - Setups](./docs/articles/module-setups/index.md)|[Moryx.ControlSystem.SetupProvider](./src/Moryx.ControlSystem.SetupProvider)|to be done|
91-
|[Module - Simulation](./docs/articles/module-simulation/index.md)|[Moryx.Simulation](./src/Moryx.Simulation)<br>[Moryx.Simulation.Simulator](./src/Moryx.Simulation.Simulator/)<br>[Moryx.Drivers.Simulation](./src/Moryx.Drivers.Simulation)|to be done|
91+
|[Module - Simulation](./docs/articles/module-simulation/index.md)|[Moryx.ControlSystem](./src/Moryx.ControlSystem)<br>[Moryx.ControlSystem.Simulator](./src/Moryx.ControlSystem.Simulator/)<br>[Moryx.Drivers.Simulation](./src/Moryx.Drivers.Simulation)|to be done|
9292
|[Module - Worker Support](./docs/articles/module-worker-support/index.md)|[Moryx.ControlSystem.WorkerSupport](./src/Moryx.ControlSystem.WorkerSupport)<br>[Moryx.ControlSystem.WorkerSupport.Web](./src/Moryx.ControlSystem.WorkerSupport.Web)<br>[Moryx.ControlSystem.VisualInstructions.Endpoints](./src/Moryx.ControlSystem.VisualInstructions.Endpoints)<br>[Moryx.Resources.AssemblyInstruction](./src/Moryx.Resources.AssemblyInstruction)|to be done|
9393
|[Module - Workplans](./docs/articles/module-workplans/index.md)|[Moryx.Workplans](./src/Moryx.Workplans)<br>[Moryx.Workplans.Editing](./src/Moryx.Workplans.Editing)<br>[Moryx.Workplans.Web](./src/Moryx.Workplans.Web)|to be done|
9494
|[MORYX - Access Management](./docs/articles/moryx-access-management/index.md)|[Moryx.Identity](./src/Moryx.Identity)<br>[Moryx.Identity.AccessManagement](./src/Moryx.Identity.AccessManagement)<br>[Moryx.Identity.Web](./src/Moryx.Identity.Web)|to be done|

docs/articles/module-simulation/SimulationDriver.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Simulation Driver
22

3-
If none of the existing, commercial drivers from `Moryx.Drivers.Simulation` fits your requirements, you can easily implement your own driver. All you need to do is implement the interface `Moryx.Simulation.ISimulationDriver` as well as the interface of the driver you want to replace like `IMessageDriver<object>` or `IInOutDriver`.
3+
If none of the existing, commercial drivers from `Moryx.Drivers.Simulation` fits your requirements, you can easily implement your own driver. All you need to do is implement the interface `Moryx.ControlSystem.ISimulationDriver` as well as the interface of the driver you want to replace like `IMessageDriver<object>` or `IInOutDriver`.
44

55
A module like the commercial simulator will call `Ready` and `Result` on your instance as a replacement for the events usually received from real drivers and sensors. You need to translate them into values or events of you driver interface like `IMessageDriver.Received`. The methods references the activity which you can use to extract the relevant attributes like process id, carrier or product identifiers as needed by your cell. Process execution initiated by the drivers API like parameter values or `Send` methods need to be represented by the `SimulatedState`.
66

77
## Example of simulated driver
88

9-
So here is an example of how your mock driver can implement `Moryx.Simulation.ISimulationDriver`:
9+
So here is an example of how your mock driver can implement `Moryx.ControlSystem.ISimulationDriver`:
1010
``` csharp
1111
[ResourceRegistration]
1212
public class TestMockDriver : Driver, IMessageDriver<object>,ISimulationDriver {
@@ -92,7 +92,7 @@ So here is an example of how your mock driver can implement `Moryx.Simulation.IS
9292
}
9393
```
9494

95-
Note: The `Send()` method might differ from cell to cell.You can override the `Send()` and do your implementation of what needs to happend when your "mock" driver receives something from the cell. In case your driver doesn't have a `send()` method, you can use your own method and react upon the type of message you received just like described inside the `TestMockDriver.Send()` method above.
95+
Note: The `Send()` method might differ from cell to cell.You can override the `Send()` and do your implementation of what needs to happened when your "mock" driver receives something from the cell. In case your driver doesn't have a `send()` method, you can use your own method and react upon the type of message you received just like described inside the `TestMockDriver.Send()` method above.
9696

9797
# How does my Cell use my `MockDriver` ?
9898

@@ -130,7 +130,7 @@ Moryx will take care of the relationship once you assign the driver to the cell.
130130
//AssembleProductMessage.cs
131131
132132
/// <summary>
133-
/// Message specificto start an activity
133+
/// Message specific to start an activity
134134
/// </summary>
135135
public class AssembleProductMessage
136136
{

docs/articles/module-simulation/SimulationParameters.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Simulation parameters
22

3-
If you need to influence the simulation behavior of activites you can add `ISimulationParameters` to your parameters and return different execution times either by configuration or through binding on digital twins.
3+
If you need to influence the simulation behavior of activities you can add `ISimulationParameters` to your parameters and return different execution times either by configuration or through binding on digital twins.
44

55
## Configurable execution time
66

docs/migrations/v8_to_v10.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,11 @@ In *Moryx.Factory* **6.3** and **8.1** we introduced the new result object and o
66

77
## Replaced `IVisualInstructions` with `VisualInstructionParameters`
88
The interface was only used in `VisualInstructionParameters` which can and is being used as a base class in most cases anyway.
9-
Hence, `IVisualInstructions` is removed in favor of a more extendable base class.
9+
Hence, `IVisualInstructions` is removed in favor of a more extendable base class.
10+
11+
## Integration of Moryx.Simulation into Moryx.ControlSystem
12+
13+
To reduce the number of API packages and simplify the overall architecture, **Moryx.Simulation** has been integrated into **Moryx.ControlSystem** starting with Moryx 10. All simulation-related APIs and functionality are now part of the Moryx.ControlSystem package. This change streamlines dependency management and makes it easier to maintain and extend simulation features within the control system context.
14+
15+
The simulator module has also been renamed, and its namespace and package id have changed accordingly to reflect its new location within Moryx.ControlSystem.
16+

src/Moryx.Simulation.Simulator/Components/IProcessSimulator.cs renamed to src/Moryx.ControlSystem.Simulator/Components/IProcessSimulator.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
1+
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
22
// Licensed under the Apache License, Version 2.0
33

44
using Moryx.Modules;
55

6-
namespace Moryx.Simulation.Simulator
6+
namespace Moryx.ControlSystem.Simulator
77
{
88
internal interface IProcessSimulator : IPlugin
99
{

src/Moryx.Simulation.Simulator/Implementation/ProcessMovement.cs renamed to src/Moryx.ControlSystem.Simulator/Implementation/ProcessMovement.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
1+
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
22
// Licensed under the Apache License, Version 2.0
33

44
using System;
55
using Moryx.AbstractionLayer;
6+
using Moryx.ControlSystem.Simulation;
67

7-
namespace Moryx.Simulation.Simulator
8+
namespace Moryx.ControlSystem.Simulator
89
{
910
internal class ProcessMovement
1011
{

src/Moryx.Simulation.Simulator/Implementation/ProcessSimulator.cs renamed to src/Moryx.ControlSystem.Simulator/Implementation/ProcessSimulator.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
1+
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
22
// Licensed under the Apache License, Version 2.0
33

44
using Microsoft.Extensions.Logging;
@@ -9,6 +9,7 @@
99
using Moryx.ControlSystem.Activities;
1010
using Moryx.ControlSystem.Cells;
1111
using Moryx.ControlSystem.Processes;
12+
using Moryx.ControlSystem.Simulation;
1213
using Moryx.Logging;
1314
using Moryx.Threading;
1415
using System;
@@ -18,7 +19,7 @@
1819
using System.Runtime.CompilerServices;
1920
using Activity = Moryx.AbstractionLayer.Activity;
2021

21-
namespace Moryx.Simulation.Simulator
22+
namespace Moryx.ControlSystem.Simulator
2223
{
2324
[Component(LifeCycle.Singleton, typeof(IProcessSimulator))]
2425
internal sealed class ProcessSimulator : IProcessSimulator

src/Moryx.Simulation.Simulator/ModuleController/ModuleConfig.cs renamed to src/Moryx.ControlSystem.Simulator/ModuleController/ModuleConfig.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
1+
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
22
// Licensed under the Apache License, Version 2.0
33

44
using System.Collections.Generic;
@@ -8,7 +8,7 @@
88
using Moryx.Configuration;
99
using Moryx.Serialization;
1010

11-
namespace Moryx.Simulation.Simulator
11+
namespace Moryx.ControlSystem.Simulator
1212
{
1313
/// <summary>
1414
/// Configuration of this module

src/Moryx.Simulation.Simulator/ModuleController/ModuleConsole.cs renamed to src/Moryx.ControlSystem.Simulator/ModuleController/ModuleConsole.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
1+
// Copyright (c) 2023, Phoenix Contact GmbH & Co. KG
22
// Licensed under the Apache License, Version 2.0
33

44
using System;
55
using System.Linq;
66
using Moryx.Runtime.Modules;
77

8-
namespace Moryx.Simulation.Simulator
8+
namespace Moryx.ControlSystem.Simulator
99
{
1010
[ServerModuleConsole]
1111
internal class ModuleConsole : IServerModuleConsole

0 commit comments

Comments
 (0)