Go to the documentation of this file.
12 #ifndef OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED
13 #define OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED
18 #include <openvdb/version.h>
21 #include <unordered_map>
23 class TestVolumeExecutable;
26 class ExecutionEngine;
78 using Ptr = std::shared_ptr<VolumeExecutable>;
100 void execute(openvdb::GridBase& grids)
const;
109 void setCreateMissing(
const bool flag);
111 bool getCreateMissing()
const;
128 void setTreeExecutionLevel(
const Index level);
196 void setActiveTileStreaming(
const Streaming& s);
198 Streaming getActiveTileStreaming()
const;
203 Streaming getActiveTileStreaming(
const std::string& name,
210 void setValueIterator(
const IterType& iter);
212 IterType getValueIterator()
const;
231 void setGrainSize(
const size_t g1);
232 void setActiveTileStreamingGrainSize(
const size_t g2);
235 size_t getGrainSize()
const;
238 size_t getActiveTileStreamingGrainSize()
const;
246 [[deprecated]]
Index getTreeExecutionLevel()
const;
255 friend class ::TestVolumeExecutable;
272 const std::shared_ptr<const llvm::ExecutionEngine>& engine,
275 const std::unordered_map<std::string, uint64_t>& functions,
281 const std::shared_ptr<const llvm::LLVMContext> mContext;
282 const std::shared_ptr<const llvm::ExecutionEngine> mExecutionEngine;
285 const std::unordered_map<std::string, uint64_t> mFunctionAddresses;
286 std::unique_ptr<Settings> mSettings;
293 #endif // OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED
Definition: Compiler.h:31
IterType
Definition: VolumeExecutable.h:206
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition: version.h.in:116
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h.in:178
@ ALL
Definition: IndexIterator.h:43
CoreType
Definition: Tokens.h:31
A Tree is the highest concrete (non-abstract) node in the entire AX AST hierarchy....
Definition: AST.h:561
Access to the CustomData class which can provide custom user user data to the OpenVDB AX Compiler.
std::shared_ptr< const CustomData > ConstPtr
Definition: CustomData.h:38
Index32 Index
Definition: openvdb/Types.h:50
Object that encapsulates compiled AX code which can be executed on a collection of VDB volume grids....
Definition: VolumeExecutable.h:75
std::shared_ptr< VolumeExecutable > Ptr
Definition: VolumeExecutable.h:78
std::shared_ptr< const AttributeRegistry > ConstPtr
Definition: AttributeRegistry.h:42
std::vector< GridBase::Ptr > GridPtrVec
Definition: Grid.h:514
Streaming
The streaming type of active tiles during execution.
Definition: VolumeExecutable.h:193
The compiler class. This holds an llvm context and set of compiler options, and constructs executable...
Definition: Compiler.h:49
These classes contain lists of expected attributes and volumes which are populated by compiler during...
Definition: openvdb/Exceptions.h:13