void recursiveTraversal(pfNode * node)
{
/* Do something with node */
...
/* Traverse all of node's children */
int i;
if (node->isOfType(pfGroup::getClassType()))
{
pfGroup *group = (pfGroup *)node;
for (i=0; i < group->getNumChildren(); i++)
recursiveTraversal(group->getChild(i));
}
}