ProfilerControl (Windows CE 5.0)

Send Feedback

This structure is used by the ProfileStartEx function.

typedef struct ProfilerControl {DWORDdwVersion;DWORDdwOptions;DWORDdwReserved;  union {    struct {      DWORDdwUSecInterval;    } Kernel;    struct {      DWORDdwProcessorType;      DWORDdwControlSize;      BYTEbHardwareSpecificSettings[0];    } OEM;  };} ProfilerControl;

Members

  • dwVersion
    Version of the structure. Set to 1.

  • dwOptions
    Profile flags.

    The following values are possible.

    Value Description
    PROFILE_BUFFER Records samples to a buffer.

    Use with PROFILE_OBJCALL for object call profiling or by itself for Monte Carlo profiling.

    PROFILE_CONTINUE Starts the profiler timer (starts/resumes the profiler sampling).

    Before using this flag, you must call the ProfileStartEx function with the PROFILE_STARTPAUSED flag.

    This is only valid if the profiler is paused; for example, if ProfileStartEx was previously called with PROFILE_PAUSE or PROFILE_STARTPAUSED.

    PROFILE_KCALL KCALL profiling; records kernel calls.
    PROFILE_OBJCALL Records object calls.
    PROFILE_PAUSE Stops the profiler timer (pauses the profiler sampling).

    You must call ProfileStartEx with the PROFILE_STARTPAUSED flag before using this flag.

    This is only valid if the profiler is running; for example, if ProfileStartEx was previously called without PROFILE_PAUSE or PROFILE_STARTPAUSED.

    PROFILE_STARTPAUSED Begins profiling with the profiler timer off.

    Profiler control variables are initialized but the timer is not activated (no profiling samples are made).

    Use this flag simultaneously with PROFILE_BUFFER or PROFILE_OBJCALL according to the following code example.

    Sampling does not begin until ProfileStartEx is called again with the PROFILE_RESUME flag.

  • dwReserved
    Reserved for future use; set to zero.

  • dwUSecInterval
    Interval, in microseconds, for each profile interrupt or sample. This can be changed depending on the target device implementation.

    This value is valid when not using PROFILE_OEMDEFINED.

  • dwProcessorType
    Type of processor expected. Values for this field have not yet been defined so this field should be set to 0.

    This value is only valid when using PROFILE_OEMDEFINED.

  • dwControlSize
    OEM-defined data. See the documentation for your BSP to determine the value of this field.

    This value is only valid when using PROFILE_OEMDEFINED.

  • bHardwareSpecifcSettings
    OEM-defined data. See the documentation for your BSP to determine the value of this field.

    This value is only valid when using PROFILE_OEMDEFINED.

Remarks

You can use ProfilerControl to expose control over custom profiling for their BSP.

Requirements

OS Versions: Windows CE 5.0 and later.
Header: Profiler.h.

See Also

ProfileStartEx | IOCTL_HAL_OEM_PROFILER

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.