BioCMAMC-ST
config_loader.hpp
1#ifndef __MODEL_CONFIG_LOADER__
2#define __MODEL_CONFIG_LOADER__
3
4#include <common/execinfo.hpp>
5#include <mc/particles_container.hpp>
6#include <mc/traits.hpp>
7#include <variant_model.hpp>
8
9namespace Models
10{
11
12 template <typename Model>
13
14 requires(std::is_constructible_v<AutoGenerated::ContainerVariant,
15 MC::ParticlesContainer<Model>>
16 && ConfigurableModel<Model>)
17
18 Model::Config
19 get_model_configuration(const ExecInfo& info, std::size_t n)
20 {
21 return Model::get_config(info, n);
22 }
23 template <typename Model>
24
25 requires(std::is_constructible_v<AutoGenerated::ContainerVariant,
28
29 Model::Config
30 get_model_configuration(const ExecInfo& info, std::size_t n)
31 {
32 (void)n;
33 (void)info;
34 return std::nullopt;
35 }
36
37}; // namespace Models
38
39#endif
Main owning object for Monte-Carlo particles.
Definition particles_container.hpp:59
Definition traits.hpp:158
Models definition.
Definition acetate.hpp:18
Model::Config get_model_configuration(const ExecInfo &info, std::size_t n)
Definition config_loader.hpp:19
Definition execinfo.hpp:21