OpenVDB  9.0.1
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
VolumeKernelNode Struct Reference

The third volume kernel, providing an agnostic way to modify a single tile value without passing through the buffer states. Note that this kernel is mainly utility and one of the value kernels should almost always be preferred. More...

#include <openvdb_ax/codegen/VolumeComputeGenerator.h>

Public Types

using Signature = void(const void *const, const int32_t(*)[3], void **, const void *const *, int64_t, void *)
 
using FunctionTraitsT = codegen::FunctionTraits< Signature >
 

Static Public Member Functions

static const std::array< std::string, N_ARGS > & argumentKeys ()
 
static const char * getDefaultName ()
 

Static Public Attributes

static const size_t N_ARGS = FunctionTraitsT::N_ARGS
 

Detailed Description

The third volume kernel, providing an agnostic way to modify a single tile value without passing through the buffer states. Note that this kernel is mainly utility and one of the value kernels should almost always be preferred.

argument structure is as follows: 1) - A void pointer to the ax::CustomData 2) - A pointer to an array of three ints representing the current voxel coord being accessed 3) - A void pointer to a vector of void pointers, representing an array of grid accessors 4) - A void pointer to a vector of void pointers, representing an array of grid transforms 5) - The index of currently executing volume in the list of write accessible volumes. 5) - A unique write accessor to the target volume.

Member Typedef Documentation

using Signature = void(const void* const, const int32_t (*)[3], void**, const void* const*, int64_t, void*)

Member Function Documentation

static const std::array<std::string, N_ARGS>& argumentKeys ( )
static
static const char* getDefaultName ( )
static

Member Data Documentation

const size_t N_ARGS = FunctionTraitsT::N_ARGS
static