CRenderedInputPin-Klasse

Die CRenderedInputPin-Klasse ist eine Basisklasse zum Implementieren eines Eingabepins auf einem Renderer. Diese Klasse ist für Rendererfilter konzipiert, die nicht von der CBaseRenderer-Klasse ableiten. (Filter, die von CBaseRenderer ableiten, sollten die CRendererInputPin-Klasse für den Eingabepin verwenden.)
Um diese Klasse verwenden zu können, müssen Sie mindestens folgende Schritte unternehmen:
- Deklarieren Sie eine neue PIN-Klasse, die CRenderedInputPin erbt.
- Deklarieren Sie in Ihrer Pin-Klasse ein kritisches Abschnittsobjekt, um die Streamingsperre zu halten. Zu diesem Zweck können Sie die CCritSec-Klasse verwenden. Weitere Informationen finden Sie unter Threads und kritische Abschnitte.
- Überschreiben Sie CRenderedInputPin::EndOfStream, um die Streamingsperre zu halten.
- Implementieren Sie die Methoden IMemInputPin::Receive, CBasePin::CheckMediaTypeund CBasePin::GetMediaType.
- Implementieren Sie in Ihrem Filter CBaseFilter::GetPin, um eine Instanz Ihrer Pin-Klasse zurück zu geben.
Sie können diese Klasse in einem Renderer verwenden, der über mehrere Eingabepins verfügt. Diese Klasse erbt die CBaseInputPin-Klasse.
| Geschützte Membervariablen | Beschreibung |
|---|---|
| m _ bAtEndOfStream | Gibt an, ob das Ende des Streams erreicht wurde. |
| m _ bCompleteNomost | Gibt an, ob der Pin ein EC _ COMPLETE-Ereignis an den Filter-Graph gesendet hat. |
| Öffentliche Methoden | Beschreibung |
| Aktiv | Benachrichtigt den Pin, dass der Filter jetzt aktiv ist. |
| CRenderedInputPin | Konstruktormethode. |
| Ausführung | Benachrichtigt den Pin, dass der Filter jetzt ausgeführt wird. |
| IPin-Methoden | Beschreibung |
| EndFlush | Beendet einen Leerungsvorgang. |
| EndOfStream | Benachrichtigt den Pin, dass keine zusätzlichen Daten erwartet werden, bis der Filter einen neuen Ausführungsbefehl empfängt. |
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|