preCICE v3.1.1
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
precice::action::Action Class Referenceabstract

Abstract base class for configurable actions on data and/or meshes. More...

#include <Action.hpp>

Inheritance diagram for precice::action::Action:
[legend]
Collaboration diagram for precice::action::Action:
[legend]

Public Types

enum  Timing { WRITE_MAPPING_POST , READ_MAPPING_POST }
 Defines the time and place of application of the action. More...
 

Public Member Functions

 Action (Timing timing, const mesh::PtrMesh &mesh, mapping::Mapping::MeshRequirement requirement)
 
 Action (Timing timing, const mesh::PtrMesh &mesh)
 
Actionoperator= (Action &&)=delete
 
virtual ~Action ()=default
 Destructor, empty.
 
virtual void performAction ()=0
 Performs the action, to be overwritten by subclasses.
 
Timing getTiming () const
 Returns the timing of the action.
 
const mesh::PtrMeshgetMesh () const
 Returns the mesh carrying the data used in the action.
 
mapping::Mapping::MeshRequirement getMeshRequirement () const
 Returns the mesh requirement of this action.
 

Private Attributes

Timing _timing
 Determines when the action will be executed.
 
mesh::PtrMesh _mesh
 Mesh carrying the data used in the action.
 
mapping::Mapping::MeshRequirement _meshRequirement = mapping::Mapping::MeshRequirement::UNDEFINED
 The mesh requirements for the mesh.
 

Detailed Description

Abstract base class for configurable actions on data and/or meshes.

Actions are executed on call of precice::Participant::initialize() and precice::Participant::advance(). They can change meshes and in particular data values.

Definition at line 14 of file Action.hpp.

Member Enumeration Documentation

◆ Timing

Defines the time and place of application of the action.

Enumerator
WRITE_MAPPING_POST 
READ_MAPPING_POST 

Definition at line 17 of file Action.hpp.

Constructor & Destructor Documentation

◆ Action() [1/2]

precice::action::Action::Action ( Timing timing,
const mesh::PtrMesh & mesh,
mapping::Mapping::MeshRequirement requirement )
inline

Definition at line 22 of file Action.hpp.

◆ Action() [2/2]

precice::action::Action::Action ( Timing timing,
const mesh::PtrMesh & mesh )
inline

Definition at line 32 of file Action.hpp.

◆ ~Action()

virtual precice::action::Action::~Action ( )
virtualdefault

Destructor, empty.

Member Function Documentation

◆ getMesh()

const mesh::PtrMesh & precice::action::Action::getMesh ( ) const
inline

Returns the mesh carrying the data used in the action.

Definition at line 57 of file Action.hpp.

◆ getMeshRequirement()

mapping::Mapping::MeshRequirement precice::action::Action::getMeshRequirement ( ) const
inline

Returns the mesh requirement of this action.

Definition at line 63 of file Action.hpp.

◆ getTiming()

Timing precice::action::Action::getTiming ( ) const
inline

Returns the timing of the action.

Definition at line 51 of file Action.hpp.

◆ operator=()

Action & precice::action::Action::operator= ( Action && )
delete

◆ performAction()

virtual void precice::action::Action::performAction ( )
pure virtual

Member Data Documentation

◆ _mesh

mesh::PtrMesh precice::action::Action::_mesh
private

Mesh carrying the data used in the action.

Definition at line 73 of file Action.hpp.

◆ _meshRequirement

mapping::Mapping::MeshRequirement precice::action::Action::_meshRequirement = mapping::Mapping::MeshRequirement::UNDEFINED
private

The mesh requirements for the mesh.

Definition at line 76 of file Action.hpp.

◆ _timing

Timing precice::action::Action::_timing
private

Determines when the action will be executed.

Definition at line 70 of file Action.hpp.


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