Condividi tramite


Funzione di callback PFNKSPININITIALIZEALLOCATOR (ks.h)

Un minidriver AVStream AVStrMiniInitializeAllocator routine inizializza un allocatore che verrà associato a un pin.

Sintassi

PFNKSPININITIALIZEALLOCATOR Pfnkspininitializeallocator;

NTSTATUS Pfnkspininitializeallocator(
  [in]  PKSPIN Pin,
  [in]  PKSALLOCATOR_FRAMING AllocatorFraming,
  [out] PVOID *Context
)
{...}

Parametri

[in] Pin

Puntatore a una struttura KSPIN che descrive il pin a cui deve essere associato l'allocatore.

[in] AllocatorFraming

Puntatore a una struttura KSALLOCATOR_FRAMING che descrive i requisiti di frame che l'allocatore deve usare.

[out] Context

Puntatore a un contesto per l'allocatore che verrà passato come parametro alle altre routine per questa struttura. Ad esempio, il driver potrebbe archiviare strutture di frame pin o allocatore per un riferimento successivo dalle altre routine di callback. Si noti che altre routine per KSALLOCATOR_DISPATCH devono avere almeno un modo indiretto di fare riferimento Pin. Ad esempio, AVStrMiniAllocate dovrà essere in grado di accedere alle informazioni AllocatorFraming per Pine Context è l'unico parametro che AVStream passerà.

Valore restituito

AVStrMiniInitializeAllocator deve restituire STATUS_SUCCESS o il codice di errore ricevuto durante il tentativo di creare l'allocatore.

Osservazioni

Il minidriver specifica l'indirizzo di questa routine nel InitializeAllocator membro della relativa struttura KSALLOCATOR_DISPATCH. Il minidriver passa questa struttura al driver di classe in KSPIN_DISPATCH.

Si noti che gli allocatori in modalità kernel non possono allocare frame che potrebbero raggiungere la modalità utente.

AVStream chiama AVStrMiniInitializeAllocator per inizializzare l'allocatore specificato. Il gestore per questa routine deve prepararsi per gestire l'allocazione di memoria e le richieste gratuite.

Per altre informazioni, vedere KS Allocators.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile in Microsoft Windows XP e nei sistemi operativi successivi e in DirectX 8.0 e versioni successive di DirectX.
piattaforma di destinazione Desktop
intestazione ks.h (include Ks.h)

Vedere anche

AVStrMiniDeleteAllocator

KSALLOCATOR_DISPATCH

KSALLOCATOR_FRAMING

KSPIN

KSPIN_DISPATCH