summaryrefslogtreecommitdiff
path: root/usb/UcmTcpciCxClientSample/Trace.h
blob: 830437ec881bd1e84e1049bca4720846c44e848a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*++

Module Name:

    Trace.h

Abstract:

    This file contains the debug tracing related function declarations and macros.

Environment:

    Kernel mode

--*/

#pragma once

// Define the tracing flags.
// TODO: Define your own tracing GUID
// Tracing GUID - 1dc982f3-068f-4577-bcdf-1bc844e457b2
#define WPP_CONTROL_GUIDS                                                            \
    WPP_DEFINE_CONTROL_GUID(                                                         \
        UcmTcpciCxClientSampleTraceGuid, (1dc982f3,068f,4577,bcdf,1bc844e457b2),     \
                                                                                     \
        WPP_DEFINE_BIT(TRACE_ALERT)                                                  \
        WPP_DEFINE_BIT(TRACE_DRIVER)                                                 \
        WPP_DEFINE_BIT(TRACE_DEVICE)                                                 \
        WPP_DEFINE_BIT(TRACE_QUEUE)                                                  \
        WPP_DEFINE_BIT(TRACE_I2C)                                                    \
        WPP_DEFINE_BIT(TRACE_PORTCONTROLLERINTERFACE)                                \
        )

#define WPP_FLAG_LEVEL_LOGGER(flag, level)                                           \
    WPP_LEVEL_LOGGER(flag)

#define WPP_FLAG_LEVEL_ENABLED(flag, level)                                          \
    (WPP_LEVEL_ENABLED(flag) &&                                                      \
     WPP_CONTROL(WPP_BIT_ ## flag).Level >= level)

#define WPP_LEVEL_FLAGS_LOGGER(lvl,flags) \
           WPP_LEVEL_LOGGER(flags)

#define WPP_LEVEL_FLAGS_ENABLED(lvl, flags) \
           (WPP_LEVEL_ENABLED(flags) && WPP_CONTROL(WPP_BIT_ ## flags).Level >= lvl)

//
// This comment block is scanned by the trace preprocessor to define our
// Trace function.
//
// begin_wpp config
// FUNC TraceEvents(LEVEL, FLAGS, MSG, ...);
//
// FUNC TRACE_FUNC_ENTRY{LEVEL=TRACE_LEVEL_VERBOSE}(FLAGS, ...);
// USESUFFIX(TRACE_FUNC_ENTRY, "%!FUNC! Entry");
//
// FUNC TRACE_FUNC_EXIT{LEVEL=TRACE_LEVEL_VERBOSE}(FLAGS, ...);
// USESUFFIX(TRACE_FUNC_EXIT, "%!FUNC! Exit");
//
// end_wpp
//