BioCMAMC-ST
config_loader.hpp
1
#ifndef __MODEL_CONFIG_LOADER__
2
#define __MODEL_CONFIG_LOADER__
3
4
#include <mc/particles_container.hpp>
5
#include <mc/traits.hpp>
6
#include <variant_model.hpp>
7
8
namespace
Models
9
{
10
11
template
<
typename
Model>
12
13
requires
(std::is_constructible_v<AutoGenerated::ContainerVariant,
14
MC::ParticlesContainer<Model>
> &&
15
ConfigurableModel<Model>
)
16
17
Model::Config
get_model_configuration
(std::size_t n)
18
{
19
return
Model::get_config(n);
20
}
21
template
<
typename
Model>
22
23
requires
(std::is_constructible_v<AutoGenerated::ContainerVariant,
24
MC::ParticlesContainer<Model>
> &&
25
NonConfigurableModel<Model>
)
26
27
Model::Config
get_model_configuration
(std::size_t n)
28
{
29
(void)n;
30
return
std::nullopt;
31
}
32
33
};
// namespace Models
34
35
#endif
MC::ParticlesContainer
Main owning object for Monte-Carlo particles.
Definition
particles_container.hpp:28
ConfigurableModel
Definition
traits.hpp:154
NonConfigurableModel
Definition
traits.hpp:151
Models
Models definition.
Definition
config_loader.hpp:9
Models::get_model_configuration
Model::Config get_model_configuration(std::size_t n)
Definition
config_loader.hpp:17
apps
libs
models
public
models
config_loader.hpp
Generated by
1.14.0