@startuml PLC-Connector-main
header **Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample**
skinparam dpi 400
skinparam TitleFontSize 24
title Programmablauf PLC-Connector
right footer jomueller, 08.2022
start
:read config file;
: initialze
input modules,
middlewares, and
output modules;
partition Inputs {
while (foreach input module)
if (enabled?) then (yes)
#FFC5C4:start input thread|
endif
end while (end)
}
repeat
:read input queues<
partition Middlewares {
-> values;
:initialize list of results;
while (foreach middlewares module)
if (module enabled?) then (yes)
#FFC5C4:execute module|
if (output enabled?) then (yes)
:append result to list/
endif
:run submodules recursively;
endif
end while (end)
}
-> results;
partition Outputs {
while (foreach output module)
if (enabled?) then (yes)
#FFC5C4:write results to output>
endif
end while (end)
}
backward :sleep;
repeat while(end program?)
-> yes;
:stop input threads;
stop
@enduml