Panzer  Version of the Day
Panzer_Evaluator_DomainInterface.hpp
Go to the documentation of this file.
1 #ifndef PANZER_EVALUATOR_DOMAIN_INTERFACE_HPP
2 #define PANZER_EVALUATOR_DOMAIN_INTERFACE_HPP
3 
4 namespace panzer {
5 
6  class Workset;
7 
13 
14  public:
15 
17  enum DomainType : int {
18  OWNED=0,
19  GHOST=1,
20  REAL=2,
21  VIRTUAL=3,
22  ALL=4
23  };
24 
31 
35  virtual ~DomainEvaluator() = default;
36 
42  void setDomain(const DomainType domain);
43 
49 
61  virtual int cellStartIndex(const panzer::Workset & workset) const;
62 
74  virtual int cellEndIndex(const panzer::Workset & workset) const;
75 
76  private:
77 
80 
81  };
82 
83 }
84 
85 #endif
panzer::DomainEvaluator::OWNED
Definition: Panzer_Evaluator_DomainInterface.hpp:18
panzer::DomainEvaluator::GHOST
All Owned cells for the workset on the MPI process.
Definition: Panzer_Evaluator_DomainInterface.hpp:19
panzer::DomainEvaluator
Mix-in interface to support cell "domains" in panzer.
Definition: Panzer_Evaluator_DomainInterface.hpp:12
panzer::DomainEvaluator::VIRTUAL
All Owned and Ghosted cells for the workset on the MPI process.
Definition: Panzer_Evaluator_DomainInterface.hpp:21
panzer::DomainEvaluator::ALL
All virtual cells for the workset on the MPI process.
Definition: Panzer_Evaluator_DomainInterface.hpp:22
panzer::Workset
Definition: Panzer_Workset.hpp:186
panzer::DomainEvaluator::cellEndIndex
virtual int cellEndIndex(const panzer::Workset &workset) const
Returns the non-inclusive end cell for the specified domain for a given workset.
Definition: Panzer_Evaluator_DomainInterface.cpp:32
panzer::DomainEvaluator::DomainType
DomainType
Domain types supported by worksets.
Definition: Panzer_Evaluator_DomainInterface.hpp:17
panzer::DomainEvaluator::getDomain
DomainType getDomain()
Get the domain for the evaluator.
Definition: Panzer_Evaluator_DomainInterface.cpp:9
panzer::DomainEvaluator::~DomainEvaluator
virtual ~DomainEvaluator()=default
Default destructor.
panzer::DomainEvaluator::cellStartIndex
virtual int cellStartIndex(const panzer::Workset &workset) const
Returns the starting cell for the specified domain for a given workset.
Definition: Panzer_Evaluator_DomainInterface.cpp:15
panzer::DomainEvaluator::setDomain
void setDomain(const DomainType domain)
Set the domain for the evaluator.
Definition: Panzer_Evaluator_DomainInterface.cpp:12
panzer::DomainEvaluator::REAL
All Ghosted cells for the workset on the MPI process.
Definition: Panzer_Evaluator_DomainInterface.hpp:20
panzer
Definition: Panzer_BasisValues_Evaluator_decl.hpp:54
panzer::DomainEvaluator::domain_
DomainType domain_
Domain for this evaluator.
Definition: Panzer_Evaluator_DomainInterface.hpp:79
panzer::DomainEvaluator::DomainEvaluator
DomainEvaluator(DomainType domain=ALL)
Constructor.
Definition: Panzer_Evaluator_DomainInterface.cpp:7