Changeset 3261 for branches/0.12-stable/doc/concepts.doxygen
- Timestamp:
- Jun 21, 2014, 11:20:04 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/0.12-stable/doc/concepts.doxygen
r2504 r3261 37 37 \page concept_container_2d Container2D 38 38 39 \section Description39 \section concept_container_2d_description Description 40 40 41 41 \ref concept_container_2d is a <a … … 46 46 row. 47 47 48 \section Requirements48 \section concept_container_2d_requirments Requirements 49 49 50 50 A \ref concept_container_2d provides the following: 51 51 52 \subsection Types52 \subsection concept_container_2d_types Types 53 53 54 54 <table cellspacing=0 border=1> … … 62 62 <tr> 63 63 <td>Const iterator type</td> 64 <td><tt>X::const_iterator</tt></td> 64 <td><tt>X::const_iterator</tt></td> 65 65 <td> 66 66 A read-only iterator that can be used to iterate over the entire \ref … … 72 72 <tr> 73 73 <td>Const column iterator type</td> 74 <td><tt>X::const_column_iterator</tt></td> 74 <td><tt>X::const_column_iterator</tt></td> 75 75 <td> 76 76 A read-only iterator that can be used to examine the elements in one … … 80 80 <tr> 81 81 <td>Const row iterator type</td> 82 <td><tt>X::const_row_iterator</tt></td> 82 <td><tt>X::const_row_iterator</tt></td> 83 83 <td> 84 84 A read-only iterator that can be used to examine the elements in one … … 88 88 </table> 89 89 90 \subsection public_functions Public Functions90 \subsection concept_container_2d_public_functions Public Functions 91 91 92 92 <table cellspacing=0 border=1> … … 154 154 <td>Element Access</td> 155 155 <td><tt>a(size_t row, size_t column)</tt></td> 156 <td><tt>0 <= row < a.rows()</tt> and 156 <td><tt>0 <= row < a.rows()</tt> and 157 157 <tt>0 <= column < a.columns()</tt></td> 158 158 <td><tt>const_reference</tt></td> … … 161 161 </table> 162 162 163 \section Implementations163 \section concept_container_2d_implementations Implementations 164 164 165 165 Examples of concept \ref concept_container_2d include: … … 173 173 \page concept_mutable_container_2d Mutable Container2D 174 174 175 \section Description175 \section concept_mutable_container_2d_description Description 176 176 177 177 \ref concept_mutable_container_2d is a \ref concept_container_2d that 178 178 also provides non-const access to its elements. 179 179 180 \section Requirements180 \section concept_mutable_container_2d_requirments Requirements 181 181 182 182 In addition to the requirements defined in \ref concept_container_2d, 183 183 a \ref concept_mutable_container_2d also provides the following: 184 184 185 \subsection Types185 \subsection concept_mutable_container_2d_types Types 186 186 187 187 <table cellspacing=0 border=1> … … 192 192 <tr> 193 193 <td>Iterator type</td> 194 <td><tt>X::iterator</tt></td> 194 <td><tt>X::iterator</tt></td> 195 195 <td> 196 196 … … 204 204 <tr> 205 205 <td>Column iterator type</td> 206 <td><tt>X::column_iterator</tt></td> 206 <td><tt>X::column_iterator</tt></td> 207 207 <td> 208 208 A mutable iterator that can be used to modify the elements in one … … 212 212 <tr> 213 213 <td>Row iterator type</td> 214 <td><tt>X::row_iterator</tt></td> 214 <td><tt>X::row_iterator</tt></td> 215 215 <td> 216 216 A mutable iterator that can be used to modify the elements in one … … 220 220 </table> 221 221 222 \subsection public_functions Public Functions222 \subsection concept_mutable_container_2d_public_functions Public Functions 223 223 224 224 <table cellspacing=0 border=1> … … 272 272 <td>Element Access</td> 273 273 <td><tt>a(size_t row, size_t column)</tt></td> 274 <td><tt>0 <= row < a.rows()</tt> and 274 <td><tt>0 <= row < a.rows()</tt> and 275 275 <tt>0 <= column < a.columns()</tt></td> 276 276 <td><tt>reference</tt></td> … … 279 279 </table> 280 280 281 \section Implementations281 \section concept_mutable_container_2d_implementations Implementations 282 282 283 283 Examples of concept \ref concept_mutable_container_2d include: … … 290 290 \page concept_distance Distance 291 291 292 \section Description292 \section concept_distance_description Description 293 293 294 294 \ref concept_distance is a concept for classes implementing different 295 295 alternatives to calculate the distance between two points. 296 296 297 \section Requirements297 \section concept_distance_requirments Requirements 298 298 299 299 Classes modelling the concept \ref concept_distance should have a copy 300 constructor 300 constructor 301 301 302 302 \verbatim … … 320 320 have both a value and a weight. The selection between unweighted and 321 321 weighted implementations should utilize 322 theplu::yat::utility::unweighted_iterator_tag and 322 theplu::yat::utility::unweighted_iterator_tag and 323 323 theplu::yat::utility::weighted_iterator_tag. Moreover 324 324 theplu::yat::utility::weighted_if_any2 should be utilized to provide a … … 326 326 unweighted implementation when both ranges are unweighted. 327 327 328 \section Implementations328 \section concept_distance_implementations Implementations 329 329 330 330 Examples of classes modelling the concept \ref concept_distance … … 339 339 \page concept_neighbor_weighting Neighbor Weighting Method 340 340 341 \section Description341 \section concept_neighbor_weighting_description Description 342 342 343 343 \ref concept_neighbor_weighting is a concept used in connection with … … 345 345 NeighborWeighting should implement this concept. 346 346 347 \section Requirements347 \section concept_neighbor_weighting_requirements Requirements 348 348 349 349 Classes modelling the concept \ref concept_neighbor_weighting should 350 be DefaultConstructible and Assignable as well as 350 be DefaultConstructible and Assignable as well as 351 351 implement the following public function: 352 353 \verbatim 354 void operator()(const utility::VectorBase& distance, 352 353 \verbatim 354 void operator()(const utility::VectorBase& distance, 355 355 const std::vector<size_t>& k_sorted, 356 const Target& target, 356 const Target& target, 357 357 utility::VectorMutable& prediction) const 358 358 \endverbatim … … 371 371 neighbors with distance infinity do not vote. 372 372 373 \section Implementations373 \section concept_neighbor_weighting_implementations Implementations 374 374 375 375 Examples of classes modelling the concept \ref … … 384 384 \page concept_weighted_iterator Weighted Iterator 385 385 386 \section Description386 \section concept_weighted_iterator_description Description 387 387 388 388 Most functionality in yat come in two versions: one optimized for … … 396 396 Access Iterator. 397 397 398 \section Requirements398 \section concept_weighted_iterator_requirements Requirements 399 399 400 400 When implementing a new iterator that may be a \ref … … 443 443 \page concept_data_iterator Data Iterator 444 444 445 \section Description446 447 \ref concept_data_iterator is an iterator that is either: 445 \section concept_data_iterator_description Description 446 447 \ref concept_data_iterator is an iterator that is either: 448 448 449 449 - a \ref concept_weighted_iterator with value type convertible to … … 451 451 - an unweighted iterator with value type convertible to \c double. 452 452 453 \section Implementations453 \section concept_data_iterator_implementations Implementations 454 454 455 455 Examples of concept \ref concept_data_iterator include:
Note: See TracChangeset
for help on using the changeset viewer.