87#ifndef Foam_Function1Types_CodedFunction1_H
88#define Foam_Function1Types_CodedFunction1_H
107 public Function1<Type>,
115 const word redirectName_;
117 mutable autoPtr<Function1<Type>> redirectFunctionPtr_;
163 =
"codedFunction1Template.C";
167 =
"codedFunction1Template.H";
179 const word& entryName,
201 virtual inline Type
value(
const scalar
x)
const;
Function1 with the code supplied by an on-the-fly compiled C++ expression.
CodedFunction1(const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
Construct from entry name, dictionary and optional registry.
virtual tmp< Function1< Type > > clone() const
Return a clone.
virtual const dictionary & codeContext() const
Additional 'codeContext' dictionary to pass through.
void operator=(const CodedFunction1< Type > &)=delete
No copy assignment.
virtual void prepare(dynamicCode &, const dynamicCodeContext &) const
Adapt the context for the current object.
virtual void writeData(Ostream &os) const
Write in dictionary format.
TypeName("coded")
Runtime type information.
static constexpr const char *const codeTemplateC
Name of the C code template to be used.
virtual const dictionary & codeDict() const
virtual Type value(const scalar x) const
Return value at current time.
virtual ~CodedFunction1()=default
Destructor.
virtual void clearRedirect() const
Clear redirected object(s).
static constexpr const char *const codeTemplateH
Name of the H code template to be used.
virtual dlLibraryTable & libs() const
Mutable access to the loaded dynamic libraries.
virtual string description() const
Description (type + name) for the output.
Function1(const word &entryName, const objectRegistry *obrPtr=nullptr)
Construct from entry name.
static tmp< Function1< Type > > Clone(const Derived &fun)
Clone a Function1.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
codedBase(const codedBase &)=delete
No copy construct.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A table of dynamically loaded libraries.
Encapsulation of dynamic code dictionaries.
Tools for handling dynamic code compilation.
Registry of regIOobjects.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
void rhs(fvMatrix< typename Expr::value_type > &m, const Expr &expression)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.