OSDN Git Service

2006-02-22 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / docs / html / ext / pb_assoc / sample_resize_policy.html
1
2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3
4
5 <html>
6 <head>
7 <title>sample_resize_policy Interface
8 </title>
9
10 </head>
11
12 <body>
13 <h1>
14 <tt>sample_resize_policy
15 </tt>
16
17  Interface
18
19
20 </h1>
21
22 <p>A sample resize policy.
23 </p>
24
25 <p>This class serves to show the interface a resize policy needs to support.
26 </p>
27
28 <ol>
29 <li>
30 <a href = "../pb_assoc/sample_resize_policy.hpp"><tt>sample_resize_policy.hpp</tt>
31 </a>
32
33 </li>
34
35 <li>
36 Public Methods:
37
38
39 <ol>
40 <li>
41 <a href = "#link1">Constructors, destructor, and related.
42 </a>
43
44 </li>
45
46 </ol>
47
48 </li>
49
50 <li>
51 Protected Methods:
52
53
54 <ol>
55 <li>
56 <a href = "#link2">Insert search notifications.
57 </a>
58
59 </li>
60
61 <li>
62 <a href = "#link3">Find search notifications.
63 </a>
64
65 </li>
66
67 <li>
68 <a href = "#link4">Erase search notifications.
69 </a>
70
71 </li>
72
73 <li>
74 <a href = "#link5">Content change notifications.
75 </a>
76
77 </li>
78
79 <li>
80 <a href = "#link6">Size change notifications.
81 </a>
82
83 </li>
84
85 <li>
86 <a href = "#link7">Queries.
87 </a>
88
89 </li>
90
91 </ol>
92
93 </li>
94
95 </ol>
96
97
98 <h2>
99 <a name = "link1">Constructors, destructor, and related.
100 </a>
101
102 </h2>
103
104 <table WIDTH = "100%" BORDER = "1">
105 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
106
107
108 <tr>
109 <td>
110 <pre>  sample_resize_policy
111   ()</pre>
112
113
114 </td>
115
116 <td>
117 <p>Default constructor.</p>
118
119
120 <p>Must be default constructible.</p>
121
122
123 </td>
124
125 </tr>
126
127 <tr>
128 <td>
129 <pre>  sample_range_hashing
130   (<b>const</b> sample_resize_policy &amp;r_other)</pre>
131
132
133 </td>
134
135 <td>
136 <p>Copy constructor.</p>
137
138
139 <p>Must be copy constructible.</p>
140
141
142 </td>
143
144 </tr>
145
146 <tr>
147 <td>
148 <pre><b>inline</b> <b>void</b>
149   swap
150   (sample_resize_policy &amp;r_other)</pre>
151
152
153 </td>
154
155 <td>
156 <p>Swaps content.</p>
157
158
159 <p>Must be swappable (if there is such a word).</p>
160
161
162 </td>
163
164 </tr>
165
166 </table>
167
168 <h2>
169 <a name = "link2">Insert search notifications.
170 </a>
171
172 </h2>
173
174 <p>Notifications called during an insert operation.</p>
175
176
177 <table WIDTH = "100%" BORDER = "1">
178 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
179
180
181 <tr>
182 <td>
183 <pre><b>inline</b> <b>void</b>
184   notify_insert_search_start
185   ()</pre>
186
187
188 </td>
189
190 <td>
191 <p>Notifies a search started.</p>
192
193
194 </td>
195
196 </tr>
197
198 <tr>
199 <td>
200 <pre><b>inline</b> <b>void</b>
201   notify_insert_search_collision
202   ()</pre>
203
204
205 </td>
206
207 <td>
208 <p>Notifies a search encountered a collision.</p>
209
210
211 </td>
212
213 </tr>
214
215 <tr>
216 <td>
217 <pre><b>inline</b> <b>void</b>
218   notify_insert_search_end
219   ()</pre>
220
221
222 </td>
223
224 <td>
225 <p>Notifies a search ended.</p>
226
227
228 </td>
229
230 </tr>
231
232 </table>
233
234 <h2>
235 <a name = "link3">Find search notifications.
236 </a>
237
238 </h2>
239
240 <p>Notifications called during a find operation.</p>
241
242
243 <table WIDTH = "100%" BORDER = "1">
244 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
245
246
247 <tr>
248 <td>
249 <pre><b>inline</b> <b>void</b>
250   notify_find_search_start
251   ()</pre>
252
253
254 </td>
255
256 <td>
257 <p>Notifies a search started.</p>
258
259
260 </td>
261
262 </tr>
263
264 <tr>
265 <td>
266 <pre><b>inline</b> <b>void</b>
267   notify_find_search_collision
268   ()</pre>
269
270
271 </td>
272
273 <td>
274 <p>Notifies a search encountered a collision.</p>
275
276
277 </td>
278
279 </tr>
280
281 <tr>
282 <td>
283 <pre><b>inline</b> <b>void</b>
284   notify_find_search_end
285   ()</pre>
286
287
288 </td>
289
290 <td>
291 <p>Notifies a search ended.</p>
292
293
294 </td>
295
296 </tr>
297
298 </table>
299
300 <h2>
301 <a name = "link4">Erase search notifications.
302 </a>
303
304 </h2>
305
306 <p>Notifications called during an insert operation.</p>
307
308
309 <table WIDTH = "100%" BORDER = "1">
310 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
311
312
313 <tr>
314 <td>
315 <pre><b>inline</b> <b>void</b>
316   notify_erase_search_start
317   ()</pre>
318
319
320 </td>
321
322 <td>
323 <p>Notifies a search started.</p>
324
325
326 </td>
327
328 </tr>
329
330 <tr>
331 <td>
332 <pre><b>inline</b> <b>void</b>
333   notify_erase_search_collision
334   ()</pre>
335
336
337 </td>
338
339 <td>
340 <p>Notifies a search encountered a collision.</p>
341
342
343 </td>
344
345 </tr>
346
347 <tr>
348 <td>
349 <pre><b>inline</b> <b>void</b>
350   notify_erase_search_end
351   ()</pre>
352
353
354 </td>
355
356 <td>
357 <p>Notifies a search ended.</p>
358
359
360 </td>
361
362 </tr>
363
364 </table>
365
366 <h2>
367 <a name = "link5">Content change notifications.
368 </a>
369
370 </h2>
371
372 <p>Notifications called when the content of the table changes in a way that can affect the resize policy.</p>
373
374
375 <table WIDTH = "100%" BORDER = "1">
376 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
377
378
379 <tr>
380 <td>
381 <pre><b>inline</b> <b>void</b>
382   notify_inserted
383   (size_type num_e)</pre>
384
385
386 </td>
387
388 <td>
389 <p>Notifies an element was inserted.</p>
390
391
392 </td>
393
394 </tr>
395
396 <tr>
397 <td>
398 <pre><b>inline</b> <b>void</b>
399   notify_erased
400   (size_type num_e)</pre>
401
402
403 </td>
404
405 <td>
406 <p>Notifies an element was erased.</p>
407
408
409 </td>
410
411 </tr>
412
413 <tr>
414 <td>
415 <pre><b>void</b>
416   notify_cleared
417   ()</pre>
418
419
420 </td>
421
422 <td>
423 <p>Notifies the table was cleared.</p>
424
425
426 </td>
427
428 </tr>
429
430 </table>
431
432 <h2>
433 <a name = "link6">Size change notifications.
434 </a>
435
436 </h2>
437
438 <p>Notifications called when the table changes size.</p>
439
440
441 <table WIDTH = "100%" BORDER = "1">
442 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
443
444
445 <tr>
446 <td>
447 <pre><b>void</b>
448   notify_resized
449   (size_type new_size)</pre>
450
451
452 </td>
453
454 <td>
455 <p>Notifies the table was resized to <font color = "#666666"><tt>new_size</tt></font>.</p>
456
457
458 </td>
459
460 </tr>
461
462 </table>
463
464 <h2>
465 <a name = "link7">Queries.
466 </a>
467
468 </h2>
469
470 <p>Called to query whether/how to resize.</p>
471
472
473 <table WIDTH = "100%" BORDER = "1">
474 <TR><TD Width = "45%" ALIGN = "left"><b>Method</b></TD><TD Width = "55%" ALIGN = "left"><b>Description</b></TD></TR>
475
476
477 <tr>
478 <td>
479 <pre>size_type
480   get_init_size
481   () <b>const</b></pre>
482
483
484 </td>
485
486 <td>
487 <p>Queries initial size.</p>
488
489
490 </td>
491
492 </tr>
493
494 <tr>
495 <td>
496 <pre><b>inline</b> <b>bool</b>
497   is_resize_needed
498   () <b>const</b></pre>
499
500
501 </td>
502
503 <td>
504 <p>Queries whether a resize is needed.</p>
505
506
507 </td>
508
509 </tr>
510
511 <tr>
512 <td>
513 <pre>size_type
514   get_new_size
515   (size_type size, size_type num_used_e) <b>const</b></pre>
516
517
518 </td>
519
520 <td>
521 <p>Queries what the new <font color = "#666666"><tt>size</tt></font> should be.</p>
522
523
524 </td>
525
526 </tr>
527
528 </table>
529
530
531
532 </body>
533
534 </html>
535
536