хм...
ob_start();
$this->_unpackData(); // разворачивание массива с данными
$this->_parseTPL(); // проверка кеша, создание нового при необходимости, подключение
ob_end_flush();
в чем разница? или я чего то не уловил? (на ошибки не смотри, я щас на работе сижу, на память не воспроизведу точно)