source: vendor/emx/current/src/pmgdb/pmdebug.h

Last change on this file was 18, checked in by bird, 22 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 1.5 KB
Line 
1/* pmdebug.h -*- C++ -*-
2 Copyright (c) 1996 Eberhard Mattes
3
4This file is part of pmgdb.
5
6pmgdb is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11pmgdb is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with pmgdb; see the file COPYING. If not, write to
18the Free Software Foundation, 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */
20
21
22// Important: All member functions of pmdebug must be called in a
23// thread that has a message queue. Moreover, thread 1 must have
24// a message queue (DosExitList!)
25
26class pmdebug
27{
28public:
29 enum mode { off, sync, async };
30
31 pmdebug ();
32 ~pmdebug ();
33 void set_mode (mode new_mode, HWND hwnd, int pid = 0);
34 mode get_mode () const { return cur_mode; }
35 void start (); // About to start debuggee
36 void stop (); // Debuggee stopped
37 void term (); // Debuggee terminated
38 void set_pid (int in_pid) { pid = in_pid; }
39 void set_window (HWND hwnd) { hwndLock = hwnd; }
40 void exit ();
41
42private:
43 mode cur_mode;
44 bool locked;
45 HWND hwndLock;
46 int pid;
47};
48
49extern pmdebug pmdbg;
Note: See TracBrowser for help on using the repository browser.