OpenVDB  12.1.0
Classes | Namespaces | Functions
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

 llvm
 
 openvdb
 
 openvdb::v12_1
 
 openvdb::v12_1::ax
 
 openvdb::v12_1::ax::codegen
 
 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