12 #ifndef OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED 13 #define OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED 19 #include <openvdb/version.h> 22 #include <unordered_map> 24 class TestVolumeExecutable;
27 class ExecutionEngine;
79 using Ptr = std::shared_ptr<VolumeExecutable>;
110 void setCreateMissing(
const bool flag);
112 bool getCreateMissing()
const;
129 void setTreeExecutionLevel(
const Index level);
197 void setActiveTileStreaming(
const Streaming& s);
199 Streaming getActiveTileStreaming()
const;
204 Streaming getActiveTileStreaming(
const std::string& name,
211 void setValueIterator(
const IterType& iter);
232 void setGrainSize(
const size_t g1);
233 void setActiveTileStreamingGrainSize(
const size_t g2);
236 size_t getGrainSize()
const;
239 size_t getActiveTileStreamingGrainSize()
const;
247 [[deprecated]]
Index getTreeExecutionLevel()
const;
271 friend class ::TestVolumeExecutable;
288 const std::shared_ptr<const llvm::ExecutionEngine>& engine,
291 const std::unordered_map<std::string, uint64_t>& functions,
297 const std::shared_ptr<const llvm::LLVMContext> mContext;
298 const std::shared_ptr<const llvm::ExecutionEngine> mExecutionEngine;
301 const std::unordered_map<std::string, uint64_t> mFunctionAddresses;
302 std::unique_ptr<Settings> mSettings;
309 #endif // OPENVDB_AX_COMPILER_VOLUME_EXECUTABLE_HAS_BEEN_INCLUDED Definition: Compiler.h:31
std::shared_ptr< const CustomData > ConstPtr
Definition: CustomData.h:38
The compiler class. This holds an llvm context and set of compiler options, and constructs executable...
Definition: Compiler.h:49
Abstract base class for typed grids.
Definition: Grid.h:77
std::shared_ptr< VolumeExecutable > Ptr
Definition: VolumeExecutable.h:79
std::vector< GridBase::Ptr > GridPtrVec
Definition: Grid.h:514
CoreType
Definition: Tokens.h:31
The Attribute Bindings class is used by the compiled Executables to handle the mapping of AX Attribut...
Definition: Exceptions.h:13
Definition: IndexIterator.h:43
Index32 Index
Definition: Types.h:54
std::shared_ptr< const AttributeRegistry > ConstPtr
Definition: AttributeRegistry.h:42
Object that encapsulates compiled AX code which can be executed on a collection of VDB volume grids...
Definition: VolumeExecutable.h:76
These classes contain lists of expected attributes and volumes which are populated by compiler during...
A Tree is the highest concrete (non-abstract) node in the entire AX AST hierarchy. It represents an entire conversion of a valid AX string.
Definition: AST.h:561
This class wraps an interface for a map of attribute bindings. These map attributes in AX code to con...
Definition: AttributeBindings.h:36
Streaming
The streaming type of active tiles during execution.
Definition: VolumeExecutable.h:194
Access to the CustomData class which can provide custom user user data to the OpenVDB AX Compiler...
IterType
Definition: VolumeExecutable.h:207
#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:202