TMetadata

primo::avblocks::modern::TMetadata

class TMetadata

Fluent wrapper for primo::codecs::Metadata.

Owns the raw object through a primo::ref<Metadata>. Non-copyable, movable. Obtained from TMediaSocketT::metadata() or created directly via the default constructor.

Unnamed Group

TMetadata(TMetadata&&) = default
TMetadata &operator=(TMetadata&&) = default

Move construction/assignment transfers ownership of the underlying object. The moved-from object no longer wraps anything.

Unnamed Group

inline TMetadata &&addAttribute(TMetaAttribute &&attr) &&
inline TMetadata &addAttribute(TMetaAttribute &&attr) &

Appends an attribute to the attribute list.

Parameters:

attr – The attribute to add. The list retains it.

Returns:

This object, for chaining.

Unnamed Group

inline TMetadata &&addPicture(TMetaPicture &&pic) &&
inline TMetadata &addPicture(TMetaPicture &&pic) &

Appends a picture to the picture list.

Parameters:

pic – The picture to add. The list retains it.

Returns:

This object, for chaining.

Public Functions

inline TMetadata()

Creates an empty metadata object.

inline explicit TMetadata(primo::ref<primo::codecs::Metadata> meta)

Takes ownership of an existing Metadata reference.

inline explicit TMetadata(primo::codecs::Metadata *meta)

Wraps a non-owned Metadata pointer, retaining it.

TMetadata(const TMetadata&) = delete
TMetadata &operator=(const TMetadata&) = delete
inline TMetaAttributeList attributes() const

Returns a non-owning view of the attribute list.

inline TMetaPictureList pictures() const

Returns a non-owning view of the picture list.

inline bool immutable() const

Returns true if the metadata is immutable.

inline TMetadata clone() const

Creates a full independent clone. The returned object is always mutable.

inline bool valid() const

Returns true when this handle wraps a non-null underlying object.

inline primo::codecs::Metadata *get() const

Returns the raw underlying pointer. For interop with the core API only.