First lets create the query we want to use to retrieve our tree data with:
// test.php
// ...
$q = Doctrine_Query::create()
->select('c.name, p.name, m.name')
->from('Category c')
->leftJoin('c.HottestProduct p')
->leftJoin('p.Manufacturer m');
Now we need to set the above query as the base query for the tree:
$treeObject = Doctrine_Core::getTable('Category')->getTree();
$treeObject->setBaseQuery($q);
$tree = $treeObject->fetchTree();
There it is, the tree with all the related data you need, all in one query.