HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Grid.h File Reference
#include "Exceptions.h"
#include "MetaMap.h"
#include "Types.h"
#include "io/io.h"
#include "math/Transform.h"
#include "tree/Tree.h"
#include "util/logging.h"
#include "util/Name.h"
#include <cassert>
#include <iostream>
#include <set>
#include <type_traits>
#include <vector>
+ Include dependency graph for Grid.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openvdb::OPENVDB_VERSION_NAME::Grid< typename >
 Container class that associates a tree with a transform and metadata. More...
 
class  openvdb::OPENVDB_VERSION_NAME::GridBase
 Abstract base class for typed grids. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::GridNamePred
 Predicate functor that returns true for grids that have a specified name. More...
 
class  openvdb::OPENVDB_VERSION_NAME::Grid< typename >
 Container class that associates a tree with a transform and metadata. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::Grid< typename >::ValueConverter< OtherValueType >
 ValueConverter<T>::Type is the type of a grid having the same hierarchy as this grid but a different value type, T. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::TreeAdapter< _TreeType >
 This adapter allows code that is templated on a Tree type to accept either a Tree type or a Grid type. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::TreeAdapter< Grid< _TreeType > >
 Partial specialization for Grid types. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::TreeAdapter< tree::ValueAccessor< _TreeType > >
 Partial specialization for ValueAccessor types. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::HasMultiPassIO< LeafNodeType >
 Metafunction that specifies whether a given leaf node, tree, or grid type requires multiple passes to read and write voxel data. More...
 
struct  openvdb::OPENVDB_VERSION_NAME::HasMultiPassIO< tree::Tree< RootNodeType > >
 
struct  openvdb::OPENVDB_VERSION_NAME::HasMultiPassIO< Grid< TreeType > >
 

Namespaces

 openvdb
 
 openvdb::OPENVDB_VERSION_NAME
 

Typedefs

using openvdb::OPENVDB_VERSION_NAME::TreeBase = tree::TreeBase
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrVec = std::vector< GridBase::Ptr >
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrVecIter = GridPtrVec::iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrVecCIter = GridPtrVec::const_iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrVecPtr = SharedPtr< GridPtrVec >
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrVec = std::vector< GridBase::ConstPtr >
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrVecIter = GridCPtrVec::iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrVecCIter = GridCPtrVec::const_iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrVecPtr = SharedPtr< GridCPtrVec >
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrSet = std::set< GridBase::Ptr >
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrSetIter = GridPtrSet::iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrSetCIter = GridPtrSet::const_iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridPtrSetPtr = SharedPtr< GridPtrSet >
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrSet = std::set< GridBase::ConstPtr >
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrSetIter = GridCPtrSet::iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrSetCIter = GridCPtrSet::const_iterator
 
using openvdb::OPENVDB_VERSION_NAME::GridCPtrSetPtr = SharedPtr< GridCPtrSet >
 

Functions

template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::createGrid (const typename GridType::ValueType &background)
 Create a new grid of type GridType with a given background value. More...
 
template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::createGrid ()
 Create a new grid of type GridType with background value zero. More...
 
template<typename TreePtrType >
Grid< typename
TreePtrType::element_type >
::Ptr 
openvdb::OPENVDB_VERSION_NAME::createGrid (TreePtrType)
 Create a new grid of the appropriate type that wraps the given tree. More...
 
template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::createLevelSet (Real voxelSize=1.0, Real halfWidth=LEVEL_SET_HALF_WIDTH)
 Create a new grid of type GridType classified as a "Level Set", i.e., a narrow-band level set. More...
 
template<typename GridPtrContainerT >
GridPtrContainerT::value_type openvdb::OPENVDB_VERSION_NAME::findGridByName (const GridPtrContainerT &container, const Name &name)
 Return the first grid in the given container whose name is name. More...
 
template<typename KeyT , typename GridPtrT >
GridPtrT openvdb::OPENVDB_VERSION_NAME::findGridByName (const std::map< KeyT, GridPtrT > &container, const Name &name)
 Return the first grid in the given map whose name is name. More...
 
template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::gridPtrCast (const GridBase::Ptr &grid)
 Cast a generic grid pointer to a pointer to a grid of a concrete class. More...
 
template<typename GridType >
GridType::ConstPtr openvdb::OPENVDB_VERSION_NAME::gridConstPtrCast (const GridBase::ConstPtr &grid)
 Cast a generic const grid pointer to a const pointer to a grid of a concrete class. More...
 
template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::deepCopyTypedGrid (const GridBase::ConstPtr &grid)
 Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is GridType. More...
 
template<typename GridType >
GridType::Ptr openvdb::OPENVDB_VERSION_NAME::deepCopyTypedGrid (const GridBase &grid)
 Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is GridType. More...