1[library Boost.Icl
2    [quickbook 1.4]
3    [authors [Faulhaber, Joachim]]
4    [copyright 2007-2010 Joachim Faulhaber]
5    [copyright 1999-2006 Cortex Software GmbH]
6    [category container]
7    [id optional]
8    [dirname optional]
9    [purpose
10        Implements sets and maps as sets and maps of intervals
11    ]
12    [source-mode c++]
13    [license
14Distributed under the Boost Software License, Version 1.0.
15(See accompanying file LICENSE_1_0.txt or copy at
16[@http://www.boost.org/LICENSE_1_0.txt])
17    ]
18]
19
20
21
22[/ Macros will be used for links so we have a central place to change them ]
23[def __itv__          [classref boost::icl::interval interval]]
24[def __Itv__          [classref boost::icl::interval Interval]]
25
26[def __itv_tr__       [classref boost::icl::interval_traits interval_traits]]
27[def __Itv_tr__       [classref boost::icl::interval_traits Interval_traits]]
28
29[def __ro_itv__       [classref boost::icl::right_open_interval right_open_interval]]
30[def __lo_itv__       [classref boost::icl::left_open_interval  left_open_interval]]
31[def __op_itv__       [classref boost::icl::open_interval       open_interval]]
32[def __cl_itv__       [classref boost::icl::closed_interval     closed_interval]]
33
34[def __dc_itv__       [classref boost::icl::discrete_interval   discrete_interval]]
35[def __ct_itv__       [classref boost::icl::continuous_interval continuous_interval]]
36
37
38[def __itvs__         [classref boost::icl::interval intervals]]
39[def __icl_itvs__     [classref boost::icl::interval icl::intervals]]
40[def __Itvs__         [classref boost::icl::interval Intervals]]
41[def __itv_set__      [classref boost::icl::interval_set interval_set]]
42[def __itv_sets__     [classref boost::icl::interval_set interval_sets]]
43[def __itv_bset__     [classref boost::icl::interval_base_set interval_set]]
44[def __Itv_bset__     [classref boost::icl::interval_base_set Interval_set]]
45[def __itv_bsets__    [classref boost::icl::interval_base_set interval_sets]]
46[def __itv_bset_s__   [classref boost::icl::interval_base_set interval_set's]]
47[def __Itv_bsets__    [classref boost::icl::interval_base_set Interval_sets]]
48
49[def __ele_set__      [@http://www.cplusplus.com/reference/stl/set/ `std::set` ]]
50[def __ele_sets__     [@http://www.cplusplus.com/reference/stl/set/ `std::sets`]]
51[def __icl_set__      [@http://www.cplusplus.com/reference/stl/set/ `std::set` ]]
52[def __icl_sets__     [@http://www.cplusplus.com/reference/stl/set/ `std::sets`]]
53[def __std_set__      [@http://www.cplusplus.com/reference/stl/set/ `std::set` ]]
54[def __Std_set__      [@http://www.cplusplus.com/reference/stl/set/ `Std::set` ]]
55[def __std_sets__     [@http://www.cplusplus.com/reference/stl/set/ `std::sets`]]
56[def __std_map__      [@http://www.cplusplus.com/reference/stl/set/ `std::map` ]]
57[def __std_maps__     [@http://www.cplusplus.com/reference/stl/set/ `std::maps`]]
58
59[def __Itv_set__      [classref boost::icl::interval_set Interval_set]]
60[def __Itv_sets__     [classref boost::icl::interval_set Interval_sets]]
61[def __spl_itv_set__  [classref boost::icl::split_interval_set split_interval_set]]
62[def __spl_itv_sets__ [classref boost::icl::split_interval_set split_interval_sets]]
63[def __spl_itv_set_s__ [classref boost::icl::split_interval_set split_interval_set's]]
64[def __Spl_itv_set__  [classref boost::icl::split_interval_set Split_interval_set]]
65[def __sep_itv_set__  [classref boost::icl::separate_interval_set separate_interval_set]]
66[def __sep_itv_sets__ [classref boost::icl::separate_interval_set separate_interval_sets]]
67[def __Sep_itv_set__  [classref boost::icl::separate_interval_set Separate_interval_set]]
68[def __itv_map__      [classref boost::icl::interval_map interval_map]]
69[def __itv_maps__     [classref boost::icl::interval_map interval_maps]]
70[def __itv_map_s__    [classref boost::icl::interval_map interval_map's]]
71[def __itv_bmap__     [classref boost::icl::interval_base_map interval_map]]
72[def __Itv_bmap__     [classref boost::icl::interval_base_map Interval_map]]
73[def __itv_bmaps__    [classref boost::icl::interval_base_map interval_maps]]
74[def __Itv_bmaps__    [classref boost::icl::interval_base_map Interval_maps]]
75[def __itv_bmap_s__   [classref boost::icl::interval_base_map interval_map's]]
76[def __Itv_map__      [classref boost::icl::interval_map Interval_map]]
77[def __spl_itv_map__  [classref boost::icl::split_interval_map split_interval_map]]
78[def __Spl_itv_map__  [classref boost::icl::split_interval_map Split_interval_map]]
79[def __spl_itv_maps__ [classref boost::icl::split_interval_map split_interval_maps]]
80
81[def __inverse__      [classref boost::icl::inverse inverse]]
82[def __ip_cross__     [classref boost::icl::inplace_cross    inplace_cross]]
83[def __ip_dash__      [classref boost::icl::inplace_dash     inplace_dash]]
84[def __ip_plus__      [classref boost::icl::inplace_plus     inplace_plus]]
85[def __ip_minus__     [classref boost::icl::inplace_minus    inplace_minus]]
86[def __ip_star__      [classref boost::icl::inplace_star     inplace_star]]
87[def __ip_slash__     [classref boost::icl::inplace_slash    inplace_slash]]
88[def __ip_times__     [classref boost::icl::inplace_times    inplace_times]]
89[def __ip_divide__    [classref boost::icl::inplace_divide   inplace_divide]]
90[def __ip_pipe__      [classref boost::icl::inplace_pipe     inplace_pipe]]
91[def __ip_et__        [classref boost::icl::inplace_et       inplace_et]]
92[def __ip_caret__     [classref boost::icl::inplace_caret    inplace_caret]]
93[def __ip_min__       [classref boost::icl::inplace_min      inplace_min]]
94[def __ip_max__       [classref boost::icl::inplace_max      inplace_max]]
95[def __ip_identity__  [classref boost::icl::inplace_identity inplace_identity]]
96[def __ip_erasure__   [classref boost::icl::inplace_erasure  inplace_erasure]]
97[def __ip_bitset_union__      [classref boost::icl::inplace_bitset_union      inplace_bitset_union]]
98[def __ip_bitset_difference__ [classref boost::icl::inplace_bitset_difference inplace_bitset_difference]]
99
100[def __itv_bmap_add__ [memberref boost::icl::interval_base_map::add add]]
101
102
103[def __ele_map__      [classref boost::icl::map map]]
104[def __ele_maps__     [classref boost::icl::map maps]]
105[def __icl_map__      [classref boost::icl::map icl::map]]
106[def __icl_maps__     [classref boost::icl::map icl::maps]]
107[def __icl_map_s__    [classref boost::icl::map icl::map's]]
108
109[def __pabsorber__     [classref boost::icl::partial_absorber partial_absorber]]
110[def __penricher__     [classref boost::icl::partial_enricher partial_enricher]]
111[def __penrichers__    [classref boost::icl::partial_enricher partial_enrichers]]
112[def __tabsorber__     [classref boost::icl::total_absorber  total_absorber]]
113[def __tenricher__     [classref boost::icl::total_absorber  total_enricher]]
114
115[def __itv_bse_set__  [classref boost::icl::interval_base_set interval_base_set]]
116[def __e              [link element_type *e*]]
117[def __i              [link interval_type *i*]]
118[def __s              [link itl_set_type *s*]]
119[def __S              [link interval_set_types *S*]]
120[def __b              [link element_mapping_type *b*]]
121[def __p              [link interval_mapping_type *p*]]
122[def __m              [link itl_map_type *m*]]
123[def __M              [link interval_map_types *M*]]
124[def __d              [link discrete_types *d*]]
125[def __c              [link continuous_types *c*]]
126
127[def __ei             [link element_type *e*] [link interval_type *i*]]
128[def __bp             [link element_mapping_type *b*] [link interval_mapping_type *p*]]
129[def __eS             [link element_type *e*] [link interval_set_types *S*]]
130[def __es             [link element_type *e*] [link itl_set_type *s*]]
131[def __bM             [link element_mapping_type *b*] [link interval_map_types *M*]]
132[def __bm             [link element_mapping_type *b*] [link itl_map_type *m*]]
133[def __ebm            [link element_type *e*] [link element_mapping_type *b*] [link itl_map_type *m*]]
134[def __eiS            [link element_type *e*] [link interval_type *i*] [link interval_set_types *S*]]
135[def __bpM            [link element_mapping_type *b*] [link interval_mapping_type *p*] [link interval_map_types *M*]]
136[def __dc             [link discrete_types *d*] [link continuous_types *c*]]
137
138[def __S1             [link ph_def_S1 *S1*]]
139[def __S2             [link ph_def_S2 *S2*]]
140[def __S3             [link ph_def_S3 *S3*]]
141
142[def __M1             [link ph_def_M1 *M1*]]
143[def __M3             [link ph_def_M3 *M3*]]
144
145[def __eiS_phs__      [link element_type placeholders]]
146[def __eiS_Phs__      [link element_type Placeholders]]
147
148[def __eibpsSmM__     [link element_type *e*] [link interval_type *i*]
149                      [link element_mapping_type *b*] [link interval_mapping_type *p*]
150                      [link itl_set_type *s*] [link interval_set_types *S*]
151                      [link itl_map_type *m*] [link interval_map_types *M*]]
152
153[def __biLConsCopyDest__ [link boost_icl.function_reference.construct__copy__destruct ['*Construct, copy, destruct*]]]
154[def __biLContainedness__  [link boost_icl.function_reference.containedness ['*Containedness*]]]
155[def __biLcontainedness__  [link boost_icl.function_reference.containedness ['*containedness*]]]
156[def __biLEquivsOrderings__   [link boost_icl.function_reference.equivalences_and_orderings ['*Equivalences and Orderings*]]]
157[def __biLSize__         [link boost_icl.function_reference.size ['*Size*]]]
158[def __biLRange__        [link boost_icl.function_reference.range ['*Range*]]]
159[def __biLHull__         [link boost_icl.function_reference.range ['*Hull*]]]
160[def __biLSelection__    [link boost_icl.function_reference.selection ['*Selection*]]]
161[def __biLAddition__     [link boost_icl.function_reference.addition ['*Addition*]]]
162[def __biLadd__          [link boost_icl.function_reference.addition ['*add*]]]
163[def __biLSubtraction__  [link boost_icl.function_reference.subtraction ['*Subtraction*]]]
164[def __biLsubtraction__  [link boost_icl.function_reference.subtraction ['*subtraction*]]]
165[def __biLInsertion__    [link boost_icl.function_reference.insertion ['*Insertion*]]]
166[def __biLErasure__      [link boost_icl.function_reference.erasure ['*Erasure*]]]
167[def __biLerasure__      [link boost_icl.function_reference.erasure ['*erasure*]]]
168[def __biLIntersection__ [link boost_icl.function_reference.intersection ['*Intersection*]]]
169[def __biLintersection__ [link boost_icl.function_reference.intersection ['*intersection*]]]
170[def __biLSymmetricDifference__ [link boost_icl.function_reference.symmetric_difference ['*Symmetric difference*]]]
171[def __biLIteratorRelated__ [link boost_icl.function_reference.iterator_related ['*Iteration*]]]
172[def __biLElementIteration__ [link boost_icl.function_reference.element_iteration ['*Element iteration*]]]
173[def __biLStreaming__    [link boost_icl.function_reference.streaming__conversion ['*Streaming, conversion*]]]
174
175[def __biLIntervalConstruct__  [link boost_icl.function_reference.interval_construction ['*Construction*]]]
176[def __biLIntervalOrderings__  [link boost_icl.function_reference.additional_interval_orderings ['*Orderings*]]]
177[def __biLIntervalMiscellaneous__  [link boost_icl.function_reference.miscellaneous_interval_functions ['*Miscellaneous*]]]
178
179
180[/ column headers]
181[def __ch_itvs__       intervals]
182
183[def __ch_dom_t__      domain\ntype]
184[def __ch_itv_t__      interval\ntype]
185[def __ch_dom_mp_t__   domain\nmapping\ntype]
186[def __ch_itv_mp_t__   interval\nmapping\ntype]
187
188[def __ch_itv_sets__   interval\nsets]
189[def __ch_itv_maps__   interval\nmaps]
190[def __ch_itl_set__    std::set]
191[def __ch_itl_map__    icl::map]
192[def __ch_icl_set__    std::set]
193[def __ch_icl_map__    icl::map]
194
195[def __ch_ele_sets__   element\nsets]
196[def __ch_ele_maps__   element\nmaps]
197[def __ch_ele_set__    element\nset]
198[def __ch_ele_map__    element\nmap]
199
200[def __ch_dsc_itv__    discrete\n_interval]
201[def __ch_cnt_itv__    continuous\n_interval]
202[def __ch_ro_itv__     right_open\n_interval]
203[def __ch_lo_itv__     left_open\n_interval]
204[def __ch_cl_itv__     closed\n_interval]
205[def __ch_op_itv__     open\n_interval]
206
207[def __bi_conceptual__ ['*fundamental*]]
208[def __conceptual__    fundamental]
209[def __Conceptual__    Fundamental]
210
211[def __bi_iterative__  ['*segmental*]]
212[def __iterative__     segmental]
213[def __Iterative__     Segmental]
214
215[def __O1__            ['O(1)]]
216[def __aO1__           ['amortized O(1)]]
217[def __On__            ['O(n)]]
218[def __Om__            ['O(m)]]
219[def __Ok__            ['O(k)]]
220[def __Onpm__          ['O(n+m)]]
221[def __Olgn__          ['O(log n)]]
222[def __a_Olgn__        ['amortized\nO(log n)]]
223[def __Onlgn__         ['O(n log n)]]
224[def __Omlgn__         ['O(m log n)]]
225[def __Omlgnpm__       ['O(m log(n+m))]]
226
227[def __inpops__        `+= -= &= ^=`]
228[def __ainpop__        `o=`]
229
230
231[/ Cited Boost resources ]
232
233[/ Other web resources ]
234
235[/ Icons ]
236
237[def __SPACE__ [$images/space.png]]
238[def __GO_TO__ [$images/callouts/R.png]]
239
240
241[include introduction.qbk]
242[include examples.qbk]
243[include projects.qbk]
244[include concepts.qbk]
245[include semantics.qbk]
246[include interface.qbk]
247[include customization.qbk]
248[include implementation.qbk]
249[include functions.qbk]
250[include acknowledgments.qbk]
251[xinclude icldoc.xml]
252
253
25414:46 15.10.2010