|  | 
| static hwloc_obj_t | hwloc_get_ancestor_obj_by_depth (hwloc_topology_t topology, int depth, hwloc_obj_t obj) | 
|  | 
| static hwloc_obj_t | hwloc_get_ancestor_obj_by_type (hwloc_topology_t topology, hwloc_obj_type_t type, hwloc_obj_t obj) | 
|  | 
| static hwloc_obj_t | hwloc_get_common_ancestor_obj (hwloc_topology_t topology, hwloc_obj_t obj1, hwloc_obj_t obj2) | 
|  | 
| static int | hwloc_obj_is_in_subtree (hwloc_topology_t topology, hwloc_obj_t obj, hwloc_obj_t subtree_root) | 
|  | 
| static hwloc_obj_t | hwloc_get_next_child (hwloc_topology_t topology, hwloc_obj_t parent, hwloc_obj_t prev) | 
|  | 
Be sure to see the figure in Terms and Definitions that shows a complete topology tree, including depths, child/sibling/cousin relationships, and an example of an asymmetric topology where one package has fewer caches than its peers. 
◆ hwloc_get_ancestor_obj_by_depth()
Returns the ancestor object of obj at depth depth. 
- Returns
- the ancestor if any. 
- 
NULLif no such ancestor exists.
- Note
- depthshould not be the depth of PU or NUMA objects since they are ancestors of no objects (except Misc or I/O). This function rather expects an intermediate level depth, such as the depth of Packages, Cores, or Caches.
 
 
◆ hwloc_get_ancestor_obj_by_type()
Returns the ancestor object of obj with type type. 
- Returns
- the ancestor if any. 
- 
NULLif no such ancestor exists.
- Note
- if multiple matching ancestors exist (e.g. multiple levels of HWLOC_OBJ_GROUP) the lowest one is returned.
- 
typeshould not be HWLOC_OBJ_PU or HWLOC_OBJ_NUMANODE since these objects are ancestors of no objects (except Misc or I/O). This function rather expects an intermediate object type, such as HWLOC_OBJ_PACKAGE, HWLOC_OBJ_CORE, etc.
 
 
◆ hwloc_get_common_ancestor_obj()
Returns the common parent object to objects obj1 and obj2. 
- Returns
- the common ancestor.
- Note
- This function cannot return NULL.
 
 
◆ hwloc_get_next_child()
Return the next child. 
Return the next child among the normal children list, then among the memory children list, then among the I/O children list, then among the Misc children list.
- Returns
- the first child if previsNULL.
- 
the next child if previs notNULL.
- 
NULLwhen there is no next child.
 
 
◆ hwloc_obj_is_in_subtree()
Returns true if obj is inside the subtree beginning with ancestor object subtree_root. 
- Returns
- 1 is the object is in the subtree, 0 otherwise.
- Note
- This function cannot work if objandsubtree_rootobjects do not have CPU sets (I/O or Misc objects).