31 #ifndef OPENVDB_IO_ARCHIVE_HAS_BEEN_INCLUDED 32 #define OPENVDB_IO_ARCHIVE_HAS_BEEN_INCLUDED 39 #include <boost/uuid/uuid.hpp> 72 virtual Ptr copy()
const;
76 std::string getUniqueTag()
const;
78 bool isIdentical(
const std::string& uuidStr)
const;
87 std::string version()
const;
98 static bool hasBloscCompression();
123 static bool isDelayedLoadingEnabled();
135 void setFormatVersion(std::istream&);
142 void setLibraryVersion(std::istream&);
150 void setGridCompression(std::ostream&,
const GridBase&)
const;
153 static void readGridCompression(std::istream&);
156 static int32_t readGridCount(std::istream&);
160 #ifndef OPENVDB_2_ABI_COMPATIBLE 173 void connectInstance(
const GridDescriptor&,
const NamedGridMap&)
const;
184 std::ostream&,
bool seekable)
const;
188 bool readHeader(std::istream&);
192 void writeHeader(std::ostream&,
bool seekable)
const;
201 friend class ::TestFile;
204 uint32_t mFileVersion;
208 mutable boost::uuids::uuid mUuid;
211 bool mInputHasGridOffsets;
214 bool mEnableInstancing;
216 uint32_t mCompression;
218 bool mEnableGridStats;
225 #endif // OPENVDB_IO_ARCHIVE_HAS_BEEN_INCLUDED
virtual void write(const GridCPtrVec &, const MetaMap &=MetaMap()) const
Write the grids in the given container to this archive's output stream.
Definition: Archive.h:116
Definition: version.h:121
SharedPtr< Archive > Ptr
Definition: Archive.h:61
Abstract base class for typed grids.
Definition: Grid.h:103
OPENVDB_API void setDataCompression(std::ios_base &, uint32_t compressionFlags)
Associate with the given stream a bitwise OR of compression option flags (COMPRESS_ZIP, COMPRESS_ACTIVE_MASK, etc.) specifying whether and how input data is compressed or output data should be compressed.
std::vector< GridBase::ConstPtr > GridCPtrVec
Definition: Grid.h:441
bool inputHasGridOffsets() const
Return true if the input stream contains grid offsets that allow for random access or partial reading...
Definition: Archive.h:128
Definition: GridDescriptor.h:46
bool isGridStatsMetadataEnabled() const
Return true if grid statistics (active voxel count and bounding box, etc.) are computed and written a...
Definition: Archive.h:110
#define OPENVDB_VERSION_NAME
Definition: version.h:43
std::map< Name, GridBase::Ptr > NamedGridMap
Definition: Archive.h:169
Definition: Exceptions.h:39
void setInstancingEnabled(bool b)
Specify whether trees shared by multiple grids should be written out only once (true) or once per gri...
Definition: Archive.h:95
void setInputHasGridOffsets(bool b)
Definition: Archive.h:129
std::string Name
Definition: Name.h:44
void setCompression(uint32_t c)
Specify whether and how the data stream should be compressed.
Definition: Archive.h:106
std::shared_ptr< T > SharedPtr
Definition: Types.h:130
std::vector< GridBase::Ptr > GridPtrVec
Definition: Grid.h:436
static const uint32_t DEFAULT_COMPRESSION_FLAGS
Definition: Archive.h:64
SharedPtr< GridBase > Ptr
Definition: Grid.h:106
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h:71
bool isInstancingEnabled() const
Return true if trees shared by multiple grids are written out only once, false if they are written ou...
Definition: Archive.h:91
uint32_t fileVersion() const
Return the file format version number of the input stream.
Definition: Archive.h:81
SharedPtr< const Archive > ConstPtr
Definition: Archive.h:62
SharedPtr< const GridBase > ConstPtr
Definition: Grid.h:107
Grid serializer/unserializer.
Definition: Archive.h:58
VersionId libraryVersion() const
Return the (major, minor) version number of the library that was used to write the input stream...
Definition: Archive.h:84
void setGridStatsMetadataEnabled(bool b)
Specify whether grid statistics (active voxel count and bounding box, etc.) should be computed and wr...
Definition: Archive.h:113
uint32_t compression() const
Return a bit mask specifying compression options for the data stream.
Definition: Archive.h:101