MFEM  v4.5.2
Finite element discretization library
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mfem::MeshOperatorSequence Class Reference

#include <mesh_operators.hpp>

Inheritance diagram for mfem::MeshOperatorSequence:
[legend]
Collaboration diagram for mfem::MeshOperatorSequence:
[legend]

Public Member Functions

 MeshOperatorSequence ()
 Constructor. Use the Append() method to create the sequence. More...
 
virtual ~MeshOperatorSequence ()
 Delete all operators from the sequence. More...
 
void Append (MeshOperator *mc)
 Add an operator to the end of the sequence. The MeshOperatorSequence assumes ownership of the operator. More...
 
Array< MeshOperator * > & GetSequence ()
 Access the underlying sequence. More...
 
virtual void Reset ()
 Reset all MeshOperators in the sequence. More...
 
- Public Member Functions inherited from mfem::MeshOperator
bool Apply (Mesh &mesh)
 Perform the mesh operation. More...
 
bool Stop () const
 Check if STOP action is requested, e.g. stopping criterion is satisfied. More...
 
bool Repeat () const
 Check if REPEAT action is requested, i.e. FiniteElementSpaces and GridFunctions need to be updated, and Apply() must be called again. More...
 
bool Continue () const
 Check if CONTINUE action is requested, i.e. FiniteElementSpaces and GridFunctions need to be updated and computations should continue. More...
 
bool Refined () const
 Check if the mesh was refined. More...
 
bool Derefined () const
 Check if the mesh was de-refined. More...
 
bool Rebalanced () const
 Check if the mesh was rebalanced. More...
 
int GetActionInfo () const
 Get the full ActionInfo value generated by the last call to Apply(). More...
 
virtual ~MeshOperator ()
 The destructor is virtual. More...
 

Protected Member Functions

 MeshOperatorSequence (const MeshOperatorSequence &)
 Do not allow copy construction, due to assumed ownership. More...
 
MeshOperatorSequenceoperator= (const MeshOperatorSequence &s)=delete
 Do not allow copy assignment, due to assumed ownership. More...
 
virtual int ApplyImpl (Mesh &mesh)
 Apply the MeshOperatorSequence. More...
 
- Protected Member Functions inherited from mfem::MeshOperator
 MeshOperator ()
 Constructor to be used by derived classes. More...
 

Protected Attributes

int step
 
Array< MeshOperator * > sequence
 MeshOperators sequence, owned by us. More...
 

Additional Inherited Members

- Public Types inherited from mfem::MeshOperator
enum  Action {
  NONE = 0, CONTINUE = 1, STOP = 2, REPEAT = 3,
  MASK_UPDATE = 1, MASK_ACTION = 3
}
 Action and information constants and masks. More...
 
enum  Info { REFINED = 4*1, DEREFINED = 4*2, REBALANCED = 4*3, MASK_INFO = ~3 }
 

Detailed Description

Composition of MeshOperators into a sequence. Use the Append() method to create the sequence.

Definition at line 126 of file mesh_operators.hpp.

Constructor & Destructor Documentation

◆ MeshOperatorSequence() [1/2]

mfem::MeshOperatorSequence::MeshOperatorSequence ( const MeshOperatorSequence )
inlineprotected

Do not allow copy construction, due to assumed ownership.

Definition at line 133 of file mesh_operators.hpp.

◆ MeshOperatorSequence() [2/2]

mfem::MeshOperatorSequence::MeshOperatorSequence ( )
inline

Constructor. Use the Append() method to create the sequence.

Definition at line 145 of file mesh_operators.hpp.

◆ ~MeshOperatorSequence()

mfem::MeshOperatorSequence::~MeshOperatorSequence ( )
virtual

Delete all operators from the sequence.

Definition at line 18 of file mesh_operators.cpp.

Member Function Documentation

◆ Append()

void mfem::MeshOperatorSequence::Append ( MeshOperator mc)
inline

Add an operator to the end of the sequence. The MeshOperatorSequence assumes ownership of the operator.

Definition at line 152 of file mesh_operators.hpp.

◆ ApplyImpl()

int mfem::MeshOperatorSequence::ApplyImpl ( Mesh mesh)
protectedvirtual

Apply the MeshOperatorSequence.

Returns
ActionInfo value corresponding to the last applied operator from the sequence.

Implements mfem::MeshOperator.

Definition at line 27 of file mesh_operators.cpp.

◆ GetSequence()

Array<MeshOperator*>& mfem::MeshOperatorSequence::GetSequence ( )
inline

Access the underlying sequence.

Definition at line 155 of file mesh_operators.hpp.

◆ operator=()

MeshOperatorSequence& mfem::MeshOperatorSequence::operator= ( const MeshOperatorSequence s)
protecteddelete

Do not allow copy assignment, due to assumed ownership.

◆ Reset()

void mfem::MeshOperatorSequence::Reset ( )
virtual

Reset all MeshOperators in the sequence.

Implements mfem::MeshOperator.

Definition at line 44 of file mesh_operators.cpp.

Member Data Documentation

◆ sequence

Array<MeshOperator*> mfem::MeshOperatorSequence::sequence
protected

MeshOperators sequence, owned by us.

Definition at line 130 of file mesh_operators.hpp.

◆ step

int mfem::MeshOperatorSequence::step
protected

Definition at line 129 of file mesh_operators.hpp.


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