File indexing completed on 2024-04-21 16:12:17

0001 /******************************************************************
0002  *
0003  * kdbgwin - Helper application for DrKonqi
0004  *
0005  * This file is part of the KDE project
0006  *
0007  * SPDX-FileCopyrightText: 2010 Ilie Halip <lupuroshu@gmail.com>
0008  *
0009  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0010  *****************************************************************/
0011 
0012 #pragma once
0013 
0014 #include "common.h"
0015 
0016 #define KDBGWIN_CALL_TYPE __stdcall
0017 
0018 /**
0019  * \brief StackWalk64 callbacks.
0020  *
0021  * This class encapsulates 3 callbacks used by StackWalk64. ReadProcessMemory is the only
0022  * one really needed here, but I kept all three for debugging purposes.
0023  */
0024 class Callbacks
0025 {
0026 public:
0027     static BOOL KDBGWIN_CALL_TYPE ReadProcessMemory(HANDLE, DWORD64, PVOID, DWORD, LPDWORD);
0028     static PVOID KDBGWIN_CALL_TYPE SymFunctionTableAccess64(HANDLE, DWORD64);
0029     static DWORD64 KDBGWIN_CALL_TYPE SymGetModuleBase64(HANDLE, DWORD64);
0030 };