source: dev/trunk/abdev/BasicCompiler_Common/DebugSection.h@ 277

Last change on this file since 277 was 266, checked in by dai_9181, 17 years ago

BasicSourceのシリアライズがうまくいっていない

File size: 1.8 KB
Line 
1#pragma once
2
3#include <Source.h>
4#include <Compiler.h>
5
6class CDebugSection{
7public:
8 char szNowFilePath[MAX_PATH];
9
10 char *buffer;
11 int length;
12
13
14 ////////////////////////////////////
15 // デバッグ用の固有情報
16
17 //イメージベース
18 DWORD dwImageBase;
19
20 //リライタブルセクションのRVA
21 DWORD dwRVA_RWSection;
22
23 //コードセクションのRAVとサイズ
24 DWORD dwRVA_CodeSection;
25 int SizeOf_CodeSection;
26
27 // オブジェクトモジュール
28 ObjectModule objectModule;
29
30 //インクルード情報
31 INCLUDEFILEINFO _IncludeFileInfo;
32
33 //コードと行番号の関係
34 SourceLines _oldSourceLines;
35
36 //グローバル実行領域のサイズ
37 int GlobalOpBufferSize;
38
39 const UserProc *pSub_DebugSys_EndProc;
40
41 //ネイティブコードバッファ
42 char *OpBuffer;
43
44 //シングルステップ用コードバッファ
45 char *SingleStepCodeBuffer;
46
47 //ブレークポイント用コードバッファ
48 char *BreakStepCodeBuffer;
49
50
51 ////////////////////////////////////
52
53
54 CDebugSection()
55 : buffer( NULL )
56 , length( 0 )
57 , dwImageBase( 0 )
58 , dwRVA_RWSection( 0 )
59 , dwRVA_CodeSection( 0 )
60 , SizeOf_CodeSection( 0 )
61 , GlobalOpBufferSize( 0 )
62 , pSub_DebugSys_EndProc( NULL )
63 , OpBuffer( NULL )
64 , SingleStepCodeBuffer( NULL )
65 , BreakStepCodeBuffer( NULL )
66 {
67 szNowFilePath[0]=0;
68 }
69 ~CDebugSection();
70
71 void make(void);
72private:
73 void UpdateBreakPoint(void);
74 char *MakeSingleStepCode(void);
75 BOOL __load(void);
76public:
77 BOOL load(HMODULE hModule);
78
79 void choice(void);
80
81 void DeleteDebugInfo(void);
82};
83
84class CDBDebugSection{
85public:
86 CDebugSection **ppobj_ds;
87 int num;
88
89 CDebugSection *pobj_now;
90
91 CDBDebugSection();
92 ~CDBDebugSection();
93
94 BOOL add(HMODULE hModule);
95 void del(HMODULE hModule);
96
97 void choice(int index);
98
99};
100
101extern CDBDebugSection *pobj_DBDebugSection;
Note: See TracBrowser for help on using the repository browser.