OpenVDB 12.1.0

Loading...
Searching...
No Matches
FunctionRegistry.h File Reference

Contains the global function registration definition which described all available user front end functions. More...

`#include "FunctionTypes.h"`
`#include "openvdb_ax/compiler/CompilerOptions.h"`
`#include <openvdb/version.h>`
`#include <unordered_map>`

Go to the source code of this file.

## Classes
class | FunctionRegistry
| The function registry which is used for function code generation. Each time a function is visited within the AST, its identifier is used as a key into this registry for the corresponding function retrieval and execution. Functions can be inserted into the registry using insert() with a given identifier and pointer. More...
struct | FunctionRegistry::RegisteredFunction
| An object to represent a registered function, storing its constructor, a pointer to the function definition and whether it should only be available internally (i.e. to a developer, not a user) More...

## Namespaces
namespace | llvm
namespace | openvdb
namespace | openvdb::v12_1
namespace | openvdb::v12_1::ax
namespace | openvdb::v12_1::ax::codegen
namespace | openvdb::v12_1::ax::codegen::internal

## Functions
OPENVDB_AX_API void | InsertMappedFunctionRegistry (llvm::LLVMContext *CPtr, FunctionRegistry *reg, const FunctionOptions &opts)
OPENVDB_AX_API std::pair< FunctionRegistry *, FunctionOptions > | GetMappedFunctionRegistry (llvm::LLVMContext *CPtr)
OPENVDB_AX_API bool | RemoveMappedFunctionRegistry (llvm::LLVMContext *CPtr)

## Detailed Description

Contains the global function registration definition which described all available user front end functions.

Authors
  Nick Avramoussis