Panzer  Version of the Day
Panzer_ResponseEvaluatorFactory_IPCoordinates.hpp
Go to the documentation of this file.
1 #ifndef __Panzer_ResponseEvaluatorFactory_IPCoordinates_hpp__
2 #define __Panzer_ResponseEvaluatorFactory_IPCoordinates_hpp__
3 
4 #include <string>
5 
6 #include "PanzerDiscFE_config.hpp"
8 #include "Panzer_BC.hpp"
9 #include "Panzer_Traits.hpp"
11 
12 #include <mpi.h>
13 
14 namespace panzer {
15 
18 template <typename EvalT>
20 public:
21 
23  : cubatureDegree_(cubatureDegree) {}
24 
26 
36  virtual Teuchos::RCP<ResponseBase> buildResponseObject(const std::string & responseName,
37  const std::vector<WorksetDescriptor> & eBlocks) const;
38 
50  virtual void buildAndRegisterEvaluators(const std::string & responseName,
52  const panzer::PhysicsBlock & physicsBlock,
53  const Teuchos::ParameterList & user_data) const;
54 
62  virtual bool typeSupported() const;
63 
64 protected:
66  int getCubatureDegree() const { return cubatureDegree_; }
67 
68 private:
70 };
71 
74 
75  template <typename T>
76  Teuchos::RCP<ResponseEvaluatorFactoryBase> build() const
77  { return Teuchos::rcp(new ResponseEvaluatorFactory_IPCoordinates<T>(cubatureDegree)); }
78 };
79 
80 }
81 
83 
84 #endif
Object that contains information on the physics and discretization of a block of elements with the SA...
int getCubatureDegree() const
Accessor method for Cubature degree (can be used by sub classes)
virtual Teuchos::RCP< ResponseBase > buildResponseObject(const std::string &responseName, const std::vector< WorksetDescriptor > &eBlocks) const
virtual void buildAndRegisterEvaluators(const std::string &responseName, PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &physicsBlock, const Teuchos::ParameterList &user_data) const