MoReFEM
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes
MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT > Class Template Reference

A specific version of MoReFEMData which is to be used in most of the tests written after July 2023. More...

#include <MoReFEMDataForTest.hpp>

Inheritance diagram for MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >:
Collaboration diagram for MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >:

Public Types

using self = MoReFEMDataForTest<ModelSettingsT, TimeManagerT>
 Alias to the type of the class.
 
using parent
 Alias to parent.
 
using const_unique_ptr = std::unique_ptr<self>
 Alias to unique_ptr.
 
using input_data_type = Internal::InputDataNS::EmptyInputData
 Convenient alias for InputData instantiation to use.
 
using model_settings_type = typename parent::model_settings_type
 Alias to model settings type.
 
using time_manager_type = TimeManagerT
 Alias to the object in charge of time management.
 

Public Member Functions

const Internal::ParallelismGetParallelismPtr () const noexcept
 No Parallelism object foreseen so far so this method returns nullptr.
 
Special members.
 MoReFEMDataForTest (const std::filesystem::path &result_directory_subpath)
 Constructor.
 
virtual ~MoReFEMDataForTest () override
 Destructor.
 
 MoReFEMDataForTest (const MoReFEMDataForTest &rhs)=delete
 The copy constructor.
 
 MoReFEMDataForTest (MoReFEMDataForTest &&rhs)=delete
 The move constructor.
 
MoReFEMDataForTestoperator= (const MoReFEMDataForTest &rhs)=delete
 The (copy) operator=.
 
MoReFEMDataForTestoperator= (MoReFEMDataForTest &&rhs)=delete
 The (move) operator=.
 

Static Public Member Functions

static constexpr bool HasParallelismField ()
 Specify there are no Parallelism field.
 

Static Public Attributes

static constexpr is_morefem_data ConceptIsMoReFEMData = is_morefem_data::for_test
 Helper variable to define the MoReFEMDataType concept.
 

Detailed Description

template<class ModelSettingsT, TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
class MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >

A specific version of MoReFEMData which is to be used in most of the tests written after July 2023.

Classical MoReFEMData holds InputData information, but for tests we typically do not need it: there are little reasons to provide data that may be modified by the end user through a Lua file, and it is more sensible to set the data through a ModelSettings object instead.

The purpose of current class is to provide an alternate for MoReFEMData just for those tests; it should not be used outside of this use case for genuine models.

Member Typedef Documentation

◆ self

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
using MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::self = MoReFEMDataForTest<ModelSettingsT, TimeManagerT>

Alias to the type of the class.

◆ parent

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
using MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::parent
Initial value:
Internal::MoReFEMDataNS::AbstractClass
<
program_type::test,
TimeManagerT,
ModelSettingsT,
Internal::InputDataNS::EmptyInputData
>

Alias to parent.

◆ input_data_type

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
using MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::input_data_type = Internal::InputDataNS::EmptyInputData

Convenient alias for InputData instantiation to use.

Here it is a dedicated class that holds no value.

Constructor & Destructor Documentation

◆ MoReFEMDataForTest() [1/3]

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::MoReFEMDataForTest ( const std::filesystem::path & result_directory_subpath)
explicit

Constructor.

Parameters
[in]result_directory_subpathThe path inside the generic $MOREFEM_TEST_OUTPUT_DIR output directory to place the outputs specifically related to the test considered.

◆ MoReFEMDataForTest() [2/3]

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::MoReFEMDataForTest ( const MoReFEMDataForTest< ModelSettingsT, TimeManagerT > & rhs)
delete

The copy constructor.

Parameters
[in]rhsThe object from which the construction occurs.

◆ MoReFEMDataForTest() [3/3]

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::MoReFEMDataForTest ( MoReFEMDataForTest< ModelSettingsT, TimeManagerT > && rhs)
delete

The move constructor.

Parameters
[in]rhsThe object from which the construction occurs.

Member Function Documentation

◆ operator=() [1/2]

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
MoReFEMDataForTest & MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::operator= ( const MoReFEMDataForTest< ModelSettingsT, TimeManagerT > & rhs)
delete

The (copy) operator=.

Parameters
[in]rhsThe object from which the affectation occurs.
Returns
Reference to the object (to enable chained affectation).

◆ operator=() [2/2]

template<class ModelSettingsT , TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerT>
MoReFEMDataForTest & MoReFEM::MoReFEMDataForTest< ModelSettingsT, TimeManagerT >::operator= ( MoReFEMDataForTest< ModelSettingsT, TimeManagerT > && rhs)
delete

The (move) operator=.

Parameters
[in]rhsThe object from which the affectation occurs.
Returns
Reference to the object (to enable chained affectation).

The documentation for this class was generated from the following file: