Moved the definitions of the << operator into the class declaration to
[dyninst.git] / paradyn / h / UI.I
1 /* UI.I
2      input file for igen for User Interface Manager (UIM) interface to paradyn
3 */
4 /* $Log: UI.I,v $
5 /* Revision 1.8  1994/08/17 17:55:22  markc
6 /* Incremented version numbers because a new version of igen has been
7 /* committed.
8 /*
9 # Revision 1.7  1994/08/09  18:14:58  karavan
10 # Expanded GetMetricsandResources to handle retries.
11 #
12 # Revision 1.6  1994/07/08  04:04:15  karavan
13 # changed showError function to async
14 #
15 # Revision 1.5  1994/07/07  05:59:02  karavan
16 # updated version number (finally!)
17 #
18 # Revision 1.4  1994/07/07  05:57:42  karavan
19 # added UIM error service function
20 #
21 # Revision 1.3  1994/06/12  22:39:42  karavan
22 # implemented status display service.
23 #
24 # Revision 1.2  1994/04/21  05:03:28  karavan
25 # Added most DAG services and sync versions of message display services.
26 #
27 # Revision 1.1  1994/04/05  19:37:57  karavan
28 # Initial version.
29 # */
30
31 /*
32  * Copyright (c) 1993, 1994 Barton P. Miller, Jeff Hollingsworth,
33  *     Bruce Irvin, Jon Cargille, Krishna Kunchithapadam, Karen
34  *     Karavanic, Tia Newhall, Mark Callaghan.  All rights reserved.
35  * 
36  * This software is furnished under the condition that it may not be
37  * provided or otherwise made available to, or used by, any other
38  * person, except as provided for by the terms of applicable license
39  * agreements.  No title to or ownership of the software is hereby
40  * transferred.  The name of the principals may not be used in any
41  * advertising or publicity related to this software without specific,
42  * written prior authorization.  Any use of this software must include
43  * the above copyright notice.
44  *
45  */
46
47 #include "dataManager.CLNT.h"
48 #include "../src/UIthread/UIstatDisp.h"
49
50 /* 
51  * Handler that gets called when user-selected metric and focus choices
52  * are passed back to the requesting visualization thread
53  */
54 typedef (*chooseMandRCBFunc) (char **metricNames, int numMetrics, 
55                                         resourceList *focusChoice);
56
57 /* 
58  * Handler that gets called when user choice passed back to requesting 
59  *  thread after message display
60  */
61 typedef (*showMsgCBFunc) (int userChoice);
62
63 /* 
64  * Handler that gets called when user choice passed back to requesting 
65  *  thread after error message display
66  */
67 typedef (*showErrorCBFunc) (int userChoice);
68
69 /*
70  * Handler that gets called when user choice passed back to requesting 
71  *  thread after menu display.  userChoice is index of selected menu 
72  *  item in original list.
73  */
74 typedef (*chooseMenuItemCBFunc) (int userChoice);
75
76
77 /*
78  * igen template for UIM server and client classes 
79  */ 
80
81 $remote UIM {
82         $base 3000;
83         $version 5;
84         //
85         // provides user with appropriate choices and passes back selections
86
87         $async void chooseMetricsandResources(chooseMandRCBFunc cb,
88                 char **metricNames,
89                 int numMetrics,
90                 resourceList* focusChoice);     
91         
92         $upcall $async void chosenMetricsandResources (                                         chooseMandRCBFunc, 
93                  char **metricNames,
94                  int numMetrics,
95                  resourceList* focusChoice);    
96
97         
98         // generic message display; returns index of user choice if applic.
99
100         $async void showMsg (showMsgCBFunc cb,
101                         char *displayMsg, 
102                         int numChoices, 
103                         char **choices);
104
105         $upcall $async void msgChoice (showMsgCBFunc cb, 
106                         int userChoice);
107
108         int showMsgWait (char *displayMsg, 
109                         int numChoices, 
110                         char **choices);
111
112         // message display with "error" visual characteristics
113         //  and lookup in error database for explanation
114
115         $async void showError (int errCode, char *errString);
116
117         // returns index of user's menu choice
118         $async void chooseMenuItem (chooseMenuItemCBFunc cb, 
119                         char *menuItems,
120                         char *menuTitle,
121                         char *options,
122                         int numMenuItems,
123                         int flags);
124
125         $upcall $async void chooseMenuItemREPLY (chooseMenuItemCBFunc cb, 
126                         int userChoice);
127
128         $async void startBatchMode ();
129         $async void endBatchMode ();
130
131         // add string to end of status display window (PC only for now)
132         //      $async void updateStatusDisplay (int token, char *item);
133         statusDisplayObj *initStatusDisplay (int type);
134         // 
135         // in emergency, break glass; valid tcl command will go right to 
136         //   tcl interpreter
137         //     (not currently implemented)
138         // $async void tclRequest (char *command);
139         // $upcall $async void tclRequestREPLY (char *tclResult);
140
141         // 
142         // DAG services 
143         //
144         int initSHG ();
145
146         int DAGaddNode(int dagID, int nodeID, int styleID, 
147                         char *label, char *shgname, int root);
148         int DAGaddEdge (int dagID, int srcID, 
149                         int dstID, int styleID);
150         int DAGconfigNode (int dagID, int nodeID, int styleID);
151
152         int DAGcreateEdgeStyle(int dagID, int styleID, char *options);
153         int DAGcreateNodeStyle(int dagID, int styleID, char *options);
154
155 // some DAG services are on holiday until further notice.  stay tuned  
156 //      int DAGconfigEdges (int dagID, int numEntries, int edgeID, 
157 //                            int styleID);
158 //      int DAGdestroy (int dagID);
159 //
160         
161 };