27#ifndef OPM_MATERIAL_ENSURE_FINALIZED_HPP
28#define OPM_MATERIAL_ENSURE_FINALIZED_HPP
33#include <opm/common/utility/gpuDecorators.hpp>
36#define OPM_CHECK_PARAM_FINALIZED 1
38#if ! defined(NDEBUG) && OPM_CHECK_PARAM_FINALIZED
39#define USE_OPM_CHECK_PARAM_FINALIZED 1
50#if USE_OPM_CHECK_PARAM_FINALIZED
59#if USE_OPM_CHECK_PARAM_FINALIZED
65 OPM_HOST_DEVICE
void check()
const
67#if USE_OPM_CHECK_PARAM_FINALIZED
69#if OPM_IS_INSIDE_DEVICE_FUNCTION
70 assert(
false &&
"Parameter class has not been finalized before usage!");
72 throw std::runtime_error(
"Parameter class has not been finalized before usage!");
84#if USE_OPM_CHECK_PARAM_FINALIZED
90#undef USE_OPM_CHECK_PARAM_FINALIZED
Default implementation for asserting finalization of parameter objects.
Definition EnsureFinalized.hpp:49
OPM_HOST_DEVICE EnsureFinalized()
The default constructor.
Definition EnsureFinalized.hpp:58
OPM_HOST_DEVICE void finalize()
Mark the object as finalized.
Definition EnsureFinalized.hpp:82
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30