Вообщем решил задачу следующим образом. Поправьте меня пожалуйста, если это можно сделать проще.
$Structure = & singleton('Structure'

;
$param = array();
$param['show_groups'] = true;
$param['parent_id'] = get_top_parent_id(CURRENT_STRUCTURE_ID);
$Structure->ShowStructure(1, 'ЛевоеМеню', $param);
function get_top_parent_id($id){
global $Structure;
$top_parent_id = $id;
if($item = $Structure->GetStructureItem($id)){
if($item['structure_parent_id'] != 0){
$top_parent_id = get_top_parent_id($item['structure_parent_id']);
}
}
return $top_parent_id;
}
Если метод GetStructureItem берет данные из кэша я думаю рекурсия в 2-3 шага не повиляет на производительность.