libMesh
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
libMesh::Predicates::Active< T > Struct Template Reference

Used to iterate over non-nullptr, active entries in a container. More...

#include <multi_predicates.h>

Inheritance diagram for libMesh::Predicates::Active< T >:
[legend]

Public Member Functions

 Active ()
 
virtual bool operator() (const T &it) const
 

Protected Member Functions

void deep_copy (const abstract_multi_predicate &rhs)
 

Protected Attributes

std::vector< predicate< T > * > _predicates
 

Detailed Description

template<typename T>
struct libMesh::Predicates::Active< T >

Used to iterate over non-nullptr, active entries in a container.

Definition at line 152 of file multi_predicates.h.

Constructor & Destructor Documentation

◆ Active()

template<typename T >
libMesh::Predicates::Active< T >::Active ( )
inline

Definition at line 155 of file multi_predicates.h.

156  {
157  this->_predicates.push_back(new not_null<T>);
158  this->_predicates.push_back(new active<T>);
159  }

References libMesh::Predicates::abstract_multi_predicate< T >::_predicates.

Member Function Documentation

◆ deep_copy()

template<typename T >
void libMesh::Predicates::abstract_multi_predicate< T >::deep_copy ( const abstract_multi_predicate< T > &  rhs)
inlineprotectedinherited

◆ operator()()

template<typename T >
virtual bool libMesh::Predicates::abstract_multi_predicate< T >::operator() ( const T &  it) const
inlinevirtualinherited

Definition at line 80 of file multi_predicates.h.

81  {
82  for (const auto pred : _predicates)
83  {
85 
86  if (!(*pred)(it))
87  return false;
88  }
89 
90  return true;
91  }

References libMesh::Predicates::abstract_multi_predicate< T >::_predicates, libMesh::libmesh_assert(), and pred.

Member Data Documentation

◆ _predicates

template<typename T >
std::vector<predicate<T> *> libMesh::Predicates::abstract_multi_predicate< T >::_predicates
protectedinherited

Definition at line 113 of file multi_predicates.h.

Referenced by libMesh::Predicates::Active< T >::Active(), libMesh::Predicates::ActiveLocal< T >::ActiveLocal(), libMesh::Predicates::ActiveLocalSubdomain< T >::ActiveLocalSubdomain(), libMesh::Predicates::ActiveNotLocal< T >::ActiveNotLocal(), libMesh::Predicates::ActiveOnBoundary< T >::ActiveOnBoundary(), libMesh::Predicates::ActivePID< T >::ActivePID(), libMesh::Predicates::ActiveSemiLocal< T >::ActiveSemiLocal(), libMesh::Predicates::ActiveSubdomain< T >::ActiveSubdomain(), libMesh::Predicates::ActiveSubdomainSet< T >::ActiveSubdomainSet(), libMesh::Predicates::ActiveType< T >::ActiveType(), libMesh::Predicates::Ancestor< T >::Ancestor(), libMesh::Predicates::BID< T >::BID(), libMesh::Predicates::BND< T >::BND(), libMesh::Predicates::BoundarySide< T >::BoundarySide(), libMesh::Predicates::abstract_multi_predicate< T >::deep_copy(), libMesh::Predicates::Evaluable< T >::Evaluable(), libMesh::Predicates::FaceLocal< T >::FaceLocal(), libMesh::Predicates::Flagged< T >::Flagged(), libMesh::Predicates::FlaggedPID< T >::FlaggedPID(), libMesh::Predicates::Ghost< T >::Ghost(), libMesh::Predicates::IsNull< T >::IsNull(), libMesh::Predicates::Level< T >::Level(), libMesh::Predicates::Local< T >::Local(), libMesh::Predicates::LocalLevel< T >::LocalLevel(), libMesh::Predicates::LocalNotLevel< T >::LocalNotLevel(), libMesh::Predicates::NotActive< T >::NotActive(), libMesh::Predicates::NotAncestor< T >::NotAncestor(), libMesh::Predicates::NotLevel< T >::NotLevel(), libMesh::Predicates::NotLocal< T >::NotLocal(), libMesh::Predicates::NotNull< T >::NotNull(), libMesh::Predicates::NotPID< T >::NotPID(), libMesh::Predicates::NotSubActive< T >::NotSubActive(), libMesh::Predicates::abstract_multi_predicate< T >::operator()(), libMesh::Predicates::abstract_multi_predicate< T >::operator=(), libMesh::Predicates::PID< T >::PID(), libMesh::Predicates::SubActive< T >::SubActive(), libMesh::Predicates::Type< T >::Type(), and libMesh::Predicates::abstract_multi_predicate< T >::~abstract_multi_predicate().


The documentation for this struct was generated from the following file:
libMesh::libmesh_assert
libmesh_assert(ctx)
libMesh::Predicates::abstract_multi_predicate::_predicates
std::vector< predicate< T > * > _predicates
Definition: multi_predicates.h:113
pred
PredBase * pred
The predicate object.
Definition: variant_filter_iterator.h:350