XFontStruct --> Tk_Font
[dyninst.git] / paradyn / src / pdMain / paradyn.h
1 /*
2  * Copyright (c) 1996 Barton P. Miller
3  * 
4  * We provide the Paradyn Parallel Performance Tools (below
5  * described as Paradyn") on an AS IS basis, and do not warrant its
6  * validity or performance.  We reserve the right to update, modify,
7  * or discontinue this software at any time.  We shall have no
8  * obligation to supply such updates or modifications or any other
9  * form of support to you.
10  * 
11  * This license is for research uses.  For such uses, there is no
12  * charge. We define "research use" to mean you may freely use it
13  * inside your organization for whatever purposes you see fit. But you
14  * may not re-distribute Paradyn or parts of Paradyn, in any form
15  * source or binary (including derivatives), electronic or otherwise,
16  * to any other organization or entity without our permission.
17  * 
18  * (for other uses, please contact us at paradyn@cs.wisc.edu)
19  * 
20  * All warranties, including without limitation, any warranty of
21  * merchantability or fitness for a particular purpose, are hereby
22  * excluded.
23  * 
24  * By your use of Paradyn, you understand and agree that we (or any
25  * other person or entity with proprietary rights in Paradyn) are
26  * under no obligation to provide either maintenance services,
27  * update services, notices of latent defects, or correction of
28  * defects for Paradyn.
29  * 
30  * Even if advised of the possibility of such damages, under no
31  * circumstances shall we (or any other person or entity with
32  * proprietary rights in the software licensed hereunder) be liable
33  * to you or any third party for direct, indirect, or consequential
34  * damages of any character regardless of type of action, including,
35  * without limitation, loss of profits, loss of use, loss of good
36  * will, or computer failure or malfunction.  You agree to indemnify
37  * us (and any other person or entity with proprietary rights in the
38  * software licensed hereunder) for any and all liability it may
39  * incur to third parties resulting from your use of Paradyn.
40  */
41
42 /* $Log: paradyn.h,v $
43 /* Revision 1.15  1996/08/16 21:13:04  tamches
44 /* updated copyright for release 1.1
45 /*
46  * Revision 1.14  1996/01/29 22:13:01  mjrg
47  * Added metric propagation when new processes start
48  * Adjust time to account for clock differences between machines
49  * Daemons don't enable internal metrics when they are not running any processes
50  * Changed CM5 start (paradynd doesn't stop application at first breakpoint;
51  * the application stops only after it starts the CM5 daemon)
52  * Added -default_host option to paradyn
53  *
54  * Revision 1.13  1995/08/24  15:02:57  hollings
55  * AIX/SP-2 port (including option for split instruction/data heaps)
56  * Tracing of rexec (correctly spawns a paradynd if needed)
57  * Added rtinst function to read getrusage stats (can now be used in metrics)
58  * Critical Path
59  * Improved Error reporting in MDL sematic checks
60  * Fixed MDL Function call statement
61  * Fixed bugs in TK usage (strings passed where UID expected)
62  *
63  * Revision 1.12  1995/08/12  22:27:37  newhall
64  * moved def. of init_struct to dataManager.I
65  *
66  * Revision 1.11  1995/06/02  20:56:00  newhall
67  * made code compatable with new DM interface
68  *
69  * Revision 1.10  1995/05/18  11:00:46  markc
70  * added mdl hooks
71  *
72  */
73
74 /* paradyn.h */
75
76 /* some global definitions for main.C */
77
78 #ifndef _paradyn_h
79 #define _paradyn_h
80
81 #include "thread/h/thread.h"
82
83 #include "dataManager.thread.CLNT.h"
84 #include "performanceConsultant.thread.CLNT.h"
85 #include "UI.thread.CLNT.h"
86 #include "VM.thread.CLNT.h"
87
88 struct CLargStruct {
89   int clargc;
90   char **clargv;
91 };
92
93 typedef struct CLargStruct CLargStruct;
94
95
96 /* common MSG TAG definitions */
97
98 /* changed these to be MSG_TAG_USERrelative (for AIX) jkh 8/14/95 */
99 #define MSG_TAG_UIM_READY MSG_TAG_USER+1
100 #define MSG_TAG_DM_READY MSG_TAG_USER+2
101 #define MSG_TAG_VM_READY MSG_TAG_USER+3
102 #define MSG_TAG_PC_READY MSG_TAG_USER+4
103 #define MSG_TAG_ALL_CHILDREN_READY MSG_TAG_USER+5
104 #define MSG_TAG_TC_READY MSG_TAG_USER+6
105
106 extern thread_t UIMtid;
107 extern thread_t MAINtid;
108 extern thread_t PCtid;
109 extern thread_t DMtid;
110 extern thread_t VMtid;
111 extern thread_t TCtid; // tunable constant
112 // extern applicationContext *context;
113
114 extern dataManagerUser *dataMgr;
115 extern performanceConsultantUser *perfConsult;
116 extern UIMUser *uiMgr;
117 extern VMUser  *vmMgr;
118
119
120 // PARADYN_DEBUG: if PARADYNDEBUG environment variable 
121 //     has value > 0, prints msg to stdout
122 extern void print_debug_macro(const char* format, ...);
123 #define PARADYN_DEBUG(x) print_debug_macro x
124
125 // Structure used to pass initial arguments to data manager
126 //typedef struct {
127 //  int tid;
128 //  char *met_file;
129 //} init_struct;
130
131 // default_host defines the host where programs run when no host is
132 // specified in a PCL process definition, or in the process definition window.
133 extern string default_host;
134
135
136 #endif
137
138