Поделиться через


Руководство: добавление в XAPO поддержки параметра времени выполнения

Вы можете добавить поддержку параметров времени выполнения в XAPO, реализовав интерфейс IXAPOParameters . Поддержка параметров во время выполнения позволяет XAPO изменять свое поведение на основе параметров, передаваемых ему во время выполнения.

  1. Выполните действия, описанные в разделе Практическое руководство. Создание XAPO.

  2. Измените XAPO на производные от CXAPOParametersBase и CXAPOBase.

  3. Добавьте вызовы методов CXAPOParametersBase::BeginProcess и CXAPOParametersBase::EndProcess в реализацию IXAPO::P rocess.

    Примечание

    Добавление этих методов в IXAPO::P rocess позволяет CXAPOParametersBase сохранять свои копии параметров эффекта в потокобезопасном состоянии. Вызовите CXAPOParametersBase::BeginProcess в начале IXAPO::P rocess и CXAPOParametersBase::EndProcess в конце IXAPO::P rocess.

     

  4. Добавьте дополнительный код в реализацию IXAPO::P rocess , чтобы изменить ее поведение в соответствии со значениями, хранящимися в методе SetParameters .

    Примечание

    Добавление кода в метод IXAPO::P rocess для использования параметров , заданных SetParameters , позволяет изменять поведение XAPO на протяжении всего срока его существования.

     

  5. При создании экземпляра эффекта выделите буфер из трех структур, которые будут представлять параметры эффекта, и передайте его конструктору CXAPOParametersBase .

    Примечание

    Экземпляр CXAPOParametersBase внутренне использует этот буфер для управления параметрами эффекта, передаваемыми ему при вызове SetParameters. Необходимо инициализировать все блоки параметров процесса в pParameterBlocks с одинаковым значением по умолчанию перед вызовом любого из методов IXAPO::P rocess, IXAPOParameters::GetParameters и IXAPOParameters::SetParameters . Обычно эта инициализация обрабатывается в IXAPO::Initialize или В IXAPO::LockForProcess.

     

Звуковые эффекты

Обзор протокола XAPO