BioCMAMC-ST
simulation_getter.hpp
1#ifndef __SIMULATIONS_UNIT_GETTER_HPP__
2#define __SIMULATIONS_UNIT_GETTER_HPP__
3#include <mc/unit.hpp>
4#include <optional>
5#include <simulation/feed_descriptor.hpp>
6#include <simulation/probe.hpp>
7#include <span>
8
9namespace Simulation
10{
11 class SimulationUnit;
12 struct Dimensions;
13
14 class Getter
15 {
16 private:
18
19 public:
20 explicit Getter(SimulationUnit const* a);
21
22 Getter(const Getter& m);
23
24 Getter& operator=(const Getter& m) = delete;
25 Getter& operator=(Getter&& m) = delete;
26
27 ~Getter();
28
29 [[nodiscard]] double start_time() const noexcept;
30 [[nodiscard]] double endtime() const noexcept;
31 [[nodiscard]] bool two_phase_flow() const noexcept;
32 [[nodiscard]] Dimensions getDimensions() const noexcept;
33
34 [[nodiscard]] const std::unique_ptr<MC::MonteCarloUnit>&
35 mc_unit() const noexcept;
36 [[nodiscard]] const Simulation::Feed::SimulationFeed&
37 get_feed() const noexcept;
38
39 [[nodiscard]] std::span<const double> getCliqData() const;
40 [[nodiscard]] std::optional<std::span<const double>> getCgasData() const;
41 [[nodiscard]] std::span<const double> getContributionData() const;
42 [[nodiscard]] std::optional<std::span<const double>> getMTRData() const;
43
44 [[nodiscard]] std::span<double> getCliqData_mut() const;
45 [[nodiscard]] std::span<double> getContributionData_mut() const;
46 [[nodiscard]] std::ranges::subrange<ProbeIterator, ProbeIterator>
47 it_probes() const;
48 };
49
50}; // namespace Simulation
51
52#endif
const Simulation::Feed::SimulationFeed & get_feed() const noexcept
Definition simulation.getset.cpp:91
bool two_phase_flow() const noexcept
Definition simulation.getset.cpp:55
std::span< double > getContributionData_mut() const
Definition simulation.getset.cpp:139
double start_time() const noexcept
Definition simulation.getset.cpp:63
Dimensions getDimensions() const noexcept
Definition simulation.getset.cpp:77
double endtime() const noexcept
Definition simulation.getset.cpp:70
std::optional< std::span< const double > > getCgasData() const
Definition simulation.getset.cpp:114
~Getter()
Definition simulation.getset.cpp:48
Getter(SimulationUnit const *a)
Definition simulation.getset.cpp:36
std::span< double > getCliqData_mut() const
Definition simulation.getset.cpp:107
Getter & operator=(const Getter &m)=delete
Getter & operator=(Getter &&m)=delete
std::ranges::subrange< ProbeIterator, ProbeIterator > it_probes() const
Definition simulation.getset.cpp:146
SimulationUnit const * a_
Definition simulation_getter.hpp:17
std::optional< std::span< const double > > getMTRData() const
Definition simulation.getset.cpp:132
const std::unique_ptr< MC::MonteCarloUnit > & mc_unit() const noexcept
Definition simulation.getset.cpp:84
std::span< const double > getContributionData() const
Definition simulation.getset.cpp:125
std::span< const double > getCliqData() const
Definition simulation.getset.cpp:100
Definition simulation.hpp:45
Namespace that contains classes and structures related to Monte Carlo (MC) simulations.
Definition alias.hpp:15
Definition feed_descriptor.hpp:34
Namespace that contains classes and structures related to simulation handling.
Definition host_specific.hpp:12
MapProbes::const_iterator ProbeIterator
Definition probe.hpp:148
Definition dimensions.hpp:9