Wildmeshing Toolkit
wmtk::operations::NewAttributeStrategy Class Referenceabstract

#include <NewAttributeStrategy.hpp>

Inheritance diagram for wmtk::operations::NewAttributeStrategy:
[legend]
Collaboration diagram for wmtk::operations::NewAttributeStrategy:
[legend]

Public Types

using SimplexPredicateType = std::function< bool(const simplex::Simplex &)>
 

Public Member Functions

virtual ~NewAttributeStrategy ()
 
virtual bool matches_attribute (const attribute::MeshAttributeHandle &) const =0
 
virtual void update_handle_mesh (Mesh &)=0
 
virtual PrimitiveType primitive_type () const =0
 
virtual Meshmesh ()=0
 
const Meshmesh () const
 
void set_simplex_predicate (SimplexPredicateType &&f)
 
void set_simplex_predicate (BasicSimplexPredicate f)
 
std::bitset< 2 > evaluate_predicate (PrimitiveType pt, const std::array< Tuple, 2 > &simplices) const
 
std::vector< wmtk::attribute::MeshAttributeHandlesources () const final override
 
virtual bool invalid_state () const =0
 
virtual std::string name () const =0
 
- Public Member Functions inherited from wmtk::operations::AttributeTransferEdge
virtual ~AttributeTransferEdge ()=0
 
virtual std::vector< wmtk::attribute::MeshAttributeHandletargets () const =0
 

Private Attributes

SimplexPredicateType m_simplex_predicate = nullptr
 

Detailed Description

Definition at line 21 of file NewAttributeStrategy.hpp.

Member Typedef Documentation

◆ SimplexPredicateType

Definition at line 24 of file NewAttributeStrategy.hpp.

Constructor & Destructor Documentation

◆ ~NewAttributeStrategy()

wmtk::operations::NewAttributeStrategy::~NewAttributeStrategy ( )
virtualdefault

Member Function Documentation

◆ evaluate_predicate()

std::bitset< 2 > wmtk::operations::NewAttributeStrategy::evaluate_predicate ( PrimitiveType  pt,
const std::array< Tuple, 2 > &  simplices 
) const

Definition at line 34 of file NewAttributeStrategy.cpp.

References m_simplex_predicate, mesh(), and wmtk::Mesh::parent_scope().

Here is the call graph for this function:

◆ invalid_state()

virtual bool wmtk::operations::NewAttributeStrategy::invalid_state ( ) const
pure virtual

◆ matches_attribute()

virtual bool wmtk::operations::NewAttributeStrategy::matches_attribute ( const attribute::MeshAttributeHandle ) const
pure virtual

◆ mesh() [1/2]

const Mesh & wmtk::operations::NewAttributeStrategy::mesh ( ) const

Definition at line 12 of file NewAttributeStrategy.cpp.

References mesh().

Here is the call graph for this function:

◆ mesh() [2/2]

virtual Mesh& wmtk::operations::NewAttributeStrategy::mesh ( )
pure virtual

◆ name()

virtual std::string wmtk::operations::NewAttributeStrategy::name ( ) const
pure virtual

◆ primitive_type()

virtual PrimitiveType wmtk::operations::NewAttributeStrategy::primitive_type ( ) const
pure virtual

◆ set_simplex_predicate() [1/2]

void wmtk::operations::NewAttributeStrategy::set_simplex_predicate ( BasicSimplexPredicate  f)

Definition at line 21 of file NewAttributeStrategy.cpp.

References wmtk::operations::Default, wmtk::Mesh::is_boundary(), wmtk::operations::IsInterior, mesh(), wmtk::operations::None, and set_simplex_predicate().

Here is the call graph for this function:

◆ set_simplex_predicate() [2/2]

void wmtk::operations::NewAttributeStrategy::set_simplex_predicate ( SimplexPredicateType &&  f)

Definition at line 16 of file NewAttributeStrategy.cpp.

References m_simplex_predicate.

Referenced by set_simplex_predicate().

Here is the caller graph for this function:

◆ sources()

std::vector<wmtk::attribute::MeshAttributeHandle> wmtk::operations::NewAttributeStrategy::sources ( ) const
inlinefinaloverridevirtual

Implements wmtk::operations::AttributeTransferEdge.

Definition at line 42 of file NewAttributeStrategy.hpp.

◆ update_handle_mesh()

virtual void wmtk::operations::NewAttributeStrategy::update_handle_mesh ( Mesh )
pure virtual

Member Data Documentation

◆ m_simplex_predicate

SimplexPredicateType wmtk::operations::NewAttributeStrategy::m_simplex_predicate = nullptr
private

Definition at line 49 of file NewAttributeStrategy.hpp.

Referenced by evaluate_predicate(), and set_simplex_predicate().


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