ReactOS 0.4.16-dev-117-g38f21f9
dbgmacros.h
Go to the documentation of this file.
1/*++
2
3Copyright (c) Microsoft Corporation
4
5ModuleName:
6
7 DbgMacros.h
8
9Abstract:
10
11 This file contains debug macros
12 to make sure that an object is intialized
13
14 This is useful in mode agnostic primitives
15 where initialization is important in user mode
16 but not in kernel mode (e.g. for a lock)
17
18Author:
19
20
21
22Revision History:
23
24
25
26--*/
27
28#pragma once
29
30#if DBG_WDF
31#define DECLARE_DBGFLAG_INITIALIZED \
32 protected: \
33 BOOLEAN m_DbgFlagIsInitialized;
34
35#define ASSERT_DBGFLAG_INITIALIZED \
36{ \
37 ASSERT(m_DbgFlagIsInitialized == TRUE); \
38}
39
40#define SET_DBGFLAG_INITIALIZED \
41{ \
42 m_DbgFlagIsInitialized = TRUE; \
43}
44
45#define CLEAR_DBGFLAG_INITIALIZED \
46{ \
47 m_DbgFlagIsInitialized = FALSE; \
48}
49
50#define ASSERT_DBGFLAG_NOT_INITIALIZED \
51{ \
52 ASSERT(m_DbgFlagIsInitialized == FALSE); \
53}
54
55#else
56
57#define DECLARE_DBGFLAG_INITIALIZED
58#define ASSERT_DBGFLAG_INITIALIZED
59#define SET_DBGFLAG_INITIALIZED
60#define CLEAR_DBGFLAG_INITIALIZED
61#define ASSERT_DBGFLAG_NOT_INITIALIZED
62
63#endif