OpenVDB: TypedMetadata< T > Class Template Reference

OpenVDB 12.1.0

Loading...
Searching...
No Matches
TypedMetadata< T > Class Template Reference

Templated metadata class to hold specific types. More...

`#include <openvdb/Metadata.h>`

Inheritance diagram for TypedMetadata< T >:

## Public Types
using | Ptr = SharedPtr<TypedMetadata<T>>
using | ConstPtr = SharedPtr<const TypedMetadata<T>>

## Public Member Functions
| TypedMetadata ()
| TypedMetadata (const T &value)
| TypedMetadata (const TypedMetadata< T > &other)
| ~TypedMetadata () override
Name | typeName () const override
| Return the type name of the metadata.
Metadata::Ptr | copy () const override
| Return a copy of the metadata.
void | copy (const Metadata &other) override
| Copy the given metadata into this metadata.
std::string | str () const override
| Return a textual representation of this metadata.
std::string | str () const
| Return a textual representation of this metadata.
bool | asBool () const override
Index32 | size () const override
| Return the size of this metadata in bytes.
void | setValue (const T &)
| Set this metadata's value.
T & | value ()
| Return this metadata's value.
const T & | value () const
bool | operator== (const Metadata &other) const
| Return `true` if the given metadata is equivalent to this metadata.
bool | operator!= (const Metadata &other) const
| Return `true` if the given metadata is different from this metadata.
void | read (std::istream &)
| Unserialize this metadata from a stream.
void | write (std::ostream &) const
| Serialize this metadata to a stream.

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

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

## Static Protected Member Functions
static Index32 | readSize (std::istream &)
| Read the size of the metadata from a stream.

## Detailed Description

template<typename T>
class openvdb::v12_1::ax::TypedMetadata< T >

Templated metadata class to hold specific types.

## Member Typedef Documentation

## ◆ ConstPtr

template<typename T>

using ConstPtr = SharedPtr<const TypedMetadata<T>>

## ◆ Ptr

template<typename T>

using Ptr = SharedPtr<TypedMetadata<T>>

## Constructor & Destructor Documentation

## ◆ TypedMetadata() [1/3]

template<typename T>

TypedMetadata | ( |  | ) |
| inline

## ◆ TypedMetadata() [2/3]

template<typename T>

TypedMetadata | ( | const T & | value | ) |
| inline

## ◆ TypedMetadata() [3/3]

template<typename T>

TypedMetadata | ( | const TypedMetadata< T > & | other | ) |
| inline

## ◆ ~TypedMetadata()

template<typename T>

~TypedMetadata | ( |  | ) |
| inlineoverride

## Member Function Documentation

## ◆ asBool()

template<typename T>

bool asBool | ( |  | ) | const
| inlineoverridevirtual

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

Implements Metadata.

## ◆ clearRegistry()

void clearRegistry | ( |  | ) |
| staticinherited

Clear out the metadata registry.

## ◆ copy() [1/2]

template<typename T>

Metadata::Ptr copy | ( |  | ) | const
| inlineoverridevirtual

Return a copy of the metadata.

Implements Metadata.

## ◆ copy() [2/2]

template<typename T>

void copy | ( | const Metadata & | other | ) |
| inlineoverridevirtual

Copy the given metadata into this metadata.

Implements Metadata.

## ◆ createMetadata() [1/2]

template<typename T>

Metadata::Ptr createMetadata | ( |  | ) |
| inlinestatic

Create new metadata of this type.

## ◆ createMetadata() [2/2]

Metadata::Ptr createMetadata | ( | const Name & | typeName | ) |
| staticinherited

Create new metadata of the given type.

## ◆ isRegisteredType() [1/2]

template<typename T>

bool isRegisteredType | ( |  | ) |
| inlinestatic

## ◆ isRegisteredType() [2/2]

bool isRegisteredType | ( | const Name & | typeName | ) |
| staticinherited

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

## ◆ operator!=()

bool operator!= | ( | const Metadata & | other | ) | const
| inlineinherited

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

## ◆ operator==()

bool operator== | ( | const Metadata & | other | ) | const
| inherited

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

## ◆ read()

void read | ( | std::istream & | is | ) |
| inlineinherited

Unserialize this metadata from a stream.

## ◆ readSize()

Index32 readSize | ( | std::istream & | is | ) |
| inlinestaticprotectedinherited

Read the size of the metadata from a stream.

## ◆ readValue()

template<typename T>

void readValue | ( | std::istream & | ,
|  | Index32 | numBytes )
| inlineoverrideprotectedvirtual

Read the metadata from a stream.

Implements Metadata.

## ◆ registerType() [1/2]

template<typename T>

void registerType | ( |  | ) |
| inlinestatic

## ◆ registerType() [2/2]

void registerType | ( | const Name & | typeName,
|  | Metadata::Ptr(* | createMetadata )() )
| staticinherited

Register the given metadata type along with a factory function.

## ◆ setValue()

template<typename T>

void setValue | ( | const T & | val | ) |
| inline

Set this metadata's value.

## ◆ size()

template<typename T>

Index32 size | ( |  | ) | const
| inlineoverridevirtual

Return the size of this metadata in bytes.

Implements Metadata.

## ◆ staticTypeName()

template<typename T>

Name staticTypeName | ( |  | ) |
| inlinestatic

## ◆ str() [1/2]

std::string str | ( |  | ) | const
| inlinevirtual

Return a textual representation of this metadata.

Implements Metadata.

## ◆ str() [2/2]

template<typename T>

std::string str | ( |  | ) | const
| inlineoverridevirtual

Return a textual representation of this metadata.

Implements Metadata.

## ◆ typeName()

template<typename T>

Name typeName | ( |  | ) | const
| inlineoverridevirtual

Return the type name of the metadata.

Implements Metadata.

## ◆ unregisterType() [1/2]

template<typename T>

void unregisterType | ( |  | ) |
| inlinestatic

## ◆ unregisterType() [2/2]

void unregisterType | ( | const Name & | typeName | ) |
| staticinherited

## ◆ value() [1/2]

template<typename T>

T & value | ( |  | ) |
| inline

Return this metadata's value.

## ◆ value() [2/2]

template<typename T>

const T & value | ( |  | ) | const
| inline

## ◆ write()

void write | ( | std::ostream & | os | ) | const
| inlineinherited

Serialize this metadata to a stream.

## ◆ writeSize()

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

Write the size of the metadata to a stream.

## ◆ writeValue()

template<typename T>

void writeValue | ( | std::ostream & |  | ) | const
| inlineoverrideprotectedvirtual

Write the metadata to a stream.

Implements Metadata.