20 #ifndef FIELD_PYTHON_HH_
21 #define FIELD_PYTHON_HH_
31 #include <pybind11/pybind11.h>
34 namespace py = pybind11;
37 #pragma GCC visibility push(hidden)
51 template <
int spacedim,
class Value>
62 DECLARE_EXCEPTION( ExcInvalidCompNumber, <<
"Field " << EI_FuncName::qval <<
" from the python module: " << EI_PModule::val
63 <<
" returns " << EI_Size::val <<
" components but should return " << EI_ValueSize::val <<
" components.\n" );
75 void set_python_field_from_class(
const string &file_name,
const string &class_name);
116 #pragma GCC visibility pop
Directing class of FieldValueCache.
Space< spacedim >::Point Point
Common abstract parent of all Field<...> classes.
TYPEDEF_ERR_INFO(EI_PModule, std::string)
std::string field_name_
Field name is necessary for set result.
DECLARE_EXCEPTION(ExcInvalidCompNumber,<< "Field "<< EI_FuncName::qval<< " from the python module: "<< EI_PModule::val<< " returns "<< EI_Size::val<< " components but should return "<< EI_ValueSize::val<< " components.\n")
TYPEDEF_ERR_INFO(EI_ValueSize, unsigned int)
TYPEDEF_ERR_INFO(EI_FuncName, std::string)
FieldAlgorithmBase< spacedim, Value > FactoryBaseType
FieldAlgorithmBase< spacedim, Value >::Point Point
Input::Record in_rec_
Accessor to Input::Record.
py::object user_class_instance_
Holds python instance of user class.
TYPEDEF_ERR_INFO(EI_Size, unsigned int)
const FieldCommon * self_field_ptr_
Pointer to FieldCommon that holds this fields (stores in set_dependency and uses in cache_reinit)
static const int registrar
Registrar of class to factory.
std::vector< const FieldCommon * > required_fields_
List of fields on which this field depends.
Container for various descendants of FieldCommonBase.
Helper struct stores data for initizalize descentants of FieldAlgorithmBase.