| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- .TH "hwlocality_object_strings" 3 "Thu Sep 7 2023" "Version 2.9.3" "Hardware Locality (hwloc)" \" -*- nroff -*-
- .ad l
- .nh
- .SH NAME
- hwlocality_object_strings \- Converting between Object Types and Attributes, and Strings
- .SH SYNOPSIS
- .br
- .PP
- .SS "Functions"
- .in +1c
- .ti -1c
- .RI "const char * \fBhwloc_obj_type_string\fP (\fBhwloc_obj_type_t\fP type)"
- .br
- .ti -1c
- .RI "int \fBhwloc_obj_type_snprintf\fP (char *restrict string, size_t size, \fBhwloc_obj_t\fP obj, int verbose)"
- .br
- .ti -1c
- .RI "int \fBhwloc_obj_attr_snprintf\fP (char *restrict string, size_t size, \fBhwloc_obj_t\fP obj, const char *restrict separator, int verbose)"
- .br
- .ti -1c
- .RI "int \fBhwloc_type_sscanf\fP (const char *string, \fBhwloc_obj_type_t\fP *typep, union \fBhwloc_obj_attr_u\fP *attrp, size_t attrsize)"
- .br
- .ti -1c
- .RI "int \fBhwloc_type_sscanf_as_depth\fP (const char *string, \fBhwloc_obj_type_t\fP *typep, \fBhwloc_topology_t\fP topology, int *depthp)"
- .br
- .in -1c
- .SH "Detailed Description"
- .PP
- .SH "Function Documentation"
- .PP
- .SS "int hwloc_obj_attr_snprintf (char *restrict string, size_t size, \fBhwloc_obj_t\fP obj, const char *restrict separator, int verbose)"
- .PP
- Stringify the attributes of a given topology object into a human-readable form\&. Attribute values are separated by \fCseparator\fP\&.
- .PP
- Only the major attributes are printed in non-verbose mode\&.
- .PP
- If \fCsize\fP is 0, \fCstring\fP may safely be \fCNULL\fP\&.
- .PP
- \fBReturns\fP
- .RS 4
- the number of characters that were actually written if not truncating, or that would have been written (not including the ending \\0)\&.
- .RE
- .PP
- .SS "int hwloc_obj_type_snprintf (char *restrict string, size_t size, \fBhwloc_obj_t\fP obj, int verbose)"
- .PP
- Stringify the type of a given topology object into a human-readable form\&. Contrary to \fBhwloc_obj_type_string()\fP, this function includes object-specific attributes (such as the Group depth, the Bridge type, or OS device type) in the output, and it requires the caller to provide the output buffer\&.
- .PP
- The output is guaranteed to be the same for all objects of a same topology level\&.
- .PP
- If \fCverbose\fP is 1, longer type names are used, e\&.g\&. L1Cache instead of L1\&.
- .PP
- The output string may be parsed back by \fBhwloc_type_sscanf()\fP\&.
- .PP
- If \fCsize\fP is 0, \fCstring\fP may safely be \fCNULL\fP\&.
- .PP
- \fBReturns\fP
- .RS 4
- the number of characters that were actually written if not truncating, or that would have been written (not including the ending \\0)\&.
- .RE
- .PP
- .SS "const char * hwloc_obj_type_string (\fBhwloc_obj_type_t\fP type)"
- .PP
- Return a constant stringified object type\&. This function is the basic way to convert a generic type into a string\&. The output string may be parsed back by \fBhwloc_type_sscanf()\fP\&.
- .PP
- \fBhwloc_obj_type_snprintf()\fP may return a more precise output for a specific object, but it requires the caller to provide the output buffer\&.
- .PP
- \fBReturns\fP
- .RS 4
- A constant string containing the object type name or \fC'Unknown'\fP\&.
- .RE
- .PP
- .SS "int hwloc_type_sscanf (const char * string, \fBhwloc_obj_type_t\fP * typep, union \fBhwloc_obj_attr_u\fP * attrp, size_t attrsize)"
- .PP
- Return an object type and attributes from a type string\&. Convert strings such as 'Package' or 'L1iCache' into the corresponding types\&. Matching is case-insensitive, and only the first letters are actually required to match\&.
- .PP
- The matched object type is set in \fCtypep\fP (which cannot be \fCNULL\fP)\&.
- .PP
- Type-specific attributes, for instance Cache type, Cache depth, Group depth, Bridge type or OS Device type may be returned in \fCattrp\fP\&. Attributes that are not specified in the string (for instance 'Group' without a depth, or 'L2Cache' without a cache type) are set to -1\&.
- .PP
- \fCattrp\fP is only filled if not \fCNULL\fP and if its size specified in \fCattrsize\fP is large enough\&. It should be at least as large as union \fBhwloc_obj_attr_u\fP\&.
- .PP
- \fBReturns\fP
- .RS 4
- 0 if a type was correctly identified, otherwise -1\&.
- .RE
- .PP
- \fBNote\fP
- .RS 4
- This function is guaranteed to match any string returned by \fBhwloc_obj_type_string()\fP or \fBhwloc_obj_type_snprintf()\fP\&.
- .PP
- This is an extended version of the now deprecated hwloc_obj_type_sscanf()\&.
- .RE
- .PP
- .SS "int hwloc_type_sscanf_as_depth (const char * string, \fBhwloc_obj_type_t\fP * typep, \fBhwloc_topology_t\fP topology, int * depthp)"
- .PP
- Return an object type and its level depth from a type string\&. Convert strings such as 'Package' or 'L1iCache' into the corresponding types and return in \fCdepthp\fP the depth of the corresponding level in the topology \fCtopology\fP\&.
- .PP
- If no object of this type is present on the underlying architecture, \fBHWLOC_TYPE_DEPTH_UNKNOWN\fP is returned\&.
- .PP
- If multiple such levels exist (for instance if giving Group without any depth), the function may return \fBHWLOC_TYPE_DEPTH_MULTIPLE\fP instead\&.
- .PP
- The matched object type is set in \fCtypep\fP if \fCtypep\fP is non \fCNULL\fP\&.
- .PP
- \fBNote\fP
- .RS 4
- This function is similar to \fBhwloc_type_sscanf()\fP followed by \fBhwloc_get_type_depth()\fP but it also automatically disambiguates multiple group levels etc\&.
- .PP
- This function is guaranteed to match any string returned by \fBhwloc_obj_type_string()\fP or \fBhwloc_obj_type_snprintf()\fP\&.
- .RE
- .PP
- .SH "Author"
- .PP
- Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code\&.
|