|
|
1.1 root 1: #ifndef BPTS_H
2: #define BPTS_H
3: #ifndef UNIV_H
4: #include "univ.h"
5: #endif
6:
7: >pri
8: class Core;
9:
10: enum LiftLay { LIFT, LAY };
11:
12: class Trap : private PadRcv {
13: friend Bpts; friend HostCore;
14: friend M68kCore;
15: friend RtRawCore; friend RtNrtxCore;
16: long key;
17: short saved;
18: Stmt *stmt;
19: char *error;
20: Trap *sib;
21: char *liftorlay(LiftLay,Core*);
22: PUBLIC(Trap,U_TRAP)
23: Trap(Stmt*, Trap *);
24: };
25: >
26: class Bpts : public PadRcv {
27: >pub
28: char pub_filler[16];
29: >pri
30: friend HostProcess; friend Process;
31: Pad *pad;
32: Core *core;
33: Trap *trap;
34: int layed;
35: Trap *istrap(Stmt*);
36: void select(Trap*);
37: void clearall();
38: void refresh();
39: >
40: void liftparents(Bpts*);
41: PUBLIC(Bpts,U_BPTS)
42: Bpts(Core*);
43: void lift();
44: void lay();
45: void set(Stmt*);
46: void clr(Stmt*);
47: int isbpt(Stmt*);
48: int isasmbpt(long);
49: Stmt *bptstmt(long);
50: void hostclose();
51: void banner();
52: };
53:
54: enum BegEnd { BEGIN = 0x1, END = 0x2 };
55:
56: class BptReq : public PadRcv {
57: char *file;
58: char *func;
59: BegEnd be;
60: long line;
61: Expr *expr;
62: char *error;
63: char *setfunc(Process*);
64: char *setline(Process*);
65: void parse(char*);
66: PUBLIC(BptReq,U_BPTREQ)
67: char *set(Process*);
68: BptReq(char*, long, char* =0);
69: BptReq(char*, char*, char* =0);
70: };
71: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.