CBaseStreamControl, classe

hiérarchie de la classe cbasestreamcontrol

Cette classe implémente l’interface IAMStreamControl pour les broches d’entrée et de sortie. Il permet de contrôler le démarrage et l’arrêt d’un code confidentiel individuel sur le filtre. Un code confidentiel qui prend en charge IAMStreamControl doit hériter de cette classe de base. Voici une déclaration classique pour une broche d’entrée :

class CMyInputPin : public CBaseInputPin, public CBaseStreamControl

Veillez à remplacer NonDelegatingQueryInteface pour exposer IAMStreamControl. Pour plus d’informations, consultez comment implémenter IUnknown.

Méthodes publiques Description
CBaseStreamControl Méthode de constructeur.
~ CBaseStreamControl Méthode de destructeur.
CheckStreamState Détermine si un échantillon de média doit être remis ou ignoré.
Vidage Notifie la classe de base que le code confidentiel a démarré ou a arrêté le vidage.
NotifyFilterState Notifie le code confidentiel lorsque l’état du filtre change.
SetFilterGraph Spécifie le récepteur d’événements pour les événements de contrôle de flux.
SetSyncSource Notifie la classe de base de l’horloge de référence actuelle.
Méthodes IAMStreamControl Description
GetInfo Récupère des informations sur les paramètres de contrôle de flux actuels, y compris les heures de démarrage et d’arrêt.
Commencer Informe le code confidentiel quand il faut commencer à transmettre des données.
StopAt Informe le code confidentiel quand il faut arrêter la transmission de données.

Remarques

Cette classe requiert le code confidentiel et le filtre propriétaire pour notifier la classe lorsque divers événements se produisent, tels que le filtre qui rejoint le graphique ou la réception d’une nouvelle horloge de référence. Vous devez appeler les méthodes de classe suivantes :

La CBaseStreamControl classe utilise l’horloge de référence du graphique de filtre pour déterminer les échantillons que le filtre doit remettre et celui qu’il doit ignorer. Dans la méthode IMemInputPin :: Receive de votre pin, appelez la méthode CBaseStreamControl :: CheckStreamState avec un pointeur vers l’exemple de média entrant. Si la méthode retourne le flux de flux de valeur _ , fournissez l’exemple en aval. Sinon, ignorez-le.

Configuration requise

Condition requise Valeur
En-tête
Strmctl. h (inclure Flux. h)
Bibliothèque
Strmbase. lib (versions commerciales);
Strmbasd. lib (versions Debug)