Mac Developer Library

Developer

IOReportTypes.h Reference

Options
Deployment Target:

On This Page

IOReportTypes.h Reference

Included Headers

  • <stdint.h>

Functions

  • convert up to 8 printable characters into a 64-bit channel ID

    Declaration

    Objective-C

    #define __IOR_lshiftchr(c, chshift) ((uint64_t)(c) << (8*(chshift)))

    Parameters

    <char0..char7>

    - printable chars to be packed into a channel ID

    Discussion

    A simple example: IOREPORT_MAKECHID('H', 'i', ' ', 'w', 'o', 'r', 'l', 'd'); will evaluate to 0x686920776f726c64. Any NUL bytes are ignored (by libIOReport) for naming purposes, but will appear in the channel ID. Using a non-NUL non-printable character will disable the implicit name. Putting NUL bytes first eliminates trailing zeros when the channel ID is printed as hex. For example: IORERPORT_MAKECHID('\0','\0','n','x','f','e','r','s'); To see the text, use xxd -r -p # not -rp; see 12976241

  • convert up to 8 printable characters into a 64-bit channel ID

    Declaration

    Objective-C

    #define __IOR_lshiftchr(c, chshift) ((uint64_t)(c) << (8*(chshift)))

    Parameters

    <char0..char7>

    - printable chars to be packed into a channel ID

    Return Value

    a 64-bit channel ID with an implicit ASCII name

    Discussion

    A simple example: IOREPORT_MAKECHID('H', 'i', ' ', 'w', 'o', 'r', 'l', 'd'); will evaluate to 0x686920776f726c64. Any NUL bytes are ignored (by libIOReport) for naming purposes, but will appear in the channel ID. Using a non-NUL non-printable character will disable the implicit name. Putting NUL bytes first eliminates trailing zeros when the channel ID is printed as hex. For example: IORERPORT_MAKECHID('\0','\0','n','x','f','e','r','s'); To see the text, use xxd -r -p # not -rp; see 12976241

    See Also

    __IOR_lshiftchr

Constants

See the Overview section above for header-level documentation.

  • Declaration

    Objective-C

    #define kIOReportInvalidValue UINT64_MAX

    Constants

    • kIOReportInvalidValue

      kIOReportInvalidValue

      cardinal value used to indicate data errors

      kIOReportInvalidValue and kIOReportInvalidIntValue have the same bit pattern so that clients checking for one or the other don't have to worry about getting the signedness right.

      Available in OS X v10.9 and later.