added new costServer class
[dyninst.git] / paradyn / src / templatesPCV.C
1 // templatesPCV.C
2 // templates for perf consultant and visis
3
4 #pragma implementation "list.h"
5 #include "util/h/list.h"
6 #include "util/h/String.h"
7 #pragma implementation "Vector.h"
8 #include "util/h/Vector.h"
9 #pragma implementation "Queue.h"
10 #include "util/h/Queue.h"
11 #pragma implementation "BufferPool.h"
12 #include "paradyn/src/DMthread/BufferPool.h"
13 #pragma implementation "Dictionary.h"
14 #include "util/h/Dictionary.h"
15 #pragma implementation "DictionaryLite.h"
16 #include "util/src/DictionaryLite.C"
17 #pragma implementation "dyninstRPC.xdr.h"
18 #include "dyninstRPC.xdr.h"
19 #pragma implementation "visi.xdr.h"
20 #include "visi.xdr.h"
21
22 /* ********************************
23  * PCthread stuff
24  */
25
26 #include "paradyn/src/PCthread/PCintern.h"
27
28 #include "paradyn/src/PCthread/PCsearch.h"
29 #include "paradyn/src/PCthread/PCfilter.h"
30 #include "paradyn/src/PCthread/PCmetric.h"
31 #include "paradyn/src/PCthread/PCmetricInst.h"
32 #include "paradyn/src/PCthread/PCwhy.h"
33 #include "paradyn/src/PCthread/PCshg.h"
34 #include "paradyn/src/PCthread/PCdata.h"
35 #include "paradyn/src/PCthread/PCcostServer.h"
36 #include "UI.thread.h"
37
38 template class vector<ffstr>;
39 template class vector<costServerRec>;
40 template class vector<uiSHGrequest>;
41 template class vector<dataSubscriber*>;
42 template class vector<PCsearch*>;
43 template class vector<filter*>;
44 template class vector<PCMetInfo*>;
45 template class vector<PCmetric*>;
46 template class vector<PCMRec>;
47 template class vector<PCMRec*>;
48 template class vector<inPort>;
49 template class vector<searchHistoryNode*>;
50 template class vector<hypothesis*>;
51 template class vector<PCmetricInst*>;
52 template class pair<PCmetricInst*, filter*>;
53
54 template class pair<unsigned, PCsearch*>;
55 template class dictionary<unsigned, PCsearch*>;
56 template class vector< pair<unsigned, PCsearch*> >;
57 template class vector<dictionary_hash<unsigned, PCsearch*>::hash_pair>;
58 template class vector< vector< dictionary_hash< unsigned, PCsearch*>::hash_pair> >;
59 template class dictionary_hash<unsigned, PCsearch*>;
60
61 #include "util/src/PriorityQueue.C"
62 template class PriorityQueue<unsigned, searchHistoryNode*>; 
63 template ostream &operator<<(ostream &, PriorityQueue<unsigned, searchHistoryNode*> &);
64 template class vector<PriorityQueue<unsigned, searchHistoryNode*>::pair>;
65
66 template class pair<unsigned, filter*>;
67 template class dictionary<unsigned, filter*>;
68 template class vector< pair< unsigned, filter*> >;
69 template class vector<dictionary_hash<unsigned, filter*>::hash_pair>;
70 template class vector< vector< dictionary_hash<unsigned, filter*>::hash_pair> >;
71 template class dictionary_hash<unsigned, filter*>;
72
73 template class pair<unsigned, searchHistoryNode*>;
74 template class dictionary<unsigned, searchHistoryNode*>;
75 template class vector< pair<unsigned, searchHistoryNode*> >;
76 template class vector< dictionary_hash<unsigned, searchHistoryNode*>::hash_pair>;
77 template class vector< vector< dictionary_hash<unsigned, searchHistoryNode*>::hash_pair> >;
78 template class dictionary_hash<unsigned, searchHistoryNode*>;
79
80 template class pair< metricHandle, dictionary_hash< unsigned, filter*>* >;
81 template class vector< dictionary_hash< unsigned, filter*>* >;
82 template class dictionary<metricHandle, dictionary_hash<unsigned, filter*>* >;
83 template class vector< pair<metricHandle, dictionary_hash<unsigned, filter*>* > >;
84 template class vector< dictionary_hash< metricHandle, dictionary_hash<unsigned, filter*>* >::hash_pair>;
85 template class vector< vector< dictionary_hash<metricHandle, dictionary_hash<unsigned, filter*>*>::hash_pair> >;
86 template class dictionary_hash<metricHandle, dictionary_hash<unsigned, filter*>* >; 
87
88 template class pair<string, PCmetric*>;
89 template class dictionary<string, PCmetric*>;
90 template class vector< pair<string, PCmetric*> >;
91 template class vector< dictionary_hash<string, PCmetric*>::hash_pair>;
92 template class vector< vector< dictionary_hash<string, PCmetric*>::hash_pair> >;
93 template class dictionary_hash<string, PCmetric*>;
94
95 template class pair<unsigned, PCmetricInst*>;
96 template class dictionary<unsigned, PCmetricInst*>;
97 template class vector< pair<unsigned, PCmetricInst*> >;
98 template class vector< dictionary_hash<unsigned, PCmetricInst*>::hash_pair>;
99 template class vector< vector< dictionary_hash<unsigned, PCmetricInst*>::hash_pair> >;
100 template class dictionary_hash<unsigned, PCmetricInst*>;
101
102 template class pair<string, hypothesis*>;
103 template class dictionary<string, hypothesis*>;
104 template class vector< pair< string, hypothesis*> >;
105 template class vector< dictionary_hash<string, hypothesis*>::hash_pair>;
106 template class vector< vector< dictionary_hash<string, hypothesis*>::hash_pair> >;
107 template class dictionary_hash<string, hypothesis*>;
108
109 template class pair<focus, vector<searchHistoryNode*>*>;
110 template class vector<vector<searchHistoryNode*>*>;
111 template class dictionary<focus, vector<searchHistoryNode*>*>;
112 template class vector< pair<focus, vector<searchHistoryNode*>*> >;
113 template class vector< dictionary_hash<focus, vector<searchHistoryNode*>*>::hash_pair>;
114 template class vector< vector< dictionary_hash<focus, vector<searchHistoryNode*>*>::hash_pair> >;
115 template class dictionary_hash<focus, vector<searchHistoryNode*>*>;
116
117 #include "util/src/CircularBuffer.C"
118 #include "paradyn/src/PCthread/PCintern.h"
119 template class circularBuffer<Interval, PCdataQSize>;
120
121 /* ************************************
122  * VMthread stuff
123  */
124 #include "paradyn/src/VMthread/VMtypes.h"
125 #include "VM.thread.h"
126
127 template class vector<VMactiveStruct *>;
128 template class vector<VMvisisStruct *>;
129 template class vector<VM_visiInfo>;
130
131 /* ******************************
132  * VISIthread stuff
133   */
134 template class vector<metricInstInfo *>;
135