Udostępnij przez


Integracja z filtrem przetwarzania obrazów

Transfery danych oparte na strumieniu umożliwiają łatwą integrację filtru przetwarzania obrazów WIA ze sterownikiem WIA, ponieważ strumień jest dostarczany przez obiekt wywołujący, a sterownik WIA podejmuje tę samą akcję niezależnie od tego, czym jest strumień docelowy. Oznacza to, że sterownik po prostu prosi o strumień, a następnie do niego zapisuje, bez względu na to, jaki typ strumienia jest zwracany do sterownika.

Filtr przetwarzania obrazów WIA jest konieczny do implementacji IStream. Po utworzeniu tego filtru otrzymuje on docelowy strumień aplikacji, do którego powinien następnie delegować (lub przekazywać) swoje wywołania. Innymi słowy, gdy IStream::Write jest wywoływane na filtrze, powinien przetworzyć bufor, a następnie wywołać funkcję IStream::Write na strumieniu wyjściowym z przetworzonym buforem.

Podobnie filtr przetwarzania obrazów może przekazać strumień sterownikowi, dzięki czemu dane mogą być zapisywane ze sterownika do filtru przetwarzania obrazów, który następnie zapisuje w strumieniu docelowym aplikacji. Należy pamiętać, że jeśli nie ma żadnego filtra, sterownik się nie zmienia, ale nadal zapisuje do strumienia.

Ta sytuacja jest przedstawiona graficznie na poniższych ilustracjach. Pierwsza ilustracja przedstawia transfer danych oparty na strumieniu, gdy filtr przetwarzania obrazów nie jest używany.

diagram ilustrujący transfer strumienia istream bez filtru przetwarzania obrazów.

Druga ilustracja przedstawia transfer danych oparty na strumieniu, gdy jest używany filtr przetwarzania obrazów.

diagram ilustrujący transfer strumienia za pomocą filtra przetwarzania obrazów.

Zwróć uwagę, że zachowanie kierowcy nie zmienia się; sterownik odbiera strumień i zapisuje w nim niezależnie od tego, czy strumień jest dostarczany przez filtr przetwarzania obrazów, czy bezpośrednio przez aplikację. W związku z tym można oddzielnie opublikować wartościowe składniki przetwarzania obrazów. Na przykład można podać sterownik wbudowany, który jest funkcjonalny, ale może zapewnić lepszą jakość obrazów, gdy użytkownik zainstaluje składnik przetwarzania obrazów z dysku CD. Sterownik nie musi zostać zmieniony w tej sytuacji.

Interfejs IStream i jego metody są opisane w dokumentacji zestawu Microsoft Windows SDK.