# Get some Topology Information

## Enumerations
enum | hwloc_get_type_depth_e { HWLOC_TYPE_DEPTH_UNKNOWN, HWLOC_TYPE_DEPTH_MULTIPLE }
## Functions
HWLOC_DECLSPEC unsigned | hwloc_topology_get_depth (hwloc_topology_t __hwloc_restrict topology) __hwloc_attribute_pure
| Get the depth of the hierachical tree of objects.
HWLOC_DECLSPEC int | hwloc_get_type_depth (hwloc_topology_t topology, hwloc_obj_type_t type)
| Returns the depth of objects of type `type`.
HWLOC_DECLSPEC hwloc_obj_type_t | hwloc_get_depth_type (hwloc_topology_t topology, unsigned depth) __hwloc_attribute_pure
| Returns the type of objects at depth `depth`.
HWLOC_DECLSPEC unsigned | hwloc_get_nbobjs_by_depth (hwloc_topology_t topology, unsigned depth) __hwloc_attribute_pure
| Returns the width of level at depth `depth`.
static __hwloc_inline int __hwloc_attribute_pure | hwloc_get_nbobjs_by_type (hwloc_topology_t topology, hwloc_obj_type_t type)
| Returns the width of level type `type`.
HWLOC_DECLSPEC int | hwloc_topology_is_thissystem (hwloc_topology_t __hwloc_restrict topology) __hwloc_attribute_pure
| Does the topology context come from this system?

## Enumeration Type Documentation

enum hwloc_get_type_depth_e

Enumerator:

  HWLOC_TYPE_DEPTH_UNKNOWN | No object of given type exists in the topology.
  HWLOC_TYPE_DEPTH_MULTIPLE | Objects of given type exist at different depth in the topology.

## Function Documentation

HWLOC_DECLSPEC hwloc_obj_type_t hwloc_get_depth_type | ( | hwloc_topology_t | topology,
|  | unsigned | depth |
| ) |  |  |

Returns the type of objects at depth `depth`.

Returns:
  -1 if depth `depth` does not exist.

HWLOC_DECLSPEC unsigned hwloc_get_nbobjs_by_depth | ( | hwloc_topology_t | topology,
|  | unsigned | depth |
| ) |  |  |

Returns the width of level at depth `depth`.

static __hwloc_inline int __hwloc_attribute_pure hwloc_get_nbobjs_by_type | ( | hwloc_topology_t | topology,
|  | hwloc_obj_type_t | type |
| ) |  |  | `[static]`

Returns the width of level type `type`.

If no object for that type exists, 0 is returned. If there are several levels with objects of that type, -1 is returned.

HWLOC_DECLSPEC int hwloc_get_type_depth | ( | hwloc_topology_t | topology,
|  | hwloc_obj_type_t | type |
| ) |  |  |

Returns the depth of objects of type `type`.

If no object of this type is present on the underlying architecture, or if the OS doesn't provide this kind of information, the function returns HWLOC_TYPE_DEPTH_UNKNOWN.

If type is absent but a similar type is acceptable, see also hwloc_get_type_or_below_depth() and hwloc_get_type_or_above_depth().

HWLOC_DECLSPEC unsigned hwloc_topology_get_depth | ( | hwloc_topology_t __hwloc_restrict | topology | ) |

Get the depth of the hierachical tree of objects.

This is the depth of HWLOC_OBJ_PU objects plus one.

HWLOC_DECLSPEC int hwloc_topology_is_thissystem | ( | hwloc_topology_t __hwloc_restrict | topology | ) |

Does the topology context come from this system?

Returns:
  1 if this topology context was built using the system running this program.
  0 instead (for instance if using another file-system root, a XML topology file, or a synthetic topology).