▼NGU_VDBPointToolsInternal | |
CIndexToOffsetOp | |
CPackedMaskConstructor | |
▼Nhoudini_utils | |
CParmList | Parameter template list that is always terminated |
CParmFactory | Helper class to simplify construction of PRM_Templates and dynamic user interfaces |
COpFactory | Helper class to simplify operator registration |
COpPolicy | An OpPolicy customizes the behavior of an OpFactory. This base class specifies the required interface |
CScopedInputLock | Helper class to manage input locking |
Nllvm | |
▼Nopenvdb | |
►Nv8_1 | |
►Nax | |
►Nast | |
►Ninternal | |
CCollectForEach | |
CCollectForEach< ContainerType, TypeList< T, Ts... > > | |
Ntokens | |
CNode | The base abstract node which determines the interface and required methods for all derived concrete nodes which comprise a valid AST |
CStatement | Abstract (pure-virtual) AST nodes |
CExpression | Expressions are comprised of full or potentially partial parts of a full statement that may not necessary make up an entire valid statement on their own. For example, while a Binary Operator such as "3 + 5;"" is a valid statement on its own, the full statement
"3 + 5 + 6;" must be broken down into two expressions which together form the statement as well as determining precedence |
CVariable | Variables are a base type for Locals, Attributes and ExternalVariables. Unlike other abstract types, they also consolidate data for the derived types |
CValueBase | ValueBases are a base class for anything that holds a value (literal). Derived classes store the actual typed values |
CStatementList | Concrete AST nodes |
CBlock | A Block node represents a scoped list of statements. It may comprise of 0 or more statements, and specifically indicates that a new scope is activated, typically represented by curly braces. Note that a block does not alway have to be encapsulated by curly braces, but always represents a new scope |
CTree | 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 |
CCommaOperator | |
CLoop | Loops represent for, while and do-while loop constructs. These all consist of a condition - evaluated to determine if loop iteration should continue, and a body which is the logic to be repeated. For loops also have initial statements which are evaluated prior to loop execution (at loop scope) and commonly used to set up iterators, and iteration expressions which are evaluated between iterations after the body and before the condition. Both conditions and initial statements can be declarations or expressions, so are Statements, and iteration expressions can consist of multiple expressions. The loop body is a Block defining its own scope (encapsulated by initial statement scope for for-loops) |
CConditionalStatement | ConditionalStatements represents all combinations of 'if', 'else' and 'else if' syntax and semantics. A single ConditionalStatement only ever represents up to two branches; an 'if' (true) and an optional 'else' (false). ConditionalStatements are nested within the second 'else' branch to support 'else if' logic. As well as both 'if' and 'else' branches, a ConditionalStatement also holds an Expression related to its primary condition |
CBinaryOperator | A BinaryOperator represents a single binary operation between a left hand side (LHS) and right hand side (RHS) expression. The operation type is stored as a tokens::OperatorToken enumerated type on the node. AX grammar guarantees that this token will only ever be a valid binary operator token type when initialized by the parser |
CTernaryOperator | A TernaryOperator represents a ternary (conditional) expression 'a ? b : c' which evaluates to 'b' if 'a' is true and 'c' if 'a' is false. Requires 'b' and 'c' to be convertibly typed expressions, or both void. The 'true' expression ('b') is optional with the conditional expression 'a' returned if it evaluates to true, otherwise returning 'c'. Note that 'a' will only be evaluated once in this case |
CAssignExpression | AssignExpressions represents a similar object construction to a BinaryOperator. AssignExpressions can be chained together and are thus derived as Expressions rather than Statements |
CCrement | A Crement node represents a single increment '++' and decrement '–' operation. As well as it's crement type, it also stores whether the semantics constructed a post or pre-crement i.e. ++a or a++ |
CUnaryOperator | A UnaryOperator represents a single unary operation on an expression. The operation type is stored as a tokens::OperatorToken enumerated type on the node. AX grammar guarantees that this token will only every be a valid unary operator token type when initialized by the parser |
CCast | Cast nodes represent the conversion of an underlying expression to a target type. Cast nodes are typically constructed from functional notation and do not represent construction of the target type, rather a type-casted conversion |
CFunctionCall | FunctionCalls represent a single call to a function and any provided arguments. The argument list can be empty. The function name is expected to exist in the AX function registry |
CKeyword | Keywords represent keyword statements defining changes in execution. These include those that define changes in loop execution such as break and continue, as well as return statements |
CArrayUnpack | ArrayUnpack represent indexing operations into AX container types, primarily vectors and matrices indexed by the square brackets [] syntax. Multiple levels of indirection (multiple components) can be specified but current construction is limited to either a single or double component lookup. Providing two components infers a matrix indexing operation |
CArrayPack | ArrayPacks represent temporary container creations of arbitrary sizes, typically generated through the use of curly braces {} |
CAttribute | Attributes represent any access to a primitive value, typically associated with the '@' symbol syntax. Note that the AST does not store any additional information on the given attribute other than its name and type, which together form a unique Attribute identifier known as the Attribute 'token'. A 'primitive value' in this instance refers to a value on an OpenVDB Volume or OpenVDB Points tree |
CExternalVariable | ExternalVariable represent any access to external (custom) data, typically associated with the '$' symbol syntax. Note that the AST does not store any additional information on the given external other than its name and type, which together form a unique external identifier known as the ExternalVariable 'token'. This token is used by the compiler to map user provided values to these external values |
CLocal | Local AST nodes represent a single accesses to a local variable. The only store the name of the variable being accessed |
CDeclareLocal | DeclareLocal AST nodes symbolize a single type declaration of a local variable. These store the local variables that They also however store its specified type. These have the important distinction of representing the initial creation and allocation of a variable, in comparison to a Local node which only represents access |
CValue | A Value (literal) AST node holds either literal text or absolute value information on all numerical, string and boolean constants. A single instance of a Value is templated on the requested scalar, boolean or string type. If scalar or boolean value is constructed from a string (as typically is the case in the parser), the value is automatically converted to its numerical representation. If this fails, the original text is stored instead |
CValue< std::string > | Specialization of Values for strings |
CVisitNodeType | |
CVisitor | The Visitor class uses the Curiously Recursive Template Pattern (CRTP) to provide a customizable interface intended to be used by clients wishing to perform custom operations over an AX Abstract Syntax Tree (AST). By default the Visitor implements simple traversal of all nodes, ensuring that each node on a well formed AST is visited at least once. By deriving from the Visitor, users are able to customize this default behavior and further manually override specific node behavior to their needs. The function options at the top of visitor can be overridden using CRTP to control the prior default behavior, with the ability to override the traverse() and visit() methods for the latter more granular control |
►Ncodegen | |
►Ncodegen_internal | |
CComputeGenerator | Visitor object which will generate llvm IR for a syntax tree. This provides the majority of the code generation functionality except for attribute access. This design allows for custom geometry to define their IR implementations for these accesses by deriving and extending this generator with ast::Attribute handling (see PointComputeGenerator.h and VolumeComputeGenerator.h for examples) |
CPointComputeGenerator | Visitor object which will generate llvm IR for a syntax tree which has been generated from AX that targets point grids. The IR will represent 2 functions : one that executes over single points and one that executes over a collection of points. This is primarily used by the Compiler class |
CPointLeafLocalData | Various functions can request the use and initialization of point data from within the kernel that does not use the standard attribute handle methods. This data can then be accessed after execution to perform post-processes such as adding new groups, adding new string attributes or updating positions |
CVolumeComputeGenerator | Visitor object which will generate llvm IR for a syntax tree which has been generated from AX that targets volumes. The IR will represent a single function. It is mainly used by the Compiler class |
CComputeKernel | The function definition and signature which is built by the ComputeGenerator |
CConstantFolder | Constant folding support structure |
CConstantFolder< SignatureT, 0 > | |
►CFunctionRegistry | 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 |
CRegisteredFunction | 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) |
CArgType | Object to array conversion methods to allow functions to return vector types. These containers provided an interface for automatic conversion of C++ objects to LLVM types as array types |
CLLVMType< ArgType< T, S > > | |
CTypeToSymbol | Type to symbol conversions - these characters are used to build each functions unique signature. They differ from standard AX or LLVM syntax to be as short as possible i.e. vec4d, [4 x double] = d4 |
CTypeToSymbol< void > | |
CTypeToSymbol< char > | |
CTypeToSymbol< int16_t > | |
CTypeToSymbol< int32_t > | |
CTypeToSymbol< int64_t > | |
CTypeToSymbol< float > | |
CTypeToSymbol< double > | |
CTypeToSymbol< codegen::String > | |
CTypeToSymbol< T * > | |
CTypeToSymbol< T[S]> | |
CTypeToSymbol< ArgType< T, S > > | |
CTypeToSymbol< math::Vec2< T > > | |
CTypeToSymbol< math::Vec3< T > > | |
CTypeToSymbol< math::Vec4< T > > | |
CTypeToSymbol< math::Mat3< T > > | |
CTypeToSymbol< math::Mat4< T > > | |
CTypeToSymbol< const T > | |
CTypeToSymbol< const T * > | |
CArgumentIterator | Templated argument iterator which implements various small functions per argument type, resolved at compile time |
CArgumentIterator< SignatureT, 0 > | |
CFunction | The base/abstract representation of an AX function. Derived classes must implement the Function::types call to describe their signature |
CSRetFunction | Templated interface class for SRET functions. This struct provides the interface for functions that wish to return arrays (vectors or matrices) by internally remapping the first argument for the user. As far as LLVM and any bindings are concerned, the function signature remains unchanged - however the first argument becomes "invisible" to the user and is instead allocated by LLVM before the function is executed. Importantly, the argument has no impact on the user facing AX signature and doesn't affect declaration selection |
CCFunctionBase | The base class for all C bindings |
CCFunction | Represents a concrete C function binding |
CIRFunctionBase | The base/abstract definition for an IR function |
CIRFunction | Represents a concrete IR function |
CCFunctionSRet | Represents a concrete C function binding with the first argument as its return type |
CIRFunctionSRet | Represents a concrete IR function with the first argument as its return type |
CFunctionGroup | Todo |
►CFunctionBuilder | Builder pattern framework to allow easy and valid construction of AX functions. There are a number of complex tasks which may need to be performed during construction of C or IR function which are delegated to this builder, whilst ensuring that the constructed functions are guaranteed to be valid |
CSettings | |
CPointKernel | The function definition and signature which is built by the PointComputeGenerator |
CPointRangeKernel | An additonal function built by the PointComputeGenerator. Currently both compute and compute range functions have the same signature |
CString | An extremely basic but native representation of a string class with SSO support. This exists to provide an interface between the AX C++ API and backend IR string logic. It is not designed to fulfill any other use and should very rarely be used directly |
CSymbolTable | A symbol table which can be used to represent a single scoped set of a programs variables. This is simply an unordered map of strings to llvm::Values |
CSymbolTableBlocks | A map of unique ids to symbol tables which can be used to represent local variables within a program. New scopes can be added and erased where necessary and iterated through using find(). Find assumes that tables are added through parented ascending ids |
Cint_t | |
Cint_t< 8 > | |
Cint_t< 16 > | |
Cint_t< 32 > | |
Cint_t< 64 > | |
CLLVMType | LLVM type mapping from pod types |
CLLVMType< T[S]> | |
CLLVMType< T * > | |
CLLVMType< char > | |
CLLVMType< codegen::String > | |
CLLVMType< void > | |
CLLVMType< void * > | |
CLLVMType< const T > | |
CLLVMType< const T * > | |
CAliasTypeMap | Alias mapping between two types, a frontend type T1 and a backend type T2. This class is the intended interface for binding objects which implement supported backend AX/IR types to this given backend type. More specifically, it's current and expected usage is limited to objects which hold a single member of a supported backend type and implements a StandardLayoutType as defined by the standard. Fundamentally, T1->T2 mapping should be supported by reinterpret_cast<> as defined by the type aliasing rules |
CLLVMType< math::Vec2< T > > | Supported aliasing for VDB math types, allowing use in external function signatures |
CLLVMType< math::Vec3< T > > | |
CLLVMType< math::Vec4< T > > | |
CLLVMType< math::Mat3< T > > | |
CLLVMType< math::Mat4< T > > | |
CFunctionTraits | Templated function traits which provides compile-time index access to the types of the function signature |
CFunctionTraits< R(&)(Args...)> | |
CFunctionTraits< R(*)(Args...)> | |
►CFunctionTraits< ReturnT(Args...)> | |
CArg | |
CVolumeKernelValue | The primary volume kernel. This function holds the generated body of AX programs |
CVolumeKernelBuffer | The second volume kernel, responsible for providing the core layer of SIMD optimisations by invoking this kernel across a range of values |
CVolumeKernelNode | 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 |
Nmath | |
►CAttributeRegistry | This class stores a list of access names, types and their dependency connections |
CAccessData | Registered access details, including its name, type and whether a write handle is required |
CCompiler | The compiler class. This holds an llvm context and set of compiler options, and constructs executable objects (e.g. PointExecutable or VolumeExecutable) from a syntax tree or snippet of code |
CFunctionOptions | Options that control how functions behave |
CCompilerOptions | Settings which control how a Compiler class object behaves |
CCustomData | The custom data class is a simple container for named openvdb metadata. Its primary use case is passing arbitrary "external" data to an AX executable object when calling Compiler::compile. For example, it is the mechanism by which we pass data held inside of a parent DCC to executable AX code |
CLogger | Logger for collecting errors and warnings that occur during AX compilation |
CPointExecutable | Object that encapsulates compiled AX code which can be executed on a collection of VDB Point Data grids. Executables are created by the compiler and hold the final immutable JIT compiled function and context |
CVolumeExecutable | Object that encapsulates compiled AX code which can be executed on a collection of VDB volume grids. Executables are created by the compiler and hold the final immutable JIT compiled function and context |
►Ncompression | |
CPage | Stores a variable-size, compressed, delayed-load Page of data that is loaded into memory when accessed. Access to the Page is thread-safe as loading and decompressing the data is protected by a mutex |
CPageHandle | A PageHandle holds a unique ptr to a Page and a specific stream pointer to a point within the decompressed Page buffer |
CPagedInputStream | A Paging wrapper to std::istream that is responsible for reading from a given input stream and creating Page objects and PageHandles that reference those pages for delayed reading |
CPagedOutputStream | A Paging wrapper to std::ostream that is responsible for writing from a given output stream at intervals set by the PageSize. As Pages are variable in size, they are flushed to disk as soon as sufficiently large |
Ninternal | |
►Nio | |
CArchive | Grid serializer/unserializer |
CMaskCompress | |
CRealToHalf | RealToHalf and its specializations define a mapping from floating-point data types to analogous half float types |
CRealToHalf< float > | |
CRealToHalf< double > | |
CRealToHalf< Vec2s > | |
CRealToHalf< Vec2d > | |
CRealToHalf< Vec3s > | |
CRealToHalf< Vec3d > | |
CHalfReader | |
CHalfReader< false, T > | Partial specialization for non-floating-point types (no half to float promotion) |
CHalfReader< true, T > | Partial specialization for floating-point types |
CHalfWriter | |
CHalfWriter< false, T > | Partial specialization for non-floating-point types (no float to half quantization) |
CHalfWriter< true, T > | Partial specialization for floating-point types |
CDelayedLoadMetadata | Store a buffer of data that can be optionally used during reading for faster delayed-load I/O performance |
►CFile | Grid archive associated with a file on disk |
CNameIterator | |
CGridDescriptor | |
CStreamMetadata | Container for metadata describing how to unserialize grids from and/or serialize grids to a stream (which file format, compression scheme, etc. to use) |
CMultiPass | Leaf nodes that require multi-pass I/O must inherit from this struct |
CMappedFile | Handle to control the lifetime of a memory-mapped .vdb file |
CQueue | Queue for asynchronous output of grids to files or streams |
CStream | Grid archive associated with arbitrary input and output streams (not necessarily files) |
CTempFile | Output stream to a unique temporary file |
►Nlogging | |
►Ninternal | |
CColoredPatternLayout | Log4cplus layout that outputs text in different colors for different log levels, using ANSI escape codes |
CLevelScope | A LevelScope object sets the logging level to a given level and restores it to the current level when the object goes out of scope |
►Nmath | |
►Ninternal | |
►Chalf | |
Cuif | |
CLegacyFrustum | LegacyFrustum class used at DreamWorks for converting old vdb files |
CReturnValue | |
Nmat3_internal | |
►Npcg | |
►Ninternal | |
CCopyOp | |
CFillOp | |
CLinearOp | |
►CVector | Lightweight, variable-length vector |
CDeterministicDotProductOp | |
CInfNormOp | |
CIsFiniteOp | |
►CSparseStencilMatrix | Sparse, square matrix representing a 3D stencil operator of size STENCIL_SIZE |
CConstRow | Read-only accessor to a row of this matrix |
CConstValueIter | Iterator over the stored values in a row of this matrix |
CIsFiniteOp | |
CMatrixCopyOp | |
CRowEditor | Read/write accessor to a row of this matrix |
CPreconditioner | Base class for conjugate gradient preconditioners |
CJacobiPreconditioner | Diagonal preconditioner |
CIncompleteCholeskyPreconditioner | Preconditioner using incomplete Cholesky factorization |
CState | Information about the state of a conjugate gradient solution |
CBBox | Axis-aligned bounding box |
CCoord | Signed (x, y, z) 32-bit integer coordinates |
►CCoordBBox | Axis-aligned bounding box of signed integer coordinates |
CIterator | Iterator over the Coord domain covered by a CoordBBox |
CDDA | A Digital Differential Analyzer specialized for OpenVDB grids |
CLevelSetHDDA | Helper class that implements Hierarchical Digital Differential Analyzers and is specialized for ray intersections with level sets |
CLevelSetHDDA< TreeT, -1 > | Specialization of Hierarchical Digital Differential Analyzer class that intersects a ray against the voxels of a level set |
CVolumeHDDA | Helper class that implements Hierarchical Digital Differential Analyzers for ray intersections against a generic volume |
CVolumeHDDA< TreeT, RayT, 0 > | Specialization of Hierarchical Digital Differential Analyzer class that intersects against the leafs or tiles of a generic volume |
CD1 | |
CD1< CD_2NDT > | |
CD1< CD_2ND > | |
CD1< CD_4TH > | |
CD1< CD_6TH > | |
CD1< FD_1ST > | |
CD1< FD_2ND > | |
CD1< FD_3RD > | |
CD1< BD_1ST > | |
CD1< BD_2ND > | |
CD1< BD_3RD > | |
CD1< FD_WENO5 > | |
CD1< FD_HJWENO5 > | |
CD1< BD_WENO5 > | |
CD1< BD_HJWENO5 > | |
CD1Vec | |
CD1Vec< CD_2NDT > | |
CD1Vec< CD_2ND > | |
CD1Vec< CD_4TH > | |
CD1Vec< CD_6TH > | |
CD2 | |
CD2< CD_SECOND > | |
CD2< CD_FOURTH > | |
CD2< CD_SIXTH > | |
CCompoundMap | Creates the composition of two maps, each of which could be a composition. In the case that each component of the composition classified as linear an acceleration AffineMap is stored |
Cis_linear | Map traits |
Cis_linear< AffineMap > | |
Cis_linear< ScaleMap > | |
Cis_linear< UniformScaleMap > | |
Cis_linear< UnitaryMap > | |
Cis_linear< TranslationMap > | |
Cis_linear< ScaleTranslateMap > | |
Cis_linear< UniformScaleTranslateMap > | |
Cis_linear< CompoundMap< T1, T2 > > | |
Cis_uniform_scale | |
Cis_uniform_scale< UniformScaleMap > | |
Cis_uniform_scale_translate | |
Cis_uniform_scale_translate< TranslationMap > | |
Cis_uniform_scale_translate< UniformScaleTranslateMap > | |
Cis_scale | |
Cis_scale< ScaleMap > | |
Cis_scale_translate | |
Cis_scale_translate< ScaleTranslateMap > | |
Cis_uniform_diagonal_jacobian | |
Cis_diagonal_jacobian | |
CMapBase | Abstract base class for maps |
CMapRegistry | Threadsafe singleton object for accessing the map type-name dictionary. Associates a map type-name with a factory function |
CAffineMap | A general linear transform using homogeneous coordinates to perform rotation, scaling, shear and translation |
CScaleMap | A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions |
CUniformScaleMap | A specialized Affine transform that scales along the principal axis the scaling is uniform in the three-directions |
CTranslationMap | A specialized linear transform that performs a translation |
CScaleTranslateMap | A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions, and then translates the result |
CUniformScaleTranslateMap | A specialized Affine transform that uniformaly scales along the principal axis and then translates the result |
CUnitaryMap | A specialized linear transform that performs a unitary maping i.e. rotation and or reflection |
CNonlinearFrustumMap | This map is composed of three steps. First it will take a box of size (Lx X Ly X Lz) defined by a member data bounding box and map it into a frustum with near plane (1 X Ly/Lx) and prescribed depth Then this frustum is transformed by an internal second map: most often a uniform scale, but other effects can be achieved by accumulating translation, shear and rotation: these are all applied to the second map |
CMat | |
CQuat | |
CVec3 | |
CMat4 | 4x4 -matrix class |
CMat3 | 3x3 matrix class |
CVec4 | |
CTolerance | Tolerance for floating-point comparison |
CTolerance< float > | |
CTolerance< double > | |
CDelta | Delta for small floating-point offsets |
CDelta< float > | |
CDelta< double > | |
CRand01 | Simple generator of random numbers over the range [0, 1) |
CRandInt | Simple random integer generator |
Cpromote | |
Cis_vec3d | |
Cis_vec3d< Vec3d > | |
Cis_double | |
Cis_double< double > | |
CMapAdapter | Adapter to associate a map with a world-space operator, giving it the same call signature as an index-space operator |
CISOpMagnitude | Adapter for vector-valued index-space operators to return the vector magnitude |
COpMagnitude | Adapter for vector-valued world-space operators to return the vector magnitude |
CISGradient | Gradient operators defined in index space of various orders |
►CBIAS_SCHEME | |
CISStencil | |
►CBIAS_SCHEME< FIRST_BIAS > | |
CISStencil | |
►CBIAS_SCHEME< SECOND_BIAS > | |
CISStencil | |
►CBIAS_SCHEME< THIRD_BIAS > | |
CISStencil | |
►CBIAS_SCHEME< WENO5_BIAS > | |
CISStencil | |
►CBIAS_SCHEME< HJWENO5_BIAS > | |
CISStencil | |
CISGradientBiased | Biased Gradient Operators, using upwinding defined by the Vec3Bias input |
CISGradientNormSqrd | |
CISLaplacian | Laplacian defined in index space, using various center-difference stencils |
CISLaplacian< CD_SECOND > | |
CISLaplacian< CD_FOURTH > | |
CISLaplacian< CD_SIXTH > | |
CISDivergence | Divergence operator defined in index space using various first derivative schemes |
CISCurl | Curl operator defined in index space using various first derivative schemes |
CISMeanCurvature | Compute the mean curvature in index space |
CGradient | Center difference gradient operators, defined with respect to the range-space of the map |
CGradient< TranslationMap, DiffScheme > | |
CGradient< UniformScaleMap, CD_2ND > | |
CGradient< UniformScaleTranslateMap, CD_2ND > | |
CGradient< ScaleMap, CD_2ND > | |
CGradient< ScaleTranslateMap, CD_2ND > | |
CGradientBiased | Biased gradient operators, defined with respect to the range-space of the map |
CGradientNormSqrd | |
CGradientNormSqrd< UniformScaleMap, GradScheme > | Partial template specialization of GradientNormSqrd |
CGradientNormSqrd< UniformScaleTranslateMap, GradScheme > | Partial template specialization of GradientNormSqrd |
CDivergence | Compute the divergence of a vector-valued grid using differencing of various orders, the result defined with respect to the range-space of the map |
CDivergence< TranslationMap, DiffScheme > | |
CDivergence< UniformScaleMap, DiffScheme > | |
CDivergence< UniformScaleTranslateMap, DiffScheme > | |
CDivergence< UniformScaleMap, CD_2ND > | |
CDivergence< UniformScaleTranslateMap, CD_2ND > | |
CDivergence< ScaleMap, DiffScheme > | |
CDivergence< ScaleTranslateMap, DiffScheme > | |
CDivergence< ScaleMap, CD_2ND > | |
CDivergence< ScaleTranslateMap, CD_2ND > | |
CCurl | Compute the curl of a vector-valued grid using differencing of various orders in the space defined by the range of the map |
CCurl< UniformScaleMap, DiffScheme > | Partial template specialization of Curl |
CCurl< UniformScaleTranslateMap, DiffScheme > | Partial template specialization of Curl |
CCurl< UniformScaleMap, CD_2ND > | Full template specialization of Curl |
CCurl< UniformScaleTranslateMap, CD_2ND > | Full template specialization of Curl |
CLaplacian | Compute the Laplacian at a given location in a grid using finite differencing of various orders. The result is defined in the range of the map |
CLaplacian< TranslationMap, DiffScheme > | |
CLaplacian< UnitaryMap, DiffScheme > | |
CLaplacian< UniformScaleMap, DiffScheme > | |
CLaplacian< UniformScaleTranslateMap, DiffScheme > | |
CLaplacian< ScaleMap, DiffScheme > | |
CLaplacian< ScaleTranslateMap, DiffScheme > | |
CCPT | Compute the closest-point transform to a level set |
CCPT_RANGE | Compute the closest-point transform to a level set |
CMeanCurvature | Compute the mean curvature |
CMeanCurvature< TranslationMap, DiffScheme2, DiffScheme1 > | |
CMeanCurvature< UniformScaleMap, DiffScheme2, DiffScheme1 > | |
CMeanCurvature< UniformScaleTranslateMap, DiffScheme2, DiffScheme1 > | |
CGenericMap | A wrapper that holds a MapBase::ConstPtr and exposes a reduced set of functionality needed by the mathematical operators |
CQuantizedUnitVec | Unit vector occupying only 16 bits |
►CRay | |
CTimeSpan | |
CMinMax | Templated class to compute the minimum and maximum values |
CExtrema | This class computes the minimum and maximum values of a population of floating-point values |
CStats | This class computes statistics (minimum value, maximum value, mean, variance and standard deviation) of a population of floating-point values |
CHistogram | This class computes a histogram, with a fixed interval width, of a population of floating-point values |
CBaseStencil | |
CSevenPointStencil | |
CBoxStencil | |
CSecondOrderDenseStencil | |
CThirteenPointStencil | |
CFourthOrderDenseStencil | |
CNineteenPointStencil | |
CSixthOrderDenseStencil | |
CGradStencil | |
CWenoStencil | This is a special 19-point stencil that supports optimal fifth-order WENO upwinding, second-order central differencing, Laplacian, and zero-crossing test |
CCurvatureStencil | |
CDenseStencil | Dense stencil of a given width |
CTransform | |
CConversion | Dummy class for tag dispatch of conversion constructors |
CTuple | |
CMat2 | |
CVec2 | |
►Npoints | |
►Nattribute_traits | |
CTruncateTrait | |
CTruncateTrait< float > | |
CTruncateTrait< int > | |
CTruncateTrait< math::Vec3< T > > | |
CUIntTypeTrait | |
CUIntTypeTrait< true, T > | |
CUIntTypeTrait< false, T > | |
CUIntTypeTrait< true, math::Vec3< T > > | |
CUIntTypeTrait< false, math::Vec3< T > > | |
CStringTypeTrait | |
CStringTypeTrait< true > | |
►Nfuture | A container for ABI=5 to help ease introduction of upcoming features |
CContainer | |
CAdvect | |
Nindex | |
Nindex_filter_internal | |
►Ninternal | |
CPointDataNodeChain | Recursive node chain which generates a openvdb::TypeList value converted types of nodes to PointDataGrid nodes of the same configuration, rooted at RootNodeType in reverse order, from LeafNode to RootNode. See also TreeConverter<> |
CPointDataNodeChain< tree::InternalNode< ChildT, Log2Dim >, HeadLevel > | |
CPointDataNodeChain< tree::InternalNode< ChildT, Log2Dim >, 1 > | |
►Npoint_advect_internal | |
CAdvectionDeformer | |
CAdvectionOp | |
►Npoint_attribute_internal | |
CDefault | |
CAttributeTypeConversion | |
CAttributeTypeConversion< Name, CodecType > | |
CMetadataStorage | |
CMetadataStorage< PointDataTreeT, Name > | |
►Npoint_conversion_internal | |
CConversionTraits | |
CConversionTraits< openvdb::Name > | |
CPopulateAttributeOp | |
CConvertPointDataGridPositionOp | |
CConvertPointDataGridAttributeOp | |
CConvertPointDataGridGroupOp | |
CCalculatePositionBounds | |
►Npoint_delete_internal | |
CVectorWrapper | |
CDeleteByFilterOp | |
►Npoint_group_internal | |
CCopyGroupOp | Copy a group attribute value from one group offset to another |
CSetGroupOp | Set membership on or off for the specified group |
CSetGroupFromIndexOp | |
CSetGroupByFilterOp | |
►Npoint_mask_internal | |
CGridCombinerOp | Combines multiple grids into one by stealing leaf nodes and summing voxel values This class is designed to work with thread local storage containers such as tbb::combinable |
CPointsToScalarOp | Compute scalar grid from PointDataGrid while evaluating the point filter |
CPointsToTransformedScalarOp | Compute scalar grid from PointDataGrid using a different transform and while evaluating the point filter |
►Npoint_move_internal | |
CBuildMoveMapsOp | |
►CGlobalMovePointsOp | |
CCopyIterator | |
►CLocalMovePointsOp | |
CCopyIterator | |
►Npoint_sample_internal | |
CCompatibleTypes | |
CCompatibleTypes< T, T > | |
CCompatibleTypes< T, math::Vec2< T > > | |
CCompatibleTypes< T, math::Vec3< T > > | |
CCompatibleTypes< T, math::Vec4< T > > | |
CCompatibleTypes< math::Vec2< T >, math::Vec2< T > > | |
CCompatibleTypes< math::Vec3< T >, math::Vec3< T > > | |
CCompatibleTypes< math::Vec4< T >, math::Vec4< T > > | |
CCompatibleTypes< math::Vec2< T0 >, math::Vec2< T1 > > | |
CCompatibleTypes< math::Vec3< T0 >, math::Vec3< T1 > > | |
CCompatibleTypes< math::Vec4< T0 >, math::Vec4< T1 > > | |
CCompatibleTypes< ValueMask, T > | |
CSamplerTraits | |
CSamplerTraits< tools::Sampler< T0, T1 > > | |
CSampleWithRoundingOp | |
CSampleWithRoundingOp< ValueT, SamplerT, AccessorT, true, true > | |
CSampleWithRoundingOp< ValueT, SamplerT, AccessorT, false, true > | |
CPointDataSampler | |
CAppendAttributeOp | |
CAppendAttributeOp< PointDataGridT, DummySampleType > | |
Npoint_scatter_internal | |
►CAttributeArray | Base class for storing attribute data |
CAccessor | |
CAccessorBase | Accessor base class for AttributeArray storage where type is not available |
CScopedRegistryLock | |
CUnknownCodec | |
►CNullCodec | |
CStorage | |
►CTruncateCodec | |
CStorage | |
CPositionRange | |
CUnitRange | |
►CFixedPointCodec | |
CStorage | |
►CUnitVecCodec | |
CStorage | |
CTypedAttributeArray | Typed class for storing attribute data |
CAttributeHandle | |
CAttributeWriteHandle | Write-able version of AttributeHandle |
CAccessorEval | Accessor to call unsafe get and set methods based on templated Codec and Value |
CAccessorEval< UnknownCodec, ValueType > | Partial specialization when Codec is not known at compile-time to use the supplied functor instead |
►CStringCodec | |
CStorage | |
CStringMetaCache | Class to compute a string->index map from all string:N metadata |
CStringMetaInserter | Class to help with insertion of keyed string values into metadata |
CStringAttributeHandle | |
CStringAttributeWriteHandle | |
►CGroupCodec | |
CStorage | |
►CGroupHandle | |
CBitMask | |
CGroupWriteHandle | |
CGroupFilter | Index filtering on group membership |
►CAttributeSet | Ordered collection of uniquely-named attribute arrays |
CInserter | Utility method to construct a NameAndType sequence |
►CUtil | |
CNameAndType | Attribute and type name pair |
CValueMaskFilter | Index filtering on active / inactive state of host voxel |
CMultiGroupFilter | |
CRandomLeafFilter | |
CAttributeHashFilter | |
CLevelSetFilter | |
CBBoxFilter | |
CBinaryFilter | |
CFilterTraits | |
CFilterTraits< BBoxFilter > | |
CFilterTraits< LevelSetFilter< T > > | |
CFilterTraits< BinaryFilter< T0, T1, And > > | |
CNullFilter | A no-op filter that can be used when iterating over all indices |
►CValueVoxelCIter | A forward iterator over array indices in a single voxel |
CParent | |
►CIndexIter | A forward iterator over array indices with filtering IteratorT can be either IndexIter or ValueIndexIter (or some custom index iterator) FilterT should be a struct or class with a valid() method than can be evaluated per index Here's a simple filter example that only accepts even indices: |
CValueIndexIter | A forward iterator over array indices from a value iterator (such as ValueOnCIter) |
CPointAttributeVector | Point-partitioner compatible STL vector attribute wrapper for convenience |
CPointDataLeafNode | |
CTreeConverter | Similiar to ValueConverter, but allows for tree configuration conversion to a PointDataTree. ValueConverter<PointDataIndex32> cannot be used as a PointDataLeafNode is not a specialization of LeafNode |
CNullDeformer | No-op deformer (adheres to the deformer interface documented in PointMove.h) |
CDeformerTraits | Deformer Traits for optionally configuring deformers to be applied in index-space. The default is world-space |
►CCachedDeformer | A Deformer that caches the resulting positions from evaluating another Deformer |
►CCache | |
CLeaf | |
CSampleWithRounding | |
CDummySampleType | |
►Ntools | |
►Nactivate_internal | |
CActivateOp | |
CDeactivateOp | |
►Nclip_internal | |
CMaskInteriorVoxels | |
CCopyLeafNodes | |
CBoolSampler | |
CConvertGrid | |
CConvertGrid< GridT, GridT > | |
►Ncomposite | |
CBuildPrimarySegment | |
CBuildSecondarySegment | |
CGridOrTreeConstructor | |
CGridOrTreeConstructor< Grid< TreeType > > | |
►Ncount_internal | |
CActiveVoxelCountOp | A DynamicNodeManager operator to count active voxels in a tree |
CActiveVoxelCountBBoxOp | A DynamicNodeManager operator to count active voxels in a tree that fall within a provided bounding box |
CMemUsageOp | A DynamicNodeManager operator to sum the number of bytes of memory used |
►Ndiagnostics_internal | |
CInactiveVoxelValues | |
CInactiveTileValues | |
►Nds | |
COpOver | Point wise methods used to apply various compositing operations |
COpAdd | |
COpSub | |
COpMin | |
COpMax | |
COpMult | |
CCompositeFunctorTranslator | Translator that converts an enum to compositing functor types |
CCompositeFunctorTranslator< DS_OVER, ValueT > | |
CCompositeFunctorTranslator< DS_ADD, ValueT > | |
CCompositeFunctorTranslator< DS_SUB, ValueT > | |
CCompositeFunctorTranslator< DS_MIN, ValueT > | |
CCompositeFunctorTranslator< DS_MAX, ValueT > | |
CCompositeFunctorTranslator< DS_MULT, ValueT > | |
►Nfilter_internal | |
CVoxelizer | |
►Ngridop | |
CToMaskGrid | ToMaskGrid<T>::Type is the type of a grid having the same tree hierarchy as grid type T but a value equal to its active state |
CGridOperator | Apply an operator to an input grid to produce an output grid with the same active voxel topology but a potentially different value type |
►Ninternal | |
CTileSampler | A TileSampler wraps a grid sampler of another type (BoxSampler, QuadraticSampler, etc.), and for samples that fall within a given tile of the grid, it returns a cached tile value instead of accessing the grid |
CTileSampler< PointSampler, TreeT > | For point sampling, tree traversal is less expensive than testing bounding box membership |
CTileSampler< StaggeredPointSampler, TreeT > | For point sampling, tree traversal is less expensive than testing bounding box membership |
CPointListTransform | |
CPrimCpy | |
►Nlevel_set_fracture_internal | |
CFindMinMaxVoxelValue | |
►Nlevel_set_util_internal | |
CMaskInteriorVoxels | |
CMaskInteriorTiles | |
CPopulateTree | |
CLabelBoundaryVoxels | Negative active values are set 0 , everything else is set to 1 |
CFlipRegionSign | |
CFindMinVoxelValue | |
CFindMinTileValue | |
CSDFVoxelsToFogVolume | |
CSDFTilesToFogVolume | |
CFillMaskBoundary | |
CMaskIsovalueCrossingVoxels | |
CNodeMaskSegment | |
CSegmentNodeMask | |
CConnectNodeMaskSegments | |
CMaskSegmentGroup | |
CExpandLeafNodeRegion | |
CFillLeafNodeVoxels | |
CExpandNarrowbandMask | |
CFloodFillSign | |
CMaskedCopy | |
CComputeActiveVoxelCount | |
CGreaterCount | |
CGridOrTreeConstructor | |
CGridOrTreeConstructor< Grid< TreeType > > | |
Nlocal_util | |
Nlstrack | |
Nmask_internal | |
►Nmerge_internal | |
CUnallocatedBuffer | |
CUnallocatedBuffer< BufferT, bool > | |
CDispatch | |
CDispatch< 0 > | |
CApplyTileToNodeOp | |
►Nmesh_to_volume_internal | |
CTransformPoints | |
CTolerance | |
CCombineLeafNodes | |
CStashOriginAndStoreOffset | |
CRestoreOrigin | |
CComputeNodeConnectivity | |
CLeafNodeConnectivityTable | |
CSweepExteriorSign | |
CSeedFillExteriorSign | |
CFillArray | |
CSyncVoxelMask | |
CSeedPoints | |
CComputeIntersectingVoxelSign | |
►CValidateIntersectingVoxels | |
CIsNegative | |
►CRemoveSelfIntersectingSurface | |
CComp | |
CReleaseChildNodes | |
CStealUniqueLeafNodes | |
CVoxelizationData | TBB body object to voxelize a mesh of triangles and/or quads into a collection of VDB grids, namely a squared distance grid, a closest primitive grid and an intersecting voxels grid (masks the mesh intersecting voxels) |
CVoxelizePolygons | |
CDiffLeafNodeMask | |
CUnionValueMasks | |
CConstructVoxelMask | |
►CExpandNarrowband | |
CFragment | |
CAddNodes | |
CTransformValues | |
CInactivateValues | |
COffsetValues | |
CRenormalize | |
CMinCombine | |
►Nmorph_internal | |
CAdapter | |
CAdapter< openvdb::tree::LeafManager< T > > | |
►Nmorphology | |
►CMorphology | Dilation/Erosion operations over a Trees leaf level voxel topology |
CNodeMaskOp | Node Mask dilation/erosion operations for individual leaf nodes on a given tree. The leaf node may optionally belong to a different tree than the provided accessor, which will have the effect of dilating the leaf node mask into a different tree, or eroding the node mask based on corresponding neighbours in a different tree |
Np2ls_internal | |
►Nparticle_atlas_internal | |
CComputeExtremas | |
CSplittableParticleArray | |
CRemapIndices | |
CRadialRangeFilter | |
CBBoxFilter | |
►Npoint_index_grid_internal | |
CValidPartitioningOp | |
CPopulateLeafNodesOp | |
CBBoxFilter | |
CRadialRangeFilter | |
►Npoint_partitioner_internal | |
CComputePointOrderOp | |
CCreateOrderedPointIndexArrayOp | |
CVoxelOrderOp | |
CArray | |
CMoveSegmentDataOp | |
CMergeBinsOp | |
CBinPointIndicesOp | |
COrderSegmentsOp | |
►Npoisson | |
►Ninternal | |
CLeafCountOp | Functor for use with LeafManager::foreach() to populate an array with per-leaf active voxel counts |
CLeafIndexOp | Functor for use with LeafManager::foreach() to populate active leaf voxels with sequential indices |
CCopyToVecOp | Functor for use with LeafManager::foreach() to populate a vector with the values of a tree's active voxels |
CCopyFromVecOp | Functor for use with LeafManager::foreach() to populate a tree with values from a vector |
CISStaggeredLaplacianOp | Functor for use with LeafManager::foreach() to populate a sparse Laplacian matrix |
CISLaplacianOp | Functor for use with LeafManager::foreach() to populate a sparse Laplacian matrix |
CDirichletBoundaryOp | Dirichlet boundary condition functor |
►Npotential_flow_internal | |
CComputeNeumannVelocityOp | |
CSolveBoundaryOp | |
NScheme | |
►Nstats_internal | |
CIterTraits | |
CIterTraits< tree::TreeValueIteratorBase< TreeT, ValueIterT > > | |
CGetValImpl | |
CGetValImpl< T, false > | |
CGetValImpl< T, true > | |
CGetVal | |
CStatsOp | |
CHistOp | |
CMathOp | |
►Nttls_internal | |
CDilateOp | |
CErodeOp | |
COffsetAndMinComp | |
►Nv2s_internal | |
CPointAccessor | |
CLeafOp | |
CNodeOp | |
CClosestPointDist | |
CUpdatePoints | |
►Nvalxform | |
CMinOp | |
CMaxOp | |
CSumOp | |
CSumOp< bool > | |
CMultOp | |
CSharedOpApplier | |
CCopyableOpApplier | |
CSharedOpTransformer | |
CCopyableOpTransformer | |
COpAccumulator | |
►Nvolume_to_mesh_internal | |
CFillArray | |
CComputePoints | |
CSeamLineWeights | |
CSetSeamLineFlags | |
CTransferSeamLineFlags | |
CMaskSeamLineVoxels | |
CMergeVoxelRegions | |
CUniformPrimBuilder | |
CAdaptivePrimBuilder | |
CMaskTileBorders | |
CPointListCopy | |
CLeafNodeVoxelOffsets | |
CVoxelEdgeAccessor | Utility method to marks all voxels that share an edge |
CIdentifyIntersectingVoxels | |
CMaskIntersectingVoxels | |
CMaskBorderVoxels | |
CSyncMaskValues | |
CMaskSurface | |
CComputeAuxiliaryData | |
CLeafNodePointCount | |
CAdaptiveLeafNodePointCount | |
CMapPoints | |
CComputePolygons | |
CCopyArray | |
CFlagAndCountQuadsToSubdivide | |
CSubdivideQuads | |
CReviseSeamLineFlags | |
CMaskDisorientedTrianglePoints | |
CChangeBackgroundOp | |
CChangeLevelSetBackgroundOp | |
CCompReplaceOp | |
CDenseBase | Base class for Dense which is defined below |
CDenseBase< ValueT, LayoutZYX > | Partial template specialization of DenseBase |
CDenseBase< ValueT, LayoutXYZ > | Partial template specialization of DenseBase |
CDense | Dense is a simple dense grid API used by the CopyToDense and CopyFromDense classes defined below |
CCopyToDense | Copy an OpenVDB tree into an existing dense grid |
CCopyFromDense | Copy the values from a dense grid into an OpenVDB tree |
CDSConverter | |
CSparseExtractor | Functor-based class used to extract data that satisfies some criteria defined by the embedded OpType functor. The extractSparseTree function wraps this class |
CSparseMaskedExtractor | Functor-based class used to extract data from a dense grid, at the index-space intersection with a supplied mask in the form of a sparse tree. The extractSparseTreeWithMask function wraps this class |
CExtractAll | Simple utility class used by extractSparseTreeWithMask |
CDenseTransformer | Class that applies a functor to the index space intersection of a prescribed bounding box and the dense grid. NB: This class only supports DenseGrids with ZYX memory layout |
CContiguousOp | Wrapper struct used to avoid unnecessary computation of memory access from Coord when all offsets are guaranteed to be within the dense grid |
CSparseToDenseCompositor | |
CCheckNan | Checks NaN values |
CCheckInf | Checks for infinite values, e.g. 1/0 or -1/0 |
CCheckFinite | Checks for both NaN and inf values, i.e. any value that is not finite |
CCheckMagnitude | Check that the magnitude of a value, a, is close to a fixed magnitude, b, given a fixed tolerance c. That is | |a| - |b| | <= c |
CCheckRange | Checks a value against a range |
CCheckMin | Checks a value against a minimum |
CCheckMax | Checks a value against a maximum |
CCheckNormGrad | Checks the norm of the gradient against a range, i.e., |∇Φ| ∈ [min, max] |
CCheckEikonal | Checks the norm of the gradient at zero-crossing voxels against a range |
CCheckDivergence | Checks the divergence against a range |
CDiagnose | Performs multithreaded diagnostics of a grid |
CCheckLevelSet | Class that performs various types of checks on narrow-band level sets |
CCheckFogVolume | Class that performs various types of checks on fog volumes |
►CFastSweeping | Computes signed distance values from an initial iso-surface and optionally performs velocty extension at the same time. This is done by means of a novel sparse and parallel fast sweeping algorithm based on a first order Goudonov's scheme |
CDilateKernel | Private class of FastSweeping to perform multi-threaded initialization |
CInitSdf | |
CMinMaxKernel | |
►CSweepingKernel | Private class of FastSweeping to perform concurrent fast sweeping in two directions |
CNN | |
CFilter | Volume filtering (e.g., diffusion) with optional alpha masking |
CTileData | Struct that encodes a bounding box, value and level of a tile |
►CFindActiveValues | Finds the active values in a tree which intersects a bounding box |
CRootChild | |
CVectorToScalarConverter | VectorToScalarConverter<VectorGridType>::Type is the type of a grid having the same tree configuration as VectorGridType but a scalar value type, T, where T is the type of the original vector components |
CScalarToVectorConverter | ScalarToVectorConverter<ScalarGridType>::Type is the type of a grid having the same tree configuration as ScalarGridType but value type Vec3<T> where T is ScalarGridType::ValueType |
CCpt | Compute the closest-point transform of a scalar grid |
CCurl | Compute the curl of a vector grid |
►CDivergence | Compute the divergence of a vector grid |
CFunctor | |
►CGradient | Compute the gradient of a scalar grid |
CFunctor | |
►CLaplacian | |
CFunctor | |
►CMeanCurvature | |
CFunctor | |
►CMagnitude | |
CFunctor | |
COpT | |
►CNormalize | |
CFunctor | |
COpT | |
CGridResampler | |
►CGridTransformer | A GridTransformer applies a geometric transformation to an input grid using one of several sampling schemes, and stores the result in an output grid |
CMatrixTransform | |
CABTransform | This class implements the Transformer functor interface (specifically, the isAffine(), transform() and invTransform() methods) for a transform that maps an A grid into a B grid's index space such that, after resampling, A's index space and transform match B's index space and transform |
CHalfWidthOp | |
CHalfWidthOp< bool > | |
CSampler | Provises a unified interface for sampling, i.e. interpolation |
CPointSampler | |
CBoxSampler | |
CQuadraticSampler | |
CStaggeredPointSampler | |
CStaggeredBoxSampler | |
CStaggeredQuadraticSampler | |
CGridSampler | Class that provides the interface for continuous sampling of values in a tree |
CGridSampler< tree::ValueAccessor< TreeT >, SamplerType > | Specialization of GridSampler for construction from a ValueAccessor type |
CDualGridSampler | This is a simple convenience class that allows for sampling from a source grid into the index space of a target grid. At construction the source and target grids are checked for alignment which potentially renders interpolation unnecessary. Else interpolation is performed according to the templated Sampler type |
CDualGridSampler< tree::ValueAccessor< TreeT >, SamplerT > | Specialization of DualGridSampler for construction from a ValueAccessor type |
CAlphaMask | |
CSampler< 0, false > | |
CSampler< 1, false > | |
CSampler< 2, false > | |
CSampler< 0, true > | |
CSampler< 1, true > | |
CSampler< 2, true > | |
CLevelSetAdvection | Hyperbolic advection of narrow-band level sets in an external velocity field |
CLevelSetFilter | Filtering (e.g. diffusion) of narrow-band level sets. An optional scalar field can be used to produce a (smooth) alpha mask for the filtering |
CLevelSetFracture | Level set fracturing |
CDiracDelta | Smeared-out and continuous Dirac Delta function |
CLevelSetMeasure | Multi-threaded computation of surface area, volume and average mean-curvature for narrow band level sets |
CLevelSetMorphing | Shape morphology of level sets. Morphing from a source narrow-band level sets to a target narrow-band level set |
CLevelSetSphere | Generates a signed distance field (or narrow band level set) to a single sphere |
►CLevelSetTracker | Performs multi-threaded interface tracking of narrow band level sets |
CState | Lightweight struct that stores the state of the LevelSetTracker |
►CTreeToMerge | Convenience class that contains a pointer to a tree to be stolen or deep copied depending on the tag dispatch class used and a subset of methods to retrieve data from the tree |
CMaskPtr | Wrapper around unique_ptr that deep-copies mask on copy construction |
CMaskUnionOp | DynamicNodeManager operator used to generate a mask of the input tree, but with dense leaf nodes replaced with active tiles for compactness |
CCsgUnionOrIntersectionOp | DynamicNodeManager operator to merge trees using a CSG union or intersection |
CCsgDifferenceOp | DynamicNodeManager operator to merge two trees using a CSG difference |
CSumMergeOp | DynamicNodeManager operator to merge trees using a sum operation |
CQuadAndTriangleDataAdapter | Contiguous quad and triangle data adapter class |
►CMeshToVoxelEdgeData | Extracts and stores voxel edge intersection data from a mesh |
CEdgeData | Internal edge data type |
CGenEdgeData | |
►CMultiResGrid | |
CMaskOp | |
CProlongateOp | |
CRestrictOp | |
CDepthFirstNodeVisitor | Visit all nodes that are downstream of a specific node in depth-first order and apply a user-supplied functor to each node |
CDepthFirstNodeVisitor< NodeT, 0 > | |
►CParticleAtlas | |
CIterator | Provides accelerated range and nearest-neighbor searches for particles that are partitioned using the ParticleAtlas |
CParticlesToLevelSet | |
CClosestPointProjector | |
CPointAdvect | |
CConstrainedPointAdvect | |
CPointIndexLeafNode | |
CPointIndexIterator | Accelerated range and nearest-neighbor searches for point index grids |
CPointIndexFilter | |
►CPointPartitioner | |
CIndexIterator | |
CBasePointScatter | Forward declaration of base class |
CUniformPointScatter | The two point scatters UniformPointScatter and NonUniformPointScatter depend on the following two classes: |
CDenseUniformPointScatter | Scatters a fixed (and integer) number of points in all active voxels and tiles |
CNonUniformPointScatter | Non-uniform scatters of point in the active voxels. The local point count is implicitly defined as a product of of a global density (called pointsPerVolume) and the local voxel (or tile) value |
►CPointsToMask | Makes every voxel of a grid active if it contains a point |
CReducePool | |
CVectorToScalarGrid | Metafunction to convert a vector-valued grid type to a scalar grid type |
CInactivePruneOp | |
CTolerancePruneOp | |
CLevelSetPruneOp | |
CLinearSearchImpl | Implements linear iterative search for an iso-value of the level set along the direction of the ray |
CLevelSetRayIntersector | This class provides the public API for intersecting a ray with a narrow-band level set |
CVolumeRayIntersector | This class provides the public API for intersecting a ray with a generic (e.g. density) volume |
CLevelSetRayTracer | A (very) simple multithreaded ray tracer specifically for narrow-band level sets |
CVolumeRender | A (very) simple multithreaded volume render specifically for scalar density |
►CFilm | A simple class that allows for concurrent writes to pixels in an image, background initialization of the image, and PPM file output |
CRGBA | Floating-point RGBA components in the range [0, 1] |
CBaseCamera | Abstract base class for the perspective and orthographic cameras |
CPerspectiveCamera | |
COrthographicCamera | |
CBaseShader | Abstract base class for the shaders |
CMatteShader | Shader that produces a simple matte |
CMatteShader< Film::RGBA, SamplerType > | |
CNormalShader | Color shader that treats the surface normal (x, y, z) as an RGB color |
CNormalShader< Film::RGBA, SamplerType > | |
CPositionShader | Color shader that treats position (x, y, z) as an RGB color in a cube defined from an axis-aligned bounding box in world space |
CPositionShader< Film::RGBA, SamplerType > | |
CDiffuseShader | Simple diffuse Lambertian surface shader |
CDiffuseShader< Film::RGBA, SamplerType > | |
CSignedFloodFillOp | |
CHomogeneousMatMul | |
CMatMul | |
CMatMulNormalize | |
CDiscreteField | Thin wrapper class for a velocity grid |
CEnrightField | Analytical, divergence-free and periodic velocity field |
CVelocitySampler | |
CVelocityIntegrator | Performs Runge-Kutta time integration of variable order in a static velocity field |
CVolumeAdvection | Performs advections of an arbitrary type of volume in a static velocity field. The advections are performed by means of various derivatives of Semi-Lagrangian integration, i.e. backwards tracking along the hyperbolic characteristics followed by interpolation |
CPolygonPool | Collection of quads and triangles |
CVolumeToMesh | Mesh any scalar grid that has a continuous isosurface |
CClosestSurfacePoint | Accelerated closest surface point queries for narrow band level sets |
►Ntree | |
►Niter | |
CInvertedTree | |
CInvertedTree< HeadT, 1 > | |
►Nleafmgr | |
CTreeTraits | Useful traits for Tree types |
CTreeTraits< const TreeT > | |
CSameLeafConfig | |
CSameLeafConfig< Dim1, points::PointDataLeafNode< T2, Dim1 > > | |
CSameLeafConfig< Dim1, openvdb::tools::PointIndexLeafNode< T2, Dim1 > > | |
CSameInternalConfig | |
►CInternalNode | |
CChildAll | |
CChildIter | |
CChildOff | |
CChildOn | |
CDeepCopy | |
CDenseIter | |
CSameConfiguration | SameConfiguration<OtherNodeType>::value is true if and only if OtherNodeType is the type of an InternalNode with the same dimensions as this node and whose ChildNodeType has the same configuration as this node's ChildNodeType |
CTopologyCopy1 | |
CTopologyCopy2 | |
►CTopologyDifference | |
CA | |
CB | |
►CTopologyIntersection | |
CA | |
►CTopologyUnion | |
CA | |
CValueAll | |
CValueConverter | ValueConverter<T>::Type is the type of an InternalNode having the same child hierarchy and dimensions as this node but a different value type, T |
CValueIter | |
CValueOff | |
CValueOn | |
CVoxelizeActiveTiles | |
CSameInternalConfig< ChildT1, Dim1, InternalNode< ChildT2, Dim1 > > | |
CIteratorBase | Base class for iterators over internal and leaf nodes |
CSparseIteratorBase | Base class for sparse iterators over internal and leaf nodes |
CDenseIteratorBase | Base class for dense iterators over internal and leaf nodes |
►CLeafBuffer | Array of fixed size 23Log2Dim that stores the voxel values of a LeafNode |
CFileInfo | |
CLeafBuffer< bool, Log2Dim > | |
CLeafManagerImpl | |
►CLeafManager | This class manages a linear array of pointers to a given tree's leaf nodes, as well as optional auxiliary buffers (one or more per leaf) that can be swapped with the leaf nodes' voxel data buffers |
►CLeafRange | |
CIterator | |
CLeafManagerImpl< LeafManager< const TreeT > > | |
►CLeafNode | Templated block class to hold specific data types and a fixed number of values determined by Log2Dim. The actual coordinate dimension of the block is 2^Log2Dim, i.e. Log2Dim=3 corresponds to a LeafNode that spans a 8^3 block |
CChildAll | |
CChildIter | Leaf nodes have no children, so their child iterators have no get/set accessors |
CChildOff | |
CChildOn | |
CDenseIter | |
CSameConfiguration | SameConfiguration<OtherNodeType>::value is true if and only if OtherNodeType is the type of a LeafNode with the same dimensions as this node |
CValueAll | |
CValueConverter | ValueConverter<T>::Type is the type of a LeafNode having the same dimensions as this node but a different value type, T |
CValueIter | |
CValueOff | |
CValueOn | |
CSameLeafConfig< Dim1, LeafNode< T2, Dim1 > > | |
►CLeafNode< bool, Log2Dim > | LeafNode specialization for values of type bool that stores both the active states and the values of (2^Log2Dim)^3 voxels as bit masks |
CChildIter | Leaf nodes have no children, so their child iterators have no get/set accessors |
CDenseIter | |
CSameConfiguration | SameConfiguration<OtherNodeType>::value is true if and only if OtherNodeType is the type of a LeafNode with the same dimensions as this node |
CValueConverter | ValueConverter<T>::Type is the type of a LeafNode having the same dimensions as this node but a different value type, T |
CValueIter | |
►CLeafNode< ValueMask, Log2Dim > | LeafNode specialization for values of type ValueMask that encodes both the active states and the boolean values of (2^Log2Dim)^3 voxels in a single bit mask, i.e. voxel values and states are indistinguishable! |
CChildIter | Leaf nodes have no children, so their child iterators have no get/set accessors |
CDenseIter | |
CSameConfiguration | SameConfiguration<OtherNodeType>::value is true if and only if OtherNodeType is the type of a LeafNode with the same dimensions as this node |
CValueConverter | ValueConverter<T>::Type is the type of a LeafNode having the same dimensions as this node but a different value type, T |
CValueIter | |
CNodeManager | To facilitate threading over the nodes of a tree, cache node pointers in linear arrays, one for each level of the tree |
CDynamicNodeManager | |
CNodeFilter | |
►CNodeList | This class caches tree nodes of a specific type in a linear array |
►CNodeRange | |
CIterator | |
CNodeManagerLink | This class is a link in a chain that each caches tree nodes of a specific type in a linear array |
CForeachFilterOp | |
CReduceFilterOp | |
CDynamicNodeManagerLink | This class is a link in a chain that each caches tree nodes of a specific type in a linear array |
CNodeUnion | Default implementation of a NodeUnion that stores the child pointer and the value separately (i.e., not in a union). Types which select this specialization usually do not conform to the requirements of a union member, that is that the type ValueT is not trivially copyable. This implementation is thus NOT used for POD, math::Vec, math::Mat, math::Quat or math::Coord types, but is used (for example) with std::string |
CNodeUnion< ValueT, ChildT, typename std::enable_if< std::is_trivially_copyable< ValueT >::value >::type > | Template specialization of a NodeUnion that stores the child pointer and the value together (int, float, pointer, etc.) |
CNodeChain | NodeChain<RootNodeType, RootNodeType::LEVEL>::Type is a openvdb::TypeList that lists the types of the nodes of the tree rooted at RootNodeType in reverse order, from LeafNode to RootNode |
CSameRootConfig | |
CRootNodeCopyHelper | |
CRootNodeCombineHelper | |
►CRootNode | |
CSameConfiguration | SameConfiguration<OtherNodeType>::value is true if and only if OtherNodeType is the type of a RootNode whose ChildNodeType has the same configuration as this node's ChildNodeType |
CValueConverter | ValueConverter<T>::Type is the type of a RootNode having the same child hierarchy as this node but a different value type, T |
CNodeChain< HeadT, 1 > | Specialization to terminate NodeChain |
CSameRootConfig< ChildT1, RootNode< ChildT2 > > | |
CRootNodeCopyHelper< RootT, OtherRootT, true > | |
CRootNodeCombineHelper< CombineOp, RootT, OtherRootT, true > | |
CTreeBase | Base class for typed trees |
►CTree | |
CDeallocateNodes | |
CValueConverter | ValueConverter<T>::Type is the type of a tree having the same hierarchy as this tree but a different value type, T |
CTree3 | Tree3<T, N1, N2>::Type is the type of a three-level tree (Root, Internal, Leaf) with value type T and internal and leaf node log dimensions N1 and N2, respectively |
CTree4 | Tree4<T, N1, N2, N3>::Type is the type of a four-level tree (Root, Internal, Internal, Leaf) with value type T and internal and leaf node log dimensions N1, N2 and N3, respectively |
CTree5 | Tree5<T, N1, N2, N3, N4>::Type is the type of a five-level tree (Root, Internal, Internal, Internal, Leaf) with value type T and internal and leaf node log dimensions N1, N2, N3 and N4, respectively |
CTreeIterTraits | TreeIterTraits provides, for all tree iterators, a begin(tree) function that returns an iterator over a tree of arbitrary type |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildOnIter > | |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildOnCIter > | |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildOffIter > | |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildOffCIter > | |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildAllIter > | |
CTreeIterTraits< TreeT, typename TreeT::RootNodeType::ChildAllCIter > | |
CTreeIterTraits< TreeT, typename TreeT::NodeIter > | |
CTreeIterTraits< TreeT, typename TreeT::NodeCIter > | |
CTreeIterTraits< TreeT, typename TreeT::LeafIter > | |
CTreeIterTraits< TreeT, typename TreeT::LeafCIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueOnIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueOnCIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueOffIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueOffCIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueAllIter > | |
CTreeIterTraits< TreeT, typename TreeT::ValueAllCIter > | |
CCombineOpAdapter | Helper class to adapt a three-argument (a, b, result) CombineOp functor into a single-argument functor that accepts a CombineArgs struct |
CIterTraits | |
►CIterTraits< NodeT, typename NodeT::ChildOnIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ChildOnCIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ChildOffIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ChildOffCIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ChildAllIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ChildAllCIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueOnIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueOnCIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueOffIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueOffCIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueAllIter > | |
CNodeConverter | |
►CIterTraits< NodeT, typename NodeT::ValueAllCIter > | |
CNodeConverter | |
CIterListItem | An IterListItem is an element of a compile-time linked list of iterators to nodes of different types |
CIterListItem< PrevItemT, NodeVecT, VecSize, 0U > | The initial element of a compile-time linked list of iterators to nodes of different types |
CIterListItem< PrevItemT, NodeVecT, 1, _Level > | The final element of a compile-time linked list of iterators to nodes of different types |
CTreeValueIteratorBase | Base class for tree-traversal iterators over tile and voxel values |
CNodeIteratorBase | Base class for tree-traversal iterators over all nodes |
CLeafIteratorBase | Base class for tree-traversal iterators over all leaf nodes (but not leaf voxels) |
CIteratorRange | |
CValueAccessor0 | ValueAccessor with no mutex and no node caching |
CValueAccessor1 | Value accessor with one level of node caching |
CValueAccessor2 | Value accessor with two levels of node caching |
CValueAccessor3 | Value accessor with three levels of node caching |
CCacheItem | |
CValueAccessorBase | This base class for ValueAccessors manages registration of an accessor with a tree so that the tree can automatically clear the accessor whenever one of its nodes is deleted |
CValueAccessor | |
CValueAccessor< TreeType, IsSafe, 0, tbb::null_mutex > | Template specialization of the ValueAccessor with no mutex and no cache levels |
CValueAccessor< TreeType, IsSafe, 1, tbb::null_mutex > | Template specialization of the ValueAccessor with no mutex and one cache level |
CValueAccessor< TreeType, IsSafe, 2, tbb::null_mutex > | Template specialization of the ValueAccessor with no mutex and two cache levels |
CValueAccessor< TreeType, IsSafe, 3, tbb::null_mutex > | Template specialization of the ValueAccessor with no mutex and three cache levels |
CValueAccessorRW | This accessor is thread-safe (at the cost of speed) for both reading and writing to a tree. That is, multiple threads may safely access a single, shared ValueAccessorRW |
CCacheItem< TreeCacheT, NodeVecT, true > | The tail of a compile-time list of cached node pointers, ordered from LeafNode to RootNode |
►Nutil | |
CCpuTimer | Simple timer for basic profiling |
CFormattedInt | I/O manipulator that formats integer values with thousands separators |
CBaseMaskIterator | Base class for the bit mask iterators |
COnMaskIterator | |
COffMaskIterator | |
CDenseMaskIterator | |
CNodeMask | Bit mask for the internal and leaf nodes of VDB. This is a 64-bit implementation |
CNodeMask< 1 > | Template specialization of NodeMask for Log2Dim=1, i.e. 2^3 nodes |
CNodeMask< 2 > | Template specialization of NodeMask for Log2Dim=2, i.e. 4^3 nodes |
►CRootNodeMask | |
CBaseIterator | |
CDenseIterator | |
COffIterator | |
COnIterator | |
CNullInterrupter | Dummy NOOP interrupter class defining interface |
►CPagedArray | Concurrent, page-based, dynamically-sized linear data structure with O(1) random access and STL-compliant iterators. It is primarily intended for applications that concurrently insert (a possibly unkown number of) elements into a dynamically growing linear array, and fast random access to said elements |
CConstIterator | |
CIterator | |
CPage | |
CValueBuffer | |
CLeafTopologyIntOp | Functor for use with tools::foreach() to compute the boolean intersection between the value masks of corresponding leaf nodes in two trees |
CLeafTopologyDiffOp | Functor for use with tools::foreach() to compute the boolean difference between the value masks of corresponding leaf nodes in two trees |
CException | |
CArithmeticError | |
CIndexError | |
CIoError | |
CKeyError | |
CLookupError | |
CNotImplementedError | |
CReferenceError | |
CRuntimeError | |
CTypeError | |
CValueError | |
►CGrid | Container class that associates a tree with a transform and metadata |
CValueConverter | ValueConverter<T>::Type is the type of a grid having the same hierarchy as this grid but a different value type, T |
CGridBase | Abstract base class for typed grids |
CGridNamePred | Predicate functor that returns true for grids that have a specified name |
CTreeAdapter | This adapter allows code that is templated on a Tree type to accept either a Tree type or a Grid type |
CTreeAdapter< Grid< _TreeType > > | Partial specialization for Grid types |
CTreeAdapter< tree::ValueAccessor< _TreeType > > | Partial specialization for ValueAccessor types |
CHasMultiPassIO | Metafunction that specifies whether a given leaf node, tree, or grid type requires multiple passes to read and write voxel data |
CHasMultiPassIO< tree::Tree< RootNodeType > > | |
CHasMultiPassIO< Grid< TreeType > > | |
CMetadata | Base class for storing metadata information in a grid |
CUnknownMetadata | Subclass to hold raw data of an unregistered type |
CTypedMetadata | Templated metadata class to hold specific types |
CMetaMap | Container that maps names (strings) to values of arbitrary types |
CTypeList | A list of types (not necessarily unique) |
CValueMask | |
CPointIndex | Integer wrapper, required to distinguish PointIndexGrid and PointDataGrid from Int32Grid and Int64Grid |
CIsSpecializationOf | Helper metafunction used to determine if the first template parameter is a specialization of the class template given in the second template parameter |
CIsSpecializationOf< Template< Args... >, Template > | |
CVecTraits | |
CVecTraits< T, false > | |
CQuatTraits | |
CQuatTraits< T, false > | |
CMatTraits | |
CMatTraits< T, false > | |
CValueTraits | |
CValueTraits< T, false > | |
CCanConvertType | CanConvertType<FromType, ToType>::value is true if a value of type ToType can be constructed from a value of type FromType |
CCanConvertType< T, math::Vec2< T > > | |
CCanConvertType< T, math::Vec3< T > > | |
CCanConvertType< T, math::Vec4< T > > | |
CCanConvertType< math::Vec2< T >, math::Vec2< T > > | |
CCanConvertType< math::Vec3< T >, math::Vec3< T > > | |
CCanConvertType< math::Vec4< T >, math::Vec4< T > > | |
CCanConvertType< T0, math::Vec2< T1 > > | |
CCanConvertType< T0, math::Vec3< T1 > > | |
CCanConvertType< T0, math::Vec4< T1 > > | |
CCanConvertType< PointIndex32, PointDataIndex32 > | |
CCanConvertType< PointDataIndex32, PointIndex32 > | |
CCanConvertType< T, ValueMask > | |
CCanConvertType< ValueMask, T > | |
CCopyConstness | CopyConstness<T1, T2>::Type is either const T2 or T2 with no const qualifier, depending on whether T1 is const |
CCombineArgs | This struct collects both input and output arguments to "grid combiner" functors used with the tree::TypedGrid::combineExtended() and combine2Extended() methods. AValueType and BValueType are the value types of the two grids being combined |
CSwappedCombineOp | |
CShallowCopy | Tag dispatch class that distinguishes shallow copy constructors from deep copy constructors |
CTopologyCopy | Tag dispatch class that distinguishes topology copy constructors from deep copy constructors |
CDeepCopy | Tag dispatch class that distinguishes constructors that deep copy |
CSteal | Tag dispatch class that distinguishes constructors that steal |
CPartialCreate | Tag dispatch class that distinguishes constructors during file input |
CVersionId | |
CAXTokenError | |
CAXSyntaxError | |
CAXCodeGenError | |
CAXCompilerError | |
CAXExecutionError | |
▼Nopenvdb_houdini | |
Nnode_info_text | Namespace to hold functionality for registering info text callbacks. Whenever getNodeSpecificInfoText() is called, the default info text is added to MMB output unless a valid callback has been registered for the grid type |
CAttributeDetailBase | |
CAttributeDetail | |
CMeshAttrTransfer | |
CPointAttrTransfer | |
CAttributeCopyBase | |
CAttributeCopy | |
CStrAttributeCopy | |
CTransferPrimitiveAttributesOp | |
CTransferPointAttributesOp | |
CGT_GEOPrimCollectVDB | |
CTransformOp | TBB body object for threaded world to voxel space transformation and copy of points |
CPrimCpyOp | TBB body object for threaded primitive copy |
CVertexNormalOp | TBB body object for threaded vertex normal generation |
CSharpenFeaturesOp | TBB body object for threaded sharp feature construction |
CGenAdaptivityMaskOp | TBB body object for threaded sharp feature construction |
COpenVDBOpFactory | Use this class to register a new OpenVDB operator (SOP, POP, etc.) |
CSOP_NodeVDB | Base class from which to derive OpenVDB-related Houdini SOPs |
CGridTransformOp | GridTransformOp is a functor class for use with GridBase::apply() that samples an input grid into an output grid of the same type through a given affine transform |
CGridResampleOp | GridResampleOp is a functor class for use with UTvdbProcessTypedGrid() that samples an input grid into an output grid of the same type through a given transform |
CGridResampleToMatchOp | GridResampleToMatchOp is a functor class for use with GridBase::apply() that samples an input grid into an output grid of the same type such that, after resampling, the input and output grids coincide, but the output grid's transform is unchanged |
CVdbPrimCIterator | Iterator over const VDB primitives on a geometry detail |
CVdbPrimIterator | Iterator over non-const VDB primitives on a geometry detail |
CInterrupter | Wrapper class that adapts a Houdini UT_Interrupt object for use with OpenVDB library routines |
▼NOSN | |
COSNoise | |
Npyopenvdb | |
▼Nstd | |
Chash< openvdb::math::Coord > | |
Cnumeric_limits< openvdb::v8_1::math::half > | |
Ntbb | |
Nunittest_util | |