HDK
|
Grid archive associated with arbitrary input and output streams (not necessarily files) More...
#include <Stream.h>
Public Member Functions | |
Stream (std::istream &, bool delayLoad=true) | |
Read grids from an input stream. More... | |
Stream () | |
Construct an archive for stream output. More... | |
Stream (std::ostream &) | |
Construct an archive for output to the given stream. More... | |
Stream (const Stream &) | |
Stream & | operator= (const Stream &) |
~Stream () override | |
Archive::Ptr | copy () const override |
Return a copy of this archive. More... | |
MetaMap::Ptr | getMetadata () const |
Return the file-level metadata in a newly created MetaMap. More... | |
GridPtrVecPtr | getGrids () |
Return pointers to the grids that were read from the input stream. More... | |
void | write (const GridCPtrVec &, const MetaMap &=MetaMap()) const override |
Write the grids in the given container to this archive's output stream. More... | |
template<typename GridPtrContainerT > | |
void | write (const GridPtrContainerT &, const MetaMap &=MetaMap()) const |
Write the grids in the given container to this archive's output stream. More... | |
![]() | |
Archive () | |
Archive (const Archive &)=default | |
Archive & | operator= (const Archive &)=default |
virtual | ~Archive () |
std::string | getUniqueTag () const |
Return the UUID that was most recently written (or read, if no UUID has been written yet). More... | |
bool | isIdentical (const std::string &uuidStr) const |
Return true if the given UUID matches this archive's UUID. More... | |
uint32_t | fileVersion () const |
Return the file format version number of the input stream. More... | |
VersionId | libraryVersion () const |
Return the (major, minor) version number of the library that was used to write the input stream. More... | |
std::string | version () const |
Return a string of the form "<major>.<minor>/<format>", giving the library and file format version numbers associated with the input stream. More... | |
bool | isInstancingEnabled () const |
Return true if trees shared by multiple grids are written out only once, false if they are written out once per grid. More... | |
void | setInstancingEnabled (bool b) |
Specify whether trees shared by multiple grids should be written out only once (true ) or once per grid (false ). More... | |
uint32_t | compression () const |
Return a bit mask specifying compression options for the data stream. More... | |
void | setCompression (uint32_t c) |
Specify whether and how the data stream should be compressed. More... | |
bool | isGridStatsMetadataEnabled () const |
Return true if grid statistics (active voxel count and bounding box, etc.) are computed and written as grid metadata. More... | |
void | setGridStatsMetadataEnabled (bool b) |
Specify whether grid statistics (active voxel count and bounding box, etc.) should be computed and written as grid metadata. More... | |
Additional Inherited Members | |
![]() | |
using | Ptr = SharedPtr< Archive > |
using | ConstPtr = SharedPtr< const Archive > |
![]() | |
static bool | hasBloscCompression () |
Return true if the OpenVDB library includes support for the Blosc compressor. More... | |
static bool | hasZLibCompression () |
Return true if the OpenVDB library includes support for the ZLib compressor. More... | |
static bool | isDelayedLoadingEnabled () |
Return true if delayed loading is enabled. More... | |
![]() | |
static const uint32_t | DEFAULT_COMPRESSION_FLAGS |
![]() | |
using | NamedGridMap = std::map< Name, GridBase::Ptr > |
![]() | |
bool | inputHasGridOffsets () const |
Return true if the input stream contains grid offsets that allow for random access or partial reading. More... | |
void | setInputHasGridOffsets (bool b) |
void | setFormatVersion (std::istream &) |
Tag the given input stream with the input file format version number. More... | |
void | setLibraryVersion (std::istream &) |
Tag the given input stream with the version number of the library with which the input stream was created. More... | |
void | setDataCompression (std::istream &) |
Tag the given input stream with flags indicating whether the input stream contains compressed data and how it is compressed. More... | |
void | setGridCompression (std::ostream &, const GridBase &) const |
Tag an output stream with flags specifying only those compression options that are applicable to the given grid. More... | |
void | connectInstance (const GridDescriptor &, const NamedGridMap &) const |
If the grid represented by the given grid descriptor is an instance, connect it with its instance parent. More... | |
void | writeGrid (GridDescriptor &, GridBase::ConstPtr, std::ostream &, bool seekable) const |
void | writeGridInstance (GridDescriptor &, GridBase::ConstPtr, std::ostream &, bool seekable) const |
bool | readHeader (std::istream &) |
Read the magic number, version numbers, UUID, etc. from the given input stream. More... | |
void | writeHeader (std::ostream &, bool seekable) const |
Write the magic number, version numbers, UUID, etc. to the given output stream. More... | |
void | write (std::ostream &, const GridPtrVec &, bool seekable, const MetaMap &=MetaMap()) const |
Write the given grids to an output stream. More... | |
void | write (std::ostream &, const GridCPtrVec &, bool seekable, const MetaMap &=MetaMap()) const |
Write the given grids to an output stream. More... | |
![]() | |
static void | readGridCompression (std::istream &) |
Read in the compression flags for a grid and tag the given input stream with those flags. More... | |
static int32_t | readGridCount (std::istream &) |
Read in and return the number of grids on the input stream. More... | |
static void | readGrid (GridBase::Ptr, const GridDescriptor &, std::istream &) |
Populate the given grid from the input stream. More... | |
static void | readGrid (GridBase::Ptr, const GridDescriptor &, std::istream &, const BBoxd &) |
Populate the given grid from the input stream, but only where it intersects the given world-space bounding box. More... | |
static void | readGrid (GridBase::Ptr, const GridDescriptor &, std::istream &, const CoordBBox &) |
Populate the given grid from the input stream, but only where it intersects the given index-space bounding box. More... | |
Grid archive associated with arbitrary input and output streams (not necessarily files)
|
explicit |
Read grids from an input stream.
If delayLoad is true, map the contents of the input stream into memory and enable delayed loading of grids.
OPENVDB_DISABLE_DELAYED_LOAD
to disable delayed loading unconditionally. openvdb::OPENVDB_VERSION_NAME::io::Stream::Stream | ( | ) |
Construct an archive for stream output.
|
explicit |
Construct an archive for output to the given stream.
openvdb::OPENVDB_VERSION_NAME::io::Stream::Stream | ( | const Stream & | ) |
|
override |
|
overridevirtual |
Return a copy of this archive.
Reimplemented from openvdb::OPENVDB_VERSION_NAME::io::Archive.
GridPtrVecPtr openvdb::OPENVDB_VERSION_NAME::io::Stream::getGrids | ( | ) |
Return pointers to the grids that were read from the input stream.
MetaMap::Ptr openvdb::OPENVDB_VERSION_NAME::io::Stream::getMetadata | ( | ) | const |
Return the file-level metadata in a newly created MetaMap.
|
overridevirtual |
Write the grids in the given container to this archive's output stream.
ValueError | if this archive was constructed without specifying an output stream. |
Reimplemented from openvdb::OPENVDB_VERSION_NAME::io::Archive.