638: Add some documentation to image abstractions.

https://svn.lrde.epita.fr/svn/oln/trunk/olena Index: ChangeLog from Roland Levillain <roland@lrde.epita.fr> Add some documentation to image abstractions. * oln/core/abstract/image/hybrid/classical.hh: Add documentation. * oln/core/abstract/image/dimension/hierarchy.hh, * oln/core/abstract/image/type/hierarchy.hh: Update documentation. * oln/core/abstract/image/neighborhood/hierarchy.hh: Remove dead comments. dimension/hierarchy.hh | 6 ---- hybrid/classical.hh | 56 ++++++++++++++++++++++++++++++++++++++++++++++ neighborhood/hierarchy.hh | 11 --------- type/hierarchy.hh | 6 ---- 4 files changed, 58 insertions(+), 21 deletions(-) Index: oln/core/abstract/image/hybrid/classical.hh --- oln/core/abstract/image/hybrid/classical.hh (revision 637) +++ oln/core/abstract/image/hybrid/classical.hh (working copy) @@ -38,12 +38,64 @@ # include <oln/core/abstract/image/accessibility/hierarchy.hh> +/* Image dimension hierarchy (summary). + + + /image<I>/ + ^ + | + ,----------------+-------+--------+----------------. + | | | | + /classical_1d_image1d<I>/ | /classical_3d_image<I>/ | + ^ | ^ | + | /classical_2d_image1d<I>/ | /classical_image<I>/ + | ^ | ^ + | | | | + | | | | + ,---------------------. | ,---------------------. | + | if type_of(I, grid) | | | if type_of(I, grid) | | + | == grid1d | | | == grid3d | | + `---------------------' | `---------------------' | + | | | | + | ,---------------------. | | + | | if type_of(I, grid) | | | + | | == grid2d | | | + | `---------------------' | | + | | | | + | | | | + ,-------------------------------------------------------------. + | if (deduce_type_of(I, topo, is_random_accessible) == true) | + | and (deduce_type_of(I, topo, bbox) != not_found) | + `-------------------------------------------------------------' + | | | | + o o o o + + o + | + (image `hybrid' selector) + ^ + | + image_entry<I> + ^ + | + I + (a concrete image) + + + Default case: If the image I does not meet any of these conditions, the + entry is directly plugged to abstract::image<I>. */ + + namespace oln { namespace abstract { + /*----------------------. + | Hybrid abstractions. | + `----------------------*/ + template <typename E> struct classical_image : public virtual abstract::image_having_bbox<E>, @@ -108,6 +160,10 @@ } // end of namespace oln::abstract + /*----------------. + | Hybrid switch. | + `----------------*/ + // Forward declarations. template <unsigned D> struct grid_; typedef grid_<1> grid1d; Index: oln/core/abstract/image/type/hierarchy.hh --- oln/core/abstract/image/type/hierarchy.hh (revision 637) +++ oln/core/abstract/image/type/hierarchy.hh (working copy) @@ -56,11 +56,7 @@ o | - /switch_<image_dimension_type, I>::ret/ - (image type selector) - ^ - | - /entry<abstract::image, I>/ + (image `type' selector) ^ | image_entry<I> Index: oln/core/abstract/image/dimension/hierarchy.hh --- oln/core/abstract/image/dimension/hierarchy.hh (revision 637) +++ oln/core/abstract/image/dimension/hierarchy.hh (working copy) @@ -52,11 +52,7 @@ o | - /switch_<image_hierarchy_wrt_dimension, I>::ret/ - (image dimension selector) - ^ - | - /entry<abstract::image, I>/ + (image `dimension' selector) ^ | image_entry<I> Index: oln/core/abstract/image/neighborhood/hierarchy.hh --- oln/core/abstract/image/neighborhood/hierarchy.hh (revision 637) +++ oln/core/abstract/image/neighborhood/hierarchy.hh (working copy) @@ -33,17 +33,6 @@ # include <oln/core/automatic/image/image_having_neighborhood.hh> -/* Image having neighborhood hierarchy (summary). - - - FIXME: TODO (diagram)! - - - Default case: If the neighborhood type returned by - `oln_type_of(I, neighborhood)', the entry is directly plugged to - abstract::image<I>. */ - - namespace oln {
participants (1)
-
Roland Levillain