--- title: "Architecture" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{Architecture} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include = FALSE} knitr::opts_chunk$set(echo = FALSE) knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ``` # Class-diagram ```{r, eval = FALSE, echo = FALSE} suppressMessages(library(plantuml)) uml_str <- paste(readLines("design.plantuml"), collapse = "\n") uml <- plantuml::plantuml(x = uml_str) plot(uml, file = "./vignettes/class_diagram.svg") ``` ![Classdiagram](class_diagram.svg) * *Rn1_statistics*, *GOF_model_info_extractor*, *GOF_model_simulator*, *GOF_sim_wild_rademacher* and *GOF_model_trainer* follow the strategy pattern * *GOF_model_resample* follow the template pattern. Note that the object-oriented concepts are realized via the R6-package and that R6 actually does not have a real interface-functionality or abstract classes.