22 { FortranInstance::getInstance<FortranInstance>()->upInit(); }
25 { FortranInstance::getInstance<FortranInstance>()->upEvnt(); }
28 { *veto = FortranInstance::getInstance<FortranInstance>()->upVeto(); }
41 <<
" destroyed while it was the "
42 "current active instance." << std::endl;
53 if (currentInstance && currentInstance !=
this)
56 <<
"::enter() called from a different "
57 "instance while an instance was already active."
60 if (!currentInstance && instanceNesting != 0)
63 <<
"::enter() called on an empty "
64 "instance, but instance counter is nonzero."
67 currentInstance =
this;
76 <<
"::leave() called without an "
77 "active instance." << std::endl;
78 else if (currentInstance !=
this)
81 <<
"::leave() called from a "
82 "different instance." << std::endl;
83 else if (instanceNesting <= 0)
86 <<
"::leave() called with a "
87 "nesting level of zero." << std::endl;
89 if (--instanceNesting == 0)
96 <<
"FortranInstance::getInstance() called from "
97 "a Fortran context, but no current instance "
98 "has been registered." << std::endl;
107 <<
"::upInit() stub called. "
108 "If user process needs to be generated, please derive "
109 "and implement the upInit() method." << std::endl;
116 <<
"::upEvnt() stub called. "
117 "If user process needs to be generated, please derive "
118 "and implement the upEvnt() method." << std::endl;
static void throwMissingInstance()
std::string friendlyName(std::string const &iFullName)
static FortranInstance * currentInstance
float __attribute__((vector_size(8))) float32x2_t
virtual ~FortranInstance()