8#include <ryujin/base/compile_time_options.h>
11#include <deal.II/base/exceptions.h>
12#include <deal.II/base/parameter_acceptor.h>
13#include <deal.II/base/types.h>
31 template <
int dim,
typename Number =
double>
71 Assert(
handle_ != dealii::numbers::invalid_unsigned_int,
73 "Invalid handle: Cannot retrieve a valid handle. "
74 "get_handle() can only be called after a call to "
75 "prepare_projection(), or set_handle()."));
86 Assert(
handle_ == dealii::numbers::invalid_unsigned_int,
88 "Invalid state: Cannot set handle because we already "
89 "have a valid handle due to a prior call to "
90 "prepare_projection(), or set_handle()."));
101 handle_ = dealii::numbers::invalid_unsigned_int;
111 : ParameterAcceptor(subsection)
virtual void prepare_projection(const StateVector< Number > &old_state_vector)=0
SolutionTransfer(const std::string &subsection)
virtual void project(StateVector< Number > &new_state_vector)=0
void set_handle(unsigned int handle)
unsigned int get_handle() const