43 const label fineLevelIndex,
44 const label coarseComm
47 const word coupleType(fineInterface.type());
49 auto* ctorPtr = lduInterfaceConstructorTable(coupleType);
57 *lduInterfaceConstructorTablePtr_
68 localRestrictAddressing,
69 neighbourRestrictAddressing,
79 const word& coupleType,
85 auto* ctorPtr = IstreamConstructorTable(coupleType);
93 *IstreamConstructorTablePtr_
97 return autoPtr<GAMGInterface>(ctorPtr(index, coarseInterfaces, is));
virtual label index() const
virtual const lduInterfacePtrsList & coarseInterfaces() const
static autoPtr< GAMGInterface > New(const label index, const lduInterfacePtrsList &coarseInterfaces, const lduInterface &fineInterface, const labelField &localRestrictAddressing, const labelField &neighbourRestrictAddressing, const label fineLevelIndex, const label coarseComm)
Return a pointer to a new interface created on freestore given.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
lduInterface() noexcept=default
Default construct.
A class for handling words, derived from Foam::string.
#define FatalErrorInLookup(lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalError.
UPtrList< const lduInterface > lduInterfacePtrsList
Store lists of lduInterface as a UPtrList.
Field< label > labelField
Specialisation of Field<T> for label.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
errorManipArg< error, int > exit(error &err, const int errNo=1)