|  
| hwloc_obj_t  | hwloc_get_ancestor_obj_by_depth (hwloc_topology_t topology, int depth, hwloc_obj_t obj) |  
|   |  
| hwloc_obj_t  | hwloc_get_ancestor_obj_by_type (hwloc_topology_t topology, hwloc_obj_type_t type, hwloc_obj_t obj) |  
|   |  
| hwloc_obj_t  | hwloc_get_common_ancestor_obj (hwloc_topology_t topology, hwloc_obj_t obj1, hwloc_obj_t obj2) |  
|   |  
| int  | hwloc_obj_is_in_subtree (hwloc_topology_t topology, hwloc_obj_t obj, hwloc_obj_t subtree_root) |  
|   |  
| 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. 
 
- 
NULL if no such ancestor exists.  
- Note
 depth should 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. 
 
- 
NULL if no such ancestor exists.  
- Note
 - if multiple matching ancestors exist (e.g. multiple levels of HWLOC_OBJ_GROUP) the lowest one is returned.
 
- 
type should 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 
prev is NULL.  
- 
the next child if 
prev is not NULL.  
- 
NULL when 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 
obj and subtree_root objects do not have CPU sets (I/O or Misc objects).   
 
 
 
	  
	   | 
         
       
           |