1 #ifndef VERTEXCFD_SCALARPARAMETEROBSERVER_HPP
2 #define VERTEXCFD_SCALARPARAMETEROBSERVER_HPP
4 #include "VertexCFD_GeneralScalarParameter.hpp"
5 #include "VertexCFD_ScalarParameter.hpp"
7 #include <Panzer_GlobalData.hpp>
9 #include <Teuchos_ParameterList.hpp>
19 template<
class EvalType>
23 using scalar_type =
typename EvalType::ScalarT;
29 void registerParameter(
const std::string& name,
30 const double default_value,
31 const Teuchos::ParameterList& plist,
32 scalar_type& ref_to_parameter);
37 update(
const panzer::GlobalData& global_data,
38 const panzer::Workset& workset,
39 const std::unordered_map<std::string,
40 std::unordered_map<std::string, double>>&
41 general_parameter_data);
48 virtual void updateStateWithNewParameters() = 0;
51 std::vector<ScalarParameter<EvalType>> _scalar_parameters;
52 std::vector<GeneralScalarParameter<EvalType>> _general_parameters;
60 #endif // end VERTEXCFD_SCALARPARAMETEROBSERVER_HPP