apos algum profiling
[xYpjg3TdSw.git] / migrando / profiling
blob5dc3114c562a2a8d33a75539c391868190efc4fc
1 Flat profile:
3 Each sample counts as 0.01 seconds.
4   %   cumulative   self              self     total           
5  time   seconds   seconds    calls  ms/call  ms/call  name    
6  79.57     22.94    22.94       53   432.83   543.77  MinimaxEnemy::alphabeta(Board, int, int, int, int, int*)
7  20.29     28.79     5.85 14006939     0.00     0.00  Board::adjacent(char, char)
8   0.10     28.82     0.03   334246     0.00     0.00  std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::_M_insert_aux(__gnu_cxx::__normal_iterator<std::pair<char, char>*, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > > >, std::pair<char, char> const&)
9   0.03     28.83     0.01       56     0.18     0.18  Game::is_end()
10   0.00     28.83     0.00     3584     0.00     0.00  Controller::is_highlighted(int, int)
11   0.00     28.83     0.00     3584     0.00     0.00  Controller::is_empty(int, int)
12   0.00     28.83     0.00     3584     0.00     0.00  Window::draw_square(int, int, int)
13   0.00     28.83     0.00     1000     0.00     0.00  MoveHistoryEntry::MoveHistoryEntry()
14   0.00     28.83     0.00      923     0.00     0.00  Controller::piece(int, int)
15   0.00     28.83     0.00      923     0.00     0.00  Window::draw_circle(int, int, int)
16   0.00     28.83     0.00      104     0.00     0.00  Controller::highlight(int, int)
17   0.00     28.83     0.00       60     0.00     0.00  Window::disable(char const*)
18   0.00     28.83     0.00       57     0.00     0.00  Game::fill_pieces(bool*, char*)
19   0.00     28.83     0.00       56     0.00     0.18  Controller::update_all()
20   0.00     28.83     0.00       56     0.00   514.64  Controller::after_display()
21   0.00     28.83     0.00       56     0.00     0.00  Game::get_last_move(int&, int&, int&, int&)
22   0.00     28.83     0.00       56     0.00     0.00  Window::render_scene()
23   0.00     28.83     0.00       56     0.00     0.00  Window::display()
24   0.00     28.83     0.00       55     0.00     0.00  Board::Board()
25   0.00     28.83     0.00       55     0.00     0.00  Window::enable(char const*)
26   0.00     28.83     0.00       54     0.00     0.00  MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int)
27   0.00     28.83     0.00       54     0.00     0.00  MoveHistoryEntry::operator=(MoveHistoryEntry const&)
28   0.00     28.83     0.00       53     0.00   543.77  MinimaxEnemy::move(Board*, int&, int&, int&, int&)
29   0.00     28.83     0.00       53     0.00     0.00  Game::move(int, int, int, int)
30   0.00     28.83     0.00       53     0.00   543.77  Game::think()
31   0.00     28.83     0.00        2     0.00     0.09  ControlFunc(int)
32   0.00     28.83     0.00        2     0.00     0.00  Controller::set_computer_color(int)
33   0.00     28.83     0.00        2     0.00     0.00  Controller::stop()
34   0.00     28.83     0.00        2     0.00     0.00  Window::enable_all()
35   0.00     28.83     0.00        2     0.00     0.09  Window::control_func(int)
36   0.00     28.83     0.00        1     0.00     0.00  global constructors keyed to dx
37   0.00     28.83     0.00        1     0.00     0.00  Controller::set_window(Window*)
38   0.00     28.83     0.00        1     0.00     0.00  Controller::set_minimax_depth(int)
39   0.00     28.83     0.00        1     0.00     0.00  Controller::play()
40   0.00     28.83     0.00        1     0.00     0.00  Controller::click(int, int)
41   0.00     28.83     0.00        1     0.00     0.00  Controller::Controller(Game*)
42   0.00     28.83     0.00        1     0.00     0.00  Game::set_minimax_depth(int)
43   0.00     28.83     0.00        1     0.00     0.00  Game::can_move(int, int)
44   0.00     28.83     0.00        1     0.00     0.00  Game::Game()
45   0.00     28.83     0.00        1     0.00     0.00  Board::initial_position()
46   0.00     28.83     0.00        1     0.00     0.00  Window::disable_all()
47   0.00     28.83     0.00        1     0.00     0.18  Window::main_loop()
48   0.00     28.83     0.00        1     0.00     0.00  Window::Window(int, char**, Controller*)
50  %         the percentage of the total running time of the
51 time       program used by this function.
53 cumulative a running sum of the number of seconds accounted
54  seconds   for by this function and those listed above it.
56  self      the number of seconds accounted for by this
57 seconds    function alone.  This is the major sort for this
58            listing.
60 calls      the number of times this function was invoked, if
61            this function is profiled, else blank.
63  self      the average number of milliseconds spent in this
64 ms/call    function per call, if this function is profiled,
65            else blank.
67  total     the average number of milliseconds spent in this
68 ms/call    function and its descendents per call, if this 
69            function is profiled, else blank.
71 name       the name of the function.  This is the minor sort
72            for this listing. The index shows the location of
73            the function in the gprof listing. If the index is
74            in parenthesis it shows where it would appear in
75            the gprof listing if it were to be printed.
77                      Call graph (explanation follows)
80 granularity: each sample hit covers 4 byte(s) for 0.03% of 28.83 seconds
82 index % time    self  children    called     name
83                                                  <spontaneous>
84 [1]    100.0    0.00   28.83                 RenderScene() [1]
85                 0.00   28.82      56/56          Controller::after_display() [2]
86                 0.00    0.01      53/56          Controller::update_all() [8]
87                 0.00    0.00      56/56          Window::render_scene() [29]
88 -----------------------------------------------
89                 0.00   28.82      56/56          RenderScene() [1]
90 [2]    100.0    0.00   28.82      56         Controller::after_display() [2]
91                 0.00   28.82      53/53          Game::think() [4]
92 -----------------------------------------------
93                 0.00   28.82      53/53          Game::think() [4]
94 [3]    100.0    0.00   28.82      53         MinimaxEnemy::move(Board*, int&, int&, int&, int&) [3]
95                22.94    5.88      53/53          MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
96                 0.00    0.00     336/334246      std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::_M_insert_aux(__gnu_cxx::__normal_iterator<std::pair<char, char>*, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > > >, std::pair<char, char> const&) [7]
97 -----------------------------------------------
98                 0.00   28.82      53/53          Controller::after_display() [2]
99 [4]    100.0    0.00   28.82      53         Game::think() [4]
100                 0.00   28.82      53/53          MinimaxEnemy::move(Board*, int&, int&, int&, int&) [3]
101                 0.00    0.00      53/53          Game::move(int, int, int, int) [35]
102 -----------------------------------------------
103                              13995394             MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
104                22.94    5.88      53/53          MinimaxEnemy::move(Board*, int&, int&, int&, int&) [3]
105 [5]    100.0   22.94    5.88      53+13995394 MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
106                 5.85    0.00 14006865/14006939     Board::adjacent(char, char) [6]
107                 0.03    0.00  333910/334246      std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::_M_insert_aux(__gnu_cxx::__normal_iterator<std::pair<char, char>*, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > > >, std::pair<char, char> const&) [7]
108                              13995394             MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
109 -----------------------------------------------
110                              1689499             Board::adjacent(char, char) [6]
111                 0.00    0.00      74/14006939     Game::is_end() [9]
112                 5.85    0.00 14006865/14006939     MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
113 [6]     20.3    5.85    0.00 14006939+1689499 Board::adjacent(char, char) [6]
114                              1689499             Board::adjacent(char, char) [6]
115 -----------------------------------------------
116                 0.00    0.00       0/334246      Board::moves(bool, int, int, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >&) [641]
117                 0.00    0.00     336/334246      MinimaxEnemy::move(Board*, int&, int&, int&, int&) [3]
118                 0.03    0.00  333910/334246      MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [5]
119 [7]      0.1    0.03    0.00  334246         std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::_M_insert_aux(__gnu_cxx::__normal_iterator<std::pair<char, char>*, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > > >, std::pair<char, char> const&) [7]
120 -----------------------------------------------
121                 0.00    0.00       1/56          Window::control_func(int) [12]
122                 0.00    0.00       1/56          Window::main_loop() [13]
123                 0.00    0.00       1/56          KeyboardFunc(unsigned char, int, int) [14]
124                 0.00    0.01      53/56          RenderScene() [1]
125 [8]      0.0    0.00    0.01      56         Controller::update_all() [8]
126                 0.01    0.00      56/56          Game::is_end() [9]
127                 0.00    0.00      58/60          Window::disable(char const*) [26]
128                 0.00    0.00      56/57          Game::fill_pieces(bool*, char*) [27]
129                 0.00    0.00      56/56          Game::get_last_move(int&, int&, int&, int&) [28]
130                 0.00    0.00      56/56          Window::display() [30]
131                 0.00    0.00      54/55          Window::enable(char const*) [32]
132                 0.00    0.00       0/2           Window::enable_all() [38]
133 -----------------------------------------------
134                 0.01    0.00      56/56          Controller::update_all() [8]
135 [9]      0.0    0.01    0.00      56         Game::is_end() [9]
136                 0.00    0.00      74/14006939     Board::adjacent(char, char) [6]
137 -----------------------------------------------
138                                                  <spontaneous>
139 [10]     0.0    0.00    0.00                 main [10]
140                 0.00    0.00       1/1           Window::main_loop() [13]
141                 0.00    0.00       1/1           Game::Game() [47]
142                 0.00    0.00       1/1           Controller::Controller(Game*) [44]
143                 0.00    0.00       1/1           Window::Window(int, char**, Controller*) [50]
144                 0.00    0.00       1/1           Controller::set_window(Window*) [40]
145 -----------------------------------------------
146                 0.00    0.00       2/2           GLUI_CB::operator()(GLUI_Control*) const [15]
147 [11]     0.0    0.00    0.00       2         ControlFunc(int) [11]
148                 0.00    0.00       2/2           Window::control_func(int) [12]
149 -----------------------------------------------
150                 0.00    0.00       2/2           ControlFunc(int) [11]
151 [12]     0.0    0.00    0.00       2         Window::control_func(int) [12]
152                 0.00    0.00       1/56          Controller::update_all() [8]
153                 0.00    0.00       1/2           Controller::set_computer_color(int) [36]
154                 0.00    0.00       1/1           Controller::play() [42]
155 -----------------------------------------------
156                 0.00    0.00       1/1           main [10]
157 [13]     0.0    0.00    0.00       1         Window::main_loop() [13]
158                 0.00    0.00       1/56          Controller::update_all() [8]
159                 0.00    0.00       1/2           Controller::stop() [37]
160                 0.00    0.00       1/1           Game::set_minimax_depth(int) [45]
161                 0.00    0.00       1/1           Controller::set_minimax_depth(int) [41]
162 -----------------------------------------------
163                                                  <spontaneous>
164 [14]     0.0    0.00    0.00                 KeyboardFunc(unsigned char, int, int) [14]
165                 0.00    0.00       1/56          Controller::update_all() [8]
166                 0.00    0.00       1/2           Controller::stop() [37]
167 -----------------------------------------------
168                                                  <spontaneous>
169 [15]     0.0    0.00    0.00                 GLUI_CB::operator()(GLUI_Control*) const [15]
170                 0.00    0.00       2/2           ControlFunc(int) [11]
171 -----------------------------------------------
172                 0.00    0.00    3584/3584        Window::render_scene() [29]
173 [19]     0.0    0.00    0.00    3584         Controller::is_highlighted(int, int) [19]
174 -----------------------------------------------
175                 0.00    0.00    3584/3584        Window::render_scene() [29]
176 [20]     0.0    0.00    0.00    3584         Controller::is_empty(int, int) [20]
177 -----------------------------------------------
178                 0.00    0.00    3584/3584        Window::render_scene() [29]
179 [21]     0.0    0.00    0.00    3584         Window::draw_square(int, int, int) [21]
180 -----------------------------------------------
181                 0.00    0.00       0/1000        Game::Game() [526]
182                 0.00    0.00    1000/1000        Game::Game() [47]
183 [22]     0.0    0.00    0.00    1000         MoveHistoryEntry::MoveHistoryEntry() [22]
184 -----------------------------------------------
185                 0.00    0.00     923/923         Window::render_scene() [29]
186 [23]     0.0    0.00    0.00     923         Controller::piece(int, int) [23]
187 -----------------------------------------------
188                 0.00    0.00     923/923         Window::render_scene() [29]
189 [24]     0.0    0.00    0.00     923         Window::draw_circle(int, int, int) [24]
190 -----------------------------------------------
191                 0.00    0.00     104/104         Window::render_scene() [29]
192 [25]     0.0    0.00    0.00     104         Controller::highlight(int, int) [25]
193 -----------------------------------------------
194                 0.00    0.00       2/60          Controller::stop() [37]
195                 0.00    0.00      58/60          Controller::update_all() [8]
196 [26]     0.0    0.00    0.00      60         Window::disable(char const*) [26]
197 -----------------------------------------------
198                 0.00    0.00       0/57          Controller::Controller(Game*) [108]
199                 0.00    0.00       1/57          Controller::Controller(Game*) [44]
200                 0.00    0.00      56/57          Controller::update_all() [8]
201 [27]     0.0    0.00    0.00      57         Game::fill_pieces(bool*, char*) [27]
202 -----------------------------------------------
203                 0.00    0.00      56/56          Controller::update_all() [8]
204 [28]     0.0    0.00    0.00      56         Game::get_last_move(int&, int&, int&, int&) [28]
205 -----------------------------------------------
206                 0.00    0.00      56/56          RenderScene() [1]
207 [29]     0.0    0.00    0.00      56         Window::render_scene() [29]
208                 0.00    0.00    3584/3584        Window::draw_square(int, int, int) [21]
209                 0.00    0.00    3584/3584        Controller::is_highlighted(int, int) [19]
210                 0.00    0.00    3584/3584        Controller::is_empty(int, int) [20]
211                 0.00    0.00     923/923         Controller::piece(int, int) [23]
212                 0.00    0.00     923/923         Window::draw_circle(int, int, int) [24]
213                 0.00    0.00     104/104         Controller::highlight(int, int) [25]
214 -----------------------------------------------
215                 0.00    0.00      56/56          Controller::update_all() [8]
216 [30]     0.0    0.00    0.00      56         Window::display() [30]
217 -----------------------------------------------
218                 0.00    0.00       1/55          Game::Game() [47]
219                 0.00    0.00      54/55          MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int) [33]
220 [31]     0.0    0.00    0.00      55         Board::Board() [31]
221 -----------------------------------------------
222                 0.00    0.00       1/55          Controller::play() [42]
223                 0.00    0.00      54/55          Controller::update_all() [8]
224 [32]     0.0    0.00    0.00      55         Window::enable(char const*) [32]
225 -----------------------------------------------
226                 0.00    0.00       0/54          Game::Game() [526]
227                 0.00    0.00       1/54          Game::Game() [47]
228                 0.00    0.00      53/54          Game::move(int, int, int, int) [35]
229 [33]     0.0    0.00    0.00      54         MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int) [33]
230                 0.00    0.00      54/55          Board::Board() [31]
231 -----------------------------------------------
232                 0.00    0.00       0/54          Game::Game() [526]
233                 0.00    0.00       1/54          Game::Game() [47]
234                 0.00    0.00      53/54          Game::move(int, int, int, int) [35]
235 [34]     0.0    0.00    0.00      54         MoveHistoryEntry::operator=(MoveHistoryEntry const&) [34]
236 -----------------------------------------------
237                 0.00    0.00       0/53          Controller::click(int, int) [43]
238                 0.00    0.00      53/53          Game::think() [4]
239 [35]     0.0    0.00    0.00      53         Game::move(int, int, int, int) [35]
240                 0.00    0.00      53/54          MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int) [33]
241                 0.00    0.00      53/54          MoveHistoryEntry::operator=(MoveHistoryEntry const&) [34]
242 -----------------------------------------------
243                 0.00    0.00       1/2           Window::control_func(int) [12]
244                 0.00    0.00       1/2           Window::Window(int, char**, Controller*) [50]
245 [36]     0.0    0.00    0.00       2         Controller::set_computer_color(int) [36]
246 -----------------------------------------------
247                 0.00    0.00       1/2           Window::main_loop() [13]
248                 0.00    0.00       1/2           KeyboardFunc(unsigned char, int, int) [14]
249 [37]     0.0    0.00    0.00       2         Controller::stop() [37]
250                 0.00    0.00       2/2           Window::enable_all() [38]
251                 0.00    0.00       2/60          Window::disable(char const*) [26]
252 -----------------------------------------------
253                 0.00    0.00       0/2           Controller::update_all() [8]
254                 0.00    0.00       2/2           Controller::stop() [37]
255 [38]     0.0    0.00    0.00       2         Window::enable_all() [38]
256 -----------------------------------------------
257                 0.00    0.00       1/1           __do_global_ctors_aux [845]
258 [39]     0.0    0.00    0.00       1         global constructors keyed to dx [39]
259 -----------------------------------------------
260                 0.00    0.00       1/1           main [10]
261 [40]     0.0    0.00    0.00       1         Controller::set_window(Window*) [40]
262 -----------------------------------------------
263                 0.00    0.00       1/1           Window::main_loop() [13]
264 [41]     0.0    0.00    0.00       1         Controller::set_minimax_depth(int) [41]
265 -----------------------------------------------
266                 0.00    0.00       1/1           Window::control_func(int) [12]
267 [42]     0.0    0.00    0.00       1         Controller::play() [42]
268                 0.00    0.00       1/1           Window::disable_all() [49]
269                 0.00    0.00       1/55          Window::enable(char const*) [32]
270 -----------------------------------------------
271                 0.00    0.00       1/1           MouseFunc(int, int, int, int) [96]
272 [43]     0.0    0.00    0.00       1         Controller::click(int, int) [43]
273                 0.00    0.00       1/1           Game::can_move(int, int) [46]
274                 0.00    0.00       0/53          Game::move(int, int, int, int) [35]
275                 0.00    0.00       0/0           Game::fill_moves(int, int, bool*) [520]
276 -----------------------------------------------
277                 0.00    0.00       1/1           main [10]
278 [44]     0.0    0.00    0.00       1         Controller::Controller(Game*) [44]
279                 0.00    0.00       1/57          Game::fill_pieces(bool*, char*) [27]
280 -----------------------------------------------
281                 0.00    0.00       1/1           Window::main_loop() [13]
282 [45]     0.0    0.00    0.00       1         Game::set_minimax_depth(int) [45]
283 -----------------------------------------------
284                 0.00    0.00       1/1           Controller::click(int, int) [43]
285 [46]     0.0    0.00    0.00       1         Game::can_move(int, int) [46]
286 -----------------------------------------------
287                 0.00    0.00       1/1           main [10]
288 [47]     0.0    0.00    0.00       1         Game::Game() [47]
289                 0.00    0.00    1000/1000        MoveHistoryEntry::MoveHistoryEntry() [22]
290                 0.00    0.00       1/55          Board::Board() [31]
291                 0.00    0.00       1/1           Board::initial_position() [48]
292                 0.00    0.00       1/54          MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int) [33]
293                 0.00    0.00       1/54          MoveHistoryEntry::operator=(MoveHistoryEntry const&) [34]
294 -----------------------------------------------
295                 0.00    0.00       1/1           Game::Game() [47]
296 [48]     0.0    0.00    0.00       1         Board::initial_position() [48]
297 -----------------------------------------------
298                 0.00    0.00       1/1           Controller::play() [42]
299 [49]     0.0    0.00    0.00       1         Window::disable_all() [49]
300 -----------------------------------------------
301                 0.00    0.00       1/1           main [10]
302 [50]     0.0    0.00    0.00       1         Window::Window(int, char**, Controller*) [50]
303                 0.00    0.00       1/2           Controller::set_computer_color(int) [36]
304                 0.00    0.00       0/0           GLUI_Master_Object::create_glui(char const*, long, int, int) [441]
305                 0.00    0.00       0/0           GLUI::add_panel(char const*, int) [515]
306                 0.00    0.00       0/0           GLUI::add_panel_to_panel(GLUI_Panel*, char const*, int) [493]
307                 0.00    0.00       0/0           GLUI::add_button_to_panel(GLUI_Panel*, char const*, int, GLUI_CB) [495]
308                 0.00    0.00       0/0           GLUI::add_column_to_panel(GLUI_Panel*, int) [496]
309                 0.00    0.00       0/0           GLUI::add_radiogroup_to_panel(GLUI_Panel*, int*, int, GLUI_CB) [506]
310                 0.00    0.00       0/0           GLUI::add_radiobutton_to_group(GLUI_RadioGroup*, char const*) [508]
311                 0.00    0.00       0/0           GLUI::add_spinner_to_panel(GLUI_Panel*, char const*, int, void*, int, GLUI_CB) [500]
312                 0.00    0.00       0/0           GLUI_Spinner::set_int_limits(int, int, int) [261]
313                 0.00    0.00       0/0           GLUI::add_statictext_to_panel(GLUI_Panel*, char const*) [507]
314                 0.00    0.00       0/0           GLUI::set_main_gfx_window(int) [497]
315 -----------------------------------------------
317  This table describes the call tree of the program, and was sorted by
318  the total amount of time spent in each function and its children.
320  Each entry in this table consists of several lines.  The line with the
321  index number at the left hand margin lists the current function.
322  The lines above it list the functions that called this function,
323  and the lines below it list the functions this one called.
324  This line lists:
325      index      A unique number given to each element of the table.
326                 Index numbers are sorted numerically.
327                 The index number is printed next to every function name so
328                 it is easier to look up where the function in the table.
330      % time     This is the percentage of the `total' time that was spent
331                 in this function and its children.  Note that due to
332                 different viewpoints, functions excluded by options, etc,
333                 these numbers will NOT add up to 100%.
335      self       This is the total amount of time spent in this function.
337      children   This is the total amount of time propagated into this
338                 function by its children.
340      called     This is the number of times the function was called.
341                 If the function called itself recursively, the number
342                 only includes non-recursive calls, and is followed by
343                 a `+' and the number of recursive calls.
345      name       The name of the current function.  The index number is
346                 printed after it.  If the function is a member of a
347                 cycle, the cycle number is printed between the
348                 function's name and the index number.
351  For the function's parents, the fields have the following meanings:
353      self       This is the amount of time that was propagated directly
354                 from the function into this parent.
356      children   This is the amount of time that was propagated from
357                 the function's children into this parent.
359      called     This is the number of times this parent called the
360                 function `/' the total number of times the function
361                 was called.  Recursive calls to the function are not
362                 included in the number after the `/'.
364      name       This is the name of the parent.  The parent's index
365                 number is printed after it.  If the parent is a
366                 member of a cycle, the cycle number is printed between
367                 the name and the index number.
369  If the parents of the function cannot be determined, the word
370  `<spontaneous>' is printed in the `name' field, and all the other
371  fields are blank.
373  For the function's children, the fields have the following meanings:
375      self       This is the amount of time that was propagated directly
376                 from the child into the function.
378      children   This is the amount of time that was propagated from the
379                 child's children to the function.
381      called     This is the number of times the function called
382                 this child `/' the total number of times the child
383                 was called.  Recursive calls by the child are not
384                 listed in the number after the `/'.
386      name       This is the name of the child.  The child's index
387                 number is printed after it.  If the child is a
388                 member of a cycle, the cycle number is printed
389                 between the name and the index number.
391  If there are any cycles (circles) in the call graph, there is an
392  entry for the cycle-as-a-whole.  This entry shows who called the
393  cycle (as parents) and the members of the cycle (as children.)
394  The `+' recursive calls entry shows the number of function calls that
395  were internal to the cycle, and the calls entry for each member shows,
396  for that member, how many times it was called from other members of
397  the cycle.
400 Index by function name
402   [39] global constructors keyed to dx [3] MinimaxEnemy::move(Board*, int&, int&, int&, int&) [31] Board::Board()
403   [11] ControlFunc(int)        [5] MinimaxEnemy::alphabeta(Board, int, int, int, int, int*) [38] Window::enable_all()
404   [40] Controller::set_window(Window*) [33] MoveHistoryEntry::MoveHistoryEntry(Board*, int, int, int, int) [49] Window::disable_all()
405    [8] Controller::update_all() [22] MoveHistoryEntry::MoveHistoryEntry() [24] Window::draw_circle(int, int, int)
406    [2] Controller::after_display() [34] MoveHistoryEntry::operator=(MoveHistoryEntry const&) [21] Window::draw_square(int, int, int)
407   [19] Controller::is_highlighted(int, int) [27] Game::fill_pieces(bool*, char*) [12] Window::control_func(int)
408   [41] Controller::set_minimax_depth(int) [28] Game::get_last_move(int&, int&, int&, int&) [29] Window::render_scene()
409   [36] Controller::set_computer_color(int) [45] Game::set_minimax_depth(int) [32] Window::enable(char const*)
410   [42] Controller::play()     [35] Game::move(int, int, int, int) [26] Window::disable(char const*)
411   [37] Controller::stop()      [4] Game::think()          [30] Window::display()
412   [43] Controller::click(int, int) [9] Game::is_end()     [13] Window::main_loop()
413   [23] Controller::piece(int, int) [46] Game::can_move(int, int) [50] Window::Window(int, char**, Controller*)
414   [20] Controller::is_empty(int, int) [47] Game::Game()    [7] std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::_M_insert_aux(__gnu_cxx::__normal_iterator<std::pair<char, char>*, std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > > >, std::pair<char, char> const&)
415   [25] Controller::highlight(int, int) [48] Board::initial_position()
416   [44] Controller::Controller(Game*) [6] Board::adjacent(char, char)