Руководство: добавление в XAPO поддержки параметра времени выполнения
Вы можете добавить поддержку параметров времени выполнения в XAPO, реализовав интерфейс IXAPOParameters . Поддержка параметров во время выполнения позволяет XAPO изменять свое поведение на основе параметров, передаваемых ему во время выполнения.
Выполните действия, описанные в разделе Практическое руководство. Создание XAPO.
Измените XAPO на производные от CXAPOParametersBase и CXAPOBase.
Добавьте вызовы методов CXAPOParametersBase::BeginProcess и CXAPOParametersBase::EndProcess в реализацию IXAPO::P rocess.
Примечание
Добавление этих методов в IXAPO::P rocess позволяет CXAPOParametersBase сохранять свои копии параметров эффекта в потокобезопасном состоянии. Вызовите CXAPOParametersBase::BeginProcess в начале IXAPO::P rocess и CXAPOParametersBase::EndProcess в конце IXAPO::P rocess.
Добавьте дополнительный код в реализацию IXAPO::P rocess , чтобы изменить ее поведение в соответствии со значениями, хранящимися в методе SetParameters .
Примечание
Добавление кода в метод IXAPO::P rocess для использования параметров , заданных SetParameters , позволяет изменять поведение XAPO на протяжении всего срока его существования.
При создании экземпляра эффекта выделите буфер из трех структур, которые будут представлять параметры эффекта, и передайте его конструктору CXAPOParametersBase .
Примечание
Экземпляр CXAPOParametersBase внутренне использует этот буфер для управления параметрами эффекта, передаваемыми ему при вызове SetParameters. Необходимо инициализировать все блоки параметров процесса в pParameterBlocks с одинаковым значением по умолчанию перед вызовом любого из методов IXAPO::P rocess, IXAPOParameters::GetParameters и IXAPOParameters::SetParameters . Обычно эта инициализация обрабатывается в IXAPO::Initialize или В IXAPO::LockForProcess.
Связанные темы