Predicates::ActivePID< T > Struct Template Reference

#include <multi_predicates.h>

Inheritance diagram for Predicates::ActivePID< T >:

List of all members.

Public Member Functions

 ActivePID (const unsigned int proc_id)
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 Predicates::ActivePID< T >

Definition at line 300 of file multi_predicates.h.


Constructor & Destructor Documentation

template<typename T >
Predicates::ActivePID< T >::ActivePID ( const unsigned int  proc_id  )  [inline]

Definition at line 302 of file multi_predicates.h.

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

00303     {
00304       this->_predicates.push_back(new not_null<T>);
00305       this->_predicates.push_back(new active<T>);
00306       this->_predicates.push_back(new pid<T>(proc_id));
00307     }


Member Function Documentation

template<typename T >
void Predicates::abstract_multi_predicate< T >::deep_copy ( const abstract_multi_predicate< T > &  rhs  )  [inline, protected, inherited]

Definition at line 96 of file multi_predicates.h.

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

Referenced by Predicates::abstract_multi_predicate< T >::abstract_multi_predicate(), and Predicates::abstract_multi_predicate< T >::operator=().

00097     {
00098       for (unsigned int i=0; i<rhs._predicates.size(); ++i)
00099         _predicates.push_back(rhs._predicates[i]->clone());
00100     }

template<typename T >
virtual bool Predicates::abstract_multi_predicate< T >::operator() ( const T &  it  )  const [inline, virtual, inherited]

Definition at line 68 of file multi_predicates.h.

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

00069     {
00070       for (unsigned int i=0; i<_predicates.size(); ++i)
00071         {
00072           const predicate<T>* pred = _predicates[i];
00073 
00074           libmesh_assert (pred != NULL);
00075           
00076           if ( ! (*pred)(it) )
00077             return false;
00078         }
00079       
00080       return true;
00081     }


Member Data Documentation


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

Site Created By: libMesh Developers
Last modified: November 25 2009 03:45:19.

Hosted By:
SourceForge.net Logo