Графика для Windows средствами DirectDraw

       

Функция OnDestroy()


Остается лишь завершить приложение. Функция OnDestroy() занимается «уборкой мусора»— она закрывает открытые AVI-потоки, освобождает декомпрессор и буферы данных AVI:


void AviPlayWin::OnDestroy() { DirectDrawWin::OnDestroy(); if (avistream) AVIStreamRelease( avistream ), avistream=0; if (decomp) ICClose( decomp ), decomp=0; if (srcfmt) delete [] srcfmt, srcfmt=0; if (dstfmt) delete [] dstfmt, dstfmt=0;

if (rawdata) { TRACE("delete [] rawdata...\n"); delete [] rawdata, rawdata=0; } if (finaldata) { TRACE("delete [] finaldata..\n"); delete [] finaldata, finaldata=0;; }

if (avidialog) delete avidialog, avidialog=0;

AVIFileExit(); }


Обратите внимание на вызов функции AviFileExit() в конце OnDestroy(). Это завершает работу VFW и освобождает все используемые им ресурсы.



Содержание раздела