Partilhar via


Integração com o Filtro de Processamento de Imagem

As transferências de dados baseadas em fluxo permitem a fácil integração do Filtro de Processamento de Imagem WIA com um driver WIA, porque o fluxo é fornecido pelo chamador e o driver WIA executa a mesma ação, independentemente do fluxo de destino. Ou seja, o controlador simplesmente solicita um fluxo de dados e depois escreve nele, independentemente do tipo de fluxo devolvido ao controlador.

O filtro de processamento de imagem WIA é necessário para implementar o IStream. Quando esse filtro é criado, ele recebe o fluxo de destino do aplicativo, para o qual ele deve delegar (ou encaminhar) suas chamadas. Em outras palavras, quando IStream::Write é chamado no filtro, ele deve processar o buffer e, em seguida, chamar IStream::Write no fluxo de destino com o buffer processado.

Da mesma forma, o Filtro de Processamento de Imagem pode dar um fluxo ao driver para que os dados possam ser gravados do driver no Filtro de Processamento de Imagem, que então grava no fluxo de destino do aplicativo. Observe que, se nenhum filtro estiver presente, o driver não muda, mas continua a gravar no fluxo.

Esta situação é apresentada graficamente nas figuras seguintes. A primeira figura ilustra uma transferência de dados baseada em fluxo quando o Filtro de Processamento de Imagem não é usado.

Diagrama ilustrando uma transferência istream sem o filtro de processamento de imagem.

A segunda figura ilustra a transferência de dados baseada em fluxo quando o Filtro de Processamento de Imagem é usado.

Diagrama ilustrando uma transferência istream com o filtro de processamento de imagem.

Observe que o comportamento do motorista não muda; o driver recebe um fluxo e grava nele se o fluxo é fornecido pelo filtro de processamento de imagem ou por um aplicativo diretamente. Como resultado, você pode publicar componentes de processamento de imagem de valor agregado separadamente. Por exemplo, pode fornecer um driver nativo que seja funcional, mas que ofereça imagens de melhor qualidade quando o usuário instala o componente de processamento de imagem a partir do CD. O condutor não necessita de ser mudado nesta situação.

A interface IStream e seus métodos são descritos na documentação do SDK do Microsoft Windows.