3 * Interface between the Performance Consultant and the rest of paradyn.
5 * $Log: performanceConsultant.I,v $
6 * Revision 1.10 1995/01/26 17:59:31 jcargill
7 * Changed igen-generated include files to new naming convention; fixed
8 * some bugs compiling with gcc-2.6.3.
10 * Revision 1.9 1994/09/22 00:45:15 markc
11 * Made array declarations explicit
12 * Incremented version number
14 * Revision 1.8 1994/08/17 17:55:29 markc
15 * Incremented version numbers because a new version of igen has been
18 * Revision 1.7 1994/05/09 20:53:36 hollings
19 * added changeState to dataManager, and clearSHG to performanceConsultant.
21 * Revision 1.6 1994/05/06 06:50:45 karavan
24 * Revision 1.5 1994/05/02 20:36:50 hollings
25 * Added pause and shg get node routines.
27 * Revision 1.4 1994/04/27 22:54:52 hollings
28 * Merged refine auto and search.
30 * Revision 1.3 1994/04/21 05:01:21 karavan
31 * changed search and autoRefine to async to avoid deadlock with UIM.
33 * Revision 1.2 1994/02/02 00:43:20 hollings
34 * Added Auto Refinement options.
36 * Revision 1.1 1994/02/01 18:47:35 hollings
37 * Upgrades for performanceConsultant thread.
40 #include "dataManager.thread.h"
43 // Forward decl of classes that are passed out the interface.
45 class searchHistoryNode;
46 typedef searchHistoryNode *SHNptr;
48 $remote array int int_Array;
50 $remote array SHNptr SHNptr_Array;
52 $remote performanceConsultant {
56 // for all of the configured tests print their status.
57 // This is intended for debugging only.
58 void printTestStatus();
60 // enumerate all of the refinements.
61 SHNptr_Array getWhyRefinements(searchHistoryNode *);
62 SHNptr_Array getWhenRefinements(searchHistoryNode *);
63 SHNptr_Array getWhereRefinements(searchHistoryNode *);
64 SHNptr_Array getAllRefinements(searchHistoryNode *);
66 // return the current refinement node.
67 searchHistoryNode *getCurrentRefinement();
68 int getCurrentNodeId();
70 // make PC available to user
71 $async void startSHG();
73 // destroy any shg state we have
74 $async void clearSHG();
76 void printSHGNode(searchHistoryNode *);
79 // try to make automated refinements. Up to limit number of steps.
80 $async void search(Boolean, int limit);
82 // stop the automated search process in its tracks.
83 $async void pauseSearch();
85 // change the current refinement node.
86 // NOTE: The node must be true and an ancestral path to the root must
87 // also be true or set will fail.
88 // As a side effect, searching is paused!!
89 int setCurrentSHGnode(int node);
91 void createInterval(int, timeStamp, timeStamp, char*);
93 // This doesn't work yet !!
94 void doRefine(int_Array ids);
96 // Really just setCurrentSHGnode(id of root node).
97 $async void resetRefinement();