ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

kdfuncs.h
Go to the documentation of this file.
00001 /******************************************************************************
00002  *                          Kernel Debugger Functions                         *
00003  ******************************************************************************/
00004 $if (_NTDDK_)
00005 NTSYSAPI
00006 ULONG
00007 NTAPI
00008 DbgPrompt(
00009   _In_z_ PCCH Prompt,
00010   _Out_writes_bytes_(MaximumResponseLength) PCH Response,
00011   _In_ ULONG MaximumResponseLength);
00012 $endif (_NTDDK_)
00013 
00014 $if (_WDMDDK_)
00015 #ifndef _DBGNT_
00016 
00017 ULONG
00018 __cdecl
00019 DbgPrint(
00020   _In_z_ _Printf_format_string_ PCSTR Format,
00021   ...);
00022 
00023 #if (NTDDI_VERSION >= NTDDI_WIN2K)
00024 NTSYSAPI
00025 ULONG
00026 __cdecl
00027 DbgPrintReturnControlC(
00028   _In_z_ _Printf_format_string_ PCCH Format,
00029   ...);
00030 #endif
00031 
00032 #if (NTDDI_VERSION >= NTDDI_WINXP)
00033 
00034 NTSYSAPI
00035 ULONG
00036 __cdecl
00037 DbgPrintEx(
00038   _In_ ULONG ComponentId,
00039   _In_ ULONG Level,
00040   _In_z_ _Printf_format_string_ PCSTR Format,
00041   ...);
00042 
00043 #ifdef _VA_LIST_DEFINED
00044 
00045 NTSYSAPI
00046 ULONG
00047 NTAPI
00048 vDbgPrintEx(
00049   _In_ ULONG ComponentId,
00050   _In_ ULONG Level,
00051   _In_z_ PCCH Format,
00052   _In_ va_list ap);
00053 
00054 NTSYSAPI
00055 ULONG
00056 NTAPI
00057 vDbgPrintExWithPrefix(
00058   _In_z_ PCCH Prefix,
00059   _In_ ULONG ComponentId,
00060   _In_ ULONG Level,
00061   _In_z_ PCCH Format,
00062   _In_ va_list ap);
00063 
00064 #endif /* _VA_LIST_DEFINED */
00065 
00066 NTSYSAPI
00067 NTSTATUS
00068 NTAPI
00069 DbgQueryDebugFilterState(
00070   _In_ ULONG ComponentId,
00071   _In_ ULONG Level);
00072 
00073 NTSYSAPI
00074 NTSTATUS
00075 NTAPI
00076 DbgSetDebugFilterState(
00077   _In_ ULONG ComponentId,
00078   _In_ ULONG Level,
00079   _In_ BOOLEAN State);
00080 
00081 #endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
00082 
00083 #if (NTDDI_VERSION >= NTDDI_VISTA)
00084 
00085 typedef VOID
00086 (*PDEBUG_PRINT_CALLBACK)(
00087   _In_ PSTRING Output,
00088   _In_ ULONG ComponentId,
00089   _In_ ULONG Level);
00090 
00091 NTSYSAPI
00092 NTSTATUS
00093 NTAPI
00094 DbgSetDebugPrintCallback(
00095   _In_ PDEBUG_PRINT_CALLBACK DebugPrintCallback,
00096   _In_ BOOLEAN Enable);
00097 
00098 #endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
00099 
00100 #endif /* _DBGNT_ */
00101 
00102 #if DBG
00103 
00104 #define KdPrint(_x_) DbgPrint _x_
00105 #define KdPrintEx(_x_) DbgPrintEx _x_
00106 #define vKdPrintEx(_x_) vDbgPrintEx _x_
00107 #define vKdPrintExWithPrefix(_x_) vDbgPrintExWithPrefix _x_
00108 #define KdBreakPoint() DbgBreakPoint()
00109 #define KdBreakPointWithStatus(s) DbgBreakPointWithStatus(s)
00110 
00111 #else /* !DBG */
00112 
00113 #define KdPrint(_x_)
00114 #define KdPrintEx(_x_)
00115 #define vKdPrintEx(_x_)
00116 #define vKdPrintExWithPrefix(_x_)
00117 #define KdBreakPoint()
00118 #define KdBreakPointWithStatus(s)
00119 
00120 #endif /* !DBG */
00121 
00122 #if defined(__GNUC__)
00123 
00124 extern NTKERNELAPI BOOLEAN KdDebuggerNotPresent;
00125 extern NTKERNELAPI BOOLEAN KdDebuggerEnabled;
00126 #define KD_DEBUGGER_ENABLED KdDebuggerEnabled
00127 #define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
00128 
00129 #elif defined(_NTDDK_) || defined(_NTIFS_) || defined(_NTHAL_) || defined(_WDMDDK_) || defined(_NTOSP_)
00130 
00131 extern NTKERNELAPI PBOOLEAN KdDebuggerNotPresent;
00132 extern NTKERNELAPI PBOOLEAN KdDebuggerEnabled;
00133 #define KD_DEBUGGER_ENABLED *KdDebuggerEnabled
00134 #define KD_DEBUGGER_NOT_PRESENT *KdDebuggerNotPresent
00135 
00136 #else
00137 
00138 extern BOOLEAN KdDebuggerNotPresent;
00139 extern BOOLEAN KdDebuggerEnabled;
00140 #define KD_DEBUGGER_ENABLED KdDebuggerEnabled
00141 #define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
00142 
00143 #endif
00144 
00145 #if (NTDDI_VERSION >= NTDDI_WIN2K)
00146 
00147 NTKERNELAPI
00148 NTSTATUS
00149 NTAPI
00150 KdDisableDebugger(VOID);
00151 
00152 NTKERNELAPI
00153 NTSTATUS
00154 NTAPI
00155 KdEnableDebugger(VOID);
00156 
00157 #if (_MSC_FULL_VER >= 150030729) && !defined(IMPORT_NATIVE_DBG_BREAK)
00158 #define DbgBreakPoint __debugbreak
00159 #else
00160 __analysis_noreturn
00161 VOID
00162 NTAPI
00163 DbgBreakPoint(VOID);
00164 #endif
00165 
00166 __analysis_noreturn
00167 NTSYSAPI
00168 VOID
00169 NTAPI
00170 DbgBreakPointWithStatus(
00171   IN ULONG Status);
00172 
00173 #endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
00174 
00175 #if (NTDDI_VERSION >= NTDDI_WS03)
00176 NTKERNELAPI
00177 BOOLEAN
00178 NTAPI
00179 KdRefreshDebuggerNotPresent(VOID);
00180 #endif
00181 
00182 #if (NTDDI_VERSION >= NTDDI_WS03SP1)
00183 NTKERNELAPI
00184 NTSTATUS
00185 NTAPI
00186 KdChangeOption(
00187   _In_ KD_OPTION Option,
00188   _In_opt_ ULONG InBufferBytes,
00189   _In_ PVOID InBuffer,
00190   _In_opt_ ULONG OutBufferBytes,
00191   _Out_ PVOID OutBuffer,
00192   _Out_opt_ PULONG OutBufferNeeded);
00193 #endif
00194 $endif (_WDMDDK_)

Generated on Sat May 26 2012 04:29:36 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.