HDK
|
Grid serializer/unserializer. More...
#include <Archive.h>
Public Types | |
using | Ptr = SharedPtr< Archive > |
using | ConstPtr = SharedPtr< const Archive > |
Public Member Functions | |
Archive () | |
Archive (const Archive &)=default | |
Archive & | operator= (const Archive &)=default |
virtual | ~Archive () |
virtual Ptr | copy () const |
Return a copy of this archive. More... | |
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... | |
virtual void | write (const GridCPtrVec &, const MetaMap &=MetaMap()) const |
Write the grids in the given container to this archive's output stream. More... | |
Static Public Member Functions | |
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 Public Attributes | |
static const uint32_t | DEFAULT_COMPRESSION_FLAGS |
Protected Types | |
using | NamedGridMap = std::map< Name, GridBase::Ptr > |
Protected Member Functions | |
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 Protected Member Functions | |
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... | |
Friends | |
class | ::TestFile |
using openvdb::OPENVDB_VERSION_NAME::io::Archive::ConstPtr = SharedPtr<const Archive> |
|
protected |
openvdb::OPENVDB_VERSION_NAME::io::Archive::Archive | ( | ) |
|
default |
|
virtual |
|
inline |
|
protected |
If the grid represented by the given grid descriptor is an instance, connect it with its instance parent.
|
virtual |
Return a copy of this archive.
Reimplemented in openvdb::OPENVDB_VERSION_NAME::io::File, and openvdb::OPENVDB_VERSION_NAME::io::Stream.
|
inline |
std::string openvdb::OPENVDB_VERSION_NAME::io::Archive::getUniqueTag | ( | ) | const |
|
static |
Return true
if the OpenVDB library includes support for the Blosc compressor.
|
static |
Return true
if the OpenVDB library includes support for the ZLib compressor.
|
inlineprotected |
|
static |
Return true
if delayed loading is enabled.
If enabled, delayed loading can be disabled for individual files, but not vice-versa.
OPENVDB_DISABLE_DELAYED_LOAD
to disable delayed loading unconditionally.
|
inline |
bool openvdb::OPENVDB_VERSION_NAME::io::Archive::isIdentical | ( | const std::string & | uuidStr | ) | const |
|
inline |
|
inline |
|
staticprotected |
Populate the given grid from the input stream.
|
staticprotected |
Populate the given grid from the input stream, but only where it intersects the given world-space bounding box.
|
staticprotected |
Populate the given grid from the input stream, but only where it intersects the given index-space bounding box.
|
staticprotected |
Read in the compression flags for a grid and tag the given input stream with those flags.
|
staticprotected |
Read in and return the number of grids on the input stream.
|
protected |
|
inline |
Specify whether and how the data stream should be compressed.
c | bitwise OR (e.g., COMPRESS_ZIP | COMPRESS_ACTIVE_MASK) of compression option flags (see Compression.h for the available flags) |
|
protected |
Tag the given input stream with flags indicating whether the input stream contains compressed data and how it is compressed.
|
protected |
Tag the given input stream with the input file format version number.
The tag can be retrieved with getFormatVersion().
|
protected |
Tag an output stream with flags specifying only those compression options that are applicable to the given grid.
|
inline |
|
inlineprotected |
|
inline |
|
protected |
Tag the given input stream with the version number of the library with which the input stream was created.
The tag can be retrieved with getLibraryVersion().
std::string openvdb::OPENVDB_VERSION_NAME::io::Archive::version | ( | ) | const |
Return a string of the form "<major>.<minor>/<format>", giving the library and file format version numbers associated with the input stream.
|
inlinevirtual |
Write the grids in the given container to this archive's output stream.
Reimplemented in openvdb::OPENVDB_VERSION_NAME::io::File, and openvdb::OPENVDB_VERSION_NAME::io::Stream.
|
protected |
Write the given grids to an output stream.
|
protected |
Write the given grids to an output stream.
|
protected |
Write the given grid descriptor and grid to an output stream and update the GridDescriptor offsets.
seekable | if true, the output stream supports seek operations |
|
protected |
Write the given grid descriptor and grid metadata to an output stream and update the GridDescriptor offsets, but don't write the grid's tree, since it is shared with another grid.
seekable | if true, the output stream supports seek operations |
|
protected |
|
static |