Recupero dell'indirizzo di una tabella di funzioni virtuali
In un'applicazione scritta nel linguaggio di programmazione C è possibile recuperare l'indirizzo della struttura IAVIStreamVtbl usando la funzione NewBall. Questa funzione restituisce l'indirizzo di una struttura contenente un puntatore a IAVIStreamVtbl. Le informazioni seguenti al puntatore IAVIStreamVtbl specificano i dati usati internamente da AVIBall. Il gestore di flusso può aggiungere le proprie informazioni dopo il puntatore IAVIStreamVtbl . Queste informazioni vengono restituite nelle chiamate successive al gestore di flusso.
PAVISTREAM WINAPI NewBall(VOID)
{
PAVIBALL pball;
pball = (PAVIBALL) GlobalAllocPtr(GHND, sizeof(AVIBALL));
if (!pball)
return 0;
pball->lpvtbl = &AVIBallHandler;
pball->lpvtbl->Create((PAVISTREAM) pball, 0, 0);
return (PAVISTREAM) pball;
}