Como: Adicionar suporte de parâmetro de tempo de execução ao XAPO
Você pode adicionar suporte a parâmetros de tempo de execução a um XAPO implementando a interface IXAPOParameters . O suporte a parâmetros de tempo de execução permite que um XAPO altere seu comportamento com base nos parâmetros passados a ele em tempo de execução.
Siga as etapas em Como criar um XAPO.
Altere o XAPO para derivar de CXAPOParametersBase e CXAPOBase.
Adicione chamadas aos métodos CXAPOParametersBase::BeginProcess e CXAPOParametersBase::EndProcess à implementação de IXAPO::P rocess.
Observação
Adicionar esses métodos a IXAPO::P rocess permite que CXAPOParametersBase mantenha suas cópias dos parâmetros de efeito em um estado thread-safe. Chame CXAPOParametersBase::BeginProcess no início de IXAPO::P rocess e CXAPOParametersBase::EndProcess no final de IXAPO::P rocess.
Adicione mais código à implementação IXAPO::P rocess para alterar seu comportamento de acordo com os valores armazenados pelo método SetParameters .
Observação
Adicionar código ao método IXAPO::P rocess para usar os parâmetros especificados por SetParameters permite que o comportamento do XAPO seja alterado ao longo de sua vida.
Ao criar uma instância do efeito, aloque um buffer de três das estruturas que representarão os parâmetros do efeito e passe-o para o construtor CXAPOParametersBase .
Observação
A instância CXAPOParametersBase usa internamente esse buffer para gerenciar parâmetros de efeito passados a ele quando você chama SetParameters. Você deve inicializar todos os blocos de parâmetro de processo em pParameterBlocks com o mesmo valor padrão antes de chamar qualquer um dos métodos IXAPO::P rocess, IXAPOParameters::GetParameters e IXAPOParameters::SetParameters . Normalmente, essa inicialização é tratada em IXAPO::Initialize ou em IXAPO::LockForProcess.
Tópicos relacionados