OpenVDB  9.0.1
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
DelayedLoadMetadata Class Reference

Store a buffer of data that can be optionally used during reading for faster delayed-load I/O performance. More...

#include <openvdb/io/DelayedLoadMetadata.h>

Inherits Metadata.

Public Types

using Ptr = SharedPtr< DelayedLoadMetadata >
 
using ConstPtr = SharedPtr< const DelayedLoadMetadata >
 
using MaskType = int8_t
 
using CompressedSizeType = int64_t
 

Public Member Functions

 DelayedLoadMetadata ()=default
 
 DelayedLoadMetadata (const DelayedLoadMetadata &other)
 
 ~DelayedLoadMetadata () override=default
 
Name typeName () const override
 Return the type name of the metadata. More...
 
Metadata::Ptr copy () const override
 Return a copy of the metadata. More...
 
void copy (const Metadata &) override
 Copy the given metadata into this metadata. More...
 
std::string str () const override
 Return a textual representation of this metadata. More...
 
bool asBool () const override
 
Index32 size () const override
 Return the size of this metadata in bytes. More...
 
void clear ()
 Delete the contents of the mask and compressed size arrays. More...
 
bool empty () const
 Return true if both arrays are empty. More...
 
void resizeMask (size_t size)
 Resize the mask array. More...
 
void resizeCompressedSize (size_t size)
 Resize the compressed size array. More...
 
MaskType getMask (size_t index) const
 Return the mask value for a specific index. More...
 
void setMask (size_t index, const MaskType &value)
 Set the mask value for a specific index. More...
 
CompressedSizeType getCompressedSize (size_t index) const
 Return the compressed size value for a specific index. More...
 
void setCompressedSize (size_t index, const CompressedSizeType &value)
 Set the compressed size value for a specific index. More...
 
bool operator== (const Metadata &other) const
 Return true if the given metadata is equivalent to this metadata. More...
 
bool operator!= (const Metadata &other) const
 Return true if the given metadata is different from this metadata. More...
 
void read (std::istream &)
 Unserialize this metadata from a stream. More...
 
void write (std::ostream &) const
 Serialize this metadata to a stream. More...
 

Static Public Member Functions

static Name staticTypeName ()
 
static Metadata::Ptr createMetadata ()
 
static void registerType ()
 
static void unregisterType ()
 
static bool isRegisteredType ()
 
static Metadata::Ptr createMetadata (const Name &typeName)
 Create new metadata of the given type. More...
 
static bool isRegisteredType (const Name &typeName)
 Return true if the given type is known by the metadata type registry. More...
 
static void clearRegistry ()
 Clear out the metadata registry. More...
 
static void registerType (const Name &typeName, Metadata::Ptr(*createMetadata)())
 Register the given metadata type along with a factory function. More...
 
static void unregisterType (const Name &typeName)
 

Protected Member Functions

void readValue (std::istream &, Index32 numBytes) override
 Read the metadata from a stream. More...
 
void writeValue (std::ostream &) const override
 Write the metadata to a stream. More...
 
void writeSize (std::ostream &) const
 Write the size of the metadata to a stream. More...
 

Static Protected Member Functions

static Index32 readSize (std::istream &)
 Read the size of the metadata from a stream. More...
 

Detailed Description

Store a buffer of data that can be optionally used during reading for faster delayed-load I/O performance.

Member Typedef Documentation

using CompressedSizeType = int64_t
using MaskType = int8_t

Constructor & Destructor Documentation

DelayedLoadMetadata ( )
default
~DelayedLoadMetadata ( )
overridedefault

Member Function Documentation

bool asBool ( ) const
overridevirtual

Return the boolean representation of this metadata (empty strings and zeroVals evaluate to false; most other values evaluate to true).

Implements Metadata.

void clear ( )

Delete the contents of the mask and compressed size arrays.

static void clearRegistry ( )
staticinherited

Clear out the metadata registry.

Metadata::Ptr copy ( ) const
overridevirtual

Return a copy of the metadata.

Implements Metadata.

void copy ( const Metadata other)
overridevirtual

Copy the given metadata into this metadata.

Implements Metadata.

static Metadata::Ptr createMetadata ( )
inlinestatic
static Metadata::Ptr createMetadata ( const Name typeName)
staticinherited

Create new metadata of the given type.

bool empty ( ) const

Return true if both arrays are empty.

CompressedSizeType getCompressedSize ( size_t  index) const

Return the compressed size value for a specific index.

Note
throws if index is out-of-range or DelayedLoadMask not registered
MaskType getMask ( size_t  index) const

Return the mask value for a specific index.

Note
throws if index is out-of-range or DelayedLoadMask not registered
static bool isRegisteredType ( )
inlinestatic
static bool isRegisteredType ( const Name typeName)
staticinherited

Return true if the given type is known by the metadata type registry.

bool operator!= ( const Metadata other) const
inlineinherited

Return true if the given metadata is different from this metadata.

bool operator== ( const Metadata other) const
inherited

Return true if the given metadata is equivalent to this metadata.

void read ( std::istream &  is)
inlineinherited

Unserialize this metadata from a stream.

Index32 readSize ( std::istream &  is)
inlinestaticprotectedinherited

Read the size of the metadata from a stream.

void readValue ( std::istream &  ,
Index32  numBytes 
)
overrideprotectedvirtual

Read the metadata from a stream.

Implements Metadata.

static void registerType ( )
inlinestatic
static void registerType ( const Name typeName,
Metadata::Ptr(*)()  createMetadata 
)
staticinherited

Register the given metadata type along with a factory function.

void resizeCompressedSize ( size_t  size)

Resize the compressed size array.

void resizeMask ( size_t  size)

Resize the mask array.

void setCompressedSize ( size_t  index,
const CompressedSizeType value 
)

Set the compressed size value for a specific index.

Note
throws if index is out-of-range
void setMask ( size_t  index,
const MaskType value 
)

Set the mask value for a specific index.

Note
throws if index is out-of-range
Index32 size ( ) const
overridevirtual

Return the size of this metadata in bytes.

Implements Metadata.

static Name staticTypeName ( )
inlinestatic
std::string str ( ) const
overridevirtual

Return a textual representation of this metadata.

Implements Metadata.

Name typeName ( ) const
overridevirtual

Return the type name of the metadata.

Implements Metadata.

static void unregisterType ( )
inlinestatic
static void unregisterType ( const Name typeName)
staticinherited
void write ( std::ostream &  os) const
inlineinherited

Serialize this metadata to a stream.

void writeSize ( std::ostream &  os) const
inlineprotectedinherited

Write the size of the metadata to a stream.

void writeValue ( std::ostream &  ) const
overrideprotectedvirtual

Write the metadata to a stream.

Implements Metadata.