Интерфейс IMFAttributes (mfobjects.h)

Предоставляет универсальный способ хранения пар "ключ-значение" в объекте. Ключи — GUID, а значения могут быть любого из следующих типов данных: UINT32, UINT64, double, GUID, строка расширенных символов, массив байтов или указатель IUnknown . Стандартная реализация этого интерфейса содержит блокировку потока при добавлении, удалении или извлечении значений.

Список предопределенных идентификаторов GUIDатрибутов см. в разделе "Атрибуты Media Foundation". Каждый идентификатор GUID атрибута имеет ожидаемый тип данных. Различные методы set в IMFAttributes не проверяют тип с идентификатором GUID атрибута. Приложение обязано задать правильный тип атрибута.

Чтобы создать пустое хранилище атрибутов, вызовите MFCreateAttributes.

Наследование

Интерфейс IMFAttributes наследует от интерфейса IUnknown . IMFAttributes также имеет следующие типы членов:

Методы

Интерфейс IMFAttributes имеет эти методы.

 
IMFAttributes::Compare

Сравнивает атрибуты этого объекта с атрибутами другого объекта.
IMFAttributes::CompareItem

Запрашивает, равно ли сохраненное значение атрибута указанному PROPVARIANT.
IMFAttributes::CopyAllItems

Копирует все атрибуты из этого объекта в другое хранилище атрибутов.
IMFAttributes::D eleteAllItems

Удаляет все пары "ключ-значение" из списка атрибутов объекта.
IMFAttributes::D eleteItem

Удаляет пару "ключ-значение" из списка атрибутов объекта.
IMFAttributes::GetAllocatedBlob

Извлекает массив байтов, связанный с ключом. Этот метод выделяет память для массива.
IMFAttributes::GetAllocatedString

Возвращает строку расширенных символов, связанную с ключом. Этот метод выделяет память для строки.
IMFAttributes::GetBlob

Извлекает массив байтов, связанный с ключом. Этот метод копирует массив в буфер, выделенный вызывающим объектом.
IMFAttributes::GetBlobSize

Извлекает длину массива байтов, связанного с ключом.
IMFAttributes::GetCount

Извлекает количество атрибутов, заданных для этого объекта.
IMFAttributes::GetDouble

Извлекает двойное значение, связанное с ключом.
IMFAttributes::GetGUID

Извлекает значение GUID, связанное с ключом.
IMFAttributes::GetItem

Извлекает значение, связанное с ключом.
IMFAttributes::GetItemByIndex

Извлекает атрибут по указанному индексу.
IMFAttributes::GetItemType

Извлекает тип данных значения, связанного с ключом.
IMFAttributes::GetString

Извлекает строку расширенных символов, связанную с ключом.
IMFAttributes::GetStringLength

Извлекает длину строкового значения, связанного с ключом.
IMFAttributes::GetUINT32

Извлекает значение UINT32, связанное с ключом.
IMFAttributes::GetUINT64

Извлекает значение UINT64, связанное с ключом.
IMFAttributes::GetUnknown

Извлекает указатель интерфейса, связанный с ключом.
IMFAttributes::LockStore

Блокирует хранилище атрибутов, чтобы к нему не могли обращаться другие потоки.
IMFAttributes::SetBlob

Связывает массив байтов с ключом.
IMFAttributes::SetDouble

Связывает двойное значение с ключом.
IMFAttributes::SetGUID

Связывает значение GUID с ключом.
IMFAttributes::SetItem

Добавляет значение атрибута с указанным ключом.
IMFAttributes::SetString

Связывает строку расширенных символов с ключом.
IMFAttributes::SetUINT32

Связывает значение UINT32 с ключом.
IMFAttributes::SetUINT64

Связывает значение UINT64 с ключом.
IMFAttributes::SetUnknown

Связывает указатель IUnknown с ключом.
IMFAttributes::UnlockStore

Разблокирует хранилище атрибутов после вызова метода IMFAttributes::LockStore. Во время разблокировки объекта несколько потоков могут получить доступ к атрибутам объекта.

Комментарии

Этот интерфейс доступен на следующих платформах, если установлены распространяемые компоненты пакета SDK для Windows Media 11:

  • Windows XP с пакетом обновления 2 (SP2) и более поздними версиями.
  • Windows XP Media Center Edition 2005 с kb900325 (Windows XP Media Center Edition 2005) и KB9257666 (накопительный пакет обновления за октябрь 2006 г. для Windows XP Media Center Edition) установлен.

Требования

   
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header mfobjects.h (включая Mfidl.h)

См. также раздел

Атрибуты и свойства

Интерфейсы Media Foundation