Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_ParameterLibraryAcceptor_DefaultImpl.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Panzer: A partial differential equation assembly
4// engine for strongly coupled complex multiphysics systems
5//
6// Copyright 2011 NTESS and the Panzer contributors.
7// SPDX-License-Identifier: BSD-3-Clause
8// *****************************************************************************
9// @HEADER
10
11#ifndef PANZER_PARAMETER_LIBRARY_ACCEPTOR_DEFAULT_IMPL_HPP
12#define PANZER_PARAMETER_LIBRARY_ACCEPTOR_DEFAULT_IMPL_HPP
13
15#include "Teuchos_Assert.hpp"
16
17namespace panzer {
18
26
27 public:
28
30
31 ParameterLibraryAcceptor_DefaultImpl(const Teuchos::RCP<panzer::ParamLib>& pl) :
32 m_param_lib(pl) {}
33
35
36 virtual void setParameterLibrary(const Teuchos::RCP<panzer::ParamLib>& pl)
37 {
38 TEUCHOS_TEST_FOR_EXCEPTION(nonnull(m_param_lib), std::logic_error,
39 "A parameter library has already been set on this object!");
40 m_param_lib = pl;
41 }
42
43 virtual Teuchos::RCP<panzer::ParamLib> getParameterLibrary() const
44 { return m_param_lib; }
45
46 private:
47
48 Teuchos::RCP<panzer::ParamLib> m_param_lib;
49
50 };
51
52}
53
54#endif
Pure Virtual base class for accepting the parameter library.
virtual Teuchos::RCP< panzer::ParamLib > getParameterLibrary() const
ParameterLibraryAcceptor_DefaultImpl(const Teuchos::RCP< panzer::ParamLib > &pl)
virtual void setParameterLibrary(const Teuchos::RCP< panzer::ParamLib > &pl)
Pure Virtual base class for accepting the parameter library.