Added EventPipeline to ClassDiagramm

This commit is contained in:
Mueller Wayan
2025-04-17 21:37:59 +02:00
parent a6130d4ff0
commit b4d5afc4ba
+62
View File
@@ -0,0 +1,62 @@
```mermaid
classDiagram
namespace EventPipelines{
%% === Basisklassen ===
class FirebirdEventArgs {
<<abstract>>
}
class Pipeline~T~ {
- PipelineMaster : object
+ OnEvent : EventHandler~T~
+ SendEvent(sender : object, args : T)
}
class EventBus {
- pipelines : Dictionary~FirebirdEvent, Pipeline~T~>
- pendingHooks : Dictionary ~FirebirdEvent, List~Action~object~~
+ OnPipelineExist~T~(callback : Action<Pipeline~T~>, type : FirebirdEvent)
+ BuildPipeline~T~(type : FirebirdEvent, master : object) : Pipeline~T~
+ GetPipeline~T~(type : FirebirdEvent) : Pipeline~T~
}
%% === Spezialisierte Pipelines ===
class KeyboardPipeline {
<<inherits Pipeline~FirebirdKeyboardEventArgs~>>
}
class MousePipeline {
<<inherits Pipeline~FirebirdMouseEventArgs~>>
}
%% === EventArgs Spezialisierungen ===
class FirebirdKeyboardEventArgs {
<<inherits FirebirdEventArgs>>
}
class FirebirdMouseEventArgs {
<<inherits FirebirdEventArgs>>
}
%% === Enum ===
class FirebirdEvent {
<<enum>>
Tick
ModulesLoading
Startup
KeyboardInputs
MouseInputs
}
}
%% === Beziehungen ===
Pipeline~T~ <|-- KeyboardPipeline
Pipeline~T~ <|-- MousePipeline
FirebirdEventArgs <|-- FirebirdKeyboardEventArgs
FirebirdEventArgs <|-- FirebirdMouseEventArgs
EventBus -->Pipeline~T~
EventBus -->Pipeline~T~
```