Proprietäre Data-Intersection-Handler
Sie können die Einschränkungen des standardmäßigen Datenschnitthandlers überwinden, indem Sie einen proprietären Handler für Ihren Adapter schreiben. Ein proprietärer Handler wird als IMiniport::D ataRangeIntersection-Methode in einem Miniporttreiberobjekt implementiert. Beispiele für DataRangeIntersection-Methoden finden Sie in den Beispieladaptertreibern im Microsoft Windows Driver Kit (WDK).
Ein proprietärer Datenschnitthandler kann nicht standardmäßige Hardwarefeatures kompensieren, die in der KSDATARANGE_AUDIO-Struktur nicht ausreichend angegeben werden können. Der AC97-Beispieladaptertreiber im WDK verwaltet beispielsweise Hardware, die zwei oder mehr Audiokanäle während der Wiedergabe unterstützen kann, mono jedoch nicht unterstützt. Die DataRangeIntersection-Methode des Beispiels bestimmt, ob der Datenbereich für den Quellpin des anderen Filters auf Mono (d. h. MaximumChannels< 2) beschränkt ist. Wenn ja, schlägt der Aufruf fehl, indem STATUS_NO_MATCH zurückgegeben wird.
Ein proprietärer Datenschnitthandler hat die Möglichkeit, Datenkreuzungen an einigen seiner Pins zu verarbeiten und dem Standardhandler für Datenkreuzungen des Porttreibers die Verarbeitung von Datenkreuzungen auf den anderen Pins zu ermöglichen.
Im weiteren Verlauf dieses Abschnitts werden Richtlinien für die Implementierung proprietärer Datenschnitthandler vorgestellt.