Partager via


Création de tables de répartition

Vous devez créer une table de répartition de filtre pour un descripteur de filtre (KSFILTER_DESCRIPTOR) d’un minidriver BDA afin que le filtre du fournisseur de réseau puisse ouvrir et initialiser une instance du filtre et libérer ultérieurement le instance de filtre. Vous devez également créer une table de répartition de broches pour chaque descripteur de broche (KSPIN_DESCRIPTOR_EX) dans le tableau de types de broches disponibles dans la topologie de modèle du filtre. Le filtre du fournisseur de réseau utilise une table de répartition des broches pour ouvrir et initialiser une broche et libérer ultérieurement la broche. L’extrait de code suivant montre des exemples de tables de distribution de filtres et d’épingles :

//
//  Filter Dispatch Table
//
//  Lists the dispatch routines for major events at the filter
//  level.
//
const
KSFILTER_DISPATCH
FilterDispatch =
{
    CFilter::Create,        // Create
    CFilter::FilterClose,   // Close
    NULL,                   // Process
    NULL                    // Reset
};

//
//  Input Pin Dispatch Table
//  Lists the dispatch routines for major events at the pin level.
//
const
KSPIN_DISPATCH
AntennaPinDispatch =
{
    CAntennaPin::PinCreate,         // Create
    CAntennaPin::PinClose,          // Close
    NULL,                           // Process signal data
    NULL,                           // Reset
    NULL,                           // SetDataFormat
    CAntennaPin::PinSetDeviceState, // SetDeviceState
    NULL,                           // Connect
    NULL,                           // Disconnect
    NULL,                           // Clock
    NULL                            // Allocator
};