Mentor import done.

This commit is contained in:
2025-04-21 18:19:37 +02:00
parent 6448972fd8
commit d0bf09aa63
14 changed files with 238 additions and 56 deletions

70
doc/classes.puml Normal file
View File

@@ -0,0 +1,70 @@
@startuml
' Base class
class SystemElement {
- string name
+ SystemElement(string name)
}
' Template container class
class SystemElementContainer<T> {
- unsigned int iter_count
- unordered_map<string, T*> content
+ SystemElementContainer(string name)
+ SystemElementContainer(string name, vector<T*> elements)
+ bool exists(string name)
+ void add(T* element)
+ void add(SystemElementContainer<T>* elements)
+ void add(vector<T*> elements)
+ T* get(string name)
+ T* merge(string name)
+ iterator begin()
+ iterator end()
+ const_iterator begin() const
+ const_iterator end() const
}
SystemElementContainer --|> SystemElement
' Part and Pin classes
class Part {
+ Part(string name)
+ void add(Pin* pin)
}
class Pin {
+ Pin(string name)
+ void connect(Signal* signal)
}
Part --* Pin
' Signal class
class Signal {
+ Signal(string name)
+ void connect(Pin* pin)
}
Pin --> Signal
' Module and Modules classes
class Module {
+ Signals* signals
+ Modules* prnt
+ Module(string name)
+ ~Module()
}
class Modules {
+ Modules()
+ Modules(vector<Module*> parts)
+ void add(Module* module)
+ ~Modules()
}
Module --|> SystemElementContainer
Modules --|> SystemElementContainer
Module --> Modules
Module --> Signals
@enduml