Documentation 6b54b78464
Loading...
Searching...
No Matches
CIntegrationFactory.hpp
Go to the documentation of this file.
1/*!
2 * \file CIntegrationFactory.hpp
3 * \brief Headers of the CIntegrationFactory class
4 * \author T. Albring
5 * \version 8.5.0 "Harrier"
6 *
7 * SU2 Project Website: https://su2code.github.io
8 *
9 * The SU2 Project is maintained by the SU2 Foundation
10 * (http://su2foundation.org)
11 *
12 * Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
13 *
14 * SU2 is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
18 *
19 * SU2 is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Lesser General Public License for more details.
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with SU2. If not, see <http://www.gnu.org/licenses/>.
26 */
27#pragma once
28
29#include "../../include/solvers/CSolverFactory.hpp"
30
31class CIntegration;
32class CConfig;
33
34/*!
35 * \brief Factory for integration classes.
36 * \ingroup Drivers
37 */
39 public:
40 /*!
41 * \brief Deleted constructor to avoid creating instances of this class
42 */
44
45 /*!
46 * \brief Create the integration container based on the current main solver
47 * \param[in] kindSolver - The kind of main solver
48 * \param[in] solver_container - The solver container
49 * \return - Pointer to the allocated integration container
50 */
51 static CIntegration** CreateIntegrationContainer(MAIN_SOLVER kindSolver, const CSolver * const *solver_container);
52
53 /*!
54 * \brief Create a new integration instance based on the current sub solver
55 * \param[in] integrationType - The integration type
56 * \return - Pointer to the allocated integration instance
57 */
58 static CIntegration* CreateIntegration(INTEGRATION_TYPE integrationType);
59
60};
INTEGRATION_TYPE
Definition CSolverFactory.hpp:70
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Factory for integration classes.
Definition CIntegrationFactory.hpp:38
static CIntegration ** CreateIntegrationContainer(MAIN_SOLVER kindSolver, const CSolver *const *solver_container)
Create the integration container based on the current main solver.
Definition CIntegrationFactory.cpp:35
static CIntegration * CreateIntegration(INTEGRATION_TYPE integrationType)
Create a new integration instance based on the current sub solver.
Definition CIntegrationFactory.cpp:51
CIntegrationFactory()=delete
Deleted constructor to avoid creating instances of this class.
Main class for doing the space integration, time integration, and monitoring of a system of Partial D...
Definition CIntegration.hpp:47
Definition CSolver.hpp:71
MAIN_SOLVER
different solver types for the CFD component
Definition option_structure.hpp:302