Compartilhar via


Obtendo o endereço de uma tabela de funções virtuais

Em um aplicativo escrito na linguagem de programação C, você pode recuperar o endereço da estrutura IAVIStreamVtbl usando a função NewBall. Essa função retorna o endereço de uma estrutura que contém um ponteiro para IAVIStreamVtbl. As informações a seguir do ponteiro IAVIStreamVtbl especificam os dados usados internamente pelo AVIBall. Seu manipulador de fluxo pode acrescentar suas próprias informações após o ponteiro IAVIStreamVtbl . Essas informações são retornadas em chamadas subsequentes para o manipulador de fluxo.

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; 
}