Interoperability with OpenGL displays

## Functions

static hwloc_obj_t | hwloc_gl_get_display_osdev_by_port_device (hwloc_topology_t topology, unsigned port, unsigned device)
static hwloc_obj_t | hwloc_gl_get_display_osdev_by_name (hwloc_topology_t topology, const char *name)
static int | hwloc_gl_get_display_by_osdev (hwloc_topology_t topology, hwloc_obj_t osdev, unsigned *port, unsigned *device)

## Detailed Description

This interface offers ways to retrieve topology information about OpenGL displays.

Only the NVIDIA display locality information is currently available, using the NV-CONTROL X11 extension and the NVCtrl library.

## Function Documentation

## hwloc_gl_get_display_by_osdev()

static int hwloc_gl_get_display_by_osdev | ( | hwloc_topology_t | topology,
|  | hwloc_obj_t | osdev,
|  | unsigned * | port,
|  | unsigned * | device
| ) |  |

inlinestatic

Get the OpenGL display port and device corresponding to the given hwloc OS object.

Return the OpenGL display port (server) in `port` and device (screen) in `screen` that correspond to the given hwloc OS device object. Return `-1` if there is none.

The topology `topology` does not necessarily have to match the current machine. For instance the topology may be an XML import of a remote host. I/O devices detection and the GL component must be enabled in the topology.

## hwloc_gl_get_display_osdev_by_name()

static hwloc_obj_t hwloc_gl_get_display_osdev_by_name | ( | hwloc_topology_t | topology,
|  | const char * | name
| ) |  |

inlinestatic

Get the hwloc OS device object corresponding to the OpenGL display given by name.

Return the OS device object describing the OpenGL display whose name is `name`, built as ":port.device" such as ":0.0" . Return NULL if there is none.

The topology `topology` does not necessarily have to match the current machine. For instance the topology may be an XML import of a remote host. I/O devices detection and the GL component must be enabled in the topology.

Note
  The corresponding PCI device object can be obtained by looking at the OS device parent object.

## hwloc_gl_get_display_osdev_by_port_device()

static hwloc_obj_t hwloc_gl_get_display_osdev_by_port_device | ( | hwloc_topology_t | topology,
|  | unsigned | port,
|  | unsigned | device
| ) |  |

inlinestatic

Get the hwloc OS device object corresponding to the OpenGL display given by port and device index.

Return the OS device object describing the OpenGL display whose port (server) is `port` and device (screen) is `device`. Return NULL if there is none.

The topology `topology` does not necessarily have to match the current machine. For instance the topology may be an XML import of a remote host. I/O devices detection and the GL component must be enabled in the topology.

Note
  The corresponding PCI device object can be obtained by looking at the OS device parent object.