1#ifndef __CASE_DATA__HPP__
2#define __CASE_DATA__HPP__
4#include "cma_utils/alias.hpp"
5#include <common/execinfo.hpp>
6#include <common/logger.hpp>
7#include <core/simulation_parameters.hpp>
10#include <simulation/feed_descriptor.hpp>
11#include <simulation/mass_transfer.hpp>
20 class FlowMapTransitionner;
83 void exec(std::shared_ptr<IO::Logger> logger,
CaseData&& case_data);
85 std::optional<Core::CaseData>
86 load(std::shared_ptr<IO::Logger>& logger,
89 std::optional<Simulation::Feed::SimulationFeed> feed = std::nullopt);
114 std::optional<std::size_t> force_run_id = std::nullopt);
Definition simulation.hpp:54
Definition host_specific.hpp:19
rust::Box< TransitionerWrapper > TransitionnerPtrType
Opaque type for flowmap transitioner.
Definition alias.hpp:14
Core component to perform simulation.
Definition data_exporter.hpp:19
std::optional< Core::CaseData > load(std::shared_ptr< IO::Logger > &logger, const ExecInfo &exec, const UserControlParameters &¶ms, std::optional< Simulation::Feed::SimulationFeed > feed=std::nullopt)
Definition case_data.cpp:117
void exec(std::shared_ptr< IO::Logger > logger, CaseData &&case_data)
Start simulation.
Definition case_data.cpp:59
ExecInfo runtime_init(int argc, char **argv, std::optional< std::size_t > force_run_id=std::nullopt)
Initializes the runtime environment based on command-line arguments and simulation parameters.
Definition case_data.cpp:127
Namespace that contains classes and structures related to simulation handling.
Definition host_specific.hpp:14
Holds the data required to execute a simulation case.
Definition case_data.hpp:39
ExecInfo exec_info
Information about the execution environment.
Definition case_data.hpp:77
SimulationParameters params
Parameters that configure the simulation.
Definition case_data.hpp:57
std::unique_ptr< Simulation::SimulationUnit > simulation
Unique pointer to the simulation unit.
Definition case_data.hpp:49
CaseData()
Definition case_data.cpp:52
CmaUtils::TransitionnerPtrType transitioner
Unique pointer to the flow map transitioner.
Definition case_data.hpp:68
Definition simulation_parameters.hpp:58
A structure to hold user-defined control parameters for simulation settings.
Definition simulation_parameters.hpp:24
Definition execinfo.hpp:12