Exporting Topologies to Synthetic

## Enumerations

enum | hwloc_topology_export_synthetic_flags_e { HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_EXTENDED_TYPES, HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_ATTRS }

## Functions

int | hwloc_topology_export_synthetic (hwloc_topology_t topology, char *buffer, size_t buflen, unsigned long flags)

## Detailed Description

## Enumeration Type Documentation

## hwloc_topology_export_synthetic_flags_e

enum hwloc_topology_export_synthetic_flags_e

Flags for exporting synthetic topologies.

Flags to be given as a OR'ed set to hwloc_topology_export_synthetic().

Enumerator
HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_EXTENDED_TYPES | Export extended types such as L2dcache as basic types such as Cache. This is required if loading the synthetic description with hwloc < 1.9.
HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_ATTRS | Do not export level attributes. Ignore level attributes such as memory/cache sizes or PU indexes. This is required if loading the synthetic description with hwloc < 1.10.

## Function Documentation

## hwloc_topology_export_synthetic()

int hwloc_topology_export_synthetic | ( | hwloc_topology_t | topology,
|  | char * | buffer,
|  | size_t | buflen,
|  | unsigned long | flags
| ) |  |

Export the topology as a synthetic string.

At most `buflen` characters will be written in `buffer`, including the terminating \0.

This exported string may be given back to hwloc_topology_set_synthetic().

`flags` is a OR'ed set of hwloc_topology_export_synthetic_flags_e.

Returns
  The number of characters that were written, not including the terminating \0.
  -1 if the topology could not be exported, for instance if it is not symmetric.

Note
  A 1024-byte buffer should be large enough for exporting topologies in the vast majority of cases.