20 #ifndef LIBMESH_PARAMETER_MULTIACCESSOR_H 21 #define LIBMESH_PARAMETER_MULTIACCESSOR_H 46 template <
typename T=Number>
72 #ifdef LIBMESH_ENABLE_DEPRECATED 84 virtual void set (
const T & new_value)
override 95 libmesh_assert_equal_to(accessor->get(), val);
96 accessor->set(new_value);
103 virtual const T &
get ()
const override 110 for (std::size_t i=1; i <
_accessors.size(); ++i)
111 libmesh_assert_equal_to(
_accessors[i]->
get(), val);
119 virtual std::unique_ptr<ParameterAccessor<T>>
clone()
const override 123 pmp->
_accessors.push_back(accessor->clone().release());
125 return std::unique_ptr<ParameterAccessor<T>>(pmp);
146 #endif // LIBMESH_PARAMETER_MULTIACCESSOR_H ParameterMultiAccessor(const ParameterAccessor< T > ¶m_accessor)
virtual std::unique_ptr< ParameterAccessor< T > > clone() const override
virtual ParameterAccessor< T > & operator=(T *) override
void push_back(const ParameterAccessor< T > &new_accessor)
std::vector< ParameterAccessor< T > * > _accessors
Stores a user-provided pointer to a parameter.
~ParameterMultiAccessor()
virtual std::unique_ptr< ParameterAccessor< T > > clone() const =0
Base class for reading/writing sensitivity parameters.