dbgtypedef.h 1.77 KB
Newer Older
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
1 2
#pragma once

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
3 4
#include <string>

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
5 6 7 8 9 10
namespace kdlib {

///////////////////////////////////////////////////////////////////////////////

typedef unsigned long           PROCESS_ID;
typedef unsigned long           PROCESS_DEBUG_ID;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
11
typedef unsigned long           THREAD_ID;
12
typedef unsigned long           THREAD_DEBUG_ID;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
13 14 15
typedef unsigned long           BREAKPOINT_ID;
typedef unsigned long long      MEMOFFSET_64;
typedef unsigned long           MEMOFFSET_32;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
16
typedef long                    MEMOFFSET_REL;
17
typedef long                    MEMDISPLACEMENT;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
18
typedef unsigned long           BITOFFSET;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
19
typedef unsigned long           ACCESS_TYPE;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
20
typedef unsigned long long      EXTENSION_ID;
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
21

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
22 23 24 25 26 27 28 29
enum DebugCallbackResult {
    DebugCallbackProceed = 0,
    DebugCallbackNoChange = 1,
    DebugCallbackBreak = 2,
    DebugCallbackMax = 3
};

enum ExecutionStatus {
30 31 32 33
    DebugStatusNoChange,
    DebugStatusGo,
    DebugStatusBreak,
    DebugStatusNoDebuggee
SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
34 35
};

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
36 37 38 39 40 41
enum CPUType {
    CPU_I386 = 0,
    CPU_AMD64 = 1,
    CPU_MAX = 2
};

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
42 43 44 45 46 47 48 49 50 51 52 53 54
enum CPURegType {
    RegInt8,
    RegInt16,
    RegInt32,
    RegInt64,
    RegFloat32,
    RegFloat64,
    RegFloat80,
    RegFloat128,
    RegVector64,
    RegVector128
};

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
55 56 57 58 59 60 61
struct SystemInfo {
    unsigned long  majorVersion;
    unsigned long  minorVersion;
    unsigned long  buildNumber;
    std::wstring  buildDescription;
};

62 63 64 65 66 67 68 69 70 71 72
struct ExceptionInfo {
    bool  firstChance;
    unsigned long  exceptionCode;
    unsigned long  exceptionFlags;
    MEMOFFSET_64  exceptionRecord;
    MEMOFFSET_64  exceptionAddress;

    unsigned long parameterCount;
    unsigned long long parameters[0x10];
};

SND\kernelnet_cp's avatar
SND\kernelnet_cp committed
73 74 75 76 77
///////////////////////////////////////////////////////////////////////////////

} // kdlib namespace end