Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 namespace PHAL {
00008
00009
00010 template<typename EvalT, typename Traits>
00011 Constant<EvalT, Traits>::Constant(Teuchos::ParameterList& p) :
00012 value( p.get<RealType>("Value") ),
00013 constant( p.get<std::string>("Name"),
00014 p.get< Teuchos::RCP<PHX::DataLayout> >("Data Layout") )
00015 {
00016 this->addEvaluatedField(constant);
00017
00018 std::string n = "Constant Provider: " + constant.fieldTag().name();
00019 this->setName(n+PHX::TypeString<EvalT>::value);
00020 }
00021
00022
00023 template<typename EvalT, typename Traits>
00024 void Constant<EvalT, Traits>::
00025 postRegistrationSetup(typename Traits::SetupData d,
00026 PHX::FieldManager<Traits>& vm)
00027 {
00028 this->utils.setFieldData(constant,vm);
00029
00030 for (std::size_t i = 0; i < static_cast<std::size_t>(constant.size()); ++i)
00031 constant[i] = value;
00032 }
00033
00034
00035 template<typename EvalT, typename Traits>
00036 void Constant<EvalT, Traits>::evaluateFields(typename Traits::EvalData d)
00037 { }
00038
00039
00040 }