Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::Media::Attributes Class Reference

#include <HWMFObjectsTypes.h>

Collaboration diagram for Harlinn::Windows::Media::Attributes:
[legend]

Public Types

using Container = std::unordered_map<Guid, std::shared_ptr<Attribute>>
 

Public Member Functions

 Attributes ()
 
HW_EXPORT Attributes (const MFAttributes &attributes)
 
HW_EXPORT void Add (const MFAttributes &attributes)
 
HW_EXPORT void Add (const MFAttributes &attributes, UInt32 index)
 
HW_EXPORT void AssignTo (const MFAttributes &attributes) const
 
size_t size () const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
template<typename WriterT >
void Write (WriterT &writer) const
 
template<typename ReaderT >
void Read (ReaderT &reader)
 

Private Types

using iterator = typename Container::iterator
 
using const_iterator = typename Container::const_iterator
 

Private Member Functions

HW_EXPORT void AddInt32 (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddInt64 (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddDouble (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddGuid (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddString (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddBlob (const MFAttributes &attributes, const Guid &key)
 
HW_EXPORT void AddUnknown (const MFAttributes &attributes, const Guid &key)
 
UInt32 CountSerializableAttributes () const
 
template<typename ReaderT , typename AttributeT >
void ReadAttribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadInt32Attribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadInt64Attribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadDoubleAttribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadGuidAttribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadStringAttribute (ReaderT &reader)
 
template<typename ReaderT >
void ReadBlobAttribute (ReaderT &reader)
 

Static Private Member Functions

static HW_EXPORT void AssignToInt32 (const Int32Attribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToInt64 (const Int64Attribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToDouble (const DoubleAttribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToGuid (const GuidAttribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToString (const StringAttribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToBlob (const BlobAttribute *attribute, const MFAttributes &attributes)
 
static HW_EXPORT void AssignToUnknown (const UnknownAttribute *attribute, const MFAttributes &attributes)
 
template<typename WriterT >
static void Write (WriterT &writer, const Int32Attribute *attr)
 
template<typename WriterT >
static void Write (WriterT &writer, const Int64Attribute *attr)
 
template<typename WriterT >
static void Write (WriterT &writer, const DoubleAttribute *attr)
 
template<typename WriterT >
static void Write (WriterT &writer, const GuidAttribute *attr)
 
template<typename WriterT >
static void Write (WriterT &writer, const StringAttribute *attr)
 
template<typename WriterT >
static void Write (WriterT &writer, const BlobAttribute *attr)
 

Private Attributes

Container container_
 

Member Typedef Documentation

◆ const_iterator

using Harlinn::Windows::Media::Attributes::const_iterator = typename Container::const_iterator
private

◆ Container

using Harlinn::Windows::Media::Attributes::Container = std::unordered_map<Guid, std::shared_ptr<Attribute>>

◆ iterator

using Harlinn::Windows::Media::Attributes::iterator = typename Container::iterator
private

Constructor & Destructor Documentation

◆ Attributes() [1/2]

Harlinn::Windows::Media::Attributes::Attributes ( )
inline

◆ Attributes() [2/2]

Harlinn::Windows::Media::Attributes::Attributes ( const MFAttributes & attributes)

Member Function Documentation

◆ Add() [1/2]

void Harlinn::Windows::Media::Attributes::Add ( const MFAttributes & attributes)

◆ Add() [2/2]

void Harlinn::Windows::Media::Attributes::Add ( const MFAttributes & attributes,
UInt32 index )

◆ AddBlob()

void Harlinn::Windows::Media::Attributes::AddBlob ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddDouble()

void Harlinn::Windows::Media::Attributes::AddDouble ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddGuid()

void Harlinn::Windows::Media::Attributes::AddGuid ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddInt32()

void Harlinn::Windows::Media::Attributes::AddInt32 ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddInt64()

void Harlinn::Windows::Media::Attributes::AddInt64 ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddString()

void Harlinn::Windows::Media::Attributes::AddString ( const MFAttributes & attributes,
const Guid & key )
private

◆ AddUnknown()

void Harlinn::Windows::Media::Attributes::AddUnknown ( const MFAttributes & attributes,
const Guid & key )
private

◆ AssignTo()

void Harlinn::Windows::Media::Attributes::AssignTo ( const MFAttributes & attributes) const

◆ AssignToBlob()

void Harlinn::Windows::Media::Attributes::AssignToBlob ( const BlobAttribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToDouble()

void Harlinn::Windows::Media::Attributes::AssignToDouble ( const DoubleAttribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToGuid()

void Harlinn::Windows::Media::Attributes::AssignToGuid ( const GuidAttribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToInt32()

void Harlinn::Windows::Media::Attributes::AssignToInt32 ( const Int32Attribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToInt64()

void Harlinn::Windows::Media::Attributes::AssignToInt64 ( const Int64Attribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToString()

void Harlinn::Windows::Media::Attributes::AssignToString ( const StringAttribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ AssignToUnknown()

void Harlinn::Windows::Media::Attributes::AssignToUnknown ( const UnknownAttribute * attribute,
const MFAttributes & attributes )
staticprivate

◆ begin() [1/2]

iterator Harlinn::Windows::Media::Attributes::begin ( )
inline

◆ begin() [2/2]

const_iterator Harlinn::Windows::Media::Attributes::begin ( ) const
inline

◆ cbegin()

const_iterator Harlinn::Windows::Media::Attributes::cbegin ( ) const
inline

◆ cend()

const_iterator Harlinn::Windows::Media::Attributes::cend ( ) const
inline

◆ CountSerializableAttributes()

UInt32 Harlinn::Windows::Media::Attributes::CountSerializableAttributes ( ) const
inlineprivate

◆ end() [1/2]

iterator Harlinn::Windows::Media::Attributes::end ( )
inline

◆ end() [2/2]

const_iterator Harlinn::Windows::Media::Attributes::end ( ) const
inline

◆ Read()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::Read ( ReaderT & reader)
inline

◆ ReadAttribute()

template<typename ReaderT , typename AttributeT >
void Harlinn::Windows::Media::Attributes::ReadAttribute ( ReaderT & reader)
inlineprivate

◆ ReadBlobAttribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadBlobAttribute ( ReaderT & reader)
inlineprivate

◆ ReadDoubleAttribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadDoubleAttribute ( ReaderT & reader)
inlineprivate

◆ ReadGuidAttribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadGuidAttribute ( ReaderT & reader)
inlineprivate

◆ ReadInt32Attribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadInt32Attribute ( ReaderT & reader)
inlineprivate

◆ ReadInt64Attribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadInt64Attribute ( ReaderT & reader)
inlineprivate

◆ ReadStringAttribute()

template<typename ReaderT >
void Harlinn::Windows::Media::Attributes::ReadStringAttribute ( ReaderT & reader)
inlineprivate

◆ size()

size_t Harlinn::Windows::Media::Attributes::size ( ) const
inline

◆ Write() [1/7]

template<typename WriterT >
void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer) const
inline

◆ Write() [2/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const BlobAttribute * attr )
inlinestaticprivate

◆ Write() [3/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const DoubleAttribute * attr )
inlinestaticprivate

◆ Write() [4/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const GuidAttribute * attr )
inlinestaticprivate

◆ Write() [5/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const Int32Attribute * attr )
inlinestaticprivate

◆ Write() [6/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const Int64Attribute * attr )
inlinestaticprivate

◆ Write() [7/7]

template<typename WriterT >
static void Harlinn::Windows::Media::Attributes::Write ( WriterT & writer,
const StringAttribute * attr )
inlinestaticprivate

Member Data Documentation

◆ container_

Container Harlinn::Windows::Media::Attributes::container_
private

The documentation for this class was generated from the following files: