Olena-patches
  Threads by month 
                
            - ----- 2025 -----
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2024 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2023 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2022 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2021 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2020 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2019 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2018 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2017 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2016 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2015 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2014 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2013 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2012 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2011 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2010 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2009 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2008 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2007 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2006 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2005 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 - February
 - January
 - ----- 2004 -----
 - December
 - November
 - October
 - September
 - August
 - July
 - June
 - May
 - April
 - March
 
- 9625 discussions
 
                    
                        	* mln/convert/impl/from_double_to_value.hh,
	* mln/convert/impl/from_float_to_value.hh: Here.
---
 milena/ChangeLog                                |    7 +++++++
 milena/mln/convert/impl/from_double_to_value.hh |   10 +++++-----
 milena/mln/convert/impl/from_float_to_value.hh  |   10 +++++-----
 3 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index cb06617..d712c79 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,12 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	Update use of math::round.
+
+	* mln/convert/impl/from_double_to_value.hh,
+	* mln/convert/impl/from_float_to_value.hh: Here.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	* doc/.gitignore: exclude .dox files.
 
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
diff --git a/milena/mln/convert/impl/from_double_to_value.hh b/milena/mln/convert/impl/from_double_to_value.hh
index 6da9dd0..9b70f8e 100644
--- a/milena/mln/convert/impl/from_double_to_value.hh
+++ b/milena/mln/convert/impl/from_double_to_value.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2009, 2010, 2011, 2012 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2009, 2010, 2011, 2012, 2013 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -72,7 +72,7 @@ namespace mln
       from_double_to_value(const double&	    from,
 			   mln::value::Integer<V>& to)
       {
-	exact(to) = math::round<V>()(from);
+	exact(to) = math::round<V>(from);
       }
 
       // Case 2:
@@ -134,7 +134,7 @@ namespace mln
   from_to_(const double& from, unsigned& to)
   {
     mln_precondition(from >= 0);
-    to = math::round<unsigned>()(from);
+    to = math::round<unsigned>(from);
   }
 
   // double -> int
@@ -142,7 +142,7 @@ namespace mln
   void
   from_to_(const double& from, int& to)
   {
-    to = math::round<int>()(from);
+    to = math::round<int>(from);
   }
 
 # endif // ! MLN_INCLUDE_ONLY
diff --git a/milena/mln/convert/impl/from_float_to_value.hh b/milena/mln/convert/impl/from_float_to_value.hh
index 8ec1d74..8d87f38 100644
--- a/milena/mln/convert/impl/from_float_to_value.hh
+++ b/milena/mln/convert/impl/from_float_to_value.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010, 2011, 2012 EPITA Research and
+// Copyright (C) 2008, 2009, 2010, 2011, 2012, 2013 EPITA Research and
 // Development Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -75,7 +75,7 @@ namespace mln
       from_float_to_value(const float&	          from,
 			  mln::value::Integer<V>& to)
       {
-	exact(to) = math::round<V>()(from);
+	exact(to) = math::round<V>(from);
       }
 
       // Case 2:
@@ -137,7 +137,7 @@ namespace mln
   from_to_(const float& from, unsigned& to)
   {
     mln_precondition(from >= 0);
-    to = math::round<unsigned>()(from);
+    to = math::round<unsigned>(from);
   }
 
   // float-> int
@@ -145,7 +145,7 @@ namespace mln
   void
   from_to_(const float&	from, int& to)
   {
-    to = math::round<int>()(from);
+    to = math::round<int>(from);
   }
 
   // float-> short
@@ -153,7 +153,7 @@ namespace mln
   void
   from_to_(const float& from, short& to)
   {
-    to = math::round<short>()(from);
+    to = math::round<short>(from);
   }
 
 
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    08 Mar '13
                    
                        ---
 milena/ChangeLog      |    4 ++++
 milena/doc/.gitignore |    4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 45496e2..cb06617 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,9 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	* doc/.gitignore: exclude .dox files.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	Improve documentation in mln/canvas.
 
 	* mln/canvas/browsing/backdiagonal2d.hh,
diff --git a/milena/doc/.gitignore b/milena/doc/.gitignore
index 3c88ad7..6010cc6 100644
--- a/milena/doc/.gitignore
+++ b/milena/doc/.gitignore
@@ -8,14 +8,14 @@
 
 /figures/*.png
 
-/ref-guide.hh
+/ref-guide.dox
 /ref-guide.pdf
 /ref-guide/
 
 /technical.pdf
 /technical/
 
-/tutorial.hh
+/tutorial.dox
 /tutorial.pdf
 /tutorial/
 
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    
                        
                            
                                
                            
                            olena-2.0-380-g39cd8bb doc/Doxyfile.in: Make use of	bibliography and .css files.
                        
                        
by Guillaume Lazzara 08 Mar '13
                    by Guillaume Lazzara 08 Mar '13
08 Mar '13
                    
                        ---
 scribo/ChangeLog       |    4 ++++
 scribo/doc/Doxyfile.in |   14 +++++++-------
 2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index 7574af9..18f7ad1 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,5 +1,9 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	* doc/Doxyfile.in: Make use of bibliography and .css files.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	Improve documentation layout.
 
 	* doc/DoxygenLayout.xml: Change menu.
diff --git a/scribo/doc/Doxyfile.in b/scribo/doc/Doxyfile.in
index dd1bf26..b215839 100644
--- a/scribo/doc/Doxyfile.in
+++ b/scribo/doc/Doxyfile.in
@@ -1,4 +1,5 @@
-# Copyright (C) 2011 EPITA Research and Development Laboratory (LRDE)
+# Copyright (C) 2011, 2012 EPITA Research and Development Laboratory
+# (LRDE)
 #
 # This file is part of Olena.
 #
@@ -34,7 +35,7 @@ INLINE_INHERITED_MEMB  = YES
 FULL_PATH_NAMES        = NO
 STRIP_FROM_PATH        = @top_srcdir@/scribo
 STRIP_FROM_INC_PATH    =
-SHORT_NAMES            = YES
+SHORT_NAMES            = NO
 JAVADOC_AUTOBRIEF      = YES
 MULTILINE_CPP_IS_BRIEF = NO
 INHERIT_DOCS           = YES
@@ -77,7 +78,6 @@ GENERATE_DEPRECATEDLIST= YES
 ENABLED_SECTIONS       =
 MAX_INITIALIZER_LINES  = 30
 SHOW_USED_FILES        = NO # Disabled for light doc
-SHOW_DIRECTORIES       = NO # Disabled for light doc
 SHOW_FILES	       = NO # Disabled for light doc
 SHOW_NAMESPACES	       = YES
 FILE_VERSION_FILTER    =
@@ -124,8 +124,8 @@ INPUT_FILTER           =
 FILTER_PATTERNS        =
 FILTER_SOURCE_FILES    = NO
 INPUT_ENCODING         = ISO-8859-1
-CITE_BIB_FILES 	       = @abs_top_srcdir@/doc/doc.bib 		\
-			 @abs_top_srcdir@/doc/olena.bib
+CITE_BIB_FILES 	       = @abs_top_srcdir@/doc/doc.bib \
+		       	 @abs_top_srcdir@/doc/olena.bib
 LATEX_BIB_STYLE	       = plain
 #---------------------------------------------------------------------------
 # configuration options related to source browsing
@@ -152,9 +152,9 @@ HTML_OUTPUT            = html
 HTML_FILE_EXTENSION    = .html
 HTML_HEADER            = @top_srcdir@/doc/header.html
 HTML_FOOTER            = @top_srcdir@/doc/subdoc_footer.html
-HTML_STYLESHEET        = @top_srcdir@/doc/doxygen.css
+HTML_STYLESHEET        =
+HTML_EXTRA_STYLESHEET  = @top_srcdir@/doc/doc.css
 LAYOUT_FILE            = @top_srcdir@/scribo/doc/DoxygenLayout.xml
-HTML_ALIGN_MEMBERS     = YES
 GENERATE_HTMLHELP      = NO
 CHM_FILE               =
 HHC_LOCATION           =
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    08 Mar '13
                    
                        	* mln/canvas/browsing/backdiagonal2d.hh,
	* mln/canvas/browsing/diagonal2d.hh,
	* mln/canvas/browsing/dir_struct_elt_incr_update.hh,
	* mln/canvas/browsing/directional.hh,
	* mln/canvas/browsing/fwd.hh,
	* mln/canvas/browsing/snake_fwd.hh,
	* mln/canvas/browsing/snake_generic.hh: Here.
---
 milena/ChangeLog                                   |   12 +++++
 milena/mln/canvas/browsing/backdiagonal2d.hh       |   35 +++++++-------
 milena/mln/canvas/browsing/diagonal2d.hh           |   35 +++++++-------
 .../canvas/browsing/dir_struct_elt_incr_update.hh  |   34 +++++++-------
 milena/mln/canvas/browsing/directional.hh          |   48 ++++++++++----------
 milena/mln/canvas/browsing/fwd.hh                  |   20 ++++-----
 milena/mln/canvas/browsing/snake_fwd.hh            |   26 +++++-----
 milena/mln/canvas/browsing/snake_generic.hh        |   36 +++++++--------
 8 files changed, 126 insertions(+), 120 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 144575e..45496e2 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,17 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	Improve documentation in mln/canvas.
+
+	* mln/canvas/browsing/backdiagonal2d.hh,
+	* mln/canvas/browsing/diagonal2d.hh,
+	* mln/canvas/browsing/dir_struct_elt_incr_update.hh,
+	* mln/canvas/browsing/directional.hh,
+	* mln/canvas/browsing/fwd.hh,
+	* mln/canvas/browsing/snake_fwd.hh,
+	* mln/canvas/browsing/snake_generic.hh: Here.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	Improve look'n feel of general documentation.
 
 	* doc/Doxyfile.in: Improve documentation output.
diff --git a/milena/mln/canvas/browsing/backdiagonal2d.hh b/milena/mln/canvas/browsing/backdiagonal2d.hh
index 2648f97..57f5a35 100644
--- a/milena/mln/canvas/browsing/backdiagonal2d.hh
+++ b/milena/mln/canvas/browsing/backdiagonal2d.hh
@@ -58,26 +58,27 @@ namespace mln
        *   - final(): Will be called at the end.
        *
        * F shall features : \n
-       * { \n
-       * --- as types: \n
-       *   I; \n
-       * --- as attributes: \n
-       *   dim; \n
-       *   dir; // and test dir < dim \n
-       *   input; \n
-       *   p; \n
-       * --- as methods: \n
-       *   void init(); \n
-       *   void next(); \n
-       *   void final(); \n
-       * } \n
+       - As types:
+          + I;
+       - As attributes:
+         + dim;
+         + dir; // and test dir < dim
+         + input;
+         + p;
+       - As methods:
+         + void init();
+         + void next();
+         + void final();
+       \endverbatim
        *
        * Example : \n
        *
-       *  ------->
-       * |  4 7 9
-       * |  2 5 8
-       * |  1 3 6
+       \verbatim
+       ------->
+       |  4 7 9
+       |  2 5 8
+       |  1 3 6
+       \endverbatim
        *
        * \ingroup modcanvasbrowsing
        */
diff --git a/milena/mln/canvas/browsing/diagonal2d.hh b/milena/mln/canvas/browsing/diagonal2d.hh
index 4dc8b4f..3b91af2 100644
--- a/milena/mln/canvas/browsing/diagonal2d.hh
+++ b/milena/mln/canvas/browsing/diagonal2d.hh
@@ -57,27 +57,26 @@ namespace mln
        *   - final(): Will be called at the end.
        *
        * F shall features : \n
-       * { \n
-       * --- as types: \n
-       *   I; \n
-       * --- as attributes: \n
-       *   dim; \n
-       *   dir; // and test dir < dim \n
-       *   input; \n
-       *   p; \n
-       * --- as methods: \n
-       *   void init(); \n
-       *   void next(); \n
-       *   void final(); \n
-       * } \n
+       - As types:
+         + I;
+       - As attributes:
+         + dim;
+         + dir; // and test dir < dim
+         + input;
+         + p;
+       - As methods:
+         + void init();
+         + void next();
+         + void final();
        *
        * Example : \n
        *
-       * |  1 3 6
-       * |  2 5 8
-       * |  4 7 9
-       * L------>
-       *
+       \verbatim
+       ------->
+       |  1 3 6
+       |  2 5 8
+       |  4 7 9
+       \endverbatim
        *
        * \ingroup modcanvasbrowsing
        */
diff --git a/milena/mln/canvas/browsing/dir_struct_elt_incr_update.hh b/milena/mln/canvas/browsing/dir_struct_elt_incr_update.hh
index 2bc2fc9..719fe15 100644
--- a/milena/mln/canvas/browsing/dir_struct_elt_incr_update.hh
+++ b/milena/mln/canvas/browsing/dir_struct_elt_incr_update.hh
@@ -64,24 +64,22 @@ namespace mln
        *                      provided by the functor).
        *   - final()        : Will be called at the end.
        *
-       * F shall features : \n
-       * { \n
-       * --- as types: \n
-       *   I; \n
-       * --- as attributes: \n
-       *   dim; \n
-       *   dir; // and test dir < dim \n
-       *   input; \n
-       *   p; \n
-       *   length; \n
-       * --- as methods: \n
-       *   void init(); \n
-       *   void init_line(); \n
-       *   void add_point(q) \n
-       *   void remove_point(q) \n
-       *   void next(); \n
-       *   void final(); \n
-       * } \n
+       *  F shall features : \n
+       - As types:
+         + I
+       - As attributes:
+         + dim
+         + dir // and test dir < dim
+         + input
+         + p
+         + length
+       - As methods:
+         + void init()
+         + void init_line()
+         + void add_point(q)
+         + void remove_point(q)
+         + void next()
+         + void final()
        *
        *
        * \ingroup modcanvasbrowsing
diff --git a/milena/mln/canvas/browsing/directional.hh b/milena/mln/canvas/browsing/directional.hh
index 8caad7c..f6a9dcd 100644
--- a/milena/mln/canvas/browsing/directional.hh
+++ b/milena/mln/canvas/browsing/directional.hh
@@ -57,33 +57,33 @@ namespace mln
        *   - final(): Will be called at the end.
        *
        * F shall features : \n
-       * { \n
-       * --- as types: \n
-       *   I; \n
-       * --- as attributes: \n
-       *   dim; \n
-       *   dir; // and test dir < dim \n
-       *   input; \n
-       *   p; \n
-       * --- as methods: \n
-       *   void init(); \n
-       *   void next(); \n
-       *   void final(); \n
-       * } \n
+       - As types:
+         + I
+       - As attributes:
+         + dim
+         + dir // and test dir < dim
+         + input
+         + p
+       - As methods:
+         + void init()
+         + void next()
+         + void final()
        *
        * Example : \n
        *
-       *   1 0 0
-       *  2 0 0
-       * 3 0 0
-       *
-       *   4 0 0
-       *  5 0 0
-       * 6 0 0
-       *
-       *   7 0 0
-       *  8 0 0
-       * 9 0 0
+       \verbatim
+          1 0 0
+         2 0 0
+        3 0 0
+
+          4 0 0
+         5 0 0
+        6 0 0
+
+          7 0 0
+         8 0 0
+        9 0 0
+       \endverbatim
        *
        *
        * \ingroup modcanvasbrowsing
diff --git a/milena/mln/canvas/browsing/fwd.hh b/milena/mln/canvas/browsing/fwd.hh
index 9c2800b..7309968 100644
--- a/milena/mln/canvas/browsing/fwd.hh
+++ b/milena/mln/canvas/browsing/fwd.hh
@@ -57,17 +57,15 @@ namespace mln
        *   - final(): Will be called at the end.
        *
        * F shall feature: \n
-       * { \n
-       *   --- as typedef: \n
-       *   I; \n
-       *   --as attributes: \n
-       *   input; \n
-       *   p; \n
-       *   --- as method: \n
-       *   void init(); \n
-       *   void next(); \n
-       *   void final(); \n
-       * } \n
+       - As typedef:
+         + I
+       - As attributes:
+         + input
+         + p
+       - As method:
+         + void init()
+         + void next()
+         + void final()
        *
        * \ingroup modcanvasbrowsing
        */
diff --git a/milena/mln/canvas/browsing/snake_fwd.hh b/milena/mln/canvas/browsing/snake_fwd.hh
index fd940ce..bebde63 100644
--- a/milena/mln/canvas/browsing/snake_fwd.hh
+++ b/milena/mln/canvas/browsing/snake_fwd.hh
@@ -49,9 +49,11 @@ namespace mln
        * This canvas browse all the point of an image 'input' like
        * this :
        *
-       *     ------->
-       *     <------'
-       *     '------>
+       \verbatim
+       ------->
+       <------'
+       '------>
+       \endverbatim
        *
        * The fonctor should provide (In addition to 'input') four
        * methods :
@@ -68,16 +70,14 @@ namespace mln
        * Warning: This canvas works only on 2D.
        *
        * F shall feature: \n
-       * { \n
-       *   --- as attributes: \n
-       *   input; \n
-       *   p; \n
-       *   --- as methods: \n
-       *   void init(); \n
-       *   void down(); \n
-       *   void fwd(); \n
-       *   void bkd(); \n
-       * } \n
+       - As attributes:
+         + input
+         + p
+       - As methods:
+         + void init()
+         + void down()
+         + void fwd()
+         + void bkd()
        *
        *
        * \ingroup modcanvasbrowsing
diff --git a/milena/mln/canvas/browsing/snake_generic.hh b/milena/mln/canvas/browsing/snake_generic.hh
index 7360dbe..980fec0 100644
--- a/milena/mln/canvas/browsing/snake_generic.hh
+++ b/milena/mln/canvas/browsing/snake_generic.hh
@@ -47,29 +47,27 @@ namespace mln
       /*! \brief Multidimentional Browsing in a given-way.
        *
        * F shall feature: \n
-       * { \n
-       *   --- as attributes: \n
-       *   input; \n
-       *   p; \n
-       *   --- as methods: \n
-       *   void init(); \n
-       *   void *() moves[]; \n
-       *   dpsite dps[]; \n
-       * } \n
+       - As attributes:
+         + input
+         + p
+       - As methods:
+         + void init()
+         + void *() moves[]
+         + dpsite dps[]
        *
-       * init is called before browsing
+       * init() is called before browsing
        *
        * The snake follow dimension using the delta point site of dps.
-       *     dps[0] = delta psite following the global dimension (forward)
-       *     dps[1] = delta psite following the 2nd dimension to follow (forward).
-       *     dps[2] = delta psite following the 2nd dimension to follow (backward).
-       *     dps[3] = delta psite following the 3nd dimension to follow (forward).
-       *     dps[3] = delta psite following the 3nd dimension to follow (backward).
+       *   -  dps[0] = delta psite following the global dimension (forward)
+       *   -  dps[1] = delta psite following the 2nd dimension to follow (forward).
+       *   -  dps[2] = delta psite following the 2nd dimension to follow (backward).
+       *   -  dps[3] = delta psite following the 3nd dimension to follow (forward).
+       *   -  dps[3] = delta psite following the 3nd dimension to follow (backward).
        *
-       * moves contains pointer to f's members. These merbers will be call in each time
-       * the snake progress in the correct dimension :
-       *
-       *      moves[i] is called at each move following the delta psite dps[i]
+       * moves contains pointer to f's members. These members will be
+       * called each time the snake progress in the correct dimension:
+       * moves[i] is called at each move following the delta psite
+       * dps[i].
        *
        *
        * \ingroup modcanvasbrowsing
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    
                        
                            
                                
                            
                            olena-2.0-378-g72aefb5 Improve look'n feel of	general documentation.
                        
                        
by Guillaume Lazzara 08 Mar '13
                    by Guillaume Lazzara 08 Mar '13
08 Mar '13
                    
                        	* doc/Doxyfile.in: Improve documentation output.
	* doc/DoxygenLayout.xml: Update menu.
	* doc/Makefile.am: Rename .hh outputs to .dox.
	* doc/white-paper.tex: Fix URL.
---
 milena/ChangeLog             |   12 ++++
 milena/doc/Doxyfile.in       |  130 ++++++++++++++++++++++++++++--------------
 milena/doc/DoxygenLayout.xml |    7 +--
 milena/doc/Makefile.am       |   16 +----
 milena/doc/white-paper.tex   |    2 +-
 5 files changed, 105 insertions(+), 62 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index f7b58fa..144575e 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,15 @@
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
+	Improve look'n feel of general documentation.
+
+	* doc/Doxyfile.in: Improve documentation output.
+
+	* doc/DoxygenLayout.xml: Update menu.
+
+	* doc/Makefile.am: Rename .hh outputs to .dox.
+
+	* doc/white-paper.tex: Fix URL.
+
 2012-06-18  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
 	* doc/tutorial.tex: Add section about multifile compilation.
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index 6ebdcf4..c629d2d 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -1,4 +1,4 @@
-# Doxyfile 1.8.0-20120409
+# Doxyfile 1.8.2-20120930
 
 # This file describes the settings to be used by the documentation system
 # doxygen (www.doxygen.org) for a project.
@@ -126,7 +126,9 @@ FULL_PATH_NAMES        = NO
 # only done if one of the specified strings matches the left-hand part of
 # the path. The tag can be used to show relative paths in the file list.
 # If left blank the directory from which doxygen is run is used as the
-# path to strip.
+# path to strip. Note that you specify absolute paths here, but also
+# relative paths, which will be relative from the directory where doxygen is
+# started.
 
 STRIP_FROM_PATH        = @top_srcdir@/milena
 
@@ -137,13 +139,13 @@ STRIP_FROM_PATH        = @top_srcdir@/milena
 # definition is used. Otherwise one should specify the include paths that
 # are normally passed to the compiler using the -I flag.
 
-STRIP_FROM_INC_PATH    =
+STRIP_FROM_INC_PATH    = @top_srcdir@/milena
 
 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
 # (but less readable) file names. This can be useful if your file system
 # doesn't support long names like on DOS, Mac, or CD-ROM.
 
-SHORT_NAMES            = YES
+SHORT_NAMES            = NO
 
 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
 # will interpret the first line (until the first dot) of a JavaDoc-style
@@ -229,14 +231,15 @@ OPTIMIZE_FOR_FORTRAN   = NO
 OPTIMIZE_OUTPUT_VHDL   = NO
 
 # Doxygen selects the parser to use depending on the extension of the files it
-# parses. With this tag you can assign which parser to use for a given extension.
-# Doxygen has a built-in mapping, but you can override or extend it using this
-# tag. The format is ext=language, where ext is a file extension, and language
-# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
-# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
-# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
-# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
-# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension,
+# and language is one of the parsers supported by doxygen: IDL, Java,
+# Javascript, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,
+# C++. For instance to make doxygen treat .inc files as Fortran files (default
+# is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note
+# that for custom extensions you also need to set FILE_PATTERNS otherwise the
+# files are not read by doxygen.
 
 EXTENSION_MAPPING      =
 
@@ -249,6 +252,13 @@ EXTENSION_MAPPING      =
 
 MARKDOWN_SUPPORT       = YES
 
+# When enabled doxygen tries to link words that correspond to documented classes,
+# or namespaces to their corresponding documentation. Such a link can be
+# prevented in individual cases by by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+
+AUTOLINK_SUPPORT       = YES
+
 # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
 # to include (a tag file for) the STL sources as input, then you should
 # set this tag to YES in order to let doxygen match functions declarations and
@@ -269,10 +279,10 @@ CPP_CLI_SUPPORT        = NO
 
 SIP_SUPPORT            = NO
 
-# For Microsoft's IDL there are propget and propput attributes to indicate getter
-# and setter methods for a property. Setting this option to YES (the default)
-# will make doxygen replace the get and set methods by a property in the
-# documentation. This will only work if the methods are indeed getting or
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES (the
+# default) will make doxygen replace the get and set methods by a property in
+# the documentation. This will only work if the methods are indeed getting or
 # setting a simple type. If this is not the case, or you want to show the
 # methods anyway, you should set this option to NO.
 
@@ -362,7 +372,8 @@ EXTRACT_ALL            = NO
 
 EXTRACT_PRIVATE        = NO
 
-# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal scope will be included in the documentation.
+# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
+# scope will be included in the documentation.
 
 EXTRACT_PACKAGE        = NO
 
@@ -578,7 +589,7 @@ FILE_VERSION_FILTER    =
 
 # The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
 # by doxygen. The layout file controls the global structure of the generated
-# output files in an output format independent way. The create the layout file
+# output files in an output format independent way. To create the layout file
 # that represents doxygen's defaults, run doxygen with the -l option.
 # You can optionally specify a file name after the option, if omitted
 # DoxygenLayout.xml will be used as the name of the layout file.
@@ -591,9 +602,11 @@ LAYOUT_FILE            = @top_srcdir@/milena/doc/DoxygenLayout.xml
 # requires the bibtex tool to be installed. See also
 # http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
 # of the bibliography can be controlled using LATEX_BIB_STYLE. To use this
-# feature you need bibtex and perl available in the search path.
+# feature you need bibtex and perl available in the search path. Do not use
+# file names with spaces, bibtex cannot handle them.
 
-CITE_BIB_FILES         = @abs_top_srcdir@/doc/doc.bib
+CITE_BIB_FILES         = @abs_top_srcdir@/doc/doc.bib \
+		       	 @abs_top_srcdir@/doc/olena.bib
 
 #---------------------------------------------------------------------------
 # configuration options related to warning and progress messages
@@ -807,7 +820,7 @@ INLINE_SOURCES         = NO
 
 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
 # doxygen to hide any special comment blocks from generated source code
-# fragments. Normal C and C++ comments will always remain visible.
+# fragments. Normal C, C++ and Fortran comments will always remain visible.
 
 STRIP_CODE_COMMENTS    = YES
 
@@ -910,12 +923,22 @@ HTML_FOOTER            = @top_srcdir@/doc/subdoc_footer.html
 
 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
 # style sheet that is used by each HTML page. It can be used to
-# fine-tune the look of the HTML output. If the tag is left blank doxygen
-# will generate a default style sheet. Note that doxygen will try to copy
-# the style sheet file to the HTML output directory, so don't put your own
-# style sheet in the HTML output directory as well, or it will be erased!
+# fine-tune the look of the HTML output. If left blank doxygen will
+# generate a default style sheet. Note that it is recommended to use
+# HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this
+# tag will in the future become obsolete.
+
+HTML_STYLESHEET        =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional
+# user-defined cascading style sheet that is included after the standard
+# style sheets created by doxygen. Using this option one can overrule
+# certain style aspects. This is preferred over using HTML_STYLESHEET
+# since it does not replace the standard style sheet and is therefor more
+# robust against future updates. Doxygen will copy the style sheet file to
+# the output directory.
 
-HTML_STYLESHEET        = @top_srcdir@/doc/doxygen.css
+HTML_EXTRA_STYLESHEET  = @top_srcdir@/doc/doc.css
 
 # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
 # other source files which should be copied to the HTML output directory. Note
@@ -957,20 +980,23 @@ HTML_COLORSTYLE_GAMMA  = 80
 
 HTML_TIMESTAMP         = YES
 
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
-# files or namespaces will be aligned in HTML using tables. If set to
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS     = YES
-
 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
 # documentation will contain sections that can be hidden and shown after the
-# page has loaded. For this to work a browser that supports
-# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
-# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+# page has loaded.
 
 HTML_DYNAMIC_SECTIONS  = NO
 
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of
+# entries shown in the various tree structured indices initially; the user
+# can expand and collapse entries dynamically later on. Doxygen will expand
+# the tree to such a level that at most the specified number of entries are
+# visible (unless a fully collapsed tree already exceeds this amount).
+# So setting the number of entries 1 will produce a full collapsed tree by
+# default. 0 is a special value representing an infinite number of entries
+# and will result in a full expanded tree by default.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
 # If the GENERATE_DOCSET tag is set to YES, additional index files
 # will be generated that can be used as input for Apple's Xcode 3
 # integrated development environment, introduced with OSX 10.5 (Leopard).
@@ -989,24 +1015,24 @@ GENERATE_DOCSET        = NO
 # documentation sets from a single provider (such as a company or product suite)
 # can be grouped.
 
-DOCSET_FEEDNAME        = "Doxygen generated docs"
+DOCSET_FEEDNAME        = "Olena Platform Documentation"
 
 # When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
 # should uniquely identify the documentation set bundle. This should be a
 # reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
 # will append .docset to the name.
 
-DOCSET_BUNDLE_ID       = org.doxygen.Project
+DOCSET_BUNDLE_ID       = org.lrde.olena
 
-# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
-# the documentation publisher. This should be a reverse domain-name style
-# string, e.g. com.mycompany.MyDocSet.documentation.
+# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely
+# identify the documentation publisher. This should be a reverse domain-name
+# style string, e.g. com.mycompany.MyDocSet.documentation.
 
-DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+DOCSET_PUBLISHER_ID    = org.lrde
 
 # The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
 
-DOCSET_PUBLISHER_NAME  = Publisher
+DOCSET_PUBLISHER_NAME  = EPITA - LRDE
 
 # If the GENERATE_HTMLHELP tag is set to YES, additional index files
 # will be generated that can be used as input for tools like the
@@ -1050,7 +1076,7 @@ BINARY_TOC             = NO
 # The TOC_EXPAND flag can be set to YES to add extra items for group members
 # to the contents of the HTML help documentation and to the tree view.
 
-TOC_EXPAND             = NO
+TOC_EXPAND             = YES
 
 # If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
 # QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
@@ -1494,7 +1520,7 @@ MACRO_EXPANSION        = YES
 # then the macro expansion is limited to the macros specified with the
 # PREDEFINED and EXPAND_AS_DEFINED tags.
 
-EXPAND_ONLY_PREDEF     = YES
+EXPAND_ONLY_PREDEF     = NO
 
 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
 # pointed to by INCLUDE_PATH will be searched when a #include is found.
@@ -1528,6 +1554,7 @@ PREDEFINED             = "for_all(x)=for(x.start(); x.is_valid(); x.next())" \
                          "for_all_remaining(x)=if (! x.is_valid()) {} else while (x.next(), x.is_valid())" \
                          "mlc_unqualif(T)=typename mln::metal::unqualif<T>::ret" \
                          "mlc_equal(T1,T2)=mln::metal::equal<T1,T2>" \
+			 "mlc_bool(B)=mln::metal::bool_<( B )>" \
                          "mln_piter(T)=typename T::piter" \
                          "mln_fwd_piter(T)=typename T::fwd_piter" \
                          "mln_bkd_piter(T)=typename T::bkd_piter" \
@@ -1629,8 +1656,23 @@ PREDEFINED             = "for_all(x)=for(x.start(); x.is_valid(); x.next())" \
                          "mlc_is_a(T, M)=mln::metal::is_a<T, M>" \
                          "mlc_is_a__1comma(Tleft, Tright, M)=mln::metal::is_a<Tleft, Tright, M>" \
                          "mlc_is_not_a(T, M)=mln::metal::is_not_a< T, M >" \
+			 "mlc_is_not(T, U)=mln::metal::is_not< T, U >" \
                          "mlc_converts_to(T, U)=mln::metal::converts_to< T, U >" \
                          "mlc_not_equal(T1, T2)=mln::metal::not_equal< T1, T2 >" \
+			 "mlc_is(T, U)=mln::metal::is< T, U >" \
+			 "mlc_and(B1, B2)=mln::metal::and_< B1, B2 >" \
+			 "mln_trait_window_size(W)=typename mln::trait::window_< W >::size" \
+			 "mln_trait_window_support(W)=typename mln::trait::window_< W >::support" \
+			 "mln_trait_window_definition(W)=typename mln::trait::window_< W >::definition" \
+			 "mln_is_simple_window(W)=mln::metal::and_< mlc_is(mln_trait_window_size(W), \
+			  			  mln::trait::window::size::fixed), \
+						  mln::metal::and_< mlc_is(mln_trait_window_support(W), \
+						  mln::trait::window::support::regular), \
+						  mlc_is(mln_trait_window_definition(W), \
+						  mln::trait::window::definition::unique) > >" 		\
+			 "mln_is_fastest_IW(I, W)=mlc_and(mlc_is(mln_trait_image_speed(I),  		\
+			  	       		         trait::image::speed::fastest),			\
+							 mln_is_simple_window(W))"		\
                          "BOOST_PP_LOCAL_ITERATE()=<boost/preprocessor/iteration/detail/local.hpp>"
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
diff --git a/milena/doc/DoxygenLayout.xml b/milena/doc/DoxygenLayout.xml
index 05f050a..1aeee52 100644
--- a/milena/doc/DoxygenLayout.xml
+++ b/milena/doc/DoxygenLayout.xml
@@ -1,12 +1,9 @@
 <doxygenlayout version="1.0">
+  <!-- Generated by doxygen 1.8.2-20120930 -->
   <!-- Navigation index tabs for HTML output -->
   <navindex>
     <tab type="mainpage" visible="yes" title="Milena"/>
-    <tab type="pages" visible="no" title="" intro=""/>
-    <tab type="usergroup" url="@ref mainpage" title="Getting started">
-      <tab type="user" url="@ref quickref" title="Quick Reference Guide"/>
-      <tab type="user" url="@ref tutorial" title="Tutorial"/>
-    </tab>
+    <tab type="pages" visible="yes" title="Getting started" intro=""/>
     <tab type="modules" visible="yes" title="API Reference Manual" intro=""/>
     <tab type="namespaces" visible="no" title="">
       <tab type="namespacelist" visible="no" title="" intro=""/>
diff --git a/milena/doc/Makefile.am b/milena/doc/Makefile.am
index 4c83006..55ce81e 100644
--- a/milena/doc/Makefile.am
+++ b/milena/doc/Makefile.am
@@ -185,8 +185,8 @@ regen-split-examples-mk:
 
 REFMAN_deps =					\
   $(PNG_FIGURES)				\
-  $(srcdir)/tutorial.hh				\
-  $(srcdir)/ref-guide.hh
+  $(srcdir)/tutorial.dox			\
+  $(srcdir)/ref-guide.dox
 
 # ----------------------- #
 # User Reference Manual.  #
@@ -441,11 +441,7 @@ $(srcdir)/$(TUTORIAL): $(srcdir)/$(TUTORIAL).stamp
 DATA_html_dirs += $(TUTORIAL)
 
 # Intermediate product for the (Doxygen) User Reference Manual.
-#
-# This is not a bug: TUTORIAL_HH is meant to have a `.hh' extension,
-# since it is later parsed by Doxygen, which complains about `.html'
-# files.
-TUTORIAL_HH = $(srcdir)/tutorial.hh
+TUTORIAL_HH = $(srcdir)/tutorial.dox
 $(TUTORIAL_HH): $(srcdir)/$(TUTORIAL).stamp $(srcdir)/tools/todoxygen.sh
 # The script `todoxygen.sh' may fail and still create a (partial and
 # invalid) file, thus preventing Make from trying to generate it
@@ -558,11 +554,7 @@ $(srcdir)/$(REF_GUIDE): $(srcdir)/$(REF_GUIDE).stamp
 DATA_html_dirs += $(REF_GUIDE)
 
 # Intermediate product for the (Doxygen) User Reference Manual.
-#
-# This is not a bug: REF_GUIDE_HH is meant to have a `.hh' extension,
-# since it is later parsed by Doxygen, which complains about `.html'
-# files.
-REF_GUIDE_HH = $(srcdir)/ref-guide.hh
+REF_GUIDE_HH = $(srcdir)/ref-guide.dox
 $(REF_GUIDE_HH): $(srcdir)/$(REF_GUIDE).stamp $(srcdir)/tools/todoxygen.sh
 # The script `todoxygen.sh' may fail and still create a (partial and
 # invalid) file, thus preventing Make from trying to generate it
diff --git a/milena/doc/white-paper.tex b/milena/doc/white-paper.tex
index 0120ad6..a4e9157 100644
--- a/milena/doc/white-paper.tex
+++ b/milena/doc/white-paper.tex
@@ -171,7 +171,7 @@ Olena's \textbf{official website}: \url{http://olena.lrde.epita.fr}
 Olena's \textbf{Trac}: \url{http://trac.lrde.org/olena}
 
 Milena's \textbf{documentation}:
-\url{http://www.lrde.epita.fr/dload/doc/milena/user-refman-html}
+\url{http://www.lrde.epita.fr/dload/olena/latest/doc/milena/user-refman-html}
 
 %
 \medskip
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    
                        
                            
                                
                            
                            olena-2.0-377-gfe47061 Improve look'n feel of	general documentation.
                        
                        
by Guillaume Lazzara 08 Mar '13
                    by Guillaume Lazzara 08 Mar '13
08 Mar '13
                    
                        	* doc/Doxyfile.in: Make use of bibliography.
	* doc/bibliography.dox: Add references.
	* doc/DoxygenLayout.xml,
	* doc/doc.css,
	* doc/doxygen.css,
	* doc/footer.html,
	* doc/header.html,
	* doc/subdoc_footer.html: Improve rendering.
---
 ChangeLog              |   15 ++
 doc/Doxyfile.in        |   14 +-
 doc/DoxygenLayout.xml  |    1 -
 doc/bibliography.dox   |    8 +-
 doc/doc.css            |   27 ++
 doc/doxygen.css        |  644 +++++++++++++++++++++++++++++++++++-------------
 doc/footer.html        |    2 +-
 doc/header.html        |   19 +-
 doc/subdoc_footer.html |   16 +-
 9 files changed, 562 insertions(+), 184 deletions(-)
 create mode 100644 doc/doc.css
diff --git a/ChangeLog b/ChangeLog
index f3d3895..5cc8a6c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
+	Improve look'n feel of general documentation.
+
+	* doc/Doxyfile.in: Make use of bibliography.
+
+	* doc/bibliography.dox: Add references.
+
+	* doc/DoxygenLayout.xml,
+	* doc/doc.css,
+	* doc/doxygen.css,
+	* doc/footer.html,
+	* doc/header.html,
+	* doc/subdoc_footer.html: Improve rendering.
+
 2012-02-28  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
 	Fix links and location of documentation.
diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in
index e922c9a..9e10f56 100644
--- a/doc/Doxyfile.in
+++ b/doc/Doxyfile.in
@@ -1,4 +1,5 @@
-# Copyright (C) 2011 EPITA Research and Development Laboratory (LRDE)
+# Copyright (C) 2011, 2012 EPITA Research and Development Laboratory
+# (LRDE)
 #
 # This file is part of Olena.
 #
@@ -34,7 +35,7 @@ INLINE_INHERITED_MEMB  = YES
 FULL_PATH_NAMES        = NO
 STRIP_FROM_PATH        = @top_srcdir@
 STRIP_FROM_INC_PATH    =
-SHORT_NAMES            = YES
+SHORT_NAMES            = NO
 JAVADOC_AUTOBRIEF      = YES
 MULTILINE_CPP_IS_BRIEF = NO
 INHERIT_DOCS           = YES
@@ -74,7 +75,6 @@ GENERATE_DEPRECATEDLIST= NO
 ENABLED_SECTIONS       =
 MAX_INITIALIZER_LINES  = 30
 SHOW_USED_FILES        = NO # Disabled for light doc
-SHOW_DIRECTORIES       = NO # Disabled for light doc
 SHOW_FILES	       = NO # Disabled for light doc
 SHOW_NAMESPACES	       = YES
 FILE_VERSION_FILTER    =
@@ -112,7 +112,8 @@ INPUT_FILTER           =
 FILTER_PATTERNS        =
 FILTER_SOURCE_FILES    = NO
 INPUT_ENCODING         = ISO-8859-1
-CITE_BIB_FILES 	       = @abs_top_srcdir@/doc/olena.bib
+CITE_BIB_FILES 	       = @abs_top_srcdir@/doc/doc.bib \
+		       	 @abs_top_srcdir@/doc/olena.bib
 #---------------------------------------------------------------------------
 # configuration options related to source browsing
 #---------------------------------------------------------------------------
@@ -139,8 +140,8 @@ HTML_FILE_EXTENSION    = .html
 HTML_HEADER            = @top_srcdir@/doc/header.html
 HTML_FOOTER            = @top_srcdir@/doc/footer.html
 HTML_STYLESHEET        = @top_srcdir@/doc/doxygen.css
+HTML_EXTRA_STYLESHEET  = @top_srcdir@/doc/doc.css
 LAYOUT_FILE            = @top_srcdir@/doc/DoxygenLayout.xml
-HTML_ALIGN_MEMBERS     = YES
 GENERATE_HTMLHELP      = NO
 CHM_FILE               =
 HHC_LOCATION           =
@@ -353,7 +354,8 @@ DOT_CLEANUP            = YES
 #---------------------------------------------------------------------------
 # Configuration::additions related to the search engine
 #---------------------------------------------------------------------------
-SEARCHENGINE           = NO
+SEARCHENGINE           = YES
+SERVER_BASED_SEARCH    = NO
 
 
 # Local Variables:
diff --git a/doc/DoxygenLayout.xml b/doc/DoxygenLayout.xml
index 0dbf0d7..5feeee9 100644
--- a/doc/DoxygenLayout.xml
+++ b/doc/DoxygenLayout.xml
@@ -18,7 +18,6 @@
       <tab type="files" visible="no" title=""/>
       <tab type="globals" visible="no" title=""/>
     </tab>
-    <tab type="dirs" visible="no" title=""/>
     <tab type="examples" visible="no" title=""/>
   </navindex>
 
diff --git a/doc/bibliography.dox b/doc/bibliography.dox
index 59518cb..49067f6 100644
--- a/doc/bibliography.dox
+++ b/doc/bibliography.dox
@@ -9,9 +9,9 @@
 	\li \ref olnpublisposters
 	\li \ref olnpublistechreps
 
-    \li \ref{burrus.03.mpool}
-    \li \ref{darbon.02.ismm}
-    \li \ref{darbon.04.ecoopphd}
+    \li \cite burrus.03.mpool
+    \li \cite darbon.02.ismm
+    \li \cite darbon.04.ecoopphd
     \li \cite duret.00.gcse
     \li \cite geraud.00.icpr
     \li \cite geraud.01.ai
@@ -34,4 +34,6 @@
 
     \subsection olnpublistechreps Student Technical Reports
 
+    \cite sauvola00pr
+    \cite besl.1992.pami
  */
diff --git a/doc/doc.css b/doc/doc.css
new file mode 100644
index 0000000..72a4b19
--- /dev/null
+++ b/doc/doc.css
@@ -0,0 +1,27 @@
+table.itable th
+{
+    font-size: 17px;
+
+}
+
+table.itable li
+{
+    font-size: 16px;
+}
+
+table.itable td
+{
+    font-size: 17px;
+    vertical-align: top;
+}
+
+address.div
+{
+    font-size: 10px;
+}
+
+table.itable
+{
+    width:850px;
+    table-layout:fixed;
+}
diff --git a/doc/doxygen.css b/doc/doxygen.css
index 83f13a4..dc14a84 100644
--- a/doc/doxygen.css
+++ b/doc/doxygen.css
@@ -1,13 +1,12 @@
-/* The standard CSS for doxygen */
+/* The standard CSS for doxygen 1.8.2-20120930 */
 
 body, table, div, p, dl {
-	font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
-	font-size: 12px;
+	font: 400 14px/19px Roboto,sans-serif;
 }
 
 /* @group Heading Levels */
 
-h1 {
+h1.groupheader {
 	font-size: 150%;
 }
 
@@ -17,14 +16,34 @@ h1 {
 	margin: 10px 2px;
 }
 
-h2 {
-	font-size: 120%;
+h2.groupheader {
+	border-bottom: 1px solid #879ECB;
+	color: #354C7B;
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
 }
 
-h3 {
+h3.groupheader {
 	font-size: 100%;
 }
 
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px cyan;
+}
+
 dt {
 	font-weight: bold;
 }
@@ -72,8 +91,6 @@ div.qindex, div.navtab{
 	background-color: #EBEFF6;
 	border: 1px solid #A3B4D7;
 	text-align: center;
-	margin: 2px;
-	padding: 2px;
 }
 
 div.qindex, div.navpath {
@@ -123,12 +140,12 @@ a.el {
 a.elRef {
 }
 
-a.code {
-	color: #4665A2;
+a.code, a.code:visited {
+	color: #4665A2; 
 }
 
-a.codeRef {
-	color: #4665A2;
+a.codeRef, a.codeRef:visited {
+	color: #4665A2; 
 }
 
 /* @end */
@@ -137,20 +154,72 @@ dl.el {
 	margin-left: -1cm;
 }
 
-.fragment {
+pre.fragment {
+        border: 1px solid #C4CFE5;
+        background-color: #FBFCFD;
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+        overflow: auto;
+        word-wrap: break-word;
+        font-size:  9pt;
+        line-height: 125%;
+        font-family: monospace, fixed;
+        font-size: 105%;
+}
+
+div.fragment {
+        padding: 4px;
+        margin: 4px;
+	background-color: #FBFCFD;
+	border: 1px solid #C4CFE5;
+}
+
+div.line {
 	font-family: monospace, fixed;
-	font-size: 105%;
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.0;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
 }
 
-pre.fragment {
-	border: 1px solid #C4CFE5;
-	background-color: #FBFCFD;
-	padding: 4px 6px;
-	margin: 4px 8px 4px 2px;
-	overflow: auto;
-	word-wrap: break-word;
-	font-size:  9pt;
-	line-height: 125%;
+div.line.glow {
+	background-color: cyan;
+	box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+	padding-right: 4px;
+	text-align: right;
+	border-right: 2px solid #0F0;
+	background-color: #E8E8E8;
+        white-space: pre;
+}
+span.lineno a {
+	background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+	background-color: #C8C8C8;
 }
 
 div.ah {
@@ -183,15 +252,15 @@ div.groupText {
 }
 
 body {
-	background: white;
+	background-color: white;
 	color: black;
         margin: 0;
 }
 
 div.contents {
 	margin-top: 10px;
-	margin-left: 10px;
-	margin-right: 5px;
+	margin-left: 12px;
+	margin-right: 8px;
 }
 
 td.indexkey {
@@ -200,6 +269,8 @@ td.indexkey {
 	border: 1px solid #C4CFE5;
 	margin: 2px 0px 2px 0;
 	padding: 2px 10px;
+        white-space: nowrap;
+        vertical-align: top;
 }
 
 td.indexvalue {
@@ -218,7 +289,7 @@ p.formulaDsp {
 }
 
 img.formulaDsp {
-
+	
 }
 
 img.formulaInl {
@@ -276,20 +347,27 @@ span.charliteral {
 	color: #008080
 }
 
-span.vhdldigit {
-	color: #ff00ff
+span.vhdldigit { 
+	color: #ff00ff 
 }
 
-span.vhdlchar {
-	color: #000000
+span.vhdlchar { 
+	color: #000000 
 }
 
-span.vhdlkeyword {
-	color: #700070
+span.vhdlkeyword { 
+	color: #700070 
 }
 
-span.vhdllogic {
-	color: #ff0000
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+blockquote {
+        background-color: #F7F8FB;
+        border-left: 2px solid #9CAFD4;
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
 }
 
 /* @end */
@@ -345,6 +423,24 @@ table.memberdecls {
 	padding: 0px;
 }
 
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: cyan;
+	box-shadow: 0 0 15px cyan;
+}
+
 .mdescLeft, .mdescRight,
 .memItemLeft, .memItemRight,
 .memTemplItemLeft, .memTemplItemRight, .memTemplParams {
@@ -359,8 +455,11 @@ table.memberdecls {
 	color: #555;
 }
 
-.memItemLeft, .memItemRight, .memTemplParams {
-	border-top: 1px solid #C4CFE5;
+.memSeparator {
+        border-bottom: 1px solid #DEE4F0;
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
 }
 
 .memItemLeft, .memTemplItemLeft {
@@ -374,6 +473,7 @@ table.memberdecls {
 .memTemplParams {
 	color: #4665A2;
         white-space: nowrap;
+	font-size: 80%;
 }
 
 /* @end */
@@ -406,15 +506,29 @@ table.memberdecls {
 	padding: 0;
 	margin-bottom: 10px;
 	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px cyan;
 }
 
 .memname {
-        white-space: nowrap;
         font-weight: bold;
         margin-left: 6px;
 }
 
-.memproto {
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
         border-top: 1px solid #A8B8D9;
         border-left: 1px solid #A8B8D9;
         border-right: 1px solid #A8B8D9;
@@ -422,45 +536,55 @@ table.memberdecls {
         color: #253555;
         font-weight: bold;
         text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
         /* opera specific markup */
         box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-        border-top-right-radius: 8px;
-        border-top-left-radius: 8px;
+        border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
         /* firefox specific markup */
         -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
-        -moz-border-radius-topright: 8px;
-        -moz-border-radius-topleft: 8px;
+        -moz-border-radius-topright: 4px;
+        -moz-border-radius-topleft: 4px;
         /* webkit specific markup */
         -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-        -webkit-border-top-right-radius: 8px;
-        -webkit-border-top-left-radius: 8px;
-        background-image:url('nav_f.png');
-        background-repeat:repeat-x;
-        background-color: #E2E8F2;
+        -webkit-border-top-right-radius: 4px;
+        -webkit-border-top-left-radius: 4px;
 
 }
 
-.memdoc {
-        border-bottom: 1px solid #A8B8D9;
-        border-left: 1px solid #A8B8D9;
-        border-right: 1px solid #A8B8D9;
-        padding: 2px 5px;
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 6px 10px 2px 10px;
         background-color: #FBFCFD;
         border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: #FFFFFF;
         /* opera specific markup */
-        border-bottom-left-radius: 8px;
-        border-bottom-right-radius: 8px;
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
         box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
         /* firefox specific markup */
-        -moz-border-radius-bottomleft: 8px;
-        -moz-border-radius-bottomright: 8px;
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
         -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
-        background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7);
         /* webkit specific markup */
-        -webkit-border-bottom-left-radius: 8px;
-        -webkit-border-bottom-right-radius: 8px;
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
         -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-        background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7));
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
 }
 
 .paramkey {
@@ -478,125 +602,140 @@ table.memberdecls {
 .paramname em {
 	font-style: normal;
 }
+.paramname code {
+        line-height: 14px;
+}
 
 .params, .retval, .exception, .tparams {
-        border-spacing: 6px 2px;
-}
+        margin-left: 0px;
+        padding-left: 0px;
+}       
 
 .params .paramname, .retval .paramname {
         font-weight: bold;
         vertical-align: top;
 }
-
+        
 .params .paramtype {
         font-style: italic;
         vertical-align: top;
-}
-
+}       
+        
 .params .paramdir {
         font-family: "courier new",courier,monospace;
         vertical-align: top;
 }
 
+table.mlabels {
+	border-spacing: 0px;
+}
 
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
 
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
 
-/* @end */
-
-/* @group Directory (tree) */
-
-/* for the tree view */
+span.mlabels {
+        margin-left: 8px;
+}
 
-.ftvtree {
-	font-family: sans-serif;
-	margin: 0px;
+span.mlabel {
+        background-color: #728DC1;
+        border-top:1px solid #5373B4;
+        border-left:1px solid #5373B4;
+        border-right:1px solid #C4CFE5;
+        border-bottom:1px solid #C4CFE5;
+	text-shadow: none;
+	color: white;
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
 }
 
-/* these are for tree view when used as main index */
 
-.directory {
-	font-size: 9pt;
-	font-weight: bold;
-	margin: 5px;
-}
 
-.directory h3 {
-	margin: 0px;
-	margin-top: 1em;
-	font-size: 11pt;
-}
+/* @end */
 
-/*
-The following two styles can be used to replace the root node title
-with an image of your choice.  Simply uncomment the next two styles,
-specify the name of your image and be sure to set 'height' to the
-proper pixel height of your image.
-*/
+/* these are for tree view when not used as main index */
 
-/*
-.directory h3.swap {
-	height: 61px;
-	background-repeat: no-repeat;
-	background-image: url("yourimage.gif");
-}
-.directory h3.swap span {
-	display: none;
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        width: 100%;
 }
-*/
 
-.directory > h3 {
-	margin-top: 0;
+.directory table {
+        border-collapse:collapse;
 }
 
-.directory p {
-	margin: 0px;
-	white-space: nowrap;
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
 }
 
-.directory div {
-	display: none;
-	margin: 0px;
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
 }
 
-.directory img {
-	vertical-align: -30%;
+.directory td.entry a {
+        outline:none;
 }
 
-/* these are for tree view when not used as main index */
-
-.directory-alt {
-	font-size: 100%;
-	font-weight: bold;
+.directory td.entry a img {
+        border: none;
 }
 
-.directory-alt h3 {
-	margin: 0px;
-	margin-top: 1em;
-	font-size: 11pt;
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
 }
 
-.directory-alt > h3 {
-	margin-top: 0;
+.directory tr.even {
+	padding-left: 6px;
+	background-color: #F7F8FB;
 }
 
-.directory-alt p {
-	margin: 0px;
-	white-space: nowrap;
+.directory img {
+	vertical-align: -30%;
 }
 
-.directory-alt div {
-	display: none;
-	margin: 0px;
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
 }
 
-.directory-alt img {
-	vertical-align: -30%;
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: #3D578C;
 }
 
-/* @end */
-
 div.dynheader {
         margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
 }
 
 address {
@@ -606,9 +745,8 @@ address {
 
 table.doxtable {
 	border-collapse:collapse;
-	/* new */
-	width:80%;
-	table-layout:fixed;
+        margin-top: 4px;
+        margin-bottom: 4px;
 }
 
 table.doxtable td, table.doxtable th {
@@ -622,11 +760,68 @@ table.doxtable th {
 	font-size: 110%;
 	padding-bottom: 4px;
 	padding-top: 5px;
+}
+
+table.fieldtable {
+        width: 100%;
+        margin-bottom: 10px;
+        border: 1px solid #A8B8D9;
+        border-spacing: 0px;
+        -moz-border-radius: 4px;
+        -webkit-border-radius: 4px;
+        border-radius: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
 
-	/* Changed */
-	text-align:center;
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
 }
 
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+        white-space: nowrap;
+        border-right: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        vertical-align: top;
+}
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid #A8B8D9;
+        width: 100%;
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 2px;
+}       
+        
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        font-size: 90%;
+        color: #253555;
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        -moz-border-radius-topleft: 4px;
+        -moz-border-radius-topright: 4px;
+        -webkit-border-top-left-radius: 4px;
+        -webkit-border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid #A8B8D9;
+}
+
+
 .tabsearch {
 	top: 0px;
 	left: 10px;
@@ -642,6 +837,7 @@ table.doxtable th {
 	font-size: 11px;
 	background-image:url('tab_b.png');
 	background-repeat:repeat-x;
+	background-position: 0 -5px;
 	height:30px;
 	line-height:30px;
 	color:#8AA0CC;
@@ -669,6 +865,10 @@ table.doxtable th {
 	display:block;
 	text-decoration: none;
 	outline: none;
+	color: #283A5D;
+	font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+	text-decoration: none;        
 }
 
 .navpath li.navelem a:hover
@@ -697,7 +897,7 @@ div.summary
 	padding-right: 5px;
 	width: 50%;
 	text-align: right;
-}
+}       
 
 div.summary a
 {
@@ -707,7 +907,6 @@ div.summary a
 div.ingroups
 {
 	font-size: 8pt;
-	padding-left: 5px;
 	width: 50%;
 	text-align: left;
 }
@@ -736,73 +935,96 @@ dl
         padding: 0 0 0 10px;
 }
 
-dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
 {
-        border-left:4px solid;
-        padding: 0 0 0 6px;
+	margin-left: 0px;
+	padding-left: 0px;
 }
 
 dl.note
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #D0C000;
 }
 
 dl.warning, dl.attention
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #FF0000;
 }
 
 dl.pre, dl.post, dl.invariant
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #00D000;
 }
 
 dl.deprecated
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #505050;
 }
 
 dl.todo
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #00C0E0;
 }
 
 dl.test
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #3030E0;
 }
 
 dl.bug
 {
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
         border-color: #C08050;
 }
 
+dl.section dd {
+	margin-bottom: 6px;
+}
+
+
 #projectlogo
 {
 	text-align: center;
 	vertical-align: bottom;
 	border-collapse: separate;
 }
-
+ 
 #projectlogo img
-{
+{ 
 	border: 0px none;
 }
-
+ 
 #projectname
 {
-	/* Changed */
-	font: 32px Tahoma, Arial,sans-serif;
-
+	font: 300% Tahoma, Arial,sans-serif;
 	margin: 0px;
 	padding: 2px 0px;
 }
-
+    
 #projectbrief
 {
-	/* Changed */
-	font: 13px Tahoma, Arial,sans-serif;
-
+	font: 120% Tahoma, Arial,sans-serif;
 	margin: 0px;
 	padding: 0px;
 }
@@ -842,27 +1064,117 @@ dl.bug
 	font-weight: bold;
 }
 
+div.zoom
+{
+	border: 1px solid #90A5CE;
+}
 
-/* ===> NEW */
+dl.citelist {
+        margin-bottom:50px;
+}
 
-table.itable th
-{
-    font-size: 17px;
+dl.citelist dt {
+        color:#334975;
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+}
 
+dl.citelist dd {
+        margin:2px 0;
+        padding:5px 0;
 }
 
-table.itable li
-{
-    font-size: 16px;
+div.toc {
+        padding: 14px 25px;
+        background-color: #F4F6FA;
+        border: 1px solid #D8DFEE;
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 20px 10px 10px;
+        width: 200px;
 }
 
-table.itable td
-{
-    font-size: 17px;
-    vertical-align: top;
+div.toc li {
+        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+	color: #4665A2;
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}       
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.level2 {
+        margin-left: 15px;
+}
+
+div.toc li.level3 {
+        margin-left: 30px;
+}
+
+div.toc li.level4 {
+        margin-left: 45px;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: gray;
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
 }
 
-address.div
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+@media print
 {
-    font-size: 10px;
-}
\ No newline at end of file
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
diff --git a/doc/footer.html b/doc/footer.html
index e09f03e..e3881df 100644
--- a/doc/footer.html
+++ b/doc/footer.html
@@ -1,6 +1,6 @@
 <hr class="footer"/><address class="footer"><small>
 <div style="position:absolute;text-align:left;">Copyright (C) 2011 EPITA Research and Development Laboratory (LRDE)</div>
-<div align='right'>Olena 2.0</div>
+<div align='right'>$projectname $projectnumber</div>
 </small></address>
 </body>
 </html>
diff --git a/doc/header.html b/doc/header.html
index 6c5cf96..0d1b1cc 100644
--- a/doc/header.html
+++ b/doc/header.html
@@ -1,28 +1,36 @@
+<!-- HTML header for doxygen 1.8.2-20120930-->
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<title>$title</title>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen $doxygenversion"/>
+<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
+<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
 <link href="$relpath$tabs.css" rel="stylesheet" type="text/css"/>
-<link href="$relpath$doxygen.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="$relpath$jquery.js"></script>
+<script type="text/javascript" src="$relpath$dynsections.js"></script>
 $treeview
 $search
 $mathjax
+<link href="$relpath$$stylesheet" rel="stylesheet" type="text/css" />
+$extrastylesheet
 </head>
 <body>
-<div id="top"><!-- do not remove this div! -->
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+
 <!--BEGIN TITLEAREA-->
 <div id="titlearea">
 <table cellspacing="0" cellpadding="0">
  <tbody>
  <tr style="height: 56px;">
   <!--BEGIN PROJECT_LOGO-->
-  <td id="projectlogo"><a href="@relcommondocpath@$relpath$index.html"><img alt="Logo" src="$relpath$$projectlogo"></a></td>
+  <td id="projectlogo"><a href="@relcommondocpath@$relpath$index.html"><img alt="Logo" src="$relpath$$projectlogo"/></a></td>
   <!--END PROJECT_LOGO-->
   <!--BEGIN PROJECT_NAME-->
   <td style="padding-left: 0.5em;">
    <div id="projectname">Olena
-   <!--BEGIN PROJECT_NUMBER--><!--  <span id="projectnumber">$projectnumber</span> --><!--END PROJECT_NUMBER-->
+   <!--BEGIN PROJECT_NUMBER--> <span id="projectnumber">$projectnumber</span><!--END PROJECT_NUMBER-->
    </div>
    <!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
   </td>
@@ -44,3 +52,4 @@ $mathjax
 </table>
 </div>
 <!--END TITLEAREA-->
+<!-- end header part -->
diff --git a/doc/subdoc_footer.html b/doc/subdoc_footer.html
index 3548c1e..9fd0598 100644
--- a/doc/subdoc_footer.html
+++ b/doc/subdoc_footer.html
@@ -1,6 +1,18 @@
+<!-- HTML footer for doxygen 1.8.2-20120930-->
+<!-- start footer part -->
+<!--BEGIN GENERATE_TREEVIEW-->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    $navpath
+    <li class="footer">
+Copyright (C) 2012 EPITA Research and Development Laboratory (LRDE)</li>
+  </ul>
+</div>
+<!--END GENERATE_TREEVIEW-->
+<!--BEGIN !GENERATE_TREEVIEW-->
 <hr class="footer"/><address class="footer"><small>
-<span style="position:absolute;bottom:0;left:5px;text-align:left;">Copyright (C) 2011 EPITA Research and Development Laboratory (LRDE)</span>
-<span style="position:absolute;bottom:0;right:5px;text-align:right;">Olena 2.0</span>
+Copyright (C) 2012 EPITA Research and Development Laboratory (LRDE)
 </small></address>
+<!--END !GENERATE_TREEVIEW-->
 </body>
 </html>
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    
                    
                        	* doc/examples/box2d-bbox.cc,
	* doc/examples/split/box2d-bbox-1.cc.raw: Here.
---
 milena/ChangeLog                              |    9 ++++++++-
 milena/doc/examples/box2d-bbox.cc             |    2 +-
 milena/doc/examples/split/box2d-bbox-1.cc.raw |    2 +-
 3 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 1b9c871..a4fc293 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,12 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	Fix a typo.
+
+	* doc/examples/box2d-bbox.cc,
+	* doc/examples/split/box2d-bbox-1.cc.raw: Here.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	Add an illustration in Milena documentation.
 
 	* doc/Makefile.am: Add new png figures.
@@ -10,7 +17,7 @@
 	* doc/img/src/ydoc.cfg,
 	* doc/img/src/ydoc.cls: New.
 
-	* doc/ref-guide.tex
+	* doc/ref-guide.tex: Include tikz output.
 
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
diff --git a/milena/doc/examples/box2d-bbox.cc b/milena/doc/examples/box2d-bbox.cc
index 7707514..5e03b49 100644
--- a/milena/doc/examples/box2d-bbox.cc
+++ b/milena/doc/examples/box2d-bbox.cc
@@ -6,7 +6,7 @@ int main()
 // \{
   box2d b(2,3);
 
-  // The bbox can be retrived in constant time.
+  // The bbox can be retrieved in constant time.
   std::cout << b.bbox() << std::endl;
 
   // nsites can be retrieved in constant time.
diff --git a/milena/doc/examples/split/box2d-bbox-1.cc.raw b/milena/doc/examples/split/box2d-bbox-1.cc.raw
index e6b3e0c..d785d13 100644
--- a/milena/doc/examples/split/box2d-bbox-1.cc.raw
+++ b/milena/doc/examples/split/box2d-bbox-1.cc.raw
@@ -1,6 +1,6 @@
   box2d b(2,3);
 
-  // The bbox can be retrived in constant time.
+  // The bbox can be retrieved in constant time.
   std::cout << b.bbox() << std::endl;
 
   // nsites can be retrieved in constant time.
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    08 Mar '13
                    
                        	* doc/Makefile.am: Add new png figures.
	* doc/img/src/2dgrid.tikz,
	* doc/img/src/standalone.cfg,
	* doc/img/src/standalone.cls,
	* doc/img/src/ydoc.cfg,
	* doc/img/src/ydoc.cls: New.
	* doc/ref-guide.tex: Include tikz output.
---
 milena/ChangeLog                  |   14 +
 milena/doc/Makefile.am            |    6 +-
 milena/doc/img/src/2dgrid.tikz    |   16 +
 milena/doc/img/src/standalone.cfg |   34 ++
 milena/doc/img/src/standalone.cls |  837 +++++++++++++++++++++++++++++++++++++
 milena/doc/img/src/ydoc.cfg       |   40 ++
 milena/doc/img/src/ydoc.cls       |   21 +
 milena/doc/ref-guide.tex          |   21 +-
 8 files changed, 970 insertions(+), 19 deletions(-)
 create mode 100644 milena/doc/img/src/2dgrid.tikz
 create mode 100644 milena/doc/img/src/standalone.cfg
 create mode 100644 milena/doc/img/src/standalone.cls
 create mode 100644 milena/doc/img/src/ydoc.cfg
 create mode 100644 milena/doc/img/src/ydoc.cls
diff --git a/milena/ChangeLog b/milena/ChangeLog
index c59a08e..1b9c871 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,19 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	Add an illustration in Milena documentation.
+
+	* doc/Makefile.am: Add new png figures.
+
+	* doc/img/src/2dgrid.tikz,
+	* doc/img/src/standalone.cfg,
+	* doc/img/src/standalone.cls,
+	* doc/img/src/ydoc.cfg,
+	* doc/img/src/ydoc.cls: New.
+
+	* doc/ref-guide.tex
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	More improvements in documentation layout.
 
 	* doc/Doxyfile.in: Do not show namespaces in names.
diff --git a/milena/doc/Makefile.am b/milena/doc/Makefile.am
index 1761308..4c83006 100644
--- a/milena/doc/Makefile.am
+++ b/milena/doc/Makefile.am
@@ -83,7 +83,9 @@ SUFFIXES += .pbm .pgm .ppm .png
 PNG_FIGURES =					\
   $(PBM_FIGURES:.pbm=.png)			\
   $(PGM_FIGURES:.pgm=.png)			\
-  $(PPM_FIGURES:.ppm=.png)
+  $(PPM_FIGURES:.ppm=.png)			\
+  $(srcdir)/img/genericity.png 			\
+  $(srcdir)/img/2dgrid.png
 EXTRA_DIST += $(PNG_FIGURES)
 MAINTAINERCLEANFILES += $(PNG_FIGURES)
 
@@ -181,7 +183,7 @@ regen-split-examples-mk:
 ## Doxygen documentation.  ##
 ## ----------------------- ##
 
-REFMAN_deps =				\
+REFMAN_deps =					\
   $(PNG_FIGURES)				\
   $(srcdir)/tutorial.hh				\
   $(srcdir)/ref-guide.hh
diff --git a/milena/doc/img/src/2dgrid.tikz b/milena/doc/img/src/2dgrid.tikz
new file mode 100644
index 0000000..fa2988c
--- /dev/null
+++ b/milena/doc/img/src/2dgrid.tikz
@@ -0,0 +1,16 @@
+\documentclass[tikz]{standalone}
+\begin{document}
+\begin{tikzpicture}[scale=1]
+
+\draw[blue!20, thick] (-2, -2) grid [right=0.5cm,above=0.5cm,step=1cm] (3, 3);
+\draw[line width=1mm] (-1, -1) grid [step=1cm] (3, 3);
+\draw[black,line width=2mm,<-] (0, -2) node {y} -- (0, 4);
+\draw[black,line width=2mm,->] (-2, 3) node {x} -- (4, 3);
+
+\foreach \x in {-0.5, 0.5, 1.5, 2.5}
+  \foreach \y in {-0.5, 0.5, 1.5, 2.5}
+    \node at (\x, \y) [fill=blue!30] {};
+
+\draw[black] (2.5, 1.5) -- (4, 2) node {Point2d(1, 2)};
+\end{tikzpicture}
+\end{document}
\ No newline at end of file
diff --git a/milena/doc/img/src/standalone.cfg b/milena/doc/img/src/standalone.cfg
new file mode 100644
index 0000000..ab1ffbb
--- /dev/null
+++ b/milena/doc/img/src/standalone.cfg
@@ -0,0 +1,34 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{standalone.cfg}[%
+    2012/04/13
+    v1.0b
+    Default configuration file for 'standalone' class]%
+%% Enabled the "varwidth" option if the "varwidth" package is available:
+%%\IfFileExists{varwidth.sty}{%
+%%    \standaloneconfig{varwidth}%
+%%}{}%
+
+%% Default options:
+\standaloneconfig{crop}
+
+%% Option which 'preview' should be loaded with
+\PassOptionsToPackage{active,tightpage}{preview}%
+
+%% Enable 'preview' option by default:
+%%\standaloneconfig{preview}
+
+%% Remove the border:
+\standaloneconfig{border=0pt}
+
+%% Default preview border (used by standalone v0.x):
+%%\standaloneconfig{border=0.50001bp}
+
+%% Disable navigation symbols in beamer.
+%% This must be done AtEndOfClass because the options are not processed yet,
+%% so "beamer" mode is not enabled yet.
+\AtEndOfClass{%
+\ifstandalonebeamer
+  \setbeamertemplate{navigation symbols}{}%
+\fi
+}
+%% vim: ft=tex
diff --git a/milena/doc/img/src/standalone.cls b/milena/doc/img/src/standalone.cls
new file mode 100644
index 0000000..a60e7bf
--- /dev/null
+++ b/milena/doc/img/src/standalone.cls
@@ -0,0 +1,837 @@
+%% Copyright (C) 2011 by Martin Scharrer <martin(a)scharrer-online.de>
+%% ---------------------------------------------------------------------------
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Martin Scharrer.
+%%
+%% This work consists of the files <+name+>.dtx and <+name+>.ins
+%% and the derived filebase <+name+>.sty.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{standalone}[%
+    2012/04/13
+    v1.0b
+    Class to compile TeX sub-files standalone]
+\newif\ifstandalone
+\standalonetrue
+\newif\ifstandalonebeamer
+\standalonebeamerfalse
+\let\onlyifstandalone\@firstofone
+\let\IfStandalone\@firstoftwo
+\def\sa@border@left{0.50001bp}
+\let\sa@border@right\sa@border@left
+\let\sa@border@top\sa@border@left
+\let\sa@border@bottom\sa@border@left
+\def\rem@bp#1bp\relax#2\@nnil{#1}%
+\def\default@bp#1#2{%
+    \begingroup
+    \afterassignment\remove@to@nnil
+    \dimen@ #2bp\relax\@nnil
+    \expandafter
+    \endgroup
+    \expandafter
+    \def\expandafter#1\expandafter{\the\dimen@}%
+}
+\def\sa@readborder#1 #2 #3 #4 #5\@nnil{%
+    \ifx\\#2#3#4\\%
+        \default@bp\sa@border@left{#1}%
+        \let\sa@border@right\sa@border@left
+        \let\sa@border@top\sa@border@left
+        \let\sa@border@bottom\sa@border@left
+    \else
+    \ifx\\#4\\%
+        \default@bp\sa@border@left{#1}%
+        \let\sa@border@right\sa@border@left
+        \default@bp\sa@border@top{#2}%
+        \let\sa@border@bottom\sa@border@top
+    \else
+        \default@bp\sa@border@left{#1}%
+        \default@bp\sa@border@bottom{#2}%
+        \default@bp\sa@border@right{#3}%
+        \default@bp\sa@border@top{#4}%
+    \fi\fi
+}%
+\expandafter\ifx\csname ifluatex\endcsname\relax
+    \IfFileExists{ifluatex.sty}{\@firstoftwo}{\@secondoftwo}{%
+        \RequirePackage{ifluatex}
+    }{
+        \begingroup
+        \expandafter\ifx\csname directlua\endcsname\relax
+            \endgroup
+            \expandafter\let\csname ifluatex\expandafter\endcsname\csname iffalse\endcsname
+        \else
+            \endgroup
+            \expandafter\let\csname ifluatex\expandafter\endcsname\csname iftrue\endcsname
+        \fi
+    }
+\fi
+\expandafter\ifx\csname ifpdf\endcsname\relax
+    \IfFileExists{ifpdf.sty}{\@firstoftwo}{\@secondoftwo}{%
+        \RequirePackage{ifpdf}
+    }{
+        \begingroup
+        \expandafter\ifx\csname pdfoutput\endcsname\relax
+            \endgroup
+            \expandafter\let\csname ifpdf\expandafter\endcsname\csname iffalse\endcsname
+        \else
+            \endgroup
+            \ifnum\pdfoutput<1
+                \expandafter\let\csname ifpdf\expandafter\endcsname\csname iffalse\endcsname
+            \else
+                \expandafter\let\csname ifpdf\expandafter\endcsname\csname iftrue\endcsname
+            \fi
+        \fi
+    }
+\fi
+\expandafter\ifx\csname ifxetex\endcsname\relax
+    \IfFileExists{ifxetex.sty}{\@firstoftwo}{\@secondoftwo}{%
+        \RequirePackage{ifxetex}
+    }{
+        \begingroup
+        \expandafter\ifx\csname XeTeXrevision\endcsname\relax
+            \endgroup
+            \expandafter\let\csname ifxetex\expandafter\endcsname\csname iffalse\endcsname
+        \else
+            \endgroup
+            \expandafter\let\csname ifxetex\expandafter\endcsname\csname iftrue\endcsname
+        \fi
+    }
+\fi
+\let\sa@classoptionslist\@classoptionslist
+\RequirePackage{xkeyval}
+\newif\ifsa@preview
+\newif\ifsa@crop
+\newif\ifsa@multi
+\newif\ifsa@varwidth
+\newif\ifsa@ignorerest
+\newif\ifsa@ignoreempty
+\newif\ifsa@tikz
+\newif\ifsa@pstricks
+\newif\ifsa@convert
+\newif\ifsa@float
+\newif\ifsa@math
+\let\sa@beamertrue\standalonebeamertrue
+\let\sa@beamerfalse\standalonebeamerfalse
+\def\sa@clsoption{%
+    \define(a)key{standalone.cls}%
+}
+\sa@clsoption{border}{%
+    \sa@readborder#1 {} {} {} {} \@nnil
+}
+\def\sa@boolean#1#2{%
+    \sa@boolorvalue{#1}{#2}%
+        {\ClassError{standalone}{Invalid value '#2' for boolean key '#1'}{}}%
+}
+\def\sa@boolorvalue#1#2{%
+    \begingroup
+    \edef\@tempa{#2}%
+    \def\@tempb{true}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \csname sa@#1true\endcsname
+        \expandafter\@gobble
+    \else
+    \def\@tempb{false}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \csname sa@#1false\endcsname
+        \expandafter\expandafter
+        \expandafter\@gobble
+    \else
+        \endgroup
+        \expandafter\expandafter
+        \expandafter\@firstofone
+    \fi\fi
+}
+\sa@clsoption{preview}[true]{%
+    \sa@boolean{preview}{#1}%
+    \ifsa@preview
+        \setkeys{standalone.cls}{crop=false,float=false}%
+    \fi
+}
+\sa@previewtrue
+\sa@clsoption{crop}[true]{%
+    \sa@boolean{crop}{#1}%
+    \ifsa@crop
+        \setkeys{standalone.cls}{preview=false,float=false}%
+    \fi
+}
+\sa@clsoption{ignorerest}[true]{%
+    \sa@boolean{ignorerest}{#1}%
+}
+\sa@clsoption{ignoreempty}[true]{%
+    \sa@boolean{ignoreempty}{#1}%
+}
+\sa@clsoption{multi}[true]{%
+    \sa@boolorvalue{multi}{#1}{\sa@multitrue\AtBeginDocument{\standaloneenv{#1}}}%
+}
+\sa@clsoption{math}[true]{%
+    \sa@boolean{math}{#1}%
+    \ifsa@math
+        \setkeys{standalone.cls}{multi=true,ignoreempty=true,border=0.50001bp}%
+    \fi
+}
+\AtBeginDocument{\ifsa@math\sa@math\fi}
+\def\sa@math{%
+    \standaloneenv{math}%
+    \def\({\begingroup\math}%
+    \def\){\endmath\endgroup}%
+    \def\[{\(\displaystyle}%
+    \def\]{\)}%
+    \def\displaymath{\math\displaystyle}%
+    \def\enddisplaymath{\endmath}%
+    \newcommand*\multimathsep{%
+        \endmath
+        \math
+        \let\\\multimathsep
+    }%
+    \newenvironment{multimath}{%
+        \math
+        \let\\\multimathsep
+    }{%
+        \endmath
+    }%
+    \newcommand*\multidisplaymathsep{%
+        \endmath
+        \math\displaystyle
+        \let\\\multidisplaymathsep
+    }%
+    \newenvironment{multidisplaymath}{%
+        \math\displaystyle
+        \let\\\multidisplaymathsep
+    }{%
+        \endmath
+    }%
+}
+\sa@clsoption{varwidth}[true]{%
+    \sa@boolorvalue{varwidth}{#1}{\sa@varwidthtrue\def\sa@width{#1}}%
+    \ifsa@varwidth
+        \def\sa@varwidth{\varwidth{\sa@width}}%
+        \def\sa@endvarwidth{\endvarwidth}%
+    \else
+        \let\sa@varwidth\@empty
+        \let\sa@endvarwidth\@empty
+    \fi
+}
+\let\sa@varwidth\@empty
+\let\sa@endvarwidth\@empty
+\sa@clsoption{tikz}[true]{%
+    \sa@boolean{tikz}{#1}%
+    \ifsa@tikz
+        \setkeys{standalone.cls}{multi=tikzpicture,varwidth=false}%
+    \fi
+}
+\sa@clsoption{pstricks}[true]{%
+    \sa@boolean{pstricks}{#1}%
+    \ifsa@pstricks
+        \setkeys{standalone.cls}{multi=pspicture,varwidth=false}%
+    \fi
+}
+\sa@clsoption{beamer}[true]{%
+    \sa@boolean{beamer}{#1}%
+    \ifstandalonebeamer
+        \def\sa@class{beamer}%
+        \setkeys{standalone.cls}{preview=false,crop=false,varwidth=false}%
+    \else
+        \begingroup
+        \def\@tempa{beamer}%
+        \ifx\@tempa\sa@class
+            \endgroup
+            \def\sa@class{article}%
+        \else
+            \endgroup
+        \fi
+    \fi
+}
+\sa@clsoption{class}{%
+    \def\sa@class{#1}%
+}
+\def\sa@class{article}
+\sa@clsoption{float}[true]{%
+    \sa@boolean{float}{#1}%
+    \ifsa@float
+        \let\@float\sa@origfloat
+        \let\end@float\sa@origendfloat
+    \else
+        \ifx\@float\sa@nofloat\else
+            \let\sa@origfloat\@float
+        \fi
+        \ifx\end@float\sa@endnofloat\else
+            \let\sa@origendfloat\end@float
+        \fi
+        \let\@float\sa@nofloat
+        \let\end@float\sa@endnofloat
+    \fi
+}
+\def\sa@nofloat#1{%
+    \def\@captype{#1}%
+    \trivlist\item[]%
+    \@ifnextchar[{%
+        \begingroup
+        \def\@tempa[####1]{%
+            \endgroup
+        }\@tempa
+    }{}%
+}
+\def\sa@endnofloat{%
+    \endtrivlist
+}
+\sa@clsoption{convert}[]{%
+    \setkeys{standalone.cls/convert}{true,#1}%
+}
+\sa@clsoption{disable@convert}[]{%
+    \typeout{Disable conversion}
+    \sa@convertfalse
+    \let\sa@converttrue\relax
+}
+\def\sa@convertoption{%
+    \define(a)key{standalone.cls/convert}%
+}
+\def\sa@convertvar#1#2{%
+    \define(a)key{standalone.cls/convert}{#1}{%
+        \@namedef{sa@convert@#1}{##1}%
+    }%
+    \@namedef{sa@convert@#1}{#2}%
+}
+\sa@convertoption{true}[]{%
+    \sa@converttrue
+}
+\sa@convertoption{false}[]{%
+    \sa@convertfalse
+}
+\sa@convertoption{png}[]{%
+    \setkeys{standalone.cls/convert}{true,outext={.png}}%
+}
+\sa@clsoption{png}[]{%
+    \setkeys{standalone.cls/convert}{png,#1}%
+}
+\sa@convertoption{jpg}[]{%
+    \setkeys{standalone.cls/convert}{true,outext={.jpg}}%
+}
+\sa@clsoption{jpg}[]{%
+    \setkeys{standalone.cls/convert}{jpg,#1}%
+}
+\sa@convertoption{gif}[]{%
+    \setkeys{standalone.cls/convert}{true,outext={.gif}}%
+}
+\sa@clsoption{gif}[]{%
+    \setkeys{standalone.cls/convert}{gif,#1}%
+}
+\sa@convertoption{onfailure}{%
+    \begingroup
+    \edef\@tempa{#1}%
+    \def\@tempb{error}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \let\sa@convert@failuremsg\ClassError
+    \else
+    \def\@tempb{warning}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \let\sa@convert@failuremsg\ClassWarning
+    \else
+    \def\@tempb{info}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \let\sa@convert@failuremsg\ClassInfo
+    \else
+    \def\@tempb{ignore}%
+    \ifx\@tempa\@tempb
+        \endgroup
+        \def\sa@convert@failuremsg##1##2##3{}%
+        \let\sa@convert@notfoundmsg\@gobbletwo
+    \else
+        \let\on@line\@empty
+        \ClassError{standalone}{Invalid value '\@tempa' for the 'onfailure' option.\MessageBreak
+                                Valid values: 'error', 'warning', 'info', 'ignore'}{}%
+        \endgroup
+    \fi\fi\fi\fi
+}
+\let\sa@convert@failuremsg\ClassWarning
+\let\sa@convert@notfoundmsg\ClassWarning
+\sa@convertoption{defgsdevice}{%
+    \sa@defgsdevice#1\relax\relax
+}
+\def\sa@defgsdevice#1#2{%
+    \@namedef{sa@gsdevice@#1}{#2}%
+}
+\@namedef{sa@gsdevice@.jpg}{jpeg}%
+\@namedef{sa@gsdevice@.png}{png16m}%
+\sa@convertoption{command}{%
+    \def\sa@convert@command{#1}%
+}
+\sa@convertoption{pdf2svg}[]{%
+    \def\sa@convert@command{pdf2svg \infile\space\outfile}%
+    \sa(a)convertvar{outext}{.svg}
+}
+\sa@convertoption{imagemagick}[]{%
+    \def\sa@convert@command{\convertexe\space -density \density\space \infile\space \ifx\size\empty\else -resize \size\fi\space -quality 90 \outfile}%
+}
+\sa@convertoption{ghostscript}[]{%
+    \def\sa@convert@command{\gsexe\space -dSAFER -dBATCH -dNOPAUSE -sDEVICE=\gsdevice\space -r\density\space -sOutputFile=\outfile\space \infile}%
+}
+\sa@convertvar{subjobname}{\jobname}
+\sa@convertvar{size}{}
+\sa@convertvar{inname}{\subjobname}
+\sa@convertvar{infile}{\inname\inext}
+\sa(a)convertvar{outext}{.png}
+\sa@convertvar{outname}{\inname}
+\sa@convertvar{outfile}{\outname\ifsa@multi-\@percentchar d\fi\outext}
+\sa@convertvar{density}{300}
+\sa@convertvar{gsdevice}{%
+    \expandafter\ifx\csname sa@gsdevice@\outext\endcsname\relax
+        \expandafter\@gobble\outext
+    \else
+        \csname sa@gsdevice@\outext\endcsname
+    \fi
+}
+\ifluatex
+    \sa@convertvar{latex}{lualatex}
+    \sa(a)convertvar{inext}{.pdf}
+    \sa@convertvar{precommand}{}
+    \setkeys{standalone.cls/convert}{imagemagick}
+\else
+\ifpdf
+    \sa@convertvar{latex}{pdflatex}
+    \sa(a)convertvar{inext}{.pdf}
+    \sa@convertvar{precommand}{}
+    \setkeys{standalone.cls/convert}{imagemagick}
+\else
+\ifxetex
+    \sa@convertvar{latex}{xelatex}
+    \sa(a)convertvar{inext}{.pdf}
+    \sa@convertvar{precommand}{}
+    \setkeys{standalone.cls/convert}{imagemagick}
+\else
+    \sa@convertvar{latex}{latex}
+    \sa(a)convertvar{inext}{.ps}
+    \sa@convertvar{precommand}{dvips \jobname.dvi}
+    \setkeys{standalone.cls/convert}{ghostscript}
+\fi\fi\fi
+\begingroup
+\ifluatex
+  \csname @tempswa\directlua{
+      if os.type == "windows" then
+        tex.sprint("true")
+      else
+        tex.sprint("false")
+      end
+    }\endcsname
+\else
+    \IfFileExists{/dev/null}{\@tempswafalse}{\@tempswatrue}%
+\fi
+\if@tempswa
+    \endgroup
+    \sa@convertvar{convertexe}{imgconvert}
+    \sa@convertvar{gsexe}{gswin32c}
+\else
+    \endgroup
+    \sa@convertvar{convertexe}{convert}
+    \sa@convertvar{gsexe}{gs}
+\fi
+\newcommand*\standaloneenv[1]{%
+    \begingroup
+    \edef\@tempa{\endgroup\noexpand\@for\noexpand\@tempa:=\zap@space#1 \@empty}%
+    \@tempa\do{\expandafter\@standaloneenv\expandafter{\@tempa}}%
+    \setkeys{standalone.cls}{multi}%
+}
+\@onlypreamble\standaloneenv
+\newcommand*{\standaloneconfig}{\setkeys{standalone.cls}}
+\let\@standaloneenv\@gobble
+\newcount\sa@internal
+\let\standalone\empty
+\let\endstandalone\relax
+\def\sa@width{\linewidth}
+\InputIfFileExists{standalone.cfg}{}{}
+\begingroup
+\def\(a)tempa{\endgroup\setkeys*{standalone.cls}}
+\expandafter\expandafter\expandafter\@tempa
+\expandafter\expandafter\expandafter{\csname opt(a)standalone.cls\endcsname}
+\let\@classoptionslist\XKV@rm
+\disable(a)keys{standalone.cls}{crop,preview,class,beamer,ignorerest}
+\AtBeginDocument{%
+    \disable(a)keys{standalone.cls}{multi}%
+}
+\expandafter\expandafter\expandafter\LoadClass
+\expandafter\expandafter\expandafter[%
+\expandafter\@classoptionslist
+\expandafter]\expandafter{\sa@class}
+\ifsa@varwidth
+    \RequirePackage{varwidth}
+\fi
+\ifsa@tikz
+    \RequirePackage{tikz}
+\fi
+\ifsa@pstricks
+    \RequirePackage{pstricks}
+\fi
+\ifsa@preview
+\RequirePackage{preview}
+\ifsa@multi\else
+    \@ifundefined{endstandalone}{%
+        \renewenvironment{standalone}
+            {\preview\sa@varwidth}
+            {\sa@endvarwidth\endpreview}
+    }{}% TODO: Add info message?
+\fi
+\def\PreviewBbAdjust{-\sa@border@left\space -\sa@border@bottom\space \sa@border@right\space \sa@border@top}%
+\def\@standaloneenv#1{%
+    \expandafter\ifx\csname sa@orig@#1\endcsname\relax
+        \expandafter\let\csname sa@orig@#1\expandafter\endcsname\csname #1\endcsname
+        \expandafter\let\csname sa@orig@end#1\expandafter\endcsname\csname end#1\endcsname
+    \fi
+    \expandafter\def\csname #1\endcsname{%
+        \ifnum\sa@internal=0
+            \preview
+            \sa@varwidth
+        \fi
+        \advance\sa@internal\@ne
+        \csname sa@orig@#1\endcsname
+    }%
+    \expandafter\def\csname end#1\endcsname{%
+        \csname sa@orig@end#1\endcsname
+        \advance\sa@internal\m@ne
+        \ifnum\sa@internal=0
+            \sa@endvarwidth
+            \endpreview
+        \fi
+    }%
+}%
+\fi
+\ifsa@crop
+\newbox\sa@box
+\pagestyle{empty}
+\hoffset=-72.27pt
+\voffset=-72.27pt
+\topmargin=0pt
+\headheight=0pt
+\headsep=0pt
+\marginparsep=0pt
+\marginparwidth=0pt
+\footskip=0pt
+\marginparpush=0pt
+\oddsidemargin=0pt
+\evensidemargin=0pt
+\topskip=0pt
+\textheight=\maxdimen
+\def\sa@boxit{%
+    \setbox\sa@box\hbox\bgroup\color@setgroup\sa@varwidth
+}%
+\def\endsa@boxit{%
+    \sa@endvarwidth\color@endgroup\egroup
+}%
+\renewenvironment{standalone}{%
+    \ifsa@multi
+        \ifsa@ignorerest
+            \sa@boxit
+        \fi
+    \else
+        \sa@boxit
+    \fi
+}{%
+    \ifsa@multi
+        \ifsa@ignorerest
+            \endsa@boxit
+        \fi
+    \else
+        \endsa@boxit
+        \sa@handlebox
+    \fi
+}
+\ifsa@multi\else
+    \sa@ignorerestfalse
+\fi
+\ifsa@ignorerest
+    \def\@standaloneenv#1{%
+        \expandafter\ifx\csname sa@orig@#1\endcsname\relax
+            \expandafter\let\csname sa@orig@#1\expandafter\endcsname\csname #1\endcsname
+            \expandafter\let\csname sa@orig@end#1\expandafter\endcsname\csname end#1\endcsname
+        \fi
+        \expandafter\def\csname #1\endcsname{%
+            \ifnum\sa@internal=0
+                \edef\@tempa{\endgroup
+                    \noexpand\endsa@boxit
+                    \begingroup
+                    \def\noexpand\@currenvir{\@currenvir}%
+                    \def\noexpand\@currenvline{\@currenvline}%
+                }%
+                \@tempa
+                \sa@boxit
+            \fi
+            \advance\sa@internal\@ne
+            \csname sa@orig@#1\endcsname
+        }%
+        \expandafter\def\csname end#1\endcsname{%
+            \csname sa@orig@end#1\endcsname
+            \advance\sa@internal\m@ne
+            \ifnum\sa@internal=0
+                \endsa@boxit
+                \sa@handlebox
+                \aftergroup\sa@boxit
+            \fi
+        }%
+    }%
+\else
+    \def\@standaloneenv#1{%
+        \expandafter\ifx\csname sa@orig@#1\endcsname\relax
+            \expandafter\let\csname sa@orig@#1\expandafter\endcsname\csname #1\endcsname
+            \expandafter\let\csname sa@orig@end#1\expandafter\endcsname\csname end#1\endcsname
+        \fi
+        \expandafter\def\csname #1\endcsname{%
+            \ifnum\sa@internal=0
+                \sa@boxit
+            \fi
+            \advance\sa@internal\@ne
+            \csname sa@orig@#1\endcsname
+        }%
+        \expandafter\def\csname end#1\endcsname{%
+            \csname sa@orig@end#1\endcsname
+            \advance\sa@internal\m@ne
+            \ifnum\sa@internal=0
+                \endsa@boxit
+                \sa@handlebox
+            \fi
+        }%
+    }%
+\fi
+\def\sa@handlebox{%
+    \ifcase
+        0%
+        \ifsa@ignoreempty
+            \ifdim\wd\sa@box=\z@
+            \ifdim\ht\sa@box=\z@
+            \ifdim\dp\sa@box=\z@
+                1%
+            \fi\fi\fi
+        \fi
+    \relax
+    \sbox\sa@box{%
+        \hskip\sa@border@left
+        \@tempdima=\ht\sa@box
+        \advance\@tempdima\sa@border@top\relax
+        \ht\sa@box=\@tempdima
+        \@tempdima=\dp\sa@box
+        \advance\@tempdima\sa@border@bottom\relax
+        \dp\sa@box=\@tempdima
+        \raise\dp\sa@box
+            \box\sa@box
+        \hskip\sa@border@right
+    }%
+    \sa@placebox
+    \fi
+}
+\ifcase0%
+    \ifpdf\else\ifluatex\else\ifxetex\else 1\fi\fi\fi
+  \relax
+    \def\sa@placebox{%
+        \newpage
+        \global\pdfpagewidth=\wd\sa@box
+        \global\pdfpageheight=\ht\sa@box
+        \global\paperwidth=\wd\sa@box
+        \global\paperheight=\ht\sa@box
+        \global\hsize=\wd\sa@box
+        \global\vsize=\ht\sa@box
+        \global\@colht=\ht\sa@box
+        \global\@colroom=\ht\sa@box
+        \noindent\usebox\sa@box
+        \newpage
+    }
+  \else
+    \def\sa@placebox{%
+        \global\paperwidth=\wd\sa@box
+        \global\paperheight=\ht\sa@box
+        \global\@colht=\maxdimen
+        \global\@colroom=\maxdimen
+        \global\hsize=\maxdimen
+        \global\vsize=\maxdimen
+        \sa@papersize
+        \ifsa@multi
+        \begingroup
+        \(a)tempdima0.99626\paperwidth
+        \(a)tempdimb0.99626\paperheight
+        \edef\@tempc{\strip@pt\@tempdima}%
+        \edef\@tempd{\strip@pt\@tempdimb}%
+        \advance\@tempdima by .998pt
+        \advance\@tempdimb by .998pt
+        \def\strip(a)float##1.##2\relax{##1}%
+        \edef\@tempa{\expandafter\strip@float\the\@tempdima\relax}%
+        \edef\@tempb{\expandafter\strip@float\the\@tempdimb\relax}%
+        \special{ps::%
+            \@percentchar\@percentchar PageBoundingBox: 0 0 \@tempa\space\@tempb^^J%
+            \@percentchar\@percentchar HiResPageBoundingBox: 0 0 \@tempc\space\@tempd^^J%
+            \@percentchar\@percentchar BeginPageSetup^^J%
+            << /PageSize [\@tempc\space\@tempd]
+            >> setpagedevice^^J%<<
+            0 0 bop^^J%
+            \@percentchar\@percentchar EndPageSetup}%
+        \endgroup
+        \fi
+        \topskip=0pt
+        \noindent\sa@ps@content
+        \newpage
+    }
+\def\sa@ps@content{%
+    \noindent\usebox\sa@box
+    \global\def\sa@ps@content{%
+        \@tempdima\sa@yoffset
+        \advance\@tempdima-\topskip
+        \dp\sa@box\z@
+        \ht\sa@box\z@
+        \noindent\lower\@tempdima\copy\sa@box
+    }%
+}
+\def\sa@papersize{%
+    \global\let\sa@papersize\relax
+    \special{papersize=\the\paperwidth,\the\paperheight}%
+    \global\sa@yoffset=\paperheight
+    \special{ps::%
+        \@percentchar\@percentchar HiResBoundingBox: 0 0 \the\paperwidth\space\the\paperheight^^J%
+    }%
+}
+\newlength\sa@yoffset
+\fi
+\fi
+\ifstandalonebeamer
+\newenvironment{standaloneframe}{%
+  \@ifnextchar<%
+    {\@standaloneframe}%
+    {\@@standaloneframe{}}%
+}{\end{frame}}%
+\def\@standaloneframe<#1>{%
+    \@@standaloneframe{<#1>}%
+}
+\def\@@standaloneframe#1{%
+  \@ifnextchar[%]
+    {\@@@standaloneframe{#1}}%
+    {\@@@standaloneframe{#1}[]}%
+}%
+\def\@@@standaloneframe#1[{%
+  \@ifnextchar<%
+    {\@@@@standaloneframe{#1}[}%
+    {\@@@@@@standaloneframe{#1}[}%
+}%
+\def\@@@@standaloneframe#1[#2]{%
+  \@ifnextchar[%]
+    {\@@@@@standaloneframe{#1}{#2}}%
+    {\begin{frame}#1[#2][environment=standaloneframe]}%
+}%
+\def\@@@@@standaloneframe#1#2[#3]{%
+    \begin{frame}#1[#2][environment=standaloneframe,#3]%
+}%
+\def\@@@@@@standaloneframe#1[#2]{%
+    \begin{frame}#1[environment=standaloneframe,#2]%
+}%
+\fi
+\expandafter\ifx\csname sa@internal@run\endcsname\relax\else
+    \sa@convertfalse
+\fi
+\ifsa@convert
+\begingroup
+\let\on@line\@gobble
+\def\sa@convert#1{%
+    \IfFileExists{\outfile}{%
+        \edef\filemodbefore{\csname pdffilemoddate\endcsname{\outfile}}%
+    }{%
+    \IfFileExists{\outname\outext}{%
+        \edef\filemodbefore{\csname pdffilemoddate\endcsname{\outname\outext}}%
+    }{%
+    \IfFileExists{\outname-0\outext}{%
+        \edef\filemodbefore{\csname pdffilemoddate\endcsname{\outname-0\outext}}%
+    }{%
+    \IfFileExists{\outname-1\outext}{%
+        \edef\filemodbefore{\csname pdffilemoddate\endcsname{\outname-1\outext}}%
+    }{%
+        \def\filemodbefore{}%
+    }}}}%
+    \immediate\write18{\sa@convert@latex\space -jobname '\sa@convert@subjobname' '\noexpand\expandafter\def\noexpand\csname sa@internal@run\noexpand\endcsname{1}\noexpand\input{\jobname}'}%
+    \edef\sa@convert@precommand{\sa@convert@precommand}%
+    \ifx\sa@convert@precommand\@empty\else
+        \immediate\write18{\sa@convert@precommand}%
+    \fi
+    \immediate\write18{\sa@convert@command}%
+    \@tempswafalse
+    \IfFileExists{\outfile}{%
+        \@tempswatrue
+    }{%
+    \IfFileExists{\outname\outext}{%
+        \@tempswatrue
+        \def\outfile{\outname\outext}%
+    }{%
+    \IfFileExists{\outname-0\outext}{%
+        \@tempswatrue
+        \def\outfile{\outname-0\outext}%
+    }{%
+    \IfFileExists{\outname-1\outext}{%
+        \@tempswatrue
+        \def\outfile{\outname-1\outext}%
+    }{%
+    }}}}%
+    \if@tempswa
+        \edef\filemodafter{\csname pdffilemoddate\endcsname{\outfile}}%
+        \ifx\filemodbefore\filemodafter
+            \expandafter\ifx\csname pdffilemoddate\endcsname\relax\else
+                \sa@convert@failuremsg{standalone}{#1}{}%
+            \fi
+        \else
+            \ClassInfo{standalone}{Conversion successful.}%
+        \fi
+    \else
+        \sa@convert@failuremsg{standalone}{#1}{}%
+    \fi
+}
+\let\subjobname\sa@convert@subjobname
+\let\infile\sa@convert@infile
+\let\inext\sa@convert@inext
+\let\inname\sa@convert@inname
+\let\gsdevice\sa@convert@gsdevice
+\let\convertexe\sa@convert@convertexe
+\let\gsexe\sa@convert@gsexe
+\let\density\sa@convert@density
+\let\size\sa@convert@size
+\let\outext\sa@convert@outext
+\let\outname\sa@convert@outname
+\let\outfile\sa@convert@outfile
+\let\percent\@percentchar
+\ifcase0%
+    \expandafter\ifx\csname pdfshellescape\endcsname\relax
+    \ifeof18 \else 3\fi
+    \else\the\pdfshellescape\fi
+\relax% 0
+    \sa@convert@failuremsg
+        {standalone}{Shell escape disabled! Cannot convert file '\infile'.}{}%
+\or% 1
+    \sa@convert{Conversion unsuccessful!\MessageBreak
+                There might be something wrong with your\MessageBreak
+                conversation software or the file permissions!}%
+\else% 2 or 3
+    \sa@convert{Conversion failed! Please ensure that shell escape\MessageBreak is enabled (e.g. use '-shell-escape').}%
+\fi
+\endgroup
+\expandafter\stop
+\fi
+\begingroup
+\toks@\expandafter{%
+    \document
+    \sa@cls@afterbegindocument
+}
+\xdef\document{\the\toks@}%
+\toks@\expandafter{%
+    \expandafter
+    \sa@cls@beforeenddocument
+    \enddocument
+}
+\xdef\enddocument{\the\toks@}%
+\endgroup
+\def\sa@cls@afterbegindocument{\standalone\ignorespaces}
+\def\sa@cls@beforeenddocument{\ifhmode\unskip\fi\endstandalone}
+\endinput
+%%
+%% End of file `standalone.cls'.
diff --git a/milena/doc/img/src/ydoc.cfg b/milena/doc/img/src/ydoc.cfg
new file mode 100644
index 0000000..049f0f4
--- /dev/null
+++ b/milena/doc/img/src/ydoc.cfg
@@ -0,0 +1,40 @@
+%%
+%% This is file `ydoc.cfg',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ydoc.dtx  (with options: `ydoc.cfg')
+%% 
+%% Please delete the following line on manual changes:
+\ProvidesFile{ydoc.cfg}[%
+    2011/11/19
+    v0.6alpha
+   Default config file for ydoc]
+\usepackage[T1]{fontenc}
+\IfFileExists{fourier.sty}{%
+    \usepackage{fourier}
+}{}
+\IfFileExists{lmodern.sty}{
+    \IfFileExists{fourier.sty}{
+        \renewcommand{\ttdefault}{lmtt}
+    }{
+        \usepackage{lmodern}
+    }
+}{}
+\urlstyle{sf}
+\usepackage{ifpdf}
+\ifpdf
+\usepackage{microtype}
+\fi
+\usepackage{array}
+\usepackage{booktabs}
+\usepackage{multicol}
+\usepackage{xcolor}
+\usepackage{listings}
+\usepackage{booktabs}
+\usepackage{hyperref}
+\reversemarginpar
+\endinput
+%%
+%% End of file `ydoc.cfg'.
diff --git a/milena/doc/img/src/ydoc.cls b/milena/doc/img/src/ydoc.cls
new file mode 100644
index 0000000..a2bc248
--- /dev/null
+++ b/milena/doc/img/src/ydoc.cls
@@ -0,0 +1,21 @@
+%%
+%% This is file `ydoc.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ydoc.dtx  (with options: `ydoc.cls')
+%% 
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesClass{ydoc}[%
+    2011/11/19
+    v0.6alpha
+    ydoc class: document LaTeX class and packages]
+\PassOptionsToClass{a4paper}{article}
+\DeclareOption*{\expandafter\PassOptionsToClass\expandafter{\CurrentOption}{article}}
+\ProcessOptions\relax
+\LoadClass{article}
+\RequirePackage{ydoc}
+\endinput
+%%
+%% End of file `ydoc.cls'.
diff --git a/milena/doc/ref-guide.tex b/milena/doc/ref-guide.tex
index 3328947..6e4a790 100644
--- a/milena/doc/ref-guide.tex
+++ b/milena/doc/ref-guide.tex
@@ -290,22 +290,9 @@ This concept allows us to divide a pixel into two information:
 
 Let's say we have a 2D grid like this:
 
-%FIXME: Find a way to get that figure in HTML output.
-\begin{latexonly}
-\begin{tikzpicture}[scale=1]
-
-\draw[blue!20, thick] (-2, -2) grid [right=0.5cm,above=0.5cm,step=1cm] (3, 3);
-\draw[line width=1mm] (-1, -1) grid [step=1cm] (3, 3);
-\draw[black,line width=2mm,<-] (0, -2) node {y} -- (0, 4);
-\draw[black,line width=2mm,->] (-2, 3) node {x} -- (4, 3);
-
-\foreach \x in {-0.5, 0.5, 1.5, 2.5}
-  \foreach \y in {-0.5, 0.5, 1.5, 2.5}
-    \node at (\x, \y) [fill=blue!30] {};
-
-\draw[black] (2.5, 1.5) -- (4, 2) node {Point2d(2, 2)};
-\end{tikzpicture}
-\end{latexonly}
+\begin{center}
+\doxyimg{2dgrid}{3cm}
+\end{center}
 
 On such a regular grid, in 2D, we usually use a 2D point as a site which
 means we have the following equivalence:
@@ -407,7 +394,7 @@ const Box\& & bbox & - & X &  Bounding box. Available only on grid site sets.
 \end{tabular} \\
 
 The previous methods are available depending on the site set. A box
-will have the bbox() method since it can be retrived in constant time: a box
+will have the bbox() method since it can be retrieved in constant time: a box
 is it's own bounding box.
 
 \doxycode{box2d-bbox}
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    08 Mar '13
                    
                        	* doc/Doxyfile.in: Do not show namespaces in names.
	* doc/DoxygenLayout.xml: Improve menu.
---
 milena/ChangeLog             |    8 +++++++
 milena/doc/Doxyfile.in       |    4 +-
 milena/doc/DoxygenLayout.xml |   48 ++++++++++++++++++++++++-----------------
 3 files changed, 38 insertions(+), 22 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 756259b..c59a08e 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,13 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	More improvements in documentation layout.
+
+	* doc/Doxyfile.in: Do not show namespaces in names.
+
+	* doc/DoxygenLayout.xml: Improve menu.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	Tag internal documentation.
 
 	* apps/graph-morpho/morpho.hh,
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index 9b1cfd6..6ebdcf4 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -564,7 +564,7 @@ SHOW_FILES             = NO
 # This will remove the Namespaces entry from the Quick Index
 # and from the Folder Tree View (if specified). The default is YES.
 
-SHOW_NAMESPACES        = YES
+SHOW_NAMESPACES        = NO
 
 # The FILE_VERSION_FILTER tag can be used to specify a program or script that
 # doxygen should invoke to get the current version for each file (typically from
@@ -859,7 +859,7 @@ ALPHABETICAL_INDEX     = YES
 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
 # in which this list will be split (can be a number in the range [1..20])
 
-COLS_IN_ALPHA_INDEX    = 5
+COLS_IN_ALPHA_INDEX    = 2
 
 # In case all classes in a project start with a common prefix, all
 # classes will be put under the same header in the alphabetical index.
diff --git a/milena/doc/DoxygenLayout.xml b/milena/doc/DoxygenLayout.xml
index 5559bca..05f050a 100644
--- a/milena/doc/DoxygenLayout.xml
+++ b/milena/doc/DoxygenLayout.xml
@@ -2,23 +2,31 @@
   <!-- Navigation index tabs for HTML output -->
   <navindex>
     <tab type="mainpage" visible="yes" title="Milena"/>
-    <tab type="pages" visible="yes" title="" intro=""/>
-    <tab type="modules" visible="yes" title="" intro=""/>
-    <tab type="namespaces" visible="yes" title="">
-      <tab type="namespacelist" visible="yes" title="" intro=""/>
-      <tab type="namespacemembers" visible="yes" title="" intro=""/>
+    <tab type="pages" visible="no" title="" intro=""/>
+    <tab type="usergroup" url="@ref mainpage" title="Getting started">
+      <tab type="user" url="@ref quickref" title="Quick Reference Guide"/>
+      <tab type="user" url="@ref tutorial" title="Tutorial"/>
     </tab>
-    <tab type="classes" visible="yes" title="">
-      <tab type="classlist" visible="yes" title="" intro=""/>
+    <tab type="modules" visible="yes" title="API Reference Manual" intro=""/>
+    <tab type="namespaces" visible="no" title="">
+      <tab type="namespacelist" visible="no" title="" intro=""/>
+      <tab type="namespacemembers" visible="no" title="" intro=""/>
+    </tab>
+    <tab type="classindex" visible="$ALPHABETICAL_INDEX" title="All Classes"/>
+    <tab type="classes" visible="no" title="">
+      <tab type="classlist" visible="no" title="" intro=""/>
       <tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
-      <tab type="hierarchy" visible="yes" title="" intro=""/>
-      <tab type="classmembers" visible="yes" title="" intro=""/>
+      <tab type="hierarchy" visible="no" title="" intro=""/>
+      <tab type="classmembers" visible="no" title="" intro=""/>
     </tab>
-    <tab type="files" visible="yes" title="">
+    <tab type="files" visible="no" title="">
       <tab type="filelist" visible="yes" title="" intro=""/>
       <tab type="globals" visible="yes" title="" intro=""/>
     </tab>
-    <tab type="examples" visible="yes" title="" intro=""/>
+    <tab type="examples" visible="yes" title="Examples" intro=""/>
+    <tab type="user" url="@ref examples" title="Examples"/>
+    <tab type="user" url="@ref demos" title="Demos"/>
+    <tab type="user" url="http://www.lrde.epita.fr/cgi-bin/twiki/view/Olena/Publications" title="Publications"/>
   </navindex>
 
   <!-- Layout definition for a class page -->
@@ -29,20 +37,20 @@
     <collaborationgraph visible="$COLLABORATION_GRAPH"/>
     <allmemberslink visible="yes"/>
     <memberdecl>
-      <nestedclasses visible="yes" title=""/>
-      <publictypes title=""/>
-      <publicslots title=""/>
-      <signals title=""/>
       <publicmethods title=""/>
       <publicstaticmethods title=""/>
       <publicattributes title=""/>
       <publicstaticattributes title=""/>
-      <protectedtypes title=""/>
-      <protectedslots title=""/>
       <protectedmethods title=""/>
       <protectedstaticmethods title=""/>
       <protectedattributes title=""/>
       <protectedstaticattributes title=""/>
+      <publictypes title=""/>
+      <publicslots title=""/>
+      <protectedtypes title=""/>
+      <protectedslots title=""/>
+      <nestedclasses visible="yes" title=""/>
+      <signals title=""/>
       <packagetypes title=""/>
       <packagemethods title=""/>
       <packagestaticmethods title=""/>
@@ -62,15 +70,15 @@
     </memberdecl>
     <detaileddescription title=""/>
     <memberdef>
-      <inlineclasses title=""/>
-      <typedefs title=""/>
-      <enums title=""/>
       <constructors title=""/>
       <functions title=""/>
       <related title=""/>
       <variables title=""/>
       <properties title=""/>
       <events title=""/>
+      <inlineclasses title=""/>
+      <typedefs title=""/>
+      <enums title=""/>
     </memberdef>
     <usedfiles visible="$SHOW_USED_FILES"/>
     <authorsection visible="yes"/>
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                    
                    
                        	* apps/graph-morpho/morpho.hh,
	* mln/accu/internal/couple.hh,
	* mln/core/box_runend_piter.hh,
	* mln/core/box_runstart_piter.hh,
	* mln/core/concept/delta_point_site.hh,
	* mln/core/concept/dpoint.hh,
	* mln/core/concept/function.hh,
	* mln/core/concept/gdpoint.hh,
	* mln/core/concept/meta_accumulator.hh,
	* mln/core/concept/neighborhood.hh,
	* mln/core/concept/pseudo_site.hh,
	* mln/core/concept/site.hh,
	* mln/core/concept/site_proxy.hh,
	* mln/core/concept/site_set.hh,
	* mln/core/dpoints_pixter.hh,
	* mln/core/dpsites_piter.hh,
	* mln/core/image/ch_piter.hh,
	* mln/core/image/complex_image.hh,
	* mln/core/image/complex_neighborhood_piter.hh,
	* mln/core/image/complex_window_piter.hh,
	* mln/core/image/dmorph/extended.hh,
	* mln/core/image/dmorph/extension_fun.hh,
	* mln/core/image/dmorph/extension_ima.hh,
	* mln/core/image/dmorph/extension_val.hh,
	* mln/core/image/dmorph/hexa.hh,
	* mln/core/image/dmorph/hexa_piter.hh,
	* mln/core/image/dmorph/image2d_h.hh,
	* mln/core/image/dmorph/image_if.hh,
	* mln/core/image/dmorph/p2p_image.hh,
	* mln/core/image/dmorph/slice_image.hh,
	* mln/core/image/dmorph/sub_image.hh,
	* mln/core/image/dmorph/sub_image_if.hh,
	* mln/core/image/dmorph/transformed_image.hh,
	* mln/core/image/dmorph/unproject_image.hh,
	* mln/core/image/edge_image.hh,
	* mln/core/image/flat_image.hh,
	* mln/core/image/graph_window_if_piter.hh,
	* mln/core/image/graph_window_piter.hh,
	* mln/core/image/image1d.hh,
	* mln/core/image/image2d.hh,
	* mln/core/image/image3d.hh,
	* mln/core/image/imorph/decorated_image.hh,
	* mln/core/image/imorph/interpolated.hh,
	* mln/core/image/imorph/labeled_image.hh,
	* mln/core/image/imorph/lazy_image.hh,
	* mln/core/image/imorph/plain.hh,
	* mln/core/image/imorph/safe.hh,
	* mln/core/image/imorph/tr_image.hh,
	* mln/core/image/vertex_image.hh,
	* mln/core/image/vmorph/cast_image.hh,
	* mln/core/image/vmorph/fun_image.hh,
	* mln/core/image/vmorph/thru_image.hh,
	* mln/core/image/vmorph/violent_cast_image.hh,
	* mln/core/internal/box_impl.hh,
	* mln/core/internal/check/image_fastest.hh,
	* mln/core/internal/classical_window_base.hh,
	* mln/core/internal/complex_neighborhood_base.hh,
	* mln/core/internal/complex_window_base.hh,
	* mln/core/internal/complex_window_p_base.hh,
	* mln/core/internal/fixme.hh,
	* mln/core/internal/graph_psite_base.hh,
	* mln/core/internal/graph_window_base.hh,
	* mln/core/internal/image_base.hh,
	* mln/core/internal/image_domain_morpher.hh,
	* mln/core/internal/image_identity.hh,
	* mln/core/internal/image_morpher.hh,
	* mln/core/internal/image_primary.hh,
	* mln/core/internal/image_value_morpher.hh,
	* mln/core/internal/is_masked_impl_selector.hh,
	* mln/core/internal/labeled_image_base.hh,
	* mln/core/internal/morpher_lvalue.hh,
	* mln/core/internal/neighb_base.hh,
	* mln/core/internal/neighb_niter_base.hh,
	* mln/core/internal/neighb_niter_impl.hh,
	* mln/core/internal/neighborhood_base.hh,
	* mln/core/internal/piter_adaptor.hh,
	* mln/core/internal/piter_identity.hh,
	* mln/core/internal/pixel_impl.hh,
	* mln/core/internal/pixel_iterator_base.hh,
	* mln/core/internal/pseudo_site_base.hh,
	* mln/core/internal/run_image.hh,
	* mln/core/internal/set_of.hh,
	* mln/core/internal/site_relative_iterator_base.hh,
	* mln/core/internal/site_set_base.hh,
	* mln/core/internal/site_set_iterator_base.hh,
	* mln/core/internal/weighted_window_base.hh,
	* mln/core/internal/window_base.hh,
	* mln/core/pixter1d.hh,
	* mln/core/pixter2d.hh,
	* mln/core/pixter3d.hh,
	* mln/core/routine/ops.hh,
	* mln/core/site_set/attic/p_complex_faces_piter.hh,
	* mln/core/site_set/attic/p_faces_piter.hh,
	* mln/core/site_set/box_piter.hh,
	* mln/core/site_set/complex_psite.hh,
	* mln/core/site_set/p_array.hh,
	* mln/core/site_set/p_complex_piter.hh,
	* mln/core/site_set/p_edges_psite.hh,
	* mln/core/site_set/p_graph_piter.hh,
	* mln/core/site_set/p_if_piter.hh,
	* mln/core/site_set/p_n_faces_piter.hh,
	* mln/core/site_set/p_run_piter.hh,
	* mln/core/site_set/p_transformed_piter.hh,
	* mln/core/site_set/p_vertices_psite.hh,
	* mln/fun/c.hh,
	* mln/fun/internal/ch_function_value_impl.hh,
	* mln/fun/v2v/ch_function_value.hh,
	* mln/fun/x2x/composed.hh,
	* mln/geom/complex_geometry.hh,
	* mln/labeling/blobs.hh,
	* mln/labeling/blobs_and_compute.hh,
	* mln/metal/ands.hh,
	* mln/metal/bexpr.hh,
	* mln/metal/bool.hh,
	* mln/metal/converts_to.hh,
	* mln/metal/equal.hh,
	* mln/metal/goes_to.hh,
	* mln/metal/if.hh,
	* mln/metal/int.hh,
	* mln/metal/is.hh,
	* mln/metal/is_a.hh,
	* mln/metal/is_not.hh,
	* mln/metal/is_not_a.hh,
	* mln/pw/image.hh,
	* mln/pw/internal/image_base.hh,
	* mln/topo/adj_higher_dim_connected_n_face_iter.hh,
	* mln/topo/adj_higher_face_iter.hh,
	* mln/topo/adj_lower_dim_connected_n_face_iter.hh,
	* mln/topo/adj_lower_face_iter.hh,
	* mln/topo/adj_lower_higher_face_iter.hh,
	* mln/topo/adj_m_face_iter.hh,
	* mln/topo/attic/faces_iter.hh,
	* mln/topo/center_only_iter.hh,
	* mln/topo/centered_iter_adapter.hh,
	* mln/topo/complex.hh,
	* mln/topo/face_data.hh,
	* mln/topo/face_iter.hh,
	* mln/topo/internal/complex_iterator_base.hh,
	* mln/topo/internal/complex_relative_iterator_base.hh,
	* mln/topo/internal/complex_relative_iterator_sequence.hh,
	* mln/topo/internal/complex_set_iterator_base.hh,
	* mln/topo/n_face_iter.hh,
	* mln/topo/static_n_face_iter.hh,
	* mln/trait/ch_function_value.hh,
	* mln/trait/image/props.hh,
	* mln/trait/images.hh,
	* mln/trait/neighborhood.hh,
	* mln/trait/promote.hh,
	* mln/trait/site_set/props.hh,
	* mln/trait/site_sets.hh,
	* mln/trait/solve.hh,
	* mln/trait/window/props.hh,
	* mln/trait/windows.hh,
	* mln/util/branch_iter.hh,
	* mln/util/branch_iter_ind.hh,
	* mln/util/edge.hh,
	* mln/util/graph.hh,
	* mln/util/internal/edge_impl.hh,
	* mln/util/internal/graph_base.hh,
	* mln/util/internal/graph_iter.hh,
	* mln/util/internal/vertex_impl.hh,
	* mln/util/lemmings.hh,
	* mln/util/line_graph.hh,
	* mln/util/site_pair.hh,
	* mln/util/vertex.hh,
	* mln/value/internal/value_like.hh,
	* mln/value/viter.hh: Add \internal tag.
---
 milena/ChangeLog                                   |  172 +++++++++++++++++++
 milena/apps/graph-morpho/morpho.hh                 |   18 ++-
 milena/mln/accu/internal/couple.hh                 |   16 +-
 milena/mln/core/box_runend_piter.hh                |   13 +-
 milena/mln/core/box_runstart_piter.hh              |   13 +-
 milena/mln/core/concept/delta_point_site.hh        |   16 ++-
 milena/mln/core/concept/dpoint.hh                  |   25 ++--
 milena/mln/core/concept/function.hh                |    9 +-
 milena/mln/core/concept/gdpoint.hh                 |    5 +-
 milena/mln/core/concept/meta_accumulator.hh        |   32 ++--
 milena/mln/core/concept/neighborhood.hh            |   10 +-
 milena/mln/core/concept/pseudo_site.hh             |   13 +-
 milena/mln/core/concept/site.hh                    |    8 +-
 milena/mln/core/concept/site_proxy.hh              |    7 +-
 milena/mln/core/concept/site_set.hh                |   15 +-
 milena/mln/core/dpoints_pixter.hh                  |   22 ++-
 milena/mln/core/dpsites_piter.hh                   |   28 ++--
 milena/mln/core/image/ch_piter.hh                  |    7 +-
 milena/mln/core/image/complex_image.hh             |   13 +-
 .../mln/core/image/complex_neighborhood_piter.hh   |   13 +-
 milena/mln/core/image/complex_window_piter.hh      |   14 +-
 milena/mln/core/image/dmorph/extended.hh           |    7 +-
 milena/mln/core/image/dmorph/extension_fun.hh      |    7 +-
 milena/mln/core/image/dmorph/extension_ima.hh      |    7 +-
 milena/mln/core/image/dmorph/extension_val.hh      |    7 +-
 milena/mln/core/image/dmorph/hexa.hh               |   14 +-
 milena/mln/core/image/dmorph/hexa_piter.hh         |   19 ++-
 milena/mln/core/image/dmorph/image2d_h.hh          |    3 +-
 milena/mln/core/image/dmorph/image_if.hh           |    8 +-
 milena/mln/core/image/dmorph/p2p_image.hh          |    8 +-
 milena/mln/core/image/dmorph/slice_image.hh        |    7 +-
 milena/mln/core/image/dmorph/sub_image.hh          |    7 +-
 milena/mln/core/image/dmorph/sub_image_if.hh       |    7 +-
 milena/mln/core/image/dmorph/transformed_image.hh  |    9 +-
 milena/mln/core/image/dmorph/unproject_image.hh    |    8 +-
 milena/mln/core/image/edge_image.hh                |    7 +-
 milena/mln/core/image/flat_image.hh                |    7 +-
 milena/mln/core/image/graph_window_if_piter.hh     |    5 +-
 milena/mln/core/image/graph_window_piter.hh        |   28 ++-
 milena/mln/core/image/image1d.hh                   |    5 +-
 milena/mln/core/image/image2d.hh                   |   18 ++-
 milena/mln/core/image/image3d.hh                   |    5 +-
 milena/mln/core/image/imorph/decorated_image.hh    |    8 +-
 milena/mln/core/image/imorph/interpolated.hh       |    7 +-
 milena/mln/core/image/imorph/labeled_image.hh      |    7 +-
 milena/mln/core/image/imorph/lazy_image.hh         |    8 +-
 milena/mln/core/image/imorph/plain.hh              |    9 +-
 milena/mln/core/image/imorph/safe.hh               |    9 +-
 milena/mln/core/image/imorph/tr_image.hh           |    8 +-
 milena/mln/core/image/vertex_image.hh              |    8 +-
 milena/mln/core/image/vmorph/cast_image.hh         |    7 +-
 milena/mln/core/image/vmorph/fun_image.hh          |    9 +-
 milena/mln/core/image/vmorph/thru_image.hh         |   14 +-
 milena/mln/core/image/vmorph/violent_cast_image.hh |    9 +-
 milena/mln/core/internal/box_impl.hh               |   12 +-
 milena/mln/core/internal/check/image_fastest.hh    |    5 +-
 milena/mln/core/internal/classical_window_base.hh  |    8 +-
 .../mln/core/internal/complex_neighborhood_base.hh |   16 +-
 milena/mln/core/internal/complex_window_base.hh    |   24 ++-
 milena/mln/core/internal/complex_window_p_base.hh  |   24 ++-
 milena/mln/core/internal/fixme.hh                  |   12 +-
 milena/mln/core/internal/graph_psite_base.hh       |    9 +-
 milena/mln/core/internal/graph_window_base.hh      |   10 +-
 milena/mln/core/internal/image_base.hh             |   19 ++-
 milena/mln/core/internal/image_domain_morpher.hh   |   19 ++-
 milena/mln/core/internal/image_identity.hh         |   11 +-
 milena/mln/core/internal/image_morpher.hh          |   13 +-
 milena/mln/core/internal/image_primary.hh          |   10 +-
 milena/mln/core/internal/image_value_morpher.hh    |   14 +-
 .../mln/core/internal/is_masked_impl_selector.hh   |   21 ++-
 milena/mln/core/internal/labeled_image_base.hh     |   26 ++--
 milena/mln/core/internal/morpher_lvalue.hh         |   10 +-
 milena/mln/core/internal/neighb_base.hh            |   15 +-
 milena/mln/core/internal/neighb_niter_base.hh      |    9 +-
 milena/mln/core/internal/neighb_niter_impl.hh      |   97 +++++++----
 milena/mln/core/internal/neighborhood_base.hh      |   11 +-
 milena/mln/core/internal/piter_adaptor.hh          |   15 +-
 milena/mln/core/internal/piter_identity.hh         |   15 +-
 milena/mln/core/internal/pixel_impl.hh             |   16 +-
 milena/mln/core/internal/pixel_iterator_base.hh    |   18 ++-
 milena/mln/core/internal/pseudo_site_base.hh       |   13 +-
 milena/mln/core/internal/run_image.hh              |   16 +-
 milena/mln/core/internal/set_of.hh                 |   26 ++--
 .../core/internal/site_relative_iterator_base.hh   |   24 ++--
 milena/mln/core/internal/site_set_base.hh          |   18 ++-
 milena/mln/core/internal/site_set_iterator_base.hh |   20 ++-
 milena/mln/core/internal/weighted_window_base.hh   |   13 +-
 milena/mln/core/internal/window_base.hh            |   14 +-
 milena/mln/core/pixter1d.hh                        |   13 +-
 milena/mln/core/pixter2d.hh                        |   13 +-
 milena/mln/core/pixter3d.hh                        |   13 +-
 milena/mln/core/routine/ops.hh                     |   32 +++-
 .../core/site_set/attic/p_complex_faces_piter.hh   |   17 ++-
 milena/mln/core/site_set/attic/p_faces_piter.hh    |   17 ++-
 milena/mln/core/site_set/box_piter.hh              |   31 ++--
 milena/mln/core/site_set/complex_psite.hh          |    5 +-
 milena/mln/core/site_set/p_array.hh                |   20 ++-
 milena/mln/core/site_set/p_complex_piter.hh        |   12 +-
 milena/mln/core/site_set/p_edges_psite.hh          |    9 +-
 milena/mln/core/site_set/p_graph_piter.hh          |   13 +-
 milena/mln/core/site_set/p_if_piter.hh             |   21 ++-
 milena/mln/core/site_set/p_n_faces_piter.hh        |   22 ++-
 milena/mln/core/site_set/p_run_piter.hh            |   17 +-
 milena/mln/core/site_set/p_transformed_piter.hh    |   27 ++--
 milena/mln/core/site_set/p_vertices_psite.hh       |   10 +-
 milena/mln/fun/c.hh                                |   13 +-
 milena/mln/fun/internal/ch_function_value_impl.hh  |    8 +-
 milena/mln/fun/v2v/ch_function_value.hh            |    5 +-
 milena/mln/fun/x2x/composed.hh                     |   14 +-
 milena/mln/geom/complex_geometry.hh                |    9 +-
 milena/mln/labeling/blobs.hh                       |    8 +-
 milena/mln/labeling/blobs_and_compute.hh           |    7 +-
 milena/mln/metal/ands.hh                           |   10 +-
 milena/mln/metal/bexpr.hh                          |   31 +++-
 milena/mln/metal/bool.hh                           |   13 +-
 milena/mln/metal/converts_to.hh                    |    8 +-
 milena/mln/metal/equal.hh                          |   11 +-
 milena/mln/metal/goes_to.hh                        |   15 +-
 milena/mln/metal/if.hh                             |   13 +-
 milena/mln/metal/int.hh                            |    8 +-
 milena/mln/metal/is.hh                             |   11 +-
 milena/mln/metal/is_a.hh                           |   39 +++--
 milena/mln/metal/is_not.hh                         |   13 +-
 milena/mln/metal/is_not_a.hh                       |    8 +-
 milena/mln/pw/image.hh                             |    8 +-
 milena/mln/pw/internal/image_base.hh               |   13 +-
 .../topo/adj_higher_dim_connected_n_face_iter.hh   |   26 ++--
 milena/mln/topo/adj_higher_face_iter.hh            |   26 ++--
 .../topo/adj_lower_dim_connected_n_face_iter.hh    |   27 ++--
 milena/mln/topo/adj_lower_face_iter.hh             |   26 ++--
 milena/mln/topo/adj_lower_higher_face_iter.hh      |   25 ++-
 milena/mln/topo/adj_m_face_iter.hh                 |   33 +++--
 milena/mln/topo/attic/faces_iter.hh                |   25 ++-
 milena/mln/topo/center_only_iter.hh                |   35 ++--
 milena/mln/topo/centered_iter_adapter.hh           |   29 ++--
 milena/mln/topo/complex.hh                         |   88 ++++++----
 milena/mln/topo/face_data.hh                       |    5 +-
 milena/mln/topo/face_iter.hh                       |   24 ++-
 milena/mln/topo/internal/complex_iterator_base.hh  |   14 +-
 .../internal/complex_relative_iterator_base.hh     |   47 +++--
 .../internal/complex_relative_iterator_sequence.hh |   24 ++-
 .../mln/topo/internal/complex_set_iterator_base.hh |   13 +-
 milena/mln/topo/n_face_iter.hh                     |   23 ++-
 milena/mln/topo/static_n_face_iter.hh              |   31 ++--
 milena/mln/trait/ch_function_value.hh              |    5 +-
 milena/mln/trait/image/props.hh                    |   10 +-
 milena/mln/trait/images.hh                         |    4 +-
 milena/mln/trait/neighborhood.hh                   |   30 +++-
 milena/mln/trait/promote.hh                        |   17 ++-
 milena/mln/trait/site_set/props.hh                 |  180 ++++++++++++-------
 milena/mln/trait/site_sets.hh                      |   26 ++-
 milena/mln/trait/solve.hh                          |   22 ++-
 milena/mln/trait/window/props.hh                   |   73 +++++++--
 milena/mln/trait/windows.hh                        |   29 ++-
 milena/mln/util/branch_iter.hh                     |   17 +-
 milena/mln/util/branch_iter_ind.hh                 |   17 +-
 milena/mln/util/edge.hh                            |    5 +-
 milena/mln/util/graph.hh                           |    9 +-
 milena/mln/util/internal/edge_impl.hh              |   32 ++---
 milena/mln/util/internal/graph_base.hh             |    7 +-
 milena/mln/util/internal/graph_iter.hh             |   27 ++-
 milena/mln/util/internal/vertex_impl.hh            |   27 +--
 milena/mln/util/lemmings.hh                        |    6 +-
 milena/mln/util/line_graph.hh                      |    7 +-
 milena/mln/util/site_pair.hh                       |    9 +-
 milena/mln/util/vertex.hh                          |    7 +-
 milena/mln/value/internal/value_like.hh            |   15 +-
 milena/mln/value/viter.hh                          |   23 ++-
 168 files changed, 2029 insertions(+), 1021 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 5ee5aff..756259b 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,177 @@
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
 
+	Tag internal documentation.
+
+	* apps/graph-morpho/morpho.hh,
+	* mln/accu/internal/couple.hh,
+	* mln/core/box_runend_piter.hh,
+	* mln/core/box_runstart_piter.hh,
+	* mln/core/concept/delta_point_site.hh,
+	* mln/core/concept/dpoint.hh,
+	* mln/core/concept/function.hh,
+	* mln/core/concept/gdpoint.hh,
+	* mln/core/concept/meta_accumulator.hh,
+	* mln/core/concept/neighborhood.hh,
+	* mln/core/concept/pseudo_site.hh,
+	* mln/core/concept/site.hh,
+	* mln/core/concept/site_proxy.hh,
+	* mln/core/concept/site_set.hh,
+	* mln/core/dpoints_pixter.hh,
+	* mln/core/dpsites_piter.hh,
+	* mln/core/image/ch_piter.hh,
+	* mln/core/image/complex_image.hh,
+	* mln/core/image/complex_neighborhood_piter.hh,
+	* mln/core/image/complex_window_piter.hh,
+	* mln/core/image/dmorph/extended.hh,
+	* mln/core/image/dmorph/extension_fun.hh,
+	* mln/core/image/dmorph/extension_ima.hh,
+	* mln/core/image/dmorph/extension_val.hh,
+	* mln/core/image/dmorph/hexa.hh,
+	* mln/core/image/dmorph/hexa_piter.hh,
+	* mln/core/image/dmorph/image2d_h.hh,
+	* mln/core/image/dmorph/image_if.hh,
+	* mln/core/image/dmorph/p2p_image.hh,
+	* mln/core/image/dmorph/slice_image.hh,
+	* mln/core/image/dmorph/sub_image.hh,
+	* mln/core/image/dmorph/sub_image_if.hh,
+	* mln/core/image/dmorph/transformed_image.hh,
+	* mln/core/image/dmorph/unproject_image.hh,
+	* mln/core/image/edge_image.hh,
+	* mln/core/image/flat_image.hh,
+	* mln/core/image/graph_window_if_piter.hh,
+	* mln/core/image/graph_window_piter.hh,
+	* mln/core/image/image1d.hh,
+	* mln/core/image/image2d.hh,
+	* mln/core/image/image3d.hh,
+	* mln/core/image/imorph/decorated_image.hh,
+	* mln/core/image/imorph/interpolated.hh,
+	* mln/core/image/imorph/labeled_image.hh,
+	* mln/core/image/imorph/lazy_image.hh,
+	* mln/core/image/imorph/plain.hh,
+	* mln/core/image/imorph/safe.hh,
+	* mln/core/image/imorph/tr_image.hh,
+	* mln/core/image/vertex_image.hh,
+	* mln/core/image/vmorph/cast_image.hh,
+	* mln/core/image/vmorph/fun_image.hh,
+	* mln/core/image/vmorph/thru_image.hh,
+	* mln/core/image/vmorph/violent_cast_image.hh,
+	* mln/core/internal/box_impl.hh,
+	* mln/core/internal/check/image_fastest.hh,
+	* mln/core/internal/classical_window_base.hh,
+	* mln/core/internal/complex_neighborhood_base.hh,
+	* mln/core/internal/complex_window_base.hh,
+	* mln/core/internal/complex_window_p_base.hh,
+	* mln/core/internal/fixme.hh,
+	* mln/core/internal/graph_psite_base.hh,
+	* mln/core/internal/graph_window_base.hh,
+	* mln/core/internal/image_base.hh,
+	* mln/core/internal/image_domain_morpher.hh,
+	* mln/core/internal/image_identity.hh,
+	* mln/core/internal/image_morpher.hh,
+	* mln/core/internal/image_primary.hh,
+	* mln/core/internal/image_value_morpher.hh,
+	* mln/core/internal/is_masked_impl_selector.hh,
+	* mln/core/internal/labeled_image_base.hh,
+	* mln/core/internal/morpher_lvalue.hh,
+	* mln/core/internal/neighb_base.hh,
+	* mln/core/internal/neighb_niter_base.hh,
+	* mln/core/internal/neighb_niter_impl.hh,
+	* mln/core/internal/neighborhood_base.hh,
+	* mln/core/internal/piter_adaptor.hh,
+	* mln/core/internal/piter_identity.hh,
+	* mln/core/internal/pixel_impl.hh,
+	* mln/core/internal/pixel_iterator_base.hh,
+	* mln/core/internal/pseudo_site_base.hh,
+	* mln/core/internal/run_image.hh,
+	* mln/core/internal/set_of.hh,
+	* mln/core/internal/site_relative_iterator_base.hh,
+	* mln/core/internal/site_set_base.hh,
+	* mln/core/internal/site_set_iterator_base.hh,
+	* mln/core/internal/weighted_window_base.hh,
+	* mln/core/internal/window_base.hh,
+	* mln/core/pixter1d.hh,
+	* mln/core/pixter2d.hh,
+	* mln/core/pixter3d.hh,
+	* mln/core/routine/ops.hh,
+	* mln/core/site_set/attic/p_complex_faces_piter.hh,
+	* mln/core/site_set/attic/p_faces_piter.hh,
+	* mln/core/site_set/box_piter.hh,
+	* mln/core/site_set/complex_psite.hh,
+	* mln/core/site_set/p_array.hh,
+	* mln/core/site_set/p_complex_piter.hh,
+	* mln/core/site_set/p_edges_psite.hh,
+	* mln/core/site_set/p_graph_piter.hh,
+	* mln/core/site_set/p_if_piter.hh,
+	* mln/core/site_set/p_n_faces_piter.hh,
+	* mln/core/site_set/p_run_piter.hh,
+	* mln/core/site_set/p_transformed_piter.hh,
+	* mln/core/site_set/p_vertices_psite.hh,
+	* mln/fun/c.hh,
+	* mln/fun/internal/ch_function_value_impl.hh,
+	* mln/fun/v2v/ch_function_value.hh,
+	* mln/fun/x2x/composed.hh,
+	* mln/geom/complex_geometry.hh,
+	* mln/labeling/blobs.hh,
+	* mln/labeling/blobs_and_compute.hh,
+	* mln/metal/ands.hh,
+	* mln/metal/bexpr.hh,
+	* mln/metal/bool.hh,
+	* mln/metal/converts_to.hh,
+	* mln/metal/equal.hh,
+	* mln/metal/goes_to.hh,
+	* mln/metal/if.hh,
+	* mln/metal/int.hh,
+	* mln/metal/is.hh,
+	* mln/metal/is_a.hh,
+	* mln/metal/is_not.hh,
+	* mln/metal/is_not_a.hh,
+	* mln/pw/image.hh,
+	* mln/pw/internal/image_base.hh,
+	* mln/topo/adj_higher_dim_connected_n_face_iter.hh,
+	* mln/topo/adj_higher_face_iter.hh,
+	* mln/topo/adj_lower_dim_connected_n_face_iter.hh,
+	* mln/topo/adj_lower_face_iter.hh,
+	* mln/topo/adj_lower_higher_face_iter.hh,
+	* mln/topo/adj_m_face_iter.hh,
+	* mln/topo/attic/faces_iter.hh,
+	* mln/topo/center_only_iter.hh,
+	* mln/topo/centered_iter_adapter.hh,
+	* mln/topo/complex.hh,
+	* mln/topo/face_data.hh,
+	* mln/topo/face_iter.hh,
+	* mln/topo/internal/complex_iterator_base.hh,
+	* mln/topo/internal/complex_relative_iterator_base.hh,
+	* mln/topo/internal/complex_relative_iterator_sequence.hh,
+	* mln/topo/internal/complex_set_iterator_base.hh,
+	* mln/topo/n_face_iter.hh,
+	* mln/topo/static_n_face_iter.hh,
+	* mln/trait/ch_function_value.hh,
+	* mln/trait/image/props.hh,
+	* mln/trait/images.hh,
+	* mln/trait/neighborhood.hh,
+	* mln/trait/promote.hh,
+	* mln/trait/site_set/props.hh,
+	* mln/trait/site_sets.hh,
+	* mln/trait/solve.hh,
+	* mln/trait/window/props.hh,
+	* mln/trait/windows.hh,
+	* mln/util/branch_iter.hh,
+	* mln/util/branch_iter_ind.hh,
+	* mln/util/edge.hh,
+	* mln/util/graph.hh,
+	* mln/util/internal/edge_impl.hh,
+	* mln/util/internal/graph_base.hh,
+	* mln/util/internal/graph_iter.hh,
+	* mln/util/internal/vertex_impl.hh,
+	* mln/util/lemmings.hh,
+	* mln/util/line_graph.hh,
+	* mln/util/site_pair.hh,
+	* mln/util/vertex.hh,
+	* mln/value/internal/value_like.hh,
+	* mln/value/viter.hh: Add \internal tag.
+
+2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
+
 	* mln/core/internal/image_base.hh: Set documentation as internal.
 
 2013-03-08  Guillaume Lazzara  <z(a)lrde.epita.fr>
diff --git a/milena/apps/graph-morpho/morpho.hh b/milena/apps/graph-morpho/morpho.hh
index bcdcdd9..c1e8484 100644
--- a/milena/apps/graph-morpho/morpho.hh
+++ b/milena/apps/graph-morpho/morpho.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -68,7 +69,10 @@
 
 namespace trait
 {
-  /// Graph traits.
+  /*!
+    \internal
+    \brief Graph traits.
+  */
   template <typename I>
   struct graph
   {
@@ -89,7 +93,10 @@ namespace trait
   // Graph traits for (mln::image2d-based) cubical 2-complexes.  //
   // ----------------------------------------------------------- //
 
-  /// Graph traits for mln::image2d.
+  /*!
+    \internal
+    \brief Graph traits for mln::image2d.
+  */
   template <typename T>
   struct graph< mln::image2d<T> >
   {
@@ -128,7 +135,10 @@ namespace trait
   // Graph traits for (general) 1-complexes.  //
   // ---------------------------------------- //
 
-  /// Graph traits for 1-complexes images.
+  /*!
+    \internal
+    \brief Graph traits for 1-complexes images.
+  */
   template <typename G, typename V>
   struct graph< mln::complex_image<1, G, V> >
   {
diff --git a/milena/mln/accu/internal/couple.hh b/milena/mln/accu/internal/couple.hh
index 55c6cc4..2e861b3 100644
--- a/milena/mln/accu/internal/couple.hh
+++ b/milena/mln/accu/internal/couple.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,11 +48,14 @@ namespace mln
     namespace internal
     {
 
-      /// Base implementation of a couple of accumulators.
-      ///
-      /// The parameter \c T is the type of values.
-      ///
-      /// \todo Check that, when T is not provided, A1 and A2 have the same value.
+      /*!
+	\internal
+	\brief Base implementation of a couple of accumulators.
+
+        The parameter \c T is the type of values.
+
+        \todo Check that, when T is not provided, A1 and A2 have the same value.
+      */
       template <typename A1, typename A2, typename R, typename E>
       class couple
         : public base<R,E>,
diff --git a/milena/mln/core/box_runend_piter.hh b/milena/mln/core/box_runend_piter.hh
index e40760f..fdb886f 100644
--- a/milena/mln/core/box_runend_piter.hh
+++ b/milena/mln/core/box_runend_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,10 +42,12 @@
 namespace mln
 {
 
-  /*! \brief A generic backward iterator on points by lines.
-   *
-   * The parameter \c P is the type of points.
-   */
+  /*!
+    \internal
+    \brief A generic backward iterator on points by lines.
+
+    The parameter \c P is the type of points.
+  */
   template <typename P>
   class box_runend_piter :
     public internal::site_set_iterator_base< box<P>,
diff --git a/milena/mln/core/box_runstart_piter.hh b/milena/mln/core/box_runstart_piter.hh
index d031a2b..dec4a42 100644
--- a/milena/mln/core/box_runstart_piter.hh
+++ b/milena/mln/core/box_runstart_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,10 +42,12 @@
 namespace mln
 {
 
-  /*! \brief A generic forward iterator on points by lines.
-   *
-   * The parameter \c P is the type of points.
-   */
+  /*!
+    \internal
+    \brief A generic forward iterator on points by lines.
+
+    The parameter \c P is the type of points.
+  */
   template <typename P>
   class box_runstart_piter :
     public internal::site_set_iterator_base< box<P>,
diff --git a/milena/mln/core/concept/delta_point_site.hh b/milena/mln/core/concept/delta_point_site.hh
index 693320f..b7107a9 100644
--- a/milena/mln/core/concept/delta_point_site.hh
+++ b/milena/mln/core/concept/delta_point_site.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -65,7 +66,10 @@ namespace mln
 
 
 
-  /// Delta point site category flag type.
+  /*!
+    \internal
+    \brief Delta point site category flag type.
+  */
   template <>
   struct Delta_Point_Site<void>
   {
@@ -73,8 +77,10 @@ namespace mln
   };
 
 
-  /*! \brief FIXME: Doc!
-   */
+  /*!
+    \internal
+    \brief FIXME: Doc!
+  */
   template <typename E>
   struct Delta_Point_Site : public Object<E>
   {
@@ -101,7 +107,7 @@ namespace mln
   // Operators.
 
   template <typename D>
-  std::ostream& 
+  std::ostream&
   operator<<(std::ostream& ostr, const Delta_Point_Site<D>& dp);
 
 
diff --git a/milena/mln/core/concept/dpoint.hh b/milena/mln/core/concept/dpoint.hh
index 80f8ae6..7b2fa39 100644
--- a/milena/mln/core/concept/dpoint.hh
+++ b/milena/mln/core/concept/dpoint.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -49,16 +50,18 @@ namespace mln
   };
 
 
-  /*! \brief Base class for implementation of delta-point classes.
-   *
-   * A delta-point is a vector defined by a couple of points.
-   *
-   * Given two points, A and B, the vector AB is mapped into the
-   * delta-point D = AB.  Practically one can write: D = B - A.   
-   *
-   * \see mln::doc::Dpoint for a complete documentation of this class
-   * contents.
-   */
+  /*!
+    \internal
+    \brief Base class for implementation of delta-point classes.
+
+    A delta-point is a vector defined by a couple of points.
+
+    Given two points, A and B, the vector AB is mapped into the
+    delta-point D = AB.  Practically one can write: D = B - A.
+
+    \see mln::doc::Dpoint for a complete documentation of this class
+    contents.
+  */
   template <typename E>
   struct Dpoint : public Delta_Point_Site<E>
   {
diff --git a/milena/mln/core/concept/function.hh b/milena/mln/core/concept/function.hh
index 22e338e..361c893 100644
--- a/milena/mln/core/concept/function.hh
+++ b/milena/mln/core/concept/function.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -46,7 +46,10 @@ namespace mln
   template <typename E> struct Function_vv2b;
 
 
-  /// Function category flag type.
+  /*!
+    \internal
+    \brief Function category flag type.
+  */
   template <>
   struct Function<void>
   {
diff --git a/milena/mln/core/concept/gdpoint.hh b/milena/mln/core/concept/gdpoint.hh
index 2a7adf9..b8ef9cf 100644
--- a/milena/mln/core/concept/gdpoint.hh
+++ b/milena/mln/core/concept/gdpoint.hh
@@ -83,7 +83,10 @@ namespace mln
 
 
 
-  /// Delta point site category flag type.
+  /*!
+    \internal
+    \brief Delta point site category flag type.
+  */
   template <>
   struct Gdpoint<void>
   {
diff --git a/milena/mln/core/concept/meta_accumulator.hh b/milena/mln/core/concept/meta_accumulator.hh
index f00a0c6..c86bde5 100644
--- a/milena/mln/core/concept/meta_accumulator.hh
+++ b/milena/mln/core/concept/meta_accumulator.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -62,9 +62,11 @@ namespace mln
   namespace internal
   {
 
-    /// Make the type resolution easier for the compiler.
-    /// Introduced for ICC compatibility.
-    //
+    /*!
+      \internal
+      \brief Make the type resolution easier for the compiler.
+      Introduced for ICC compatibility.
+    */
     template <typename A, typename T>
     struct meta_accu_ret_result_helper
     {
@@ -72,9 +74,11 @@ namespace mln
     };
 
 
-    /// Make the type resolution easier for the compiler.
-    /// Introduced for ICC compatibility.
-    //
+    /*!
+      \internal
+      \brief Make the type resolution easier for the compiler.
+      Introduced for ICC compatibility.
+    */
     template <typename A, typename T>
     struct accu_with_helper
     {
@@ -92,12 +96,14 @@ namespace mln
     typedef Object<void> super;
   };
 
-  /*! \brief Base class for implementation of meta accumulators.
-   *
-   * The parameter \a E is the exact type.
-   *
-   * \see mln::doc::Meta_Accumulator for a complete documentation of
-   * this class contents.
+  /*!
+    \internal
+    \brief Base class for implementation of meta accumulators.
+
+    The parameter \a E is the exact type.
+
+    \see mln::doc::Meta_Accumulator for a complete documentation of
+    this class contents.
    */
   template <typename E>
   struct Meta_Accumulator : public Object<E>
diff --git a/milena/mln/core/concept/neighborhood.hh b/milena/mln/core/concept/neighborhood.hh
index 3fa0521..00fb222 100644
--- a/milena/mln/core/concept/neighborhood.hh
+++ b/milena/mln/core/concept/neighborhood.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -49,8 +49,10 @@ namespace mln
   template <typename E> struct Neighborhood;
 
 
-  /// Neighborhood category flag type.
-
+  /*!
+    \internal
+    \brief Neighborhood category flag type.
+  */
   template <>
   struct Neighborhood<void>
   {
diff --git a/milena/mln/core/concept/pseudo_site.hh b/milena/mln/core/concept/pseudo_site.hh
index b550baf..77eb961 100644
--- a/milena/mln/core/concept/pseudo_site.hh
+++ b/milena/mln/core/concept/pseudo_site.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -48,7 +48,10 @@ namespace mln
 
 
 
-  /// Pseudo_Site category flag type.
+  /*!
+    \internal
+    \brief Pseudo_Site category flag type.
+  */
   template <>
   struct Pseudo_Site<void>
   {
@@ -125,7 +128,7 @@ namespace mln
       template <>
       struct helper< /* is an Object */ true >
       {
- 
+
 	template <typename P>
 	void change_target(Pseudo_Site<P>& p,
 			   const mln_target(P)& new_target) const
@@ -138,7 +141,7 @@ namespace mln
 	{
 	  // No-op.
 	}
-	
+
       };
 
       template <>
@@ -150,7 +153,7 @@ namespace mln
 	  // No-op.
 	}
       };
-      
+
     } // namespace mln::if_possible::internal
 
 
diff --git a/milena/mln/core/concept/site.hh b/milena/mln/core/concept/site.hh
index cc6c73d..68a4bcb 100644
--- a/milena/mln/core/concept/site.hh
+++ b/milena/mln/core/concept/site.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,7 +42,10 @@ namespace mln
   template <typename E> struct Site;
 
 
-  /// Site category flag type.
+  /*!
+    \internal
+    \brief Site category flag type.
+  */
   template <>
   struct Site<void>
   {
diff --git a/milena/mln/core/concept/site_proxy.hh b/milena/mln/core/concept/site_proxy.hh
index 2d964e7..8293423 100644
--- a/milena/mln/core/concept/site_proxy.hh
+++ b/milena/mln/core/concept/site_proxy.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -45,7 +45,10 @@ namespace mln
   template <typename E> struct Site_Proxy;
 
 
-  /// Site_Proxy category flag type.
+  /*!
+    \internal
+    \brief Site_Proxy category flag type.
+  */
   template <>
   struct Site_Proxy<void>
   {
diff --git a/milena/mln/core/concept/site_set.hh b/milena/mln/core/concept/site_set.hh
index 2e25f93..dc1885b 100644
--- a/milena/mln/core/concept/site_set.hh
+++ b/milena/mln/core/concept/site_set.hh
@@ -50,7 +50,10 @@ namespace mln
   template <typename E> struct Site_Set;
 
 
-  /// Site_Set category flag type.
+  /*!
+    \internal
+    \brief Site_Set category flag type.
+  */
   template <>
   struct Site_Set<void>
   {
@@ -58,10 +61,12 @@ namespace mln
   };
 
 
-  /// Base class for implementation classes of site sets.
-  ///
-  /// \see mln::doc::Site_Set for a complete documentation of this
-  /// class contents.
+  /*!
+    \brief Base class for implementation classes of site sets.
+
+    \see mln::doc::Site_Set for a complete documentation of this
+    class contents.
+  */
   template <typename E>
   struct Site_Set : public Object<E>
   {
diff --git a/milena/mln/core/dpoints_pixter.hh b/milena/mln/core/dpoints_pixter.hh
index aeea333..2a79e12 100644
--- a/milena/mln/core/dpoints_pixter.hh
+++ b/milena/mln/core/dpoints_pixter.hh
@@ -50,10 +50,13 @@ namespace mln
   | dpoints_fwd_pixter<I>.  |
   `------------------------*/
 
-  /// \brief A generic forward iterator on the pixels of a
-  /// dpoint-based window or neighborhood.
-  ///
-  /// Parameter \c I is the image type.
+  /*!
+    \internal
+    \brief A generic forward iterator on the pixels of a
+    dpoint-based window or neighborhood.
+
+    Parameter \c I is the image type.
+  */
   template <typename I>
   class dpoints_fwd_pixter
     : public Pixel_Iterator< dpoints_fwd_pixter<I> >,
@@ -133,10 +136,13 @@ namespace mln
   | dpoints_bkd_pixter<I>.  |
   `------------------------*/
 
-  /// \brief A generic backward iterator on the pixels of a
-  /// dpoint-based window or neighborhood.
-  ///
-  /// Parameter \c I is the image type.
+  /*!
+    \internal
+    \brief A generic backward iterator on the pixels of a
+    dpoint-based window or neighborhood.
+
+    Parameter \c I is the image type.
+  */
   template <typename I>
   class dpoints_bkd_pixter
     : public Pixel_Iterator< dpoints_bkd_pixter<I> >,
diff --git a/milena/mln/core/dpsites_piter.hh b/milena/mln/core/dpsites_piter.hh
index 0bbb0f5..927ac6b 100644
--- a/milena/mln/core/dpsites_piter.hh
+++ b/milena/mln/core/dpsites_piter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -39,11 +39,14 @@
 namespace mln
 {
 
-  /// A generic forward iterator on points of windows and of
-  ///  neighborhoods.
-  ///
-  /// The parameter \c V is the type of std::vector enclosing
-  /// structure.
+  /*!
+    \internal
+    \brief A generic forward iterator on points of windows and of
+    neighborhoods.
+
+    The parameter \c V is the type of std::vector enclosing
+    structure.
+  */
   template <typename V>
   class dpsites_fwd_piter
     : public internal::site_relative_iterator_base< V, dpsites_fwd_piter<V> >
@@ -85,11 +88,14 @@ namespace mln
   };
 
 
-  /// A generic backward iterator on points of windows and of
-  ///  neighborhoods.
-  ///
-  /// The parameter \c V is the type of std::vector enclosing
-  /// structure.
+  /*!
+    \internal
+    \brief A generic backward iterator on points of windows and of
+    neighborhoods.
+
+    The parameter \c V is the type of std::vector enclosing
+    structure.
+  */
   template <typename V>
   class dpsites_bkd_piter :
     public internal::site_relative_iterator_base< V, dpsites_bkd_piter<V> >
diff --git a/milena/mln/core/image/ch_piter.hh b/milena/mln/core/image/ch_piter.hh
index b7c53f8..2677edd 100644
--- a/milena/mln/core/image/ch_piter.hh
+++ b/milena/mln/core/image/ch_piter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -47,7 +47,10 @@ namespace mln
   namespace internal
   {
 
-    /// \internal Data structure for \c mln::ch_piter_image<I,Fwd>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::ch_piter_image<I,Fwd>.
+    */
     template <typename I, typename Fwd>
     struct data< ch_piter_image<I,Fwd> >
     {
diff --git a/milena/mln/core/image/complex_image.hh b/milena/mln/core/image/complex_image.hh
index 07c6e91..d6b7480 100644
--- a/milena/mln/core/image/complex_image.hh
+++ b/milena/mln/core/image/complex_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -52,7 +53,10 @@ namespace mln
   namespace internal
   {
 
-    /// A boolean proxy, used to fool std::vector.
+    /*!
+      \internal
+      \brief A boolean proxy, used to fool std::vector.
+    */
     struct bool_proxy
     {
     public:
@@ -94,7 +98,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::complex_image.
+    /*!
+      \internal
+      \brief Data structure for \c mln::complex_image.
+    */
     template <unsigned D, typename G, typename V>
     struct data< complex_image<D, G, V> >
     {
diff --git a/milena/mln/core/image/complex_neighborhood_piter.hh b/milena/mln/core/image/complex_neighborhood_piter.hh
index 6298aac..51c049a 100644
--- a/milena/mln/core/image/complex_neighborhood_piter.hh
+++ b/milena/mln/core/image/complex_neighborhood_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,7 +49,10 @@ namespace mln
   | complex_neighborhood_fwd_piter<I, G, N>.  |
   `------------------------------------------*/
 
-  /// \brief Forward iterator on complex neighborhood.
+  /*!
+    \internal
+    \brief Forward iterator on complex neighborhood.
+  */
   template <typename I, typename G, typename N>
   class complex_neighborhood_fwd_piter
     : public internal::site_relative_iterator_base< N,
@@ -119,7 +123,10 @@ namespace mln
   | complex_neighborhood_bkd_piter<I, G, N>.  |
   `------------------------------------------*/
 
-  /// \brief Backward iterator on complex neighborhood.
+  /*!
+    \internal
+    \brief Backward iterator on complex neighborhood.
+  */
   template <typename I, typename G, typename N>
   class complex_neighborhood_bkd_piter
     : public internal::site_relative_iterator_base< N,
diff --git a/milena/mln/core/image/complex_window_piter.hh b/milena/mln/core/image/complex_window_piter.hh
index ab6326c..208d4e6 100644
--- a/milena/mln/core/image/complex_window_piter.hh
+++ b/milena/mln/core/image/complex_window_piter.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2008, 2009, 2010, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2010, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -49,7 +49,10 @@ namespace mln
   | complex_window_fwd_piter<I, G, W>.  |
   `------------------------------------*/
 
-  /// \brief Forward iterator on complex window.
+  /*!
+    \internal
+    \brief Forward iterator on complex window.
+  */
   template <typename I, typename G, typename W>
   class complex_window_fwd_piter
     : public internal::site_relative_iterator_base< W,
@@ -119,7 +122,10 @@ namespace mln
   | complex_window_bkd_piter<I, G, W>.  |
   `------------------------------------*/
 
-  /// \brief Backward iterator on complex window.
+  /*!
+    \internal
+    \brief Backward iterator on complex window.
+  */
   template <typename I, typename G, typename W>
   class complex_window_bkd_piter
     : public internal::site_relative_iterator_base< W,
diff --git a/milena/mln/core/image/dmorph/extended.hh b/milena/mln/core/image/dmorph/extended.hh
index 791ab1d..ed94a04 100644
--- a/milena/mln/core/image/dmorph/extended.hh
+++ b/milena/mln/core/image/dmorph/extended.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -50,7 +50,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::extended<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::extended<I>.
+    */
     template <typename I>
     struct data< extended<I> >
     {
diff --git a/milena/mln/core/image/dmorph/extension_fun.hh b/milena/mln/core/image/dmorph/extension_fun.hh
index 887fe02..aa5274e 100644
--- a/milena/mln/core/image/dmorph/extension_fun.hh
+++ b/milena/mln/core/image/dmorph/extension_fun.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -49,7 +49,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::extension_fun<I, F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::extension_fun<I, F>.
+    */
     template <typename I, typename F>
     struct data< extension_fun<I, F> >
     {
diff --git a/milena/mln/core/image/dmorph/extension_ima.hh b/milena/mln/core/image/dmorph/extension_ima.hh
index 63ea0ed..d194b82 100644
--- a/milena/mln/core/image/dmorph/extension_ima.hh
+++ b/milena/mln/core/image/dmorph/extension_ima.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -46,7 +46,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::extension_ima<I, J>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::extension_ima<I, J>.
+    */
     template <typename I, typename J>
     struct data< extension_ima<I, J> >
     {
diff --git a/milena/mln/core/image/dmorph/extension_val.hh b/milena/mln/core/image/dmorph/extension_val.hh
index c0ccbe0..e5ecef7 100644
--- a/milena/mln/core/image/dmorph/extension_val.hh
+++ b/milena/mln/core/image/dmorph/extension_val.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -48,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::extension_val<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::extension_val<I>.
+    */
     template <typename I>
     struct data< extension_val<I> >
     {
diff --git a/milena/mln/core/image/dmorph/hexa.hh b/milena/mln/core/image/dmorph/hexa.hh
index 314cba1..cd856bd 100644
--- a/milena/mln/core/image/dmorph/hexa.hh
+++ b/milena/mln/core/image/dmorph/hexa.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,7 +48,10 @@ namespace mln
 
   namespace internal
   {
-    /// Data structure for \c mln::hexa<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::hexa<I>.
+    */
     template <typename I>
     struct data< hexa<I> >
     {
@@ -63,7 +66,10 @@ namespace mln
 
   namespace trait
   {
-    /// FIXME: use the right properties.
+    /*!
+      \internal
+      FIXME: use the right properties.
+    */
     template <typename I>
     struct image_< hexa<I> > : default_image_morpher< I, mln_value(I),
 						       hexa<I> >
diff --git a/milena/mln/core/image/dmorph/hexa_piter.hh b/milena/mln/core/image/dmorph/hexa_piter.hh
index 97b2077..d4841cd 100644
--- a/milena/mln/core/image/dmorph/hexa_piter.hh
+++ b/milena/mln/core/image/dmorph/hexa_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,13 +40,15 @@
 namespace mln
 {
 
-  /// A generic forward iterator on points of subsets.
-  ///
-  /// Parameter \c S is a point set type; parameter F is a function
-  /// from point to Boolean.
-  ///
-  /// \see mln::hexa
-  ///
+  /*!
+    \internal
+    \brief A generic forward iterator on points of subsets.
+
+    Parameter \c S is a point set type; parameter F is a function
+    from point to Boolean.
+
+    \see mln::hexa
+  */
   template <typename S>
   class hexa_fwd_piter_
     : public internal::piter_adaptor_< mln_fwd_piter(S),
diff --git a/milena/mln/core/image/dmorph/image2d_h.hh b/milena/mln/core/image/dmorph/image2d_h.hh
index adcb272..35dcf5a 100644
--- a/milena/mln/core/image/dmorph/image2d_h.hh
+++ b/milena/mln/core/image/dmorph/image2d_h.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
diff --git a/milena/mln/core/image/dmorph/image_if.hh b/milena/mln/core/image/dmorph/image_if.hh
index 58b6106..ed9a05a 100644
--- a/milena/mln/core/image/dmorph/image_if.hh
+++ b/milena/mln/core/image/dmorph/image_if.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::image_if<I,F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::image_if<I,F>.
+    */
     template <typename I, typename F>
     struct data< image_if<I,F> >
     {
diff --git a/milena/mln/core/image/dmorph/p2p_image.hh b/milena/mln/core/image/dmorph/p2p_image.hh
index ca1b3d5..3b2c563 100644
--- a/milena/mln/core/image/dmorph/p2p_image.hh
+++ b/milena/mln/core/image/dmorph/p2p_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,7 +46,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::p2p_image<I,F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::p2p_image<I,F>.
+    */
     template <typename I, typename F>
     struct data< p2p_image<I,F> >
     {
diff --git a/milena/mln/core/image/dmorph/slice_image.hh b/milena/mln/core/image/dmorph/slice_image.hh
index a5e2983..c779858 100644
--- a/milena/mln/core/image/dmorph/slice_image.hh
+++ b/milena/mln/core/image/dmorph/slice_image.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -49,7 +49,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::slice_image<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::slice_image<I>.
+    */
     template <typename I>
     struct data< slice_image<I> >
     {
diff --git a/milena/mln/core/image/dmorph/sub_image.hh b/milena/mln/core/image/dmorph/sub_image.hh
index d266ce6..bf42c75 100644
--- a/milena/mln/core/image/dmorph/sub_image.hh
+++ b/milena/mln/core/image/dmorph/sub_image.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009, 2010, 2011 EPITA Research and
+// Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012 EPITA Research and
 // Development Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -50,7 +50,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::sub_image<I,S>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::sub_image<I,S>.
+    */
     template <typename I, typename S>
     struct data< sub_image<I,S> >
     {
diff --git a/milena/mln/core/image/dmorph/sub_image_if.hh b/milena/mln/core/image/dmorph/sub_image_if.hh
index 2cc9661..f4c9fe2 100644
--- a/milena/mln/core/image/dmorph/sub_image_if.hh
+++ b/milena/mln/core/image/dmorph/sub_image_if.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -53,7 +53,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::sub_image_if<I,S>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::sub_image_if<I,S>.
+    */
     template <typename I, typename S>
     struct data< sub_image_if<I,S> >
     {
diff --git a/milena/mln/core/image/dmorph/transformed_image.hh b/milena/mln/core/image/dmorph/transformed_image.hh
index 0fb4509..2a7970b 100644
--- a/milena/mln/core/image/dmorph/transformed_image.hh
+++ b/milena/mln/core/image/dmorph/transformed_image.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2009, 2011 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2009, 2011, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -49,7 +49,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::transformed_image<I,F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::transformed_image<I,F>.
+    */
     template <typename I, typename F>
     struct data< transformed_image<I,F> >
     {
diff --git a/milena/mln/core/image/dmorph/unproject_image.hh b/milena/mln/core/image/dmorph/unproject_image.hh
index 6a79012..1f6c078 100644
--- a/milena/mln/core/image/dmorph/unproject_image.hh
+++ b/milena/mln/core/image/dmorph/unproject_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::unproject_image<I,D,F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::unproject_image<I,D,F>.
+    */
     template <typename I, typename D, typename F>
     struct data< unproject_image<I,D,F> >
     {
diff --git a/milena/mln/core/image/edge_image.hh b/milena/mln/core/image/edge_image.hh
index 1c19b07..5be1ff0 100644
--- a/milena/mln/core/image/edge_image.hh
+++ b/milena/mln/core/image/edge_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -66,7 +67,9 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for mln::pw::internal::image
+    /*! \internal
+      \brief Data structure for mln::pw::internal::image
+    */
     template <typename P, typename V, typename G>
     struct data< mln::edge_image<P,V,G> >
     {
diff --git a/milena/mln/core/image/flat_image.hh b/milena/mln/core/image/flat_image.hh
index 6647766..813f29c 100644
--- a/milena/mln/core/image/flat_image.hh
+++ b/milena/mln/core/image/flat_image.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -48,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::flat_image<T,S>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::flat_image<T,S>.
+    */
     template <typename T, typename S>
     struct data< flat_image<T,S> >
     {
diff --git a/milena/mln/core/image/graph_window_if_piter.hh b/milena/mln/core/image/graph_window_if_piter.hh
index 1060f15..7a865e1 100644
--- a/milena/mln/core/image/graph_window_if_piter.hh
+++ b/milena/mln/core/image/graph_window_if_piter.hh
@@ -44,7 +44,10 @@ namespace mln
 
 
 
-  /// Forward iterator on line graph window.
+  /*!
+    \internal
+    \brief Forward iterator on line graph window.
+  */
   template <typename S, typename W, typename I>
   class graph_window_if_piter
     : public internal::site_relative_iterator_base< W,
diff --git a/milena/mln/core/image/graph_window_piter.hh b/milena/mln/core/image/graph_window_piter.hh
index ae86e8f..744e0bb 100644
--- a/milena/mln/core/image/graph_window_piter.hh
+++ b/milena/mln/core/image/graph_window_piter.hh
@@ -49,8 +49,11 @@ namespace mln
   namespace internal
   {
 
-    /// The window center and the window elements are part of
-    /// different site sets.
+    /*!
+      \internal
+      \brief The window center and the window elements are part of
+      different site sets.
+    */
     template <typename C, typename P, typename E>
     struct impl_selector
     {
@@ -63,8 +66,11 @@ namespace mln
 
     };
 
-    /// The window center and the window elements are part of the same
-    /// site set.
+    /*!
+      \internal
+      \brief The window center and the window elements are part of the same
+      site set.
+    */
     template <typename C, typename E>
     struct impl_selector<C,C,E>
     {
@@ -89,12 +95,14 @@ namespace mln
   } // end of namespace mln::internal
 
 
-  /// Forward iterator on line graph window.
-  ///
-  /// \tparam S is the site set type.
-  /// \tparam W is the window type.
-  /// \tparam I is the underlying iterator type.
-  //
+  /*!
+    \internal
+    \brief Forward iterator on line graph window.
+
+    \tparam S is the site set type.
+    \tparam W is the window type.
+    \tparam I is the underlying iterator type.
+  */
   template <typename S, typename W, typename I>
   class graph_window_piter
     : public internal::site_relative_iterator_base< W,
diff --git a/milena/mln/core/image/image1d.hh b/milena/mln/core/image/image1d.hh
index 60f828d..701a0f5 100644
--- a/milena/mln/core/image/image1d.hh
+++ b/milena/mln/core/image/image1d.hh
@@ -58,7 +58,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::image1d<T>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::image1d<T>.
+    */
     template <typename T>
     struct data< image1d<T> >
     {
diff --git a/milena/mln/core/image/image2d.hh b/milena/mln/core/image/image2d.hh
index 213c7c9..31dc802 100644
--- a/milena/mln/core/image/image2d.hh
+++ b/milena/mln/core/image/image2d.hh
@@ -62,7 +62,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::image2d<T>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::image2d<T>.
+    */
     template <typename T>
     struct data< image2d<T> >
     {
@@ -161,9 +164,13 @@ namespace mln
     image2d(const box2d& b, unsigned bdr = border::thickness);
 
 
+    /// @cond INTERNAL_API
+
     /// Initialize an empty image.
     void init_(const box2d& b, unsigned bdr = border::thickness);
 
+    /// @endcond
+
 
     /// Test if \p p is valid.
     bool has(const point2d& p) const;
@@ -207,12 +214,17 @@ namespace mln
     // Specific methods:
     // -----------------
 
+    /// @cond INTERNAL_API
+
     /// Read-only access to the image value located at (\p row, \p col).
     const T& at_(mln::def::coord row, mln::def::coord col) const;
 
     /// Read-write access to the image value located at (\p row, \p col).
     T& at_(mln::def::coord row, mln::def::coord col);
 
+    /// @endcond
+
+
     /// Give the number of rows.
     unsigned nrows() const;
 
@@ -251,8 +263,12 @@ namespace mln
     T* buffer();
 
 
+    /// @cond INTERNAL_API
+
     /// Resize image border with new_border.
     void resize_(unsigned new_border);
+
+    /// @endcond
   };
 
 
diff --git a/milena/mln/core/image/image3d.hh b/milena/mln/core/image/image3d.hh
index 9a4fabf..a5b6203 100644
--- a/milena/mln/core/image/image3d.hh
+++ b/milena/mln/core/image/image3d.hh
@@ -58,7 +58,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::image3d<T>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::image3d<T>.
+    */
     template <typename T>
     struct data< image3d<T> >
     {
diff --git a/milena/mln/core/image/imorph/decorated_image.hh b/milena/mln/core/image/imorph/decorated_image.hh
index ea0d767..0287940 100644
--- a/milena/mln/core/image/imorph/decorated_image.hh
+++ b/milena/mln/core/image/imorph/decorated_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -59,7 +60,10 @@ namespace mln
       typedef mln::value::proxy<const E> lvalue;
     };
 
-    /// Data structure for \c mln::decorated_image<I,D>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::decorated_image<I,D>.
+    */
     template <typename I, typename D>
     struct data< decorated_image<I,D> >
     {
diff --git a/milena/mln/core/image/imorph/interpolated.hh b/milena/mln/core/image/imorph/interpolated.hh
index 43f9a7e..d92dd0f 100644
--- a/milena/mln/core/image/imorph/interpolated.hh
+++ b/milena/mln/core/image/imorph/interpolated.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -50,7 +50,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::interpolated<I, F>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::interpolated<I, F>.
+    */
     template <typename I, template <class> class F>
     struct data< interpolated<I,F> >
     {
diff --git a/milena/mln/core/image/imorph/labeled_image.hh b/milena/mln/core/image/imorph/labeled_image.hh
index c99f386..d62735f 100644
--- a/milena/mln/core/image/imorph/labeled_image.hh
+++ b/milena/mln/core/image/imorph/labeled_image.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2009, 2010, 2011 EPITA Research and Development
+// Copyright (C) 2009, 2010, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -62,7 +62,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::labeled_image<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::labeled_image<I>.
+    */
     template <typename I>
     struct data< labeled_image<I> >
       : data< labeled_image_base<I, labeled_image<I> > >
diff --git a/milena/mln/core/image/imorph/lazy_image.hh b/milena/mln/core/image/imorph/lazy_image.hh
index 0110bec..bcba84d 100644
--- a/milena/mln/core/image/imorph/lazy_image.hh
+++ b/milena/mln/core/image/imorph/lazy_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -46,7 +47,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::lazy_image<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::lazy_image<I>.
+    */
     template <typename I, typename F, typename B>
     struct data< lazy_image<I,F,B> >
     {
diff --git a/milena/mln/core/image/imorph/plain.hh b/milena/mln/core/image/imorph/plain.hh
index 66c9ebd..8f862f4 100644
--- a/milena/mln/core/image/imorph/plain.hh
+++ b/milena/mln/core/image/imorph/plain.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,7 +47,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::plain<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::plain<I>.
+    */
     template <typename I>
     struct data< plain<I> >
     {
diff --git a/milena/mln/core/image/imorph/safe.hh b/milena/mln/core/image/imorph/safe.hh
index c516ef4..37efd61 100644
--- a/milena/mln/core/image/imorph/safe.hh
+++ b/milena/mln/core/image/imorph/safe.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::safe_image<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::safe_image<I>.
+    */
     template <typename I>
     struct data< safe_image<I> >
     {
diff --git a/milena/mln/core/image/imorph/tr_image.hh b/milena/mln/core/image/imorph/tr_image.hh
index 64eb5a0..ad2b1af 100644
--- a/milena/mln/core/image/imorph/tr_image.hh
+++ b/milena/mln/core/image/imorph/tr_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::tr_image<S,I,T>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::tr_image<S,I,T>.
+    */
     template <typename S, typename I, typename T>
     struct data< tr_image<S,I,T> >
     {
diff --git a/milena/mln/core/image/vertex_image.hh b/milena/mln/core/image/vertex_image.hh
index d50f826..042423d 100644
--- a/milena/mln/core/image/vertex_image.hh
+++ b/milena/mln/core/image/vertex_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -69,7 +70,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for mln::pw::internal::image
+    /*!
+      \internal
+      \brief Data structure for mln::pw::internal::image
+    */
     template <typename P, typename V, typename G>
     struct data< mln::vertex_image<P,V,G> >
     {
diff --git a/milena/mln/core/image/vmorph/cast_image.hh b/milena/mln/core/image/vmorph/cast_image.hh
index 0226ad0..9d6248c 100644
--- a/milena/mln/core/image/vmorph/cast_image.hh
+++ b/milena/mln/core/image/vmorph/cast_image.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2007, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -48,7 +48,10 @@ namespace mln
 
   namespace internal
   {
-    /// Data structure for \c mln::cast_image_<T,I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::cast_image_<T,I>.
+    */
     template <typename T, typename I>
     struct data< cast_image_<T,I> >
     {
diff --git a/milena/mln/core/image/vmorph/fun_image.hh b/milena/mln/core/image/vmorph/fun_image.hh
index 9443198..66b2c1d 100644
--- a/milena/mln/core/image/vmorph/fun_image.hh
+++ b/milena/mln/core/image/vmorph/fun_image.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,7 +48,10 @@ namespace mln
 
   namespace internal
   {
-    /// Data structure for \c mln::fun_image<T,I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::fun_image<T,I>.
+    */
     template <typename F, typename I>
     struct data< fun_image<F,I> >
     {
diff --git a/milena/mln/core/image/vmorph/thru_image.hh b/milena/mln/core/image/vmorph/thru_image.hh
index e829b27..7dd4d7a 100644
--- a/milena/mln/core/image/vmorph/thru_image.hh
+++ b/milena/mln/core/image/vmorph/thru_image.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -50,7 +50,10 @@ namespace mln
     template <typename I, typename F> class thru_image_write;
     template <typename I, typename F> class thru_image_read;
 
-    /// Find correct implementation
+    /*!
+      \internal
+      \brief Find correct implementation
+    */
     template <typename I, typename F>
     struct thru_find_impl
     {
@@ -63,7 +66,10 @@ namespace mln
 		     write, read) ret;
     };
 
-    /// Data structure for \c mln::thru_image<I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::thru_image<I>.
+    */
     template <typename I, typename F>
     struct data< thru_image<I, F> >
     {
diff --git a/milena/mln/core/image/vmorph/violent_cast_image.hh b/milena/mln/core/image/vmorph/violent_cast_image.hh
index 0ce4669..e389902 100644
--- a/milena/mln/core/image/vmorph/violent_cast_image.hh
+++ b/milena/mln/core/image/vmorph/violent_cast_image.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,7 +45,10 @@ namespace mln
 
   namespace internal
   {
-    /// Data structure for \c mln::violent_cast_image<T,I>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::violent_cast_image<T,I>.
+    */
     template <typename T, typename I>
     struct data< violent_cast_image<T,I> >
     {
diff --git a/milena/mln/core/internal/box_impl.hh b/milena/mln/core/internal/box_impl.hh
index bb176c7..3ea2756 100644
--- a/milena/mln/core/internal/box_impl.hh
+++ b/milena/mln/core/internal/box_impl.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009, 2010, 2011 EPITA Research and
+// Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012 EPITA Research and
 // Development Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -46,10 +46,12 @@ namespace mln
 
     // box_impl
 
-    /*! Implementation class to equip objects having a bounding
-     * box.
-     *
-     */
+    /*!
+      \internal
+      \brief Implementation class to equip objects having a bounding
+      box.
+
+    */
     template <unsigned n, typename C, typename E>
     struct box_impl_;
 
diff --git a/milena/mln/core/internal/check/image_fastest.hh b/milena/mln/core/internal/check/image_fastest.hh
index 95ab8a9..debece7 100644
--- a/milena/mln/core/internal/check/image_fastest.hh
+++ b/milena/mln/core/internal/check/image_fastest.hh
@@ -50,7 +50,10 @@ namespace mln
     namespace check
     {
 
-      /// FIXME
+      /*!
+	\internal
+	\brief Statically checks the interface of fastest images.
+      */
       template < typename E, typename B = metal::true_ >
       struct image_fastest_
       {
diff --git a/milena/mln/core/internal/classical_window_base.hh b/milena/mln/core/internal/classical_window_base.hh
index a701510..21f68c3 100644
--- a/milena/mln/core/internal/classical_window_base.hh
+++ b/milena/mln/core/internal/classical_window_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,8 +48,9 @@ namespace mln
   namespace internal
   {
 
-    /*! FIXME.
-     *
+    /*!
+      \internal
+      \brief Base class for classes based on a set of dpoints.
      */
     template <typename D, typename E>
     class classical_window_base : public window_base<D, E>
diff --git a/milena/mln/core/internal/complex_neighborhood_base.hh b/milena/mln/core/internal/complex_neighborhood_base.hh
index d71dec9..4ffd8a0 100644
--- a/milena/mln/core/internal/complex_neighborhood_base.hh
+++ b/milena/mln/core/internal/complex_neighborhood_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -55,11 +56,14 @@ namespace mln
 
   namespace internal
   {
-    /** \brief Generic neighborhood centered on the face of a complex,
-	based on an pair of (forward and backward) complex iterators.
-	
-	\tparam W The underlying window.
-	\tparam E The exact type.  */
+    /*!
+      \internal
+      \brief Generic neighborhood centered on the face of a complex,
+      based on an pair of (forward and backward) complex iterators.
+
+      \tparam W The underlying window.
+      \tparam E The exact type.
+    */
     template <typename W, typename E>
     class complex_neighborhood_base : public Neighborhood<E>
     {
diff --git a/milena/mln/core/internal/complex_window_base.hh b/milena/mln/core/internal/complex_window_base.hh
index 1a248a0..eeb62fd 100644
--- a/milena/mln/core/internal/complex_window_base.hh
+++ b/milena/mln/core/internal/complex_window_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -70,15 +71,18 @@ namespace mln
 
   namespace internal
   {
-    /** \brief Generic window centered on the face of a complex, based
-	on an pair of (forward and backward) complex iterators.  The
-	center (site) is part of the window.
-
-	\tparam D The dimension of the complex.
-	\tparam G The type of the geometry functor of the complex.
-	\tparam F The underlying forward iterator type.
-	\tparam B The underlying backward iterator type.
-	\tparam E The exact type.  */
+    /*!
+      \internal
+      \brief Generic window centered on the face of a complex, based
+      on an pair of (forward and backward) complex iterators.  The
+      center (site) is part of the window.
+
+      \tparam D The dimension of the complex.
+      \tparam G The type of the geometry functor of the complex.
+      \tparam F The underlying forward iterator type.
+      \tparam B The underlying backward iterator type.
+      \tparam E The exact type.
+    */
     template <unsigned D, typename G, typename F, typename B, typename E>
     class complex_window_base : public Window<E>
     {
diff --git a/milena/mln/core/internal/complex_window_p_base.hh b/milena/mln/core/internal/complex_window_p_base.hh
index 65e79e9..55de131 100644
--- a/milena/mln/core/internal/complex_window_p_base.hh
+++ b/milena/mln/core/internal/complex_window_p_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -65,15 +66,18 @@ namespace mln
 
   namespace internal
   {
-    /** \brief Generic window centered on the face of a complex, based
-	on an pair of (forward and backward) complex iterators.  The
-	center (site) is part of the window.
-
-	\tparam D The dimension of the complex.
-	\tparam G The type of the geometry functor of the complex.
-	\tparam F The underlying forward iterator type.
-	\tparam B The underlying backward iterator type.
-	\tparam E The exact type.  */
+    /*!
+      \internal
+      \brief Generic window centered on the face of a complex, based
+      on an pair of (forward and backward) complex iterators.  The
+      center (site) is part of the window.
+
+      \tparam D The dimension of the complex.
+      \tparam G The type of the geometry functor of the complex.
+      \tparam F The underlying forward iterator type.
+      \tparam B The underlying backward iterator type.
+      \tparam E The exact type.
+    */
     template <unsigned D, typename G, typename F, typename B, typename E>
     class complex_window_p_base
       : public complex_window_base
diff --git a/milena/mln/core/internal/fixme.hh b/milena/mln/core/internal/fixme.hh
index 819a926..10622c5 100644
--- a/milena/mln/core/internal/fixme.hh
+++ b/milena/mln/core/internal/fixme.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -38,10 +39,11 @@ namespace mln
   namespace internal
   {
 
-    /*! A FIXME class to make explicit in code that a type is
-     *  not yet implemented.
-     *
-     */
+    /*!
+      \internal
+      \brief A FIXME class to make explicit in code that a type is
+      not yet implemented.
+    */
     struct fixme
     {};
 
diff --git a/milena/mln/core/internal/graph_psite_base.hh b/milena/mln/core/internal/graph_psite_base.hh
index cb3b123..4cef358 100644
--- a/milena/mln/core/internal/graph_psite_base.hh
+++ b/milena/mln/core/internal/graph_psite_base.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -159,7 +159,10 @@ namespace mln
 
 
     /// \{
-    /// subject_impl specialization (Proxy)
+    /*!
+      \internal
+      \brief subject_impl specialization (Proxy)
+    */
     template <typename S, typename P, typename E>
     struct subject_impl< const graph_psite_base<S,P>&, E >
     {
diff --git a/milena/mln/core/internal/graph_window_base.hh b/milena/mln/core/internal/graph_window_base.hh
index cb7baa3..335a32e 100644
--- a/milena/mln/core/internal/graph_window_base.hh
+++ b/milena/mln/core/internal/graph_window_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -35,7 +36,12 @@
 namespace mln
 {
 
-  /// \tparam P Site type.
+  /*!
+    \internal
+    \brief Base class for windows on graphes.
+
+    \tparam P Site type.
+  */
   template <typename P, typename E>
   class graph_window_base : public Window<E>
   {
diff --git a/milena/mln/core/internal/image_base.hh b/milena/mln/core/internal/image_base.hh
index c9f76de..c810547 100644
--- a/milena/mln/core/internal/image_base.hh
+++ b/milena/mln/core/internal/image_base.hh
@@ -146,18 +146,25 @@ namespace mln
       /// Copy constructor (performs a shallow copy).
       image_base(const image_base& rhs);
 
-      /// Give an identifier of this image.  When several image
-      /// variables designate the same image, they share the same
-      /// identifier.
+      /// @cond INTERNAL_API
+
+      /*!
+	\brief Give an identifier of this image.
+
+	When several image variables designate the same image, they
+	share the same identifier.
+      */
       const void* id_() const;
 
+      /// \brief Hook to the image data.
+      const util::tracked_ptr< internal::data<E> >& hook_data_() const;
+
+      /// @endcond
+
 
       /// Detach data from an image (free it if nobody else hold it).
       void destroy();
 
-      /// Hook to the image data.
-      const util::tracked_ptr< internal::data<E> >& hook_data_() const;
-
     protected:
 
       /// Constructor without argument.
diff --git a/milena/mln/core/internal/image_domain_morpher.hh b/milena/mln/core/internal/image_domain_morpher.hh
index 576574e..2a2aa1e 100644
--- a/milena/mln/core/internal/image_domain_morpher.hh
+++ b/milena/mln/core/internal/image_domain_morpher.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -40,13 +41,15 @@ namespace mln
   {
 
 
-    /*! A base class for image morphers w.r.t. domain.
-     *
-     * Parameter \p I is the morphed image type.
-     * Parameter \p S is the morpher site set type.
-     * Parameter \p E is the exact (morpher image) type.
-     *
-     */
+    /*!
+      \internal
+      \brief A base class for image morphers w.r.t. domain.
+
+      Parameter \p I is the morphed image type.
+      Parameter \p S is the morpher site set type.
+      Parameter \p E is the exact (morpher image) type.
+
+    */
     template <typename I, typename S, typename E>
     class image_domain_morpher : public image_morpher<I, mln_value(I), S, E>
     {
diff --git a/milena/mln/core/internal/image_identity.hh b/milena/mln/core/internal/image_identity.hh
index 25e8b3a..a5055f6 100644
--- a/milena/mln/core/internal/image_identity.hh
+++ b/milena/mln/core/internal/image_identity.hh
@@ -120,10 +120,13 @@ namespace mln
 
 
 
-    /*! A base class for image morphers w.r.t. identity.
-     * Parameter \p S is a point set type.
-     *
-     */
+    /*!
+      \internal
+      \brief A base class for image morphers w.r.t. identity.
+
+      Parameter \p S is a point set type.
+
+    */
     template <typename I, typename S, typename E>
     class image_identity
       : public image_identity_impl<I, E>,
diff --git a/milena/mln/core/internal/image_morpher.hh b/milena/mln/core/internal/image_morpher.hh
index 288e6a2..579230a 100644
--- a/milena/mln/core/internal/image_morpher.hh
+++ b/milena/mln/core/internal/image_morpher.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -44,10 +45,12 @@ namespace mln
   namespace internal
   {
 
-    /// A base class for images that are morphers. Parameter
-    ///
-    /// \c I is the underlying-morphed image type.
-    //
+    /*!
+      \internal
+      \brief A base class for images that are morphers.
+
+      Parameter \c I is the underlying-morphed image type.
+    */
     template <typename I, typename T, typename S, typename E>
     class image_morpher : public image_base<T, S, E>
     {
diff --git a/milena/mln/core/internal/image_primary.hh b/milena/mln/core/internal/image_primary.hh
index 58f9065..6e9dbea 100644
--- a/milena/mln/core/internal/image_primary.hh
+++ b/milena/mln/core/internal/image_primary.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,9 +42,10 @@ namespace mln
   {
 
 
-    /*! A base class for primary images.
-     *
-     */
+    /*!
+      \internal
+      \brief A base class for primary images.
+    */
     template <typename T, typename S, typename E>
     struct image_primary : public image_base<T, S, E>
     {
diff --git a/milena/mln/core/internal/image_value_morpher.hh b/milena/mln/core/internal/image_value_morpher.hh
index b7f7c41..8329242 100644
--- a/milena/mln/core/internal/image_value_morpher.hh
+++ b/milena/mln/core/internal/image_value_morpher.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,10 +46,13 @@ namespace mln
 
     //FIXME: Fix doxygen.
 
-    /*! A base class for image morphers w.r.t. value.
-     * Parameter \p S is a point set type.
-     * Parameter \p P is a value type.
-     */
+    /*!
+      \internal
+      \brief A base class for image morphers w.r.t. value.
+
+      Parameter \p S is a point set type.
+      Parameter \p P is a value type.
+    */
     template <typename I, typename T, typename E>
     class image_value_morpher : public image_morpher<I, T, mln_domain(I), E>
     {
diff --git a/milena/mln/core/internal/is_masked_impl_selector.hh b/milena/mln/core/internal/is_masked_impl_selector.hh
index 41d941b..361d85e 100644
--- a/milena/mln/core/internal/is_masked_impl_selector.hh
+++ b/milena/mln/core/internal/is_masked_impl_selector.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2009, 2011 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2009, 2011, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -46,8 +46,11 @@ namespace mln
   namespace internal
   {
 
-    /// Default implementation. D == S.
-    /// D and S are site sets.
+    /*!
+      \internal
+      \brief Default implementation. D == S.
+      D and S are site sets.
+    */
     template <typename S, typename D, typename E>
     struct is_masked_impl_selector
     {
@@ -56,7 +59,10 @@ namespace mln
 		     const mln_graph_element(S)& element) const;
     };
 
-    /// Restrict iteration on vertices according to masked edges.
+    /*!
+      \internal
+      \brief Restrict iteration on vertices according to masked edges.
+    */
     template <typename G1, typename F1, typename G2, typename F2, typename E>
     struct is_masked_impl_selector< p_vertices<G1,F1>, p_edges<G2,F2>, E >
     {
@@ -67,7 +73,10 @@ namespace mln
 		     const mln_graph_element(S)& element) const;
     };
 
-    /// Restrict iteration on edges according to masked vertices.
+    /*!
+      \internal
+      \brief Restrict iteration on edges according to masked vertices.
+    */
     template <typename G1, typename F1, typename G2, typename F2, typename E>
     struct is_masked_impl_selector< p_edges<G1,F1>, p_vertices<G2,F2>, E >
     {
diff --git a/milena/mln/core/internal/labeled_image_base.hh b/milena/mln/core/internal/labeled_image_base.hh
index 45f3ed2..9c9466c 100644
--- a/milena/mln/core/internal/labeled_image_base.hh
+++ b/milena/mln/core/internal/labeled_image_base.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2009, 2010 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2009, 2010, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -60,7 +60,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for \c mln::labeled_image_base<I,E>.
+    /*!
+      \internal
+      \brief Data structure for \c mln::labeled_image_base<I,E>.
+    */
     template <typename I, typename E>
     struct data< labeled_image_base<I,E> >
     {
@@ -100,17 +103,18 @@ namespace mln
 
 
 
-  /*! \brief Base class Morpher providing an improved interface for
-      labeled image.
+  /*!
+    \internal
+    \brief Base class Morpher providing an improved interface for
+    labeled image.
 
-      \tparam I The label image type.
+    \tparam I The label image type.
 
-      This image type allows to access every site set at a given
-      label.
-
-      This image type guaranties that labels are contiguous (from 1 to
-      n).
+    This image type allows to access every site set at a given
+    label.
 
+    This image type guaranties that labels are contiguous (from 1 to
+    n).
   */
   template <typename I, typename E>
   class labeled_image_base
diff --git a/milena/mln/core/internal/morpher_lvalue.hh b/milena/mln/core/internal/morpher_lvalue.hh
index d851e55..e437fa1 100644
--- a/milena/mln/core/internal/morpher_lvalue.hh
+++ b/milena/mln/core/internal/morpher_lvalue.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -44,8 +45,11 @@ namespace mln
   namespace internal
   {
 
-    /// Return the lvalue type when an image with type \c I
-    /// is morphed.
+    /*!
+      \internal
+      \brief Return the lvalue type when an image with type \c I
+      is morphed.
+    */
     template <typename I>
     struct morpher_lvalue_
     {
diff --git a/milena/mln/core/internal/neighb_base.hh b/milena/mln/core/internal/neighb_base.hh
index bfb499a..05d4b67 100644
--- a/milena/mln/core/internal/neighb_base.hh
+++ b/milena/mln/core/internal/neighb_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,11 +43,13 @@ namespace mln
   {
 
 
-    /// Adapter class from window to neighborhood.
-    ///
-    /// \tparam W The underlying window type.
-    /// \tparam E The exact neighborhood type.
-    //
+    /*!
+      \internal
+      \brief Adapter class from window to neighborhood.
+
+      \tparam W The underlying window type.
+      \tparam E The exact neighborhood type.
+    */
     template <typename W, typename E>
     class neighb_base
       : public internal::neighborhood_base< W, E >,
diff --git a/milena/mln/core/internal/neighb_niter_base.hh b/milena/mln/core/internal/neighb_niter_base.hh
index 27459b6..daa41db 100644
--- a/milena/mln/core/internal/neighb_niter_base.hh
+++ b/milena/mln/core/internal/neighb_niter_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,8 +40,10 @@ namespace mln
   namespace internal
   {
 
-    // neighb_niter_base<W,I,E>
-
+    /*!
+      \internal
+      \brief Base implementation for neighborhood iterators.
+    */
     template <typename W, typename N, typename I, typename E>
     class neighb_niter_base
       : public internal::site_relative_iterator_base< N,
diff --git a/milena/mln/core/internal/neighb_niter_impl.hh b/milena/mln/core/internal/neighb_niter_impl.hh
index f2c8ee0..eb5b6d2 100644
--- a/milena/mln/core/internal/neighb_niter_impl.hh
+++ b/milena/mln/core/internal/neighb_niter_impl.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -54,25 +54,31 @@ namespace mln
   namespace internal
   {
 
-    /// Default optional implementation.
+    /*!
+      \internal
+      \brief Default optional implementation.
+    */
     template <typename W, typename E>
     struct neighb_niter_impl
     {
 
     };
 
-    /// Add more implementation for neighborhoods made from
-    /// graph_window_base windows.
-    ///
-    /// FIXME: we need to redeclare the graph element interface.
-    /// Here, a neighb niter iterator encapsulates a window qiter iterator.
-    /// A window qiter iterator is a Proxy on a site P and can convert towards
-    /// a graph element through its member element().
-    ///
-    /// The window qiter iterator cannot have an automatic conversion towards
-    /// a graph element since there would be an ambiguity between this
-    /// conversion and the conversion to a psite P, if P is also a graph
-    /// element.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from
+      graph_window_base windows.
+
+      FIXME: we need to redeclare the graph element interface.
+      Here, a neighb niter iterator encapsulates a window qiter iterator.
+      A window qiter iterator is a Proxy on a site P and can convert towards
+      a graph element through its member element().
+
+      The window qiter iterator cannot have an automatic conversion towards
+      a graph element since there would be an ambiguity between this
+      conversion and the conversion to a psite P, if P is also a graph
+      element.
+    */
     template <typename P, typename E>
     struct neighb_niter_impl_graph_window
     {
@@ -83,29 +89,38 @@ namespace mln
 
     };
 
-    /// In this case, The site P is a util::vertex which means this iterator
-    /// can automatically converts towards this type.
-    /// There would be an ambiguity between util::vertex members and the one
-    /// declared in neighb_niter_impl_graph_window<P,E> if this
-    /// specialization did not exist.
+    /*!
+      \internal
+      In this case, The site P is a util::vertex which means this iterator
+      can automatically converts towards this type.
+      There would be an ambiguity between util::vertex members and the one
+      declared in neighb_niter_impl_graph_window<P,E> if this
+      specialization did not exist.
+    */
     template <typename G, typename E>
     struct neighb_niter_impl_graph_window< util::vertex<G>, E >
     {
     };
 
-    /// In this case, The site P is a util::vertex which means this iterator
-    /// can automatically converts towards this type.
-    /// There would be an ambiguity between util::edge members and the one
-    /// declared in neighb_niter_impl_graph_window<P,E> if this
-    /// specialization did not exist.
+    /*!
+      \internal
+      In this case, The site P is a util::vertex which means this iterator
+      can automatically converts towards this type.
+      There would be an ambiguity between util::edge members and the one
+      declared in neighb_niter_impl_graph_window<P,E> if this
+      specialization did not exist.
+    */
     template <typename G, typename E>
     struct neighb_niter_impl_graph_window< util::edge<G>, E >
     {
     };
 
 
-    /// Add more implementation for neighborhoods made from
-    /// graph_window_base windows.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from
+      graph_window_base windows.
+    */
     template <typename P, typename T, typename E>
     struct neighb_niter_impl< graph_window_base<P, T>, E >
       : neighb_niter_impl_graph_window<P,E>
@@ -124,8 +139,11 @@ namespace mln
 
 
 
-    /// Add more implementation for neighborhoods made from a
-    /// graph_window_piter.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from a
+       graph_window_piter.
+    */
     template <typename G, typename S, typename E>
     struct neighb_niter_impl<graph_elt_window<G,S>, E>
       : public neighb_niter_impl< graph_window_base< mln_result(S::fun_t),
@@ -135,8 +153,11 @@ namespace mln
 
     };
 
-    /// Add more implementation for neighborhoods made from a
-    /// line_graph_window_piter.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from a
+      line_graph_window_piter.
+    */
     template <typename G, typename F, typename E>
     struct neighb_niter_impl<line_graph_elt_window<G,F>, E>
       : public neighb_niter_impl< graph_window_base< mln_result(F),
@@ -147,8 +168,11 @@ namespace mln
     };
 
 
-    /// Add more implementation for neighborhoods made from a
-    /// graph_window_if_piter.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from a
+      graph_window_if_piter.
+    */
     template <typename G, typename S, typename I, typename E>
     struct neighb_niter_impl<graph_elt_window_if<G,S,I>, E>
       : public neighb_niter_impl< graph_window_base< mln_result(S::fun_t),
@@ -159,8 +183,11 @@ namespace mln
     };
 
 
-    /// Add more implementation for neighborhoods made from a
-    /// graph_window_piter.
+    /*!
+      \internal
+      \brief Add more implementation for neighborhoods made from a
+      graph_window_piter.
+    */
     template <typename G, typename S, typename S2, typename E>
     struct neighb_niter_impl<graph_elt_mixed_window<G,S,S2>, E>
       : public neighb_niter_impl< graph_window_base< mln_result(S2::fun_t),
diff --git a/milena/mln/core/internal/neighborhood_base.hh b/milena/mln/core/internal/neighborhood_base.hh
index f96b8f4..fb0a6e9 100644
--- a/milena/mln/core/internal/neighborhood_base.hh
+++ b/milena/mln/core/internal/neighborhood_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -112,10 +113,12 @@ namespace mln
     };
 
 
-    /// Base class for neighborhood implementation classes.
-    ///
-    /// \p W is the underlying window type.
+    /*!
+      \internal
+      \base Base class for neighborhood implementation classes.
 
+      \p W is the underlying window type.
+    */
     template <typename W, typename E>
     struct neighborhood_base : public neighborhood_impl<W,E>
     {
diff --git a/milena/mln/core/internal/piter_adaptor.hh b/milena/mln/core/internal/piter_adaptor.hh
index 41c6333..fa84a43 100644
--- a/milena/mln/core/internal/piter_adaptor.hh
+++ b/milena/mln/core/internal/piter_adaptor.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -44,11 +45,13 @@ namespace mln
   namespace internal
   {
 
-    /// A base class for point iterator adaptors.
-    ///
-    /// Parameter \c Pi is the type of the point iterator adaptee;
-    /// parameter E is the exact type.
-    ///
+    /*!
+      \internal
+      \brief A base class for point iterator adaptors.
+
+      Parameter \c Pi is the type of the point iterator adaptee;
+      parameter E is the exact type.
+    */
     template <typename Pi, typename S, typename E>
     class piter_adaptor_ : public internal::site_iterator_base< S, E >
     {
diff --git a/milena/mln/core/internal/piter_identity.hh b/milena/mln/core/internal/piter_identity.hh
index 00fb16d..e0549f7 100644
--- a/milena/mln/core/internal/piter_identity.hh
+++ b/milena/mln/core/internal/piter_identity.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,11 +40,13 @@ namespace mln
   namespace internal
   {
 
-    /// A base class for site iterator identity adaptors.
-    ///
-    /// Parameter \c Pi is the type of the site iterator adaptee;
-    /// parameter E is the exact type.
-    ///
+    /*!
+      \internal
+      \brief A base class for site iterator identity adaptors.
+
+      Parameter \c Pi is the type of the site iterator adaptee;
+      parameter E is the exact type.
+    */
     template <typename Pi, typename E>
     class piter_identity_ : public piter_adaptor_< Pi,            // Adaptee.
 						   mln_pset(Pi),  // Site set.
diff --git a/milena/mln/core/internal/pixel_impl.hh b/milena/mln/core/internal/pixel_impl.hh
index a07f677..96d94e0 100644
--- a/milena/mln/core/internal/pixel_impl.hh
+++ b/milena/mln/core/internal/pixel_impl.hh
@@ -109,9 +109,11 @@ namespace mln
     };
 
 
-    /// Implementation class to equip generalized pixel
-    /// classes based on mutable images.
-    ///
+    /*!
+      \internal
+      \brief Implementation class to equip generalized pixel
+      classes based on mutable images.
+    */
     template <typename I, typename E>
     class pixel_impl_
 
@@ -168,9 +170,11 @@ namespace mln
     };
 
 
-    /// Implementation class to equip generalized pixel
-    /// classes based on constant images.
-    ///
+    /*!
+      \internal
+      \brief Implementation class to equip generalized pixel
+      classes based on constant images.
+    */
     template <typename I, typename E>
     class pixel_impl_< const I, E >
 
diff --git a/milena/mln/core/internal/pixel_iterator_base.hh b/milena/mln/core/internal/pixel_iterator_base.hh
index 5e8107e..7f3b6ce 100644
--- a/milena/mln/core/internal/pixel_iterator_base.hh
+++ b/milena/mln/core/internal/pixel_iterator_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,7 +46,10 @@ namespace mln
     | internal::pixel_iterator_base_<I, E>.  |
     `---------------------------------------*/
 
-    /// A base class for pixel iterators.
+    /*!
+      \internal
+      \brief A base class for pixel iterators.
+    */
     template <typename I, typename E>
     class pixel_iterator_base_ : public Pixel_Iterator<E>,
 				 public internal::pixel_impl_<I, E>
@@ -73,7 +77,10 @@ namespace mln
     | internal::forward_pixel_iterator_base_<I, E>.  |
     `-----------------------------------------------*/
 
-    /// A base class for forward pixel iterators.
+    /*!
+      \internal
+      \brief A base class for forward pixel iterators.
+    */
     template <typename I, typename E>
     class forward_pixel_iterator_base_ : public pixel_iterator_base_<I, E>
     {
@@ -102,7 +109,10 @@ namespace mln
     | internal::backward_pixel_iterator_base_<I, E>.  |
     `------------------------------------------------*/
 
-    /// A base class for backward pixel iterators.
+    /*!
+      \internal
+      \brief A base class for backward pixel iterators.
+    */
     template <typename I, typename E>
     class backward_pixel_iterator_base_ : public pixel_iterator_base_<I, E>
     {
diff --git a/milena/mln/core/internal/pseudo_site_base.hh b/milena/mln/core/internal/pseudo_site_base.hh
index da61277..576428e 100644
--- a/milena/mln/core/internal/pseudo_site_base.hh
+++ b/milena/mln/core/internal/pseudo_site_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -40,10 +41,12 @@ namespace mln
   namespace internal
   {
 
-    /*! A base class for pseudo sites.
-     *
-     * Parameter \c P is FIXME: a point site type.
-     */
+    /*!
+      \internal
+      \brief A base class for pseudo sites.
+
+      Parameter \c P is FIXME: a point site type.
+    */
     template <typename P, typename E>
     struct pseudo_site_base_ : Pseudo_Site<E>,
                                proxy_impl<P, E>
diff --git a/milena/mln/core/internal/run_image.hh b/milena/mln/core/internal/run_image.hh
index da12ad8..1751b1b 100644
--- a/milena/mln/core/internal/run_image.hh
+++ b/milena/mln/core/internal/run_image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,11 +42,14 @@ namespace mln
   namespace internal
   {
 
-    /*! Factorization class for run_image.
-     * Parameter \c T is the type of the image value.
-     * Parameter \c P is the type of the image point.
-     * Parameter \c E is the Exact type of the image.
-     */
+    /*!
+      \internal
+      \brief Factorization class for run_image.
+
+      Parameter \c T is the type of the image value.
+      Parameter \c P is the type of the image point.
+      Parameter \c E is the Exact type of the image.
+    */
     template <typename T, typename P, typename E>
     class run_image_ : public internal::image_primary< P, p_set_of< p_run<P> >, E >
     {
diff --git a/milena/mln/core/internal/set_of.hh b/milena/mln/core/internal/set_of.hh
index df8568b..f4d4bed 100644
--- a/milena/mln/core/internal/set_of.hh
+++ b/milena/mln/core/internal/set_of.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,16 +46,19 @@ namespace mln
   namespace internal
   {
 
-    /*! An "efficient" mathematical set class.
-     * This set class is designed to store a mathematical set and to
-     * present it to the user as a linear array (std::vector).
-     * Elements are stored by copy.  Implementation is lazy.
-     * \invariant \a v_.size() == s_.size()
-     * The parameter \c E is the element type, which shall not be
-     * const-qualified.
-     *
-     * \todo Add a remove method.
-     */
+    /*!
+      \internal
+      \brief An "efficient" mathematical set class.
+
+      This set class is designed to store a mathematical set and to
+      present it to the user as a linear array (std::vector).
+      Elements are stored by copy.  Implementation is lazy.
+      \invariant \a v_.size() == s_.size()
+      The parameter \c E is the element type, which shall not be
+      const-qualified.
+
+      \todo Add a remove method.
+    */
     template <typename E>
     class set_of_
     {
diff --git a/milena/mln/core/internal/site_relative_iterator_base.hh b/milena/mln/core/internal/site_relative_iterator_base.hh
index 7483dfa..c091203 100644
--- a/milena/mln/core/internal/site_relative_iterator_base.hh
+++ b/milena/mln/core/internal/site_relative_iterator_base.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -47,16 +47,18 @@ namespace mln
   namespace internal
   {
 
-    /// A generic iterator on points of windows and of
-    ///  neighborhoods.
-    ///
-    /// Parameter \c S is the targeted "site set definition" type.  It
-    /// can be either a Window, or a Neighborhood.
-    ///
-    /// IMPORTANT: Sub-classes have to define center_at_, do_start_, do_next_,
-    /// is_valid_, invalidate_ and compute_p_.  They shall define
-    /// NEITHER start_ NOR next_.
-    ///
+    /*!
+      \internal
+      \brief A generic iterator on points of windows and of
+      neighborhoods.
+
+      Parameter \c S is the targeted "site set definition" type.  It
+      can be either a Window, or a Neighborhood.
+
+      IMPORTANT: Sub-classes have to define center_at_, do_start_, do_next_,
+      is_valid_, invalidate_ and compute_p_.  They shall define
+      NEITHER start_ NOR next_.
+    */
     template <typename S, typename E, typename C = mln_psite(S)>
     class site_relative_iterator_base : public site_iterator_base< S, E >
     {
diff --git a/milena/mln/core/internal/site_set_base.hh b/milena/mln/core/internal/site_set_base.hh
index 076d480..191a16c 100644
--- a/milena/mln/core/internal/site_set_base.hh
+++ b/milena/mln/core/internal/site_set_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,12 +43,15 @@ namespace mln
   {
 
 
-    /// A base class for site set classes.
-    ///
-    /// \tparam P The psite type of what is ``contained'' in the site
-    ///           set, not the psite of the site set (which is
-    ///           different, and defined by the site set itself).
-    /// \tparam E The exact type of the site set.
+    /*!
+      \internal
+      \brief A base class for site set classes.
+
+      \tparam P The psite type of what is ``contained'' in the site
+                set, not the psite of the site set (which is
+                different, and defined by the site set itself).
+      \tparam E The exact type of the site set.
+    */
     template <typename P, typename E>
     struct site_set_base_ : public Site_Set<E>
     {
diff --git a/milena/mln/core/internal/site_set_iterator_base.hh b/milena/mln/core/internal/site_set_iterator_base.hh
index 71c3fe3..0b85fbb 100644
--- a/milena/mln/core/internal/site_set_iterator_base.hh
+++ b/milena/mln/core/internal/site_set_iterator_base.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -41,14 +41,16 @@ namespace mln
   namespace internal
   {
 
-    /// A base class for iterators on site sets.
-    ///
-    /// Parameter \c S is the targeted site set type.
-    ///
-    /// IMPORTANT: Sub-classes have to define start_, next_,
-    /// is_valid_ and invalidate_.  They may also define
-    /// change_target_.
-    //
+    /*!
+      \internal
+      \brief A base class for iterators on site sets.
+
+      Parameter \c S is the targeted site set type.
+
+      IMPORTANT: Sub-classes have to define start_, next_,
+      is_valid_ and invalidate_.  They may also define
+      change_target_.
+    */
     template <typename S, typename E>
     class site_set_iterator_base : public site_iterator_base<S, E>
     {
diff --git a/milena/mln/core/internal/weighted_window_base.hh b/milena/mln/core/internal/weighted_window_base.hh
index cb21536..4a6698c 100644
--- a/milena/mln/core/internal/weighted_window_base.hh
+++ b/milena/mln/core/internal/weighted_window_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,10 +40,12 @@ namespace mln
   namespace internal
   {
 
-    /// Base class for weighted window classes.
-    ///
-    /// \p W is the corresponding window type.
+    /*!
+      \internal
+      \brief Base class for weighted window classes.
 
+      \p W is the corresponding window type.
+    */
     template <typename W, typename E>
     struct weighted_window_base : public Weighted_Window<E>
     {
@@ -70,7 +73,7 @@ namespace mln
       /// method is valid iff the support is regular and the
       /// definition is not varying.
       bool is_centered() const;
-      
+
       /// Give the maximum coordinate gap; final method.  This method
       /// is valid iff the support is regular and the definition is
       /// not varying.
diff --git a/milena/mln/core/internal/window_base.hh b/milena/mln/core/internal/window_base.hh
index 0047055..bfe8da5 100644
--- a/milena/mln/core/internal/window_base.hh
+++ b/milena/mln/core/internal/window_base.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,10 +41,12 @@ namespace mln
   {
 
 
-    /// A base class for window classes.
-    ///
-    /// \p D is a dpsite type.
-    ///
+    /*!
+      \internal
+      \brief A base class for window classes.
+
+      \p D is a dpsite type.
+    */
     template <typename D, typename E>
     struct window_base : public Window<E>
     {
diff --git a/milena/mln/core/pixter1d.hh b/milena/mln/core/pixter1d.hh
index da0eb75..8a626da 100644
--- a/milena/mln/core/pixter1d.hh
+++ b/milena/mln/core/pixter1d.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -40,7 +41,10 @@ namespace mln
   | fwd_pixter1d<I>.  |
   `------------------*/
 
-  /// Forward pixel iterator on a 1-D image with border.
+  /*!
+    \internal
+    \brief Forward pixel iterator on a 1-D image with border.
+  */
   template <typename I>
   class fwd_pixter1d :
     public internal::forward_pixel_iterator_base_< I, fwd_pixter1d<I> >
@@ -64,7 +68,10 @@ namespace mln
   | bkd_pixter1d<I>.  |
   `------------------*/
 
-  /// Backward pixel iterator on a 1-D image with border.
+  /*!
+    \internal
+    \brief Backward pixel iterator on a 1-D image with border.
+  */
   template <typename I>
   class bkd_pixter1d :
     public internal::backward_pixel_iterator_base_< I, bkd_pixter1d<I> >
diff --git a/milena/mln/core/pixter2d.hh b/milena/mln/core/pixter2d.hh
index 930addd..49011aa 100644
--- a/milena/mln/core/pixter2d.hh
+++ b/milena/mln/core/pixter2d.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,7 +43,10 @@ namespace mln
   | fwd_pixter2d<I>.  |
   `------------------*/
 
-  /// Forward pixel iterator on a 2-D image with border.
+  /*!
+    \internal
+    \brief Forward pixel iterator on a 2-D image with border.
+  */
   template <typename I>
   class fwd_pixter2d
     : public internal::forward_pixel_iterator_base_< I, fwd_pixter2d<I> >
@@ -82,7 +86,10 @@ namespace mln
   | bkd_pixter2d<I>.  |
   `------------------*/
 
-  /// Backward pixel iterator on a 2-D image with border.
+  /*!
+    \internal
+    \brief Backward pixel iterator on a 2-D image with border.
+  */
   template <typename I>
   class bkd_pixter2d
     : public internal::backward_pixel_iterator_base_< I, bkd_pixter2d<I> >
diff --git a/milena/mln/core/pixter3d.hh b/milena/mln/core/pixter3d.hh
index a9cb48b..93bad74 100644
--- a/milena/mln/core/pixter3d.hh
+++ b/milena/mln/core/pixter3d.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,7 +44,10 @@ namespace mln
   | fwd_pixter3d<I>.  |
   `------------------*/
 
-  /// Forward pixel iterator on a 3-D image with border.
+  /*!
+    \internal
+    \brief Forward pixel iterator on a 3-D image with border.
+  */
   template <typename I>
   class fwd_pixter3d
     : public internal::forward_pixel_iterator_base_< I, fwd_pixter3d<I> >
@@ -95,7 +99,10 @@ namespace mln
   | bkd_pixter3d<I>.  |
   `------------------*/
 
-  /// Backward pixel iterator on a 3-D image with border.
+  /*!
+    \internal
+    \brief Backward pixel iterator on a 3-D image with border.
+  */
   template <typename I>
   class bkd_pixter3d
     : public internal::backward_pixel_iterator_base_< I, bkd_pixter3d<I> >
diff --git a/milena/mln/core/routine/ops.hh b/milena/mln/core/routine/ops.hh
index db26631..220e14d 100644
--- a/milena/mln/core/routine/ops.hh
+++ b/milena/mln/core/routine/ops.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -107,27 +107,45 @@ namespace mln
     // For unary operators.
 
 
-    /// Default definition of op::uplus trait.
+    /*!
+      \internal
+      \brief Default definition of op::uplus trait.
+    */
     template <typename O>
     struct set_unary_< op::uplus, Object,O > { typedef O ret; };
 
-    /// Default definition of op::uminus trait.
+    /*!
+      \internal
+      \brief Default definition of op::uminus trait.
+    */
     template <typename O>
     struct set_unary_< op::uminus, Object,O > { typedef mln_trait_op_minus(O, O) ret; };
 
-    /// Default definition of op::preinc trait.
+    /*!
+      \internal
+      \brief Default definition of op::preinc trait.
+    */
     template <typename O>
     struct set_unary_< op::preinc, Object,O > { typedef O& ret; };
 
-    /// Default definition of op::preinc trait.
+    /*!
+      \internal
+      \brief Default definition of op::preinc trait.
+    */
     template <typename O>
     struct set_unary_< op::predec, Object,O > { typedef O& ret; };
 
-    /// Default definition of op::postinc trait.
+    /*!
+      \internal
+      \brief Default definition of op::postinc trait.
+    */
     template <typename O>
     struct set_unary_< op::postinc, Object,O > { typedef O ret; };
 
-    /// Default definition of op::postinc trait.
+    /*!
+      \internal
+      \brief Default definition of op::postinc trait.
+    */
     template <typename O>
     struct set_unary_< op::postdec, Object,O > { typedef O ret; };
 
diff --git a/milena/mln/core/site_set/attic/p_complex_faces_piter.hh b/milena/mln/core/site_set/attic/p_complex_faces_piter.hh
index d910b4f..1f01319 100644
--- a/milena/mln/core/site_set/attic/p_complex_faces_piter.hh
+++ b/milena/mln/core/site_set/attic/p_complex_faces_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -55,8 +56,11 @@ namespace mln
   | p_complex_faces_fwd_piter_<N, D, P>.  |
   `--------------------------------------*/
 
-  /// \brief Forward iterator on the \p N-faces sites of an
-  /// mln::p_complex<D, P>.
+  /*!
+    \internal
+    \brief Forward iterator on the \p N-faces sites of an
+    mln::p_complex<D, P>.
+  */
   template <unsigned N, unsigned D, typename P>
   class p_complex_faces_fwd_piter_
     : public internal::p_complex_piter_base_< topo::faces_fwd_iter_<N, D>,
@@ -83,8 +87,11 @@ namespace mln
   | p_complex_faces_bkd_piter_<N, D, P>.  |
   `--------------------------------------*/
 
-  /// \brief Backward iterator on the \p N-faces sites of an
-  /// mln::p_complex<D, P>.
+  /*!
+    \internal
+    \brief Backward iterator on the \p N-faces sites of an
+    mln::p_complex<D, P>.
+  */
   template <unsigned N, unsigned D, typename P>
   class p_complex_faces_bkd_piter_
   /* FIXME: Rename internal::p_complex_piter_base_ to something else,
diff --git a/milena/mln/core/site_set/attic/p_faces_piter.hh b/milena/mln/core/site_set/attic/p_faces_piter.hh
index 148872c..7f67bbc 100644
--- a/milena/mln/core/site_set/attic/p_faces_piter.hh
+++ b/milena/mln/core/site_set/attic/p_faces_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -51,8 +52,11 @@ namespace mln
   | p_faces_fwd_piter_<N, D, P>.  |
   `------------------------------*/
 
-  /// \brief Forward iterator on the \p N-faces sites of an
-  /// mln::p_faces<N, D, P>.
+  /*!
+    \internal
+    \brief Forward iterator on the \p N-faces sites of an
+    mln::p_faces<N, D, P>.
+  */
   template <unsigned N, unsigned D, typename P>
   class p_faces_fwd_piter_
     : public internal::p_complex_piter_base_< topo::faces_fwd_iter_<N, D>,
@@ -79,8 +83,11 @@ namespace mln
   | p_faces_bkd_piter_<N, D, P>.  |
   `------------------------------*/
 
-  /// \brief Backward iterator on the \p N-faces sites of an
-  /// mln::p_faces<N, D, P>.
+  /*!
+    \internal
+    \brief Backward iterator on the \p N-faces sites of an
+    mln::p_faces<N, D, P>.
+  */
   template <unsigned N, unsigned D, typename P>
   class p_faces_bkd_piter_
   /* FIXME: Rename internal::p_complex_piter_base_ to something else,
diff --git a/milena/mln/core/site_set/box_piter.hh b/milena/mln/core/site_set/box_piter.hh
index b031654..d3b548f 100644
--- a/milena/mln/core/site_set/box_piter.hh
+++ b/milena/mln/core/site_set/box_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -38,12 +39,14 @@
 namespace mln
 {
 
-  /// \brief A generic forward iterator on points of boxes.
-  ///
-  /// The parameter \c P is the type of points.
-  ///
-  /// \see mln::box
-  ///
+  /*!
+    \internal
+    \brief A generic forward iterator on points of boxes.
+
+    The parameter \c P is the type of points.
+
+    \see mln::box
+  */
   template <typename P>
   class box_fwd_piter_ : public internal::site_set_iterator_base< box<P>,
 								  box_fwd_piter_<P> >
@@ -84,12 +87,14 @@ namespace mln
 
 
 
-  /// A generic backward iterator on points of boxes.
-  ///
-  /// The parameter \c P is the type of points.
-  ///
-  /// \see mln::box
-  ///
+  /*!
+    \internal
+    \brief A generic backward iterator on points of boxes.
+
+    The parameter \c P is the type of points.
+
+    \see mln::box
+  */
   template <typename P>
   class box_bkd_piter_ : public internal::site_set_iterator_base< box<P>,
 								  box_bkd_piter_<P> >
diff --git a/milena/mln/core/site_set/complex_psite.hh b/milena/mln/core/site_set/complex_psite.hh
index 9e150cc..c15c12d 100644
--- a/milena/mln/core/site_set/complex_psite.hh
+++ b/milena/mln/core/site_set/complex_psite.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -227,7 +228,7 @@ namespace mln
   complex_psite<D, G>::complex_psite(const p_complex<D, G>& pc,
 				     unsigned n, unsigned face_id)
     : pc_(&pc),
-      face_(pc.cplx(), n, face_id)  
+      face_(pc.cplx(), n, face_id)
   {
     if (is_valid())
       update_();
diff --git a/milena/mln/core/site_set/p_array.hh b/milena/mln/core/site_set/p_array.hh
index 0ca810e..08a041e 100644
--- a/milena/mln/core/site_set/p_array.hh
+++ b/milena/mln/core/site_set/p_array.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009, 2010, 2011 EPITA Research and
+// Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012 EPITA Research and
 // Development Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -177,8 +177,10 @@ namespace mln
 
 
 
-  /// Psite class for indexed site sets such as p_array<P>.
-  ///
+  /*!
+    \internal
+    \brief Psite class for indexed site sets such as p_array<P>.
+  */
   template <typename S>
   class p_indexed_psite : public internal::pseudo_site_base_< const mln_element(S)&,
 							      p_indexed_psite<S> >
@@ -229,8 +231,10 @@ namespace mln
 
 
 
-  /// Forward iterator on sites of an indexed site set.
-
+  /*!
+    \internal
+    \brief Forward iterator on sites of an indexed site set.
+  */
   template <typename S>
   class p_indexed_fwd_piter
     :
@@ -270,8 +274,10 @@ namespace mln
 
 
 
-  /// Backward iterator on sites of an indexed site set.
-
+  /*!
+    \internal
+    \brief Backward iterator on sites of an indexed site set.
+  */
   template <typename S>
   class p_indexed_bkd_piter
     :
diff --git a/milena/mln/core/site_set/p_complex_piter.hh b/milena/mln/core/site_set/p_complex_piter.hh
index 9fa2282..ac52cb7 100644
--- a/milena/mln/core/site_set/p_complex_piter.hh
+++ b/milena/mln/core/site_set/p_complex_piter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -48,7 +48,10 @@ namespace mln
   | p_complex_fwd_piter_<D, G>.  |
   `-----------------------------*/
 
-  /// \brief Forward iterator on (all) the faces of an mln::p_complex<D, G>.
+  /*!
+    \internal
+    \brief Forward iterator on (all) the faces of an mln::p_complex<D, G>.
+  */
   template <unsigned D, typename G>
   class p_complex_fwd_piter_
     : public internal::p_complex_piter_base_< topo::face_fwd_iter<D>,
@@ -75,7 +78,10 @@ namespace mln
   | p_complex_bkd_piter_<D, G>.  |
   `-----------------------------*/
 
-  /// \brief Backward iterator on (all) the faces of an mln::p_complex<D, G>.
+  /*!
+    \internal
+    \brief Backward iterator on (all) the faces of an mln::p_complex<D, G>.
+  */
   template <unsigned D, typename G>
   class p_complex_bkd_piter_
     : public internal::p_complex_piter_base_< topo::face_bkd_iter<D>,
diff --git a/milena/mln/core/site_set/p_edges_psite.hh b/milena/mln/core/site_set/p_edges_psite.hh
index c72e9bb..9b0a0fa 100644
--- a/milena/mln/core/site_set/p_edges_psite.hh
+++ b/milena/mln/core/site_set/p_edges_psite.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -89,8 +90,10 @@ namespace mln
   namespace internal
   {
 
-    /// Subject_impl (Proxy)
-
+    /*!
+      \internal
+      \brief Subject_impl (Proxy)
+    */
     template <typename G, typename F, typename E>
     struct subject_impl< const p_edges_psite<G,F>&, E >
       :	   subject_impl< const graph_psite_base< p_edges<G,F>,
diff --git a/milena/mln/core/site_set/p_graph_piter.hh b/milena/mln/core/site_set/p_graph_piter.hh
index 12b7e0d..2a52048 100644
--- a/milena/mln/core/site_set/p_graph_piter.hh
+++ b/milena/mln/core/site_set/p_graph_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -50,7 +51,10 @@ namespace mln
   | p_graph_piter<S,I>.  |
   `------------------------*/
 
-  /// Generic iterator on point sites of a mln::S.
+  /*!
+    \internal
+    \brief Generic iterator on point sites of a mln::S.
+  */
   template <typename S, typename I>
   class p_graph_piter
     : public internal::site_set_iterator_base< S,
@@ -112,7 +116,10 @@ namespace mln
   {
 
     /// \{
-    /// subject_impl specialization (Proxy)
+    /*!
+      \internal
+      \brief subject_impl specialization (Proxy)
+    */
     template <typename S, typename I, typename E>
     struct subject_impl< const p_graph_piter<S,I>&, E >
     {
diff --git a/milena/mln/core/site_set/p_if_piter.hh b/milena/mln/core/site_set/p_if_piter.hh
index 8bfa124..7820d40 100644
--- a/milena/mln/core/site_set/p_if_piter.hh
+++ b/milena/mln/core/site_set/p_if_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,13 +40,15 @@ namespace mln
 {
 
 
-  /*! \brief Iterator on site sets conditionned by a function.
-   *
-   * Parameter \c S is a site set type; parameter F is a function
-   * from point to Boolean.
-   *
-   * \see mln::p_if
-   */
+  /*!
+    \internal
+    \brief Iterator on site sets conditionned by a function.
+
+    Parameter \c S is a site set type; parameter F is a function
+    from point to Boolean.
+
+    \see mln::p_if
+  */
   template <typename Pi, typename S, typename F>
   struct p_if_piter_
     : public internal::piter_adaptor_< Pi,                       // Adaptee.
@@ -112,7 +115,7 @@ namespace mln
       pi_.next();
     while (pi_.is_valid() && ! s_->pred(pi_));
   }
-  
+
   template <typename Pi, typename S, typename F>
   inline
   void
diff --git a/milena/mln/core/site_set/p_n_faces_piter.hh b/milena/mln/core/site_set/p_n_faces_piter.hh
index 3282be8..0a1849f 100644
--- a/milena/mln/core/site_set/p_n_faces_piter.hh
+++ b/milena/mln/core/site_set/p_n_faces_piter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -50,8 +50,11 @@ namespace mln
   | p_n_faces_fwd_piter<D, G>.  |
   `----------------------------*/
 
-  /// \brief Forward iterator on the n-faces sites of an
-  /// mln::p_complex<D, G>.
+  /*!
+    \internal
+    \brief Forward iterator on the n-faces sites of an
+    mln::p_complex<D, G>.
+  */
   template <unsigned D, typename G>
   class p_n_faces_fwd_piter
     : public internal::p_complex_piter_base_< topo::n_face_fwd_iter<D>,
@@ -86,8 +89,11 @@ namespace mln
   | p_n_faces_bkd_piter<D, G>.  |
   `----------------------------*/
 
-  /// \brief Backward iterator on the n-faces sites of an
-  /// mln::p_complex<D, G>.
+  /*!
+    \internal
+    \brief Backward iterator on the n-faces sites of an
+    mln::p_complex<D, G>.
+  */
   template <unsigned D, typename G>
   class p_n_faces_bkd_piter
   /* FIXME: Rename internal::p_complex_piter_base_ to something else,
@@ -145,7 +151,7 @@ namespace mln
 
   template <unsigned D, typename G>
   inline
-  unsigned 
+  unsigned
   p_n_faces_fwd_piter<D, G>::n() const
   {
     return this->iter_.n();
@@ -158,7 +164,7 @@ namespace mln
   {
     this->iter_.set_n(n);
   }
-    
+
 
   /*----------------------------.
   | p_n_faces_bkd_piter<D, G>.  |
@@ -182,7 +188,7 @@ namespace mln
 
   template <unsigned D, typename G>
   inline
-  unsigned 
+  unsigned
   p_n_faces_bkd_piter<D, G>::n() const
   {
     return this->iter_.n();
diff --git a/milena/mln/core/site_set/p_run_piter.hh b/milena/mln/core/site_set/p_run_piter.hh
index dd04610..1495723 100644
--- a/milena/mln/core/site_set/p_run_piter.hh
+++ b/milena/mln/core/site_set/p_run_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -38,9 +39,10 @@
 namespace mln
 {
 
-  /*! \brief Forward iterator on points of a p_run<P>.
-   *
-   */
+  /*!
+    \internal
+    \brief Forward iterator on points of a p_run<P>.
+  */
   template <typename P>
   class p_run_fwd_piter_
     :
@@ -76,9 +78,10 @@ namespace mln
 
 
 
-  /*! \brief Backward iterator on points of a p_run<P>.
-   *
-   */
+  /*!
+    \internal
+    \brief Backward iterator on points of a p_run<P>.
+  */
   template <typename P>
   class p_run_bkd_piter_
     :
diff --git a/milena/mln/core/site_set/p_transformed_piter.hh b/milena/mln/core/site_set/p_transformed_piter.hh
index 25375fb..505c72d 100644
--- a/milena/mln/core/site_set/p_transformed_piter.hh
+++ b/milena/mln/core/site_set/p_transformed_piter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2012 EPITA Research and Development Laboratory
+// (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,13 +40,15 @@ namespace mln
 {
 
 
-  /// Iterator on p_transformed<S,F>.
-  ///
-  /// Parameter \c S is a site set type; parameter F is a function
-  /// from point to Boolean.
-  ///
-  /// \see mln::p_transformed
-  //
+  /*!
+    \internal
+    \brief Iterator on p_transformed<S,F>.
+
+    Parameter \c S is a site set type; parameter F is a function
+    from point to Boolean.
+
+    \see mln::p_transformed
+  */
   template <typename Pi, typename S, typename F>
   struct p_transformed_piter
     : public internal::site_set_iterator_base< p_transformed<S,F>,            // Site_Set.
@@ -59,16 +62,16 @@ namespace mln
 
     /// Test the iterator validity.
     bool is_valid_() const;
-    
+
     /// Invalidate the iterator.
     void invalidate_();
-    
+
     /// Start an iteration.
     void start_();
-    
+
     /// Go to the next point.
     void next_();
-    
+
     /// Change the set site targeted by this iterator.
     void change_target(const p_transformed<S,F>& s);
 
diff --git a/milena/mln/core/site_set/p_vertices_psite.hh b/milena/mln/core/site_set/p_vertices_psite.hh
index 320796f..a8b2cb2 100644
--- a/milena/mln/core/site_set/p_vertices_psite.hh
+++ b/milena/mln/core/site_set/p_vertices_psite.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -84,8 +84,10 @@ namespace mln
   namespace internal
   {
 
-    /// Subject_impl (Proxy)
-
+    /*!
+      \internal
+      \brief Subject_impl (Proxy)
+    */
     template <typename G, typename F, typename E>
     struct subject_impl< const p_vertices_psite<G,F>&, E >
 	 : subject_impl< const graph_psite_base< p_vertices<G,F>,
diff --git a/milena/mln/fun/c.hh b/milena/mln/fun/c.hh
index a09325c..32666d0 100644
--- a/milena/mln/fun/c.hh
+++ b/milena/mln/fun/c.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,12 +42,18 @@
 namespace mln
 {
 
-  /// Concept-like.
+  /*!
+    \internal
+    \brief Concept-like.
+  */
   template <typename E>
   struct C_Function;
 
 
-  /// Category declaration for a unary C function.
+  /*!
+    \internal
+    \brief Category declaration for a unary C function.
+  */
   template <typename R, typename A>
   struct category< R (*)(A) >
   {
diff --git a/milena/mln/fun/internal/ch_function_value_impl.hh b/milena/mln/fun/internal/ch_function_value_impl.hh
index 387cb17..185634a 100644
--- a/milena/mln/fun/internal/ch_function_value_impl.hh
+++ b/milena/mln/fun/internal/ch_function_value_impl.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -39,7 +40,10 @@ namespace mln
     namespace internal
     {
 
-      /// Default implementation.
+      /*!
+	\internal
+	\brief Default implementation.
+      */
       template <typename F, typename V>
       struct ch_function_value_impl
       {
diff --git a/milena/mln/fun/v2v/ch_function_value.hh b/milena/mln/fun/v2v/ch_function_value.hh
index 68fc9ee..8fc6f32 100644
--- a/milena/mln/fun/v2v/ch_function_value.hh
+++ b/milena/mln/fun/v2v/ch_function_value.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -47,7 +48,7 @@ namespace mln
     namespace v2v
     {
 
-      /// Wrap a function v2v and convert its result to another type.
+      /// \brief Wrap a function v2v and convert its result to another type.
       template <typename F, typename V>
       class ch_function_value : public Function_v2v< ch_function_value<F,V> >,
 				public internal::ch_function_value_impl<F, V>
diff --git a/milena/mln/fun/x2x/composed.hh b/milena/mln/fun/x2x/composed.hh
index a95dfeb..162e2fe 100644
--- a/milena/mln/fun/x2x/composed.hh
+++ b/milena/mln/fun/x2x/composed.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2010 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2010, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -58,7 +58,10 @@ namespace mln
         struct helper_composed_;
 
 
-        /// Helper for describing a bijective composition.
+        /*!
+	  \internal
+	  \brief Helper for describing a bijective composition.
+	*/
         template <typename T2, typename T1, typename E>
         struct helper_composed_<T2,T1,E,true>
           : public fun::internal::x2x_linear_impl_<mln_result(T2), typename T2::data_t, E >,
@@ -99,7 +102,10 @@ namespace mln
           T1 g_;
         };
 
-        /// Helper for describing a non bijective composition.
+        /*!
+	  \internal
+	  \brief Helper for describing a non bijective composition.
+	*/
         template <typename T2, typename T1, typename E>
         struct helper_composed_<T2,T1,E,false>
           : public fun::internal::x2x_linear_impl_<mln_result(T2), typename T2::data_t, E >,
diff --git a/milena/mln/geom/complex_geometry.hh b/milena/mln/geom/complex_geometry.hh
index ef23c3e..fbad8c4 100644
--- a/milena/mln/geom/complex_geometry.hh
+++ b/milena/mln/geom/complex_geometry.hh
@@ -114,9 +114,12 @@ namespace mln
 
     namespace internal
     {
-      /// The data stored in a complex_geometry object.
-      ///
-      /// \tparam P The type of the location of a 0-face.
+      /*!
+	\internal
+	\brief The data stored in a complex_geometry object.
+
+	\tparam P The type of the location of a 0-face.
+      */
       template <typename P>
       struct complex_geometry_data
       {
diff --git a/milena/mln/labeling/blobs.hh b/milena/mln/labeling/blobs.hh
index ce06b7d..d41563f 100644
--- a/milena/mln/labeling/blobs.hh
+++ b/milena/mln/labeling/blobs.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -74,8 +74,10 @@ namespace mln
     namespace internal
     {
 
-      /// Functor not computing anything. To be passed to the labeling
-      /// blobs canvas.
+      /*!
+	\brief Functor not computing anything. To be passed to the labeling
+	blobs canvas.
+      */
       template <typename L>
       struct dummy_functor
       {
diff --git a/milena/mln/labeling/blobs_and_compute.hh b/milena/mln/labeling/blobs_and_compute.hh
index 744d411..d53f174 100644
--- a/milena/mln/labeling/blobs_and_compute.hh
+++ b/milena/mln/labeling/blobs_and_compute.hh
@@ -72,8 +72,11 @@ namespace mln
     namespace internal
     {
 
-      /// Functor not computing anything. To be passed to the labeling
-      /// blobs canvas.
+      /*!
+	\internal
+	\brief Functor not computing anything.
+	To be passed to the labeling  blobs canvas.
+      */
       template <typename L, typename A>
       struct compute_functor
       {
diff --git a/milena/mln/metal/ands.hh b/milena/mln/metal/ands.hh
index b2329a1..6a65436 100644
--- a/milena/mln/metal/ands.hh
+++ b/milena/mln/metal/ands.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -38,8 +39,11 @@ namespace mln
 
   namespace metal
   {
-    
-    /// Ands type.
+
+    /*!
+      \internal
+      \brief Ands type.
+    */
     template < typename E1,
 	       typename E2,
 	       typename E3,
diff --git a/milena/mln/metal/bexpr.hh b/milena/mln/metal/bexpr.hh
index 0dc1821..1631151 100644
--- a/milena/mln/metal/bexpr.hh
+++ b/milena/mln/metal/bexpr.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,26 +46,38 @@ namespace mln
 
   namespace metal
   {
-    
-    /// Negate type.
+
+    /*!
+      \internal
+      \brief Negate type.
+    */
     template <typename B>
     struct not_ : bool_<( ! B::value )>
     {};
-    
 
-    /// And type.
+
+    /*!
+      \internal
+      \brief And type.
+    */
     template <typename L, typename R>
     struct and_ : bool_<( L::value && R::value )>
     {};
-    
 
-    /// Or type.
+
+    /*!
+      \internal
+      \brief Or type.
+    */
     template <typename L, typename R>
     struct or_ : bool_<( L::value || R::value )>
     {};
-    
 
-    /// Xor type.
+
+    /*!
+      \internal
+      \brief Xor type.
+    */
     template <typename L, typename R>
     struct xor_ : bool_<( L::value ^ R::value )>
     {};
diff --git a/milena/mln/metal/bool.hh b/milena/mln/metal/bool.hh
index 3960b8d..4b6ff59 100644
--- a/milena/mln/metal/bool.hh
+++ b/milena/mln/metal/bool.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -50,7 +51,10 @@ namespace mln
     template <bool b> struct bool_;
 
 
-    /// "true" type.
+    /*!
+      \internal
+      \brief "true" type.
+    */
     template <>
     struct bool_< true >
     {
@@ -64,7 +68,10 @@ namespace mln
     typedef bool_<true> true_;
 
 
-    /// "false" type.
+    /*!
+      \internal
+      \brief "false" type.
+    */
     template <>
     struct bool_< false >
     {
diff --git a/milena/mln/metal/converts_to.hh b/milena/mln/metal/converts_to.hh
index 25be3e9..8d877ba 100644
--- a/milena/mln/metal/converts_to.hh
+++ b/milena/mln/metal/converts_to.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -73,7 +74,10 @@ namespace mln
 
 
 
-    /// \brief "converts-to" check.
+    /*!
+      \internal
+      \brief "converts-to" check.
+    */
     template <typename T, typename U>
     struct converts_to : bool_<( sizeof(internal::helper_converts_to_<T, U>
 					::selector(*internal::make_<mlc_const(T)>::ptr(),
diff --git a/milena/mln/metal/equal.hh b/milena/mln/metal/equal.hh
index 47b7c4f..170ed91 100644
--- a/milena/mln/metal/equal.hh
+++ b/milena/mln/metal/equal.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,9 +43,11 @@ namespace mln
   namespace metal
   {
 
-    /// Definition of a static 'equal' test.
-    /// Check whether type T1 is exactly type T2.
-    //
+    /*!
+      \internal
+      \brief Definition of a static 'equal' test.
+      Check whether type T1 is exactly type T2.
+    */
     template <typename T1, typename T2>
     struct equal : false_
     {};
diff --git a/milena/mln/metal/goes_to.hh b/milena/mln/metal/goes_to.hh
index f8757c9..79bbd15 100644
--- a/milena/mln/metal/goes_to.hh
+++ b/milena/mln/metal/goes_to.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,14 +46,16 @@ namespace mln
   namespace metal
   {
 
-    /*! \brief "goes-to" check.
-     *
-     * FIXME: Doc!
-     */
+    /*!
+      \internal
+      \brief "goes-to" check.
+
+      FIXME: Doc!
+    */
     template <typename T, typename U>
     struct goes_to : or_< mlc_converts_to(T,U), mlc_is(T,U) >::eval
     {};
-    
+
 
   } // end of namespace mln::metal
 
diff --git a/milena/mln/metal/if.hh b/milena/mln/metal/if.hh
index ab5a64f..5adb0e7 100644
--- a/milena/mln/metal/if.hh
+++ b/milena/mln/metal/if.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -64,10 +65,12 @@ namespace mln
     } // end of namespace mln::metal::internal
 
 
-    /*! \brief "if-then-else" expression.
-     *
-     * FIXME: Doc!
-     */
+    /*!
+      \internal
+      \brief "if-then-else" expression.
+
+      FIXME: Doc!
+    */
     template <typename Cond, typename Then, typename Else>
     struct if_ : internal::helper_if_< Cond::value, Then, Else >
     {
diff --git a/milena/mln/metal/int.hh b/milena/mln/metal/int.hh
index a216db9..d52291c 100644
--- a/milena/mln/metal/int.hh
+++ b/milena/mln/metal/int.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -41,7 +42,10 @@ namespace mln
   namespace metal
   {
 
-    /// "int" type.
+    /*!
+      \internal
+      \brief "int" type.
+    */
     template <int i>
     struct int_
     {
diff --git a/milena/mln/metal/is.hh b/milena/mln/metal/is.hh
index 10db237..f4f2c10 100644
--- a/milena/mln/metal/is.hh
+++ b/milena/mln/metal/is.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -57,9 +58,11 @@ namespace mln
 
 
 
-    /// \brief "is" check.
-    /// Check whether T inherits from U.
-    //
+    /*!
+      \internal
+      \brief "is" check.
+      Check whether T inherits from U.
+    */
     template <typename T, typename U>
     struct is : bool_<( sizeof(internal::helper_is_<T, U>::selector(internal::make_<T>::ptr()))
 			==
diff --git a/milena/mln/metal/is_a.hh b/milena/mln/metal/is_a.hh
index 2244c33..7a0c803 100644
--- a/milena/mln/metal/is_a.hh
+++ b/milena/mln/metal/is_a.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -33,14 +34,16 @@
 # include <mln/metal/bool.hh>
 
 
-/// \brief Expand to a "metalic" boolean expression stating whether \a
-/// T is a subclass of \a M or not.
-///
-/// In the current implementation, \a M must be template class with
-/// exactly one, non template parameter.
-///
-/// This macro is the recommended user interface of the "is_a"
-/// facility.
+/*!
+  \brief Expand to a "metalic" boolean expression stating whether \a
+  T is a subclass of \a M or not.
+
+  In the current implementation, \a M must be template class with
+  exactly one, non template parameter.
+
+  This macro is the recommended user interface of the "is_a"
+  facility.
+*/
 # define mlc_is_a(T, M) mln::metal::is_a<T, M>
 
 
@@ -87,28 +90,30 @@ namespace mln
 
 
 
-    /// \brief "is_a" check.
-    ///
-    /// Check whether T inherits from _CONCEPT_ M.
-    //
+    /*!
+      \internal
+      \brief "is_a" check.
+
+      Check whether T inherits from _CONCEPT_ M.
+    */
     template <typename T, template <class> class M>
     struct is_a : bool_<( sizeof( internal::helper_is_a_< T, M >::selector(internal::make_< T >::ptr()) )
 			  ==
 			  sizeof( internal::yes_ )  )>
     {};
-    
+
     template <typename T, template <class> class M>
     struct is_a< const T, M > : is_a< T, M >::eval
     {};
-    
+
     template <typename T, template <class> class M>
     struct is_a< T&, M > : is_a< T, M >::eval
     {};
-    
+
     template <typename T, template <class> class M>
     struct is_a< const T&, M > : is_a< T, M >::eval
     {};
-    
+
 
   } // end of namespace mln::metal
 
diff --git a/milena/mln/metal/is_not.hh b/milena/mln/metal/is_not.hh
index 2857934..c00d009 100644
--- a/milena/mln/metal/is_not.hh
+++ b/milena/mln/metal/is_not.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -44,10 +45,12 @@ namespace mln
   namespace metal
   {
 
-    /*! \brief "is_not" check.
-     *
-     * FIXME: Doc!
-     */
+    /*!
+      \internal
+      \brief "is_not" check.
+
+      FIXME: Doc!
+    */
     template <typename T, typename U>
     struct is_not : not_< is<T, U> >::eval
     {
diff --git a/milena/mln/metal/is_not_a.hh b/milena/mln/metal/is_not_a.hh
index 1519590..15cbac6 100644
--- a/milena/mln/metal/is_not_a.hh
+++ b/milena/mln/metal/is_not_a.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,7 +44,10 @@ namespace mln
   namespace metal
   {
 
-    /// "is_not_a" static Boolean expression.
+    /*!
+      \internal
+      \brief "is_not_a" static Boolean expression.
+    */
     template <typename T, template <class> class M>
     struct is_not_a : not_< is_a<T, M> >::eval
     {
diff --git a/milena/mln/pw/image.hh b/milena/mln/pw/image.hh
index f88a811..ccf5b9e 100644
--- a/milena/mln/pw/image.hh
+++ b/milena/mln/pw/image.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -59,7 +60,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for mln::pw::internal::image
+    /*!
+      \internal
+      \brief Data structure for mln::pw::internal::image
+    */
     template <typename F, typename S>
     struct data< mln::pw::image<F,S> >
     {
diff --git a/milena/mln/pw/internal/image_base.hh b/milena/mln/pw/internal/image_base.hh
index 537f2eb..87693dc 100644
--- a/milena/mln/pw/internal/image_base.hh
+++ b/milena/mln/pw/internal/image_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2009, 2010 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009, 2010, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -107,9 +108,13 @@ namespace mln
     namespace internal
     {
 
-      /// A base class for point-wise images.
-      /// Parameter \p F is the image value type.
-      /// Parameter \p S is the image site set type.
+      /*!
+	\internal
+	\brief A base class for point-wise images.
+
+	Parameter \p F is the image value type.
+	Parameter \p S is the image site set type.
+      */
       template <typename F, typename S, typename E>
       class image_base
 	: public mln::internal::image_primary<mln_result(F), S, E >
diff --git a/milena/mln/topo/adj_higher_dim_connected_n_face_iter.hh b/milena/mln/topo/adj_higher_dim_connected_n_face_iter.hh
index 034f139..5b04e19 100644
--- a/milena/mln/topo/adj_higher_dim_connected_n_face_iter.hh
+++ b/milena/mln/topo/adj_higher_dim_connected_n_face_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -56,11 +57,12 @@ namespace mln
     | topo::adj_higher_dim_connected_n_face_fwd_iter<D>.  |
     `----------------------------------------------------*/
 
-    /// \brief Forward iterator on all the n-faces sharing an adjacent
-    /// (n+1)-face with a (reference) n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*! \internal
+      \brief Forward iterator on all the n-faces sharing an adjacent
+      (n+1)-face with a (reference) n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_higher_dim_connected_n_face_fwd_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
@@ -95,11 +97,13 @@ namespace mln
     | topo::adj_higher_dim_connected_n_face_bkd_iter<D>.  |
     `----------------------------------------------------*/
 
-    /// \brief Backward iterator on all the n-faces sharing an adjacent
-    /// (n+1)-face with a (reference) n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the n-faces sharing an adjacent
+      (n+1)-face with a (reference) n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_higher_dim_connected_n_face_bkd_iter
       : public internal::backward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/adj_higher_face_iter.hh b/milena/mln/topo/adj_higher_face_iter.hh
index 2b4ef65..797c5d1 100644
--- a/milena/mln/topo/adj_higher_face_iter.hh
+++ b/milena/mln/topo/adj_higher_face_iter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -63,11 +63,13 @@ namespace mln
     | topo::adj_higher_face_fwd_iter<D>.  |
     `------------------------------------*/
 
-    /// \brief Forward iterator on all the adjacent (n+1)-faces of the
-    /// n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the adjacent (n+1)-faces of the
+      n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_higher_face_fwd_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
@@ -97,11 +99,13 @@ namespace mln
     | topo::adj_higher_face_bkd_iter<D>.  |
     `------------------------------------*/
 
-    /// \brief Backward iterator on all the adjacent (n+1)-faces of
-    /// the n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the adjacent (n+1)-faces of
+      the n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_higher_face_bkd_iter
       : public internal::backward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/adj_lower_dim_connected_n_face_iter.hh b/milena/mln/topo/adj_lower_dim_connected_n_face_iter.hh
index d493ea9..24f2800 100644
--- a/milena/mln/topo/adj_lower_dim_connected_n_face_iter.hh
+++ b/milena/mln/topo/adj_lower_dim_connected_n_face_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -56,11 +57,13 @@ namespace mln
     | topo::adj_lower_dim_connected_n_face_fwd_iter<D>.  |
     `---------------------------------------------------*/
 
-    /// \brief Forward iterator on all the n-faces sharing an adjacent
-    /// (n-1)-face with a (reference) n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the n-faces sharing an adjacent
+      (n-1)-face with a (reference) n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_dim_connected_n_face_fwd_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
@@ -95,11 +98,13 @@ namespace mln
     | topo::adj_lower_dim_connected_n_face_bkd_iter<D>.  |
     `---------------------------------------------------*/
 
-    /// \brief Backward iterator on all the n-faces sharing an adjacent
-    /// (n-1)-face with a (reference) n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the n-faces sharing an adjacent
+      (n-1)-face with a (reference) n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_dim_connected_n_face_bkd_iter
       : public internal::backward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/adj_lower_face_iter.hh b/milena/mln/topo/adj_lower_face_iter.hh
index a903460..5a6b7f0 100644
--- a/milena/mln/topo/adj_lower_face_iter.hh
+++ b/milena/mln/topo/adj_lower_face_iter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -64,11 +64,13 @@ namespace mln
     | topo::adj_lower_face_fwd_iter<D>.  |
     `-----------------------------------*/
 
-    /// \brief Forward iterator on all the adjacent (n-1)-faces of the
-    /// n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the adjacent (n-1)-faces of the
+      n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_face_fwd_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
@@ -99,11 +101,13 @@ namespace mln
     | topo::adj_lower_face_bkd_iter<D>.  |
     `-----------------------------------*/
 
-    /// \brief Backward iterator on all the adjacent (n-1)-faces of
-    /// the n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the adjacent (n-1)-faces of
+      the n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_face_bkd_iter
       : public internal::backward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/adj_lower_higher_face_iter.hh b/milena/mln/topo/adj_lower_higher_face_iter.hh
index 2ed4abd..4788ed7 100644
--- a/milena/mln/topo/adj_lower_higher_face_iter.hh
+++ b/milena/mln/topo/adj_lower_higher_face_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -63,10 +64,13 @@ namespace mln
     | topo::adj_lower_higher_face_fwd_iter<D>.  |
     `------------------------------------------*/
 
-    /// Forward iterator on all the adjacent (n-1)-faces and
-    /// (n+1)-faces of the n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
+    /*!
+      \internal
+      \brief Forward iterator on all the adjacent (n-1)-faces and
+      (n+1)-faces of the n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_higher_face_fwd_iter
       : public internal::complex_relative_iterator_sequence<adj_lower_face_fwd_iter<D>,
@@ -94,10 +98,13 @@ namespace mln
     | topo::adj_lower_higher_face_bkd_iter<D>.  |
     `------------------------------------------*/
 
-    /// Forward iterator on all the adjacent (n-1)-faces and
-    /// (n+1)-faces of the n-face of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
+    /*!
+      \internal
+      \brief Forward iterator on all the adjacent (n-1)-faces and
+      (n+1)-faces of the n-face of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class adj_lower_higher_face_bkd_iter
       : public internal::complex_relative_iterator_sequence<adj_higher_face_bkd_iter<D>,
diff --git a/milena/mln/topo/adj_m_face_iter.hh b/milena/mln/topo/adj_m_face_iter.hh
index 1b070a9..abe4514 100644
--- a/milena/mln/topo/adj_m_face_iter.hh
+++ b/milena/mln/topo/adj_m_face_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -57,15 +58,18 @@ namespace mln
     | topo::adj_m_face_fwd_iter<D>.  |
     `-------------------------------*/
 
-    /** Forward iterator on all the m-faces transitively
-        adjacent to a (reference) n-face in a complex.
+    /*!
+      \internal
+      \brief Forward iterator on all the m-faces transitively
+      adjacent to a (reference) n-face in a complex.
 
-        \tparam D The dimension of the complex this iterator belongs to.
+      \tparam D The dimension of the complex this iterator belongs to.
 
-        The dimension parameter (\a m_) must be lower or equal to D.
+      The dimension parameter (\a m_) must be lower or equal to D.
 
-	If \a m_ is equal to the dimension of the reference face, then
-	the iterated set is empty.  */
+      If \a m_ is equal to the dimension of the reference face, then
+      the iterated set is empty.
+    */
     template <unsigned D>
     class adj_m_face_fwd_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
@@ -105,15 +109,18 @@ namespace mln
     | topo::adj_m_face_bkd_iter<D>.  |
     `-------------------------------*/
 
-    /** Backward iterator on all the m-faces transitively
-        adjacent to a (reference) n-face in a complex.
+    /*!
+      \internal
+      \brief Backward iterator on all the m-faces transitively
+      adjacent to a (reference) n-face in a complex.
 
-        \tparam D The dimension of the complex this iterator belongs to.
+      \tparam D The dimension of the complex this iterator belongs to.
 
-        The dimension parameter (\a m_) must be lower or equal to D.
+      The dimension parameter (\a m_) must be lower or equal to D.
 
-	If \a m_ is equal to the dimension of the reference face, then
-	the iterated set is empty.  */
+      If \a m_ is equal to the dimension of the reference face, then
+      the iterated set is empty.
+    */
     template <unsigned D>
     class adj_m_face_bkd_iter
       : public internal::backward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/attic/faces_iter.hh b/milena/mln/topo/attic/faces_iter.hh
index eca6f40..b97397e 100644
--- a/milena/mln/topo/attic/faces_iter.hh
+++ b/milena/mln/topo/attic/faces_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,10 +44,13 @@ namespace mln
     | topo::faces_fwd_iter_<N, D>.  |
     `------------------------------*/
 
-    /// \brief Forward iterator on all the faces of a mln::complex<D>.
-    ///
-    /// \tparam N The dimension of the face associated to this iterator.
-    /// \tparam D The dimension of the complex this iterator belongs to.
+    /*!
+      \internal
+      \brief Forward iterator on all the faces of a mln::complex<D>.
+
+      \tparam N The dimension of the face associated to this iterator.
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned N, unsigned D>
     class faces_fwd_iter_
       : public internal::complex_set_iterator_base< n_face<N, D>,
@@ -90,10 +94,13 @@ namespace mln
     | topo::faces_bkd_iter_<N, D>.  |
     `------------------------------*/
 
-    /// \brief Backward iterator on all the faces of a mln::complex<D>.
-    ///
-    /// \tparam N The dimension of the face associated to this iterator.
-    /// \tparam D The dimension of the complex this iterator belongs to.
+    /*!
+      \internal
+      \brief Backward iterator on all the faces of a mln::complex<D>.
+
+      \tparam N The dimension of the face associated to this iterator.
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned N, unsigned D>
     class faces_bkd_iter_
       : public internal::complex_set_iterator_base< n_face<N, D>,
diff --git a/milena/mln/topo/center_only_iter.hh b/milena/mln/topo/center_only_iter.hh
index 5e695ce..a5b08b3 100644
--- a/milena/mln/topo/center_only_iter.hh
+++ b/milena/mln/topo/center_only_iter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -52,24 +52,27 @@ namespace mln
     | topo::center_only_iter<D>.  |
     `----------------------------*/
 
-    /** \brief Iterator on all the adjacent (n-1)-faces of the n-face
-        of an mln::complex<D>.
-
-        \tparam D The dimension of the complex this iterator belongs to.
-
-        mln::topo::center_only_iter inherits from
-        mln::topo::internal::forward_complex_relative_iterator_base,
-        but it could inherit from
-        mln::topo::internal::backward_complex_relative_iterator_base
-        as well, since it always contains a single element, the
-        center/reference face (and the traversal order is
-        meaningless).
-
-        This iterator is essentially used to implement other iterators.
-        \see mln::topo::centered_iter_adapter
-        \see mln::complex_lower_window
-        \see mln::complex_higher_window
-        \see mln::complex_lower_higher_window  */
+    /*!
+      \internal
+      \brief Iterator on all the adjacent (n-1)-faces of the n-face
+      of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+
+      mln::topo::center_only_iter inherits from
+      mln::topo::internal::forward_complex_relative_iterator_base,
+      but it could inherit from
+      mln::topo::internal::backward_complex_relative_iterator_base
+      as well, since it always contains a single element, the
+      center/reference face (and the traversal order is
+      meaningless).
+
+      This iterator is essentially used to implement other iterators.
+      \see mln::topo::centered_iter_adapter
+      \see mln::complex_lower_window
+      \see mln::complex_higher_window
+      \see mln::complex_lower_higher_window
+    */
     template <unsigned D>
     class center_only_iter
       : public internal::forward_complex_relative_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/centered_iter_adapter.hh b/milena/mln/topo/centered_iter_adapter.hh
index 4a6e0cc..bc19dc5 100644
--- a/milena/mln/topo/centered_iter_adapter.hh
+++ b/milena/mln/topo/centered_iter_adapter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,11 +49,14 @@ namespace mln
 
     // FIXME: We should deduce D from I.
 
-    /// \brief Backward complex relative iterator adapters adding the
-    /// central (reference) point to the set of iterated faces.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    /// \tparam I The adapated complex relative iterator.
+    /*!
+      \internal
+      \brief Backward complex relative iterator adapters adding the
+      central (reference) point to the set of iterated faces.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+      \tparam I The adapated complex relative iterator.
+    */
     template <unsigned D, typename I>
     class centered_fwd_iter_adapter
       : public internal::complex_relative_iterator_sequence< center_only_iter<D>,
@@ -82,11 +86,14 @@ namespace mln
 
     // FIXME: We should deduce D from I.
 
-    /// \brief Forward complex relative iterator adapters adding the
-    /// central (reference) point to the set of iterated faces.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    /// \tparam I The adapated complex relative iterator.
+    /*!
+      \internal
+      \brief Forward complex relative iterator adapters adding the
+      central (reference) point to the set of iterated faces.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+      \tparam I The adapated complex relative iterator.
+    */
     template <unsigned D, typename I>
     class centered_bkd_iter_adapter
       : public internal::complex_relative_iterator_sequence< I,
diff --git a/milena/mln/topo/complex.hh b/milena/mln/topo/complex.hh
index 9a3d4bb..ab24b9f 100644
--- a/milena/mln/topo/complex.hh
+++ b/milena/mln/topo/complex.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -81,8 +81,9 @@ namespace mln
     | Complex.  |
     `----------*/
 
-    /// \brief General complex of dimension \p D.
-    //
+    /*!
+      \brief General complex of dimension \p D.
+    */
     template <unsigned D>
     class complex
     {
@@ -240,12 +241,12 @@ namespace mln
 
                    ,-----------> higher_dim_faces_set_mixin<0, D>
                    |
-        faces_set_mixin<0, D> 
+        faces_set_mixin<0, D>
                  ^
                  |
                  | ,-----------> higher_dim_faces_set_mixin<1, D>
                  | | ,--------->  lower_dim_faces_set_mixin<1, D>
-                 | | |           
+                 | | |
         faces_set_mixin<1, D>
                  ^
                  |
@@ -257,13 +258,13 @@ namespace mln
                  |
                  | ,-----------> higher_dim_faces_set_mixin<D - 1, D>
                  | | ,--------->  lower_dim_faces_set_mixin<D - 1, D>
-                 | | |           
+                 | | |
         faces_set_mixin<D - 1, D>
                  ^
-                 |              
+                 |
                  |   ,--------->  lower_dim_faces_set_mixin<D, D>
-                 |   |           
-        faces_set_mixin<D, D> 
+                 |   |
+        faces_set_mixin<D, D>
                  ^
                  |
                  |
@@ -303,13 +304,16 @@ namespace mln
       // mln::topo::internal::faces_set_mixin.  //
       // -------------------------------------- //
 
-      /// Recursive mixins of set of faces.
+      /// \internal \brief Recursive mixins of set of faces.
       /// \{
 
       template <unsigned N, unsigned D> struct faces_set_mixin;
 
 
-      /// Faces of intermediate dimension (greater than 0, lower than \p D).
+      /*!
+	\internal
+	\brief Faces of intermediate dimension (greater than 0, lower than \p D).
+      */
       template <unsigned N, unsigned D>
       struct faces_set_mixin : public faces_set_mixin<N - 1, D>,
 			       public lower_dim_faces_set_mixin<N, D>,
@@ -340,7 +344,10 @@ namespace mln
 	/// \}
       };
 
-      /// Faces of highest dimension (\p D).
+      /*!
+	\internal
+	\brief Faces of highest dimension (\p D).
+      */
       template <unsigned D>
       struct faces_set_mixin<D, D> : public faces_set_mixin<D - 1, D>,
 				     public lower_dim_faces_set_mixin<D, D>
@@ -368,7 +375,10 @@ namespace mln
 	/// \}
       };
 
-      /// Faces of lowest dimension (0).
+      /*!
+	\internal
+	\brief Faces of lowest dimension (0).
+      */
       template <unsigned D>
       struct faces_set_mixin<0u, D> : public higher_dim_faces_set_mixin<0u, D>
       {
@@ -395,7 +405,10 @@ namespace mln
 	/// \}
       };
 
-      /// Faces of a 0-complex.
+      /*!
+	\internal
+	\brief Faces of a 0-complex.
+      */
       template <>
       struct faces_set_mixin<0u, 0u>
       {
@@ -428,7 +441,10 @@ namespace mln
       // class to be defined after the specializations of
       // 'faces_set_mixin'.
 
-      /// Complex data.
+      /*!
+	\internal
+	\brief Complex data.
+      */
       template <unsigned D>
       struct complex_data : public faces_set_mixin<D, D>
       {
@@ -441,7 +457,7 @@ namespace mln
       // mln::topo::internal::higher_dim_faces_set_mixin.  //
       // ------------------------------------------------- //
 
-      /// Mixins of mixin mln::faces_set_mixin.
+      /// \internal \brief Mixins of mixin mln::faces_set_mixin.
       /// \{
       template <unsigned N, unsigned D>
       struct lower_dim_faces_set_mixin
@@ -538,14 +554,17 @@ namespace mln
     namespace internal
     {
 
-      /// A binary meta-functor defined by:
-      ///
-      /// \code
-      /// add_size : x, c -> x + c.size()
-      /// \endcode
-      ///
-      /// \see mln::complex<D>::nfaces_of_static_dim<N> (static version).
-      /// \see mln::complex<D>::fold_left_.
+      /*!
+	\internal
+	\brief A binary meta-functor defined by:
+
+	\code
+	add_size : x, c -> x + c.size()
+	\endcode
+
+	\see mln::complex<D>::nfaces_of_static_dim<N> (static version).
+	\see mln::complex<D>::fold_left_.
+      */
       struct add_size
       {
 	template <typename T, typename Container>
@@ -555,14 +574,17 @@ namespace mln
 	}
       };
 
-      /// An unary meta-functor defined by:
-      ///
-      /// \code
-      /// add_size : c -> c.size()
-      /// \endcode
-      ///
-      /// \see mln::complex<D>::nfaces_of_dim (dynamic version).
-      /// \see mln::complex<D>::apply_if_dim_matches_.
+      /*!
+	\internal
+	\brief An unary meta-functor defined by:
+
+	\code
+	add_size : c -> c.size()
+	\endcode
+
+	\see mln::complex<D>::nfaces_of_dim (dynamic version).
+	\see mln::complex<D>::apply_if_dim_matches_.
+      */
       struct get_size
       {
 	typedef std::size_t result_type;
@@ -719,7 +741,7 @@ namespace mln
 
     template <unsigned D>
     inline
-    const void* 
+    const void*
     complex<D>::addr() const
     {
       return data_.ptr_;
diff --git a/milena/mln/topo/face_data.hh b/milena/mln/topo/face_data.hh
index 1622e51..118598a 100644
--- a/milena/mln/topo/face_data.hh
+++ b/milena/mln/topo/face_data.hh
@@ -105,7 +105,10 @@ namespace mln
     namespace internal
     {
 
-      /// Factored implementation of faces.
+      /*!
+	\internal
+	\brief Factored implementation of faces.
+      */
       /// \{
       template <unsigned N, unsigned D>
       class lower_dim_faces_data_mixin
diff --git a/milena/mln/topo/face_iter.hh b/milena/mln/topo/face_iter.hh
index 6e91a08..772ec77 100644
--- a/milena/mln/topo/face_iter.hh
+++ b/milena/mln/topo/face_iter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2013 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2012, 2013 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -61,11 +61,13 @@ namespace mln
     | topo::face_fwd_iter<D>.  |
     `-------------------------*/
 
-    /// \brief Forward iterator on all the faces of an
-    /// mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the faces of an
+      mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class face_fwd_iter
       : public internal::complex_set_iterator_base< topo::face<D>, face_fwd_iter<D> >
@@ -105,10 +107,12 @@ namespace mln
     | topo::face_bkd_iter<D>.  |
     `-------------------------*/
 
-    /// \brief Backward iterator on all the faces of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the faces of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class face_bkd_iter
     : public internal::complex_set_iterator_base< topo::face<D>, face_bkd_iter<D> >
diff --git a/milena/mln/topo/internal/complex_iterator_base.hh b/milena/mln/topo/internal/complex_iterator_base.hh
index bc8f26e..5c0d212 100644
--- a/milena/mln/topo/internal/complex_iterator_base.hh
+++ b/milena/mln/topo/internal/complex_iterator_base.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -70,10 +71,13 @@ namespace mln
     namespace internal
     {
 
-      /// Factoring class for iterators on mln::complex.
-      ///
-      /// \tparam F The type of the face handle.
-      /// \tparam E The type exact type of the iterator.
+      /*!
+	\internal
+	\brief Factoring class for iterators on mln::complex.
+
+	\tparam F The type of the face handle.
+	\tparam E The type exact type of the iterator.
+      */
       template <typename F, typename E>
       class complex_iterator_base : public Iterator<E>
       {
diff --git a/milena/mln/topo/internal/complex_relative_iterator_base.hh b/milena/mln/topo/internal/complex_relative_iterator_base.hh
index 03f9cda..4fd03bf 100644
--- a/milena/mln/topo/internal/complex_relative_iterator_base.hh
+++ b/milena/mln/topo/internal/complex_relative_iterator_base.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2011 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2011, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -32,7 +32,7 @@
     iterators on mln::complex.
 
     The hierarchy of classes in this file is as follows
-    
+
     \verbatim
 
                     complex_relative_iterator_base<C, F, E>
@@ -76,11 +76,14 @@ namespace mln
       | topo::internal::complex_relative_iterator_base<C, F, E>.  |
       `----------------------------------------------------------*/
 
-      /// Factoring class for relative iterators on mln::complex.
-      ///
-      /// \tparam C The type of the center face handle.
-      /// \tparam F The type of the face handle.
-      /// \tparam E The type exact type of the iterator.
+      /*!
+	\internal
+	\brief Factoring class for relative iterators on mln::complex.
+
+	\tparam C The type of the center face handle.
+	\tparam F The type of the face handle.
+	\tparam E The type exact type of the iterator.
+      */
       template <typename C, typename F, typename E>
       class complex_relative_iterator_base :
 	public complex_iterator_base<F, E>
@@ -128,12 +131,15 @@ namespace mln
       | topo::internal::forward_complex_relative_iterator_base<C, F, E>.  |
       `------------------------------------------------------------------*/
 
-      /// Factoring class for forward relative iterators on
-      /// mln::complex.
-      ///
-      /// \tparam C The type of the center face handle.
-      /// \tparam F The type of the face handle.
-      /// \tparam E The type exact type of the iterator.
+      /*!
+	\internal
+	\brief Factoring class for forward relative iterators on
+	mln::complex.
+
+        \tparam C The type of the center face handle.
+        \tparam F The type of the face handle.
+        \tparam E The type exact type of the iterator.
+      */
       template <typename C, typename F, typename E>
       class forward_complex_relative_iterator_base
 	: public complex_relative_iterator_base<C, F, E>
@@ -179,12 +185,15 @@ namespace mln
       | topo::internal::backward_complex_relative_iterator_base<C, F, E>.  |
       `-------------------------------------------------------------------*/
 
-      /// Factoring class for backward relative iterators on
-      /// mln::complex.
-      ///
-      /// \tparam C The type of the center face handle.
-      /// \tparam F The type of the face handle.
-      /// \tparam E The type exact type of the iterator.
+      /*!
+	\internal
+	\brief Factoring class for backward relative iterators on
+	mln::complex.
+
+        \tparam C The type of the center face handle.
+        \tparam F The type of the face handle.
+        \tparam E The type exact type of the iterator.
+      */
       template <typename C, typename F, typename E>
       class backward_complex_relative_iterator_base
 	: public complex_relative_iterator_base<C, F, E>
diff --git a/milena/mln/topo/internal/complex_relative_iterator_sequence.hh b/milena/mln/topo/internal/complex_relative_iterator_sequence.hh
index fda267c..ed6b216 100644
--- a/milena/mln/topo/internal/complex_relative_iterator_sequence.hh
+++ b/milena/mln/topo/internal/complex_relative_iterator_sequence.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -56,15 +57,18 @@ namespace mln
       };
 
 
-      /// A meta relative iterator on the faces of a complex
-      /// using two complex relative iterators sequentially.
-      ///
-      /// The first relative iterator is used, and when it becomes
-      /// invalid, the second one is used.
-      ///
-      /// \tparam I1 The type of the first relative iterator.
-      /// \tparam I2 The type of the second relative iterator.
-      /// \tparam E  The type exact type of the iterator.
+      /*!
+	\internal
+	\brief A meta relative iterator on the faces of a complex
+	using two complex relative iterators sequentially.
+
+        The first relative iterator is used, and when it becomes
+        invalid, the second one is used.
+
+        \tparam I1 The type of the first relative iterator.
+        \tparam I2 The type of the second relative iterator.
+        \tparam E  The type exact type of the iterator.
+      */
       template <typename I1, typename I2, typename E>
       class complex_relative_iterator_sequence : public Iterator<E>
       {
diff --git a/milena/mln/topo/internal/complex_set_iterator_base.hh b/milena/mln/topo/internal/complex_set_iterator_base.hh
index f428566..2cd9276 100644
--- a/milena/mln/topo/internal/complex_set_iterator_base.hh
+++ b/milena/mln/topo/internal/complex_set_iterator_base.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -49,10 +49,13 @@ namespace mln
       class complex_iterator_base;
 
 
-      /// Factoring class for (set) iterators on mln::complex.
-      ///
-      /// \tparam F The type of the face handle.
-      /// \tparam E The type exact type of the iterator.
+      /*!
+	\internal
+	\brief Factoring class for (set) iterators on mln::complex.
+
+        \tparam F The type of the face handle.
+        \tparam E The type exact type of the iterator.
+      */
       template <typename F, typename E>
       class complex_set_iterator_base : public complex_iterator_base<F, E>
       {
diff --git a/milena/mln/topo/n_face_iter.hh b/milena/mln/topo/n_face_iter.hh
index 9dfc670..17090aa 100644
--- a/milena/mln/topo/n_face_iter.hh
+++ b/milena/mln/topo/n_face_iter.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2013 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2012, 2013 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -64,11 +64,13 @@ namespace mln
     | topo::n_face_fwd_iter<D>.  |
     `---------------------------*/
 
-    /// \brief Forward iterator on all the faces of an
-    /// mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the faces of an
+      mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class n_face_fwd_iter
       : public internal::complex_set_iterator_base< topo::face<D>,
@@ -121,9 +123,12 @@ namespace mln
     | topo::n_face_bkd_iter<D>.  |
     `---------------------------*/
 
-    /// Backward iterator on all the faces of an mln::complex<D>.
-    ///
-    /// \tparam D The dimension of the complex this iterator belongs to.
+    /*!
+      \internal
+      \brief Backward iterator on all the faces of an mln::complex<D>.
+
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned D>
     class n_face_bkd_iter
       : public internal::complex_set_iterator_base< topo::face<D>,
diff --git a/milena/mln/topo/static_n_face_iter.hh b/milena/mln/topo/static_n_face_iter.hh
index 21a7639..ebd22e3 100644
--- a/milena/mln/topo/static_n_face_iter.hh
+++ b/milena/mln/topo/static_n_face_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -45,12 +46,14 @@ namespace mln
     | topo::static_n_face_fwd_iter<N, D>.  |
     `-------------------------------------*/
 
-    /// \brief Forward iterator on all the \p N-faces of a
-    /// mln::complex<D>.
-    ///
-    /// \tparam N The dimension of the face associated to this iterator.
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Forward iterator on all the \p N-faces of a
+      mln::complex<D>.
+
+      \tparam N The dimension of the face associated to this iterator.
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned N, unsigned D>
     class static_n_face_fwd_iter
       : public internal::complex_set_iterator_base< topo::face<D>,
@@ -91,12 +94,14 @@ namespace mln
     | topo::static_n_face_bkd_iter<N, D>.  |
     `-------------------------------------*/
 
-    /// \brief Backward iterator on all the \p N-faces of a
-    /// mln::complex<D>.
-    ///
-    /// \tparam N The dimension of the face associated to this iterator.
-    /// \tparam D The dimension of the complex this iterator belongs to.
-    //
+    /*!
+      \internal
+      \brief Backward iterator on all the \p N-faces of a
+      mln::complex<D>.
+
+      \tparam N The dimension of the face associated to this iterator.
+      \tparam D The dimension of the complex this iterator belongs to.
+    */
     template <unsigned N, unsigned D>
     class static_n_face_bkd_iter
       : public internal::complex_set_iterator_base< topo::face<D>,
diff --git a/milena/mln/trait/ch_function_value.hh b/milena/mln/trait/ch_function_value.hh
index 2c01e79..9a41ea9 100644
--- a/milena/mln/trait/ch_function_value.hh
+++ b/milena/mln/trait/ch_function_value.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -52,7 +53,7 @@ namespace mln
     namespace impl
     {
 
-      /// Default.
+      // Default.
       template <typename F, typename VF, typename V>
       struct ch_function_value
       {
diff --git a/milena/mln/trait/image/props.hh b/milena/mln/trait/image/props.hh
index 2726814..2c90970 100644
--- a/milena/mln/trait/image/props.hh
+++ b/milena/mln/trait/image/props.hh
@@ -760,7 +760,10 @@ namespace mln
 
   // FIXME: To be moved elsewhere?
 
-  /// Compute the image::space trait from a point type.
+  /*!
+    \internal
+    \brief Compute the image::space trait from a point type.
+  */
   /// \{
 
   // Fwd decl. (used by trait::image::space_from_point).
@@ -783,7 +786,10 @@ namespace mln
     namespace image
     {
 
-      /// Function mapping a point type to the corresponding space trait.
+      /*!
+	\internal
+	\brief Function mapping a point type to the corresponding space trait.
+      */
       /// \{
       template <typename P>
       struct space_from_point
diff --git a/milena/mln/trait/images.hh b/milena/mln/trait/images.hh
index 2ae9299..7541c07 100644
--- a/milena/mln/trait/images.hh
+++ b/milena/mln/trait/images.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2011 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2011, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
diff --git a/milena/mln/trait/neighborhood.hh b/milena/mln/trait/neighborhood.hh
index c63cd6f..623202a 100644
--- a/milena/mln/trait/neighborhood.hh
+++ b/milena/mln/trait/neighborhood.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -59,27 +60,42 @@ namespace mln
     // FIXME: Might be moved to another file, as it's the case for
     // images and values.
 
-    /// Traits related to neighborhoods.
+    /*!
+      \internal
+      \brief Traits related to neighborhoods.
+    */
     namespace neighborhood
     {
 
-      /// Kind of neighborhood.
+      /*!
+	\internal
+	\brief Kind of neighborhood.
+      */
       struct kind
       {
-	/// The base class of the hierarchy of neighborhood traits.
+	/*!
+	  \internal
+	  \brief The base class of the hierarchy of neighborhood traits.
+	*/
 	struct any
 	{
 	  std::string name() const { return "kind::any"; }
 	};
 
-	/// A generic neighborhood, with no particular feature.
+	/*!
+	  \internal
+	  \brief A generic neighborhood, with no particular feature.
+	*/
 	struct generic : any
 	{
 	  std::string name() const { return "kind::generic"; }
 	};
 
-	/// A neighborhood on a regular grid, i.e.
-	/// holding/convertible to a window.
+	/*!
+	  \internal
+	  \brief A neighborhood on a regular grid, i.e.
+	  holding/convertible to a window.
+	*/
 	struct regular : any
 	{
 	  std::string name() const { return "kind::regular"; }
diff --git a/milena/mln/trait/promote.hh b/milena/mln/trait/promote.hh
index 681ebde..3b5c5aa 100644
--- a/milena/mln/trait/promote.hh
+++ b/milena/mln/trait/promote.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2006, 2007, 2009  EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2006, 2007, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -52,7 +53,10 @@ namespace mln
   namespace trait
   {
 
-    /// Declaration of the "promote" trait.
+    /*!
+      \internal
+      \brief Declaration of the "promote" trait.
+    */
     template <typename T, typename U>
     struct promote : public solve_binary<promote, T, U>
     {
@@ -60,10 +64,11 @@ namespace mln
 
 
     /*!
-     * \brief Default case when one type is involved twice: the
-     * promotion type is the same as the input type (so actually there
-     * is no promotion).
-     */
+      \internal
+      \brief Default case when one type is involved twice: the
+      promotion type is the same as the input type (so actually there
+      is no promotion).
+    */
     template <typename T>
     struct set_binary_< promote, Object, T, Object, T >
     {
diff --git a/milena/mln/trait/site_set/props.hh b/milena/mln/trait/site_set/props.hh
index 9d1fd31..859f3dd 100644
--- a/milena/mln/trait/site_set/props.hh
+++ b/milena/mln/trait/site_set/props.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -38,41 +39,46 @@
 # include <mln/trait/undef.hh>
 
 
-
-//  Properties of site sets.
-//  ========================
-
-//  nsites:   /any/
-//              |
-//              + -- unknown
-//              |
-//              + -- known
-
-//  bbox:     /any/
-//              |
-//              + -- unknown
-//              |
-//              + -- /known/
-//                     |
-//                     + -- lazy
-//                     |
-//                     + -- straight
-
-//  contents: /any/
-//              |
-//              + -- fixed
-//              |
-//              + -- /dynamic/
-//                     |
-//                     + -- growing
-//                     |
-//                     + -- free
-
-//  arity:    /any/
-//              |
-//              + -- unique
-//              |
-//              + -- multiple
+/*!
+  \verbatim
+
+    Properties of site sets.
+    ========================
+
+    nsites:   /any/
+                |
+                + -- unknown
+                |
+                + -- known
+
+    bbox:     /any/
+                |
+                + -- unknown
+                |
+                + -- /known/
+                       |
+                       + -- lazy
+                       |
+                       + -- straight
+
+    contents: /any/
+                |
+                + -- fixed
+                |
+                + -- /dynamic/
+                       |
+                       + -- growing
+                       |
+                       + -- free
+
+    arity:    /any/
+                |
+                + -- unique
+                |
+                + -- multiple
+
+  \endverbatim
+*/
 
 
 namespace mln
@@ -85,59 +91,95 @@ namespace mln
     {
 
 
-      /// Site set property about the 'nsites' method presence.
+      /*!
+	\internal
+	\brief Site set property about the 'nsites' method presence.
+      */
       struct nsites
       {
-	/// Base class for the site set 'nsites' property.
+	/*!
+	  \internal
+	  \brief Base class for the site set 'nsites' property.
+	*/
 	struct any { protected: any() {} };
 
-	/// Property that states that the number of sites cannot be
-	/// retrieved from a site set in O(1) complexity so the site
-	/// set does not feature the 'nsites' methods.
+	/*!
+	  \internal
+	  \brief Property that states that the number of sites cannot be
+	  retrieved from a site set in O(1) complexity so the site
+	  set does not feature the 'nsites' methods.
+	*/
 	struct unknown : any { std::string name() const { return "nsites::unknown"; } };
 
-	/// Property that states that a site set features the method
-	/// 'nsites' because the number of sites is known so its
-	/// retrieval has O(1) complexity.
+	/*!
+	  \internal
+	  \brief Property that states that a site set features the method
+	  'nsites' because the number of sites is known so its
+	  retrieval has O(1) complexity.
+	*/
 	struct known   : any { std::string name() const { return "nsites::known"; } };
       };
 
 
-      /// Site set property about the 'bbox' method presence.
+      /*!
+	\internal
+	\brief Site set property about the 'bbox' method presence.
+      */
       struct bbox
       {
-	/// Base class for the site set 'bbox' property.
+	/*!
+	  \internal
+	  \brief Base class for the site set 'bbox' property.
+	*/
 	struct any { protected: any() {} };
 
-	/// Property that states that the bounding box of a site set
-	/// is not featured as a method.  This is either because the
-	/// notion of bounding box is meaningless for the site set
-	/// type, or because the bounding box cannot be retrieved in
-	/// O(1) complexity.
+	/*!
+	  \internal
+	  Property that states that the bounding box of a site set
+	  is not featured as a method.  This is either because the
+	  notion of bounding box is meaningless for the site set
+	  type, or because the bounding box cannot be retrieved in
+	  O(1) complexity.
+	*/
 	struct unknown : any { std::string name() const { return "bbox::unknown"; } };
 
-	/// Property that states that the bounding box of a site set
-	/// is featured by the 'bbox' method.  It means that the
-	/// notion of bounding box makes sense and that such a piece
-	/// of information can be retrieved in O(1) complexity.
-	/// Warning: this property is pseudo-abstract.  The more
-	/// precise properties are 'lazy' and 'straight'.
+	/*!
+	  \internal
+	  Property that states that the bounding box of a site set
+	  is featured by the 'bbox' method.  It means that the
+	  notion of bounding box makes sense and that such a piece
+	  of information can be retrieved in O(1) complexity.
+	  Warning: this property is pseudo-abstract.  The more
+	  precise properties are 'lazy' and 'straight'.
+	*/
 	struct known   : any { protected: known() {} };
 
-	/// Property that states that the bounding box of a site set
-	/// is computed by the site set in a lazy way.
+	/*!
+	  \internal
+	  Property that states that the bounding box of a site set
+	  is computed by the site set in a lazy way.
+	*/
 	struct lazy     : known { std::string name() const { return "bbox::lazy"; } };
 
-	/// Property that states that the bounding box of a site set
-	/// is always kept up to date by the site set.
+	/*!
+	  \internal
+	  Property that states that the bounding box of a site set
+	  is always kept up to date by the site set.
+	*/
 	struct straight : known { std::string name() const { return "bbox::straight"; } };
       };
 
 
-      /// Site set property about how the contents can evolve.
+      /*!
+	\internal
+	\brief Site set property about how the contents can evolve.
+      */
       struct contents
       {
-	/// Base class for the site set 'contents' property.
+	/*!
+	  \internal
+	  \brief Base class for the site set 'contents' property.
+	*/
 	struct any { protected: any() {} };
 	struct fixed   : any     { std::string name() const { return "contents::fixed"; } };
 	struct dynamic : any { protected: dynamic() {} };
@@ -145,11 +187,17 @@ namespace mln
 	struct free    : dynamic { std::string name() const { return "contents::free"; } };
       };
 
-      /// Site set property about the unicity or multiplicity of its
-      /// elements.
+      /*!
+	\internal
+	\brief Site set property about the unicity or multiplicity of its
+	elements.
+      */
       struct arity
       {
-	/// Base class for the site set 'arity' property.
+	/*!
+	  \internal
+	  \brief Base class for the site set 'arity' property.
+	*/
 	struct any { protected: any() {} };
 	struct unique   : any { std::string name() const { return "arity::unique"; } };
 	struct multiple : any { std::string name() const { return "arity::multiple"; } };
diff --git a/milena/mln/trait/site_sets.hh b/milena/mln/trait/site_sets.hh
index 64b304e..32512cd 100644
--- a/milena/mln/trait/site_sets.hh
+++ b/milena/mln/trait/site_sets.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -59,7 +60,10 @@ namespace mln
   namespace trait
   {
 
-    /// Pack of 'undefined' type values for properties of site sets.
+    /*!
+      \internal
+      \brief Pack of 'undefined' type values for properties of site sets.
+    */
     template <typename I>
     struct undefined_site_set_
     {
@@ -70,14 +74,16 @@ namespace mln
     };
 
 
-    /*! \brief The trait pack structure for properties of site sets.
-     *
-     * This structure is specialized for every concrete class of site
-     * set so that properties are properly defined.
-     *
-     * \see mln::doc::Site_Set for the documentation of the "site set"
-     * concept.
-     */
+    /*!
+      \internal
+      \brief The trait pack structure for properties of site sets.
+
+      This structure is specialized for every concrete class of site
+      set so that properties are properly defined.
+
+      \see mln::doc::Site_Set for the documentation of the "site set"
+      concept.
+    */
     template <typename I>
     struct site_set_ : undefined_site_set_<I>
     {
diff --git a/milena/mln/trait/solve.hh b/milena/mln/trait/solve.hh
index 1a415e3..8ec6857 100644
--- a/milena/mln/trait/solve.hh
+++ b/milena/mln/trait/solve.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2006, 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2006, 2007, 2008, 2009, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,7 +43,7 @@
 
 // FIXME: Just for the record (use it...)
 
-#  ifndef MLN_DEBUG_TRAITS 
+#  ifndef MLN_DEBUG_TRAITS
 #  endif // ! MLN_DEBUG_TRAITS
 
 
@@ -60,13 +61,22 @@ namespace mln
   namespace trait
   {
 
-    /// Flag type for a not found trait.
+    /*!
+      \internal
+      \brief Flag type for a not found trait.
+    */
     struct not_found {};
 
-    /// Flag type for an undefined trait.
+    /*!
+      \internal
+      \brief Flag type for an undefined trait.
+    */
     struct undefined {};
 
-    /// Flag type for a trait that is multiply undefined.
+    /*!
+      \internal
+      \brief Flag type for a trait that is multiply undefined.
+    */
     struct multiply_defined {};
 
 
@@ -110,7 +120,7 @@ namespace mln
       typedef undefined ret;
     };
 
-    
+
     template < template <class, class> class Name,
 	       template <class> class Category_L, typename L,
 	       template <class> class Category_R, typename R >
diff --git a/milena/mln/trait/window/props.hh b/milena/mln/trait/window/props.hh
index 1b40e47..ae2b901 100644
--- a/milena/mln/trait/window/props.hh
+++ b/milena/mln/trait/window/props.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -75,50 +76,92 @@ namespace mln
     {
 
 
-      /// Window property about the 'size' method presence.
+      /*!
+	\internal
+	\brief Window property about the 'size' method presence.
+      */
       struct size
       {
-	/// Base class for the window 'size' property.
+	/*!
+	  \internal
+	  \brief Base class for the window 'size' property.
+	*/
 	struct any { protected: any() {} };
 
-	/// Property that states that the size is fixed.
+	/*!
+	  \internal
+	  \brief Property that states that the size is fixed.
+	*/
 	struct fixed   : any { std::string name() const { return "size::fixed"; } };
 
-	/// Property that states that the size is not fixed so unknown.
+	/*!
+	  \internal
+	  \brief Property that states that the size is not fixed so unknown.
+	*/
 	struct unknown : any { std::string name() const { return "size::unknown"; } };
       };
 
 
-      /// Window property about the 'support' it is designed for.
+      /*!
+	\internal
+	\brief Window property about the 'support' it is designed for.
+      */
       struct support
       {
-	/// Base class for the window 'support' property.
+	/*!
+	  \internal
+	  \brief Base class for the window 'support' property.
+	*/
 	struct any { protected: any() {} };
 
-	/// Property that states that the window is designed for a regular support.
+	/*!
+	  \internal
+	  \brief Property that states that the window is designed for a regular support.
+	*/
 	struct regular   : any { std::string name() const { return "support::regular"; } };
 
-	/// Property that states that the window is not designed for a regular support.
+	/*!
+	  \internal
+	  \brief Property that states that the window is not designed for a regular support.
+	*/
 	struct irregular : any { std::string name() const { return "support::irregular"; } };
       };
 
 
-      /// Window property about how the window is defined.
+      /*!
+	\internal
+	\brief Window property about how the window is defined.
+      */
       struct definition
       {
-	/// Base class for the window 'definition' property.
+	/*!
+	  \internal
+	  \brief Base class for the window 'definition' property.
+	*/
 	struct any { protected: any() {} };
 
-	/// Property that states that the definition is unique.
+	/*!
+	  \internal
+	  \brief Property that states that the definition is unique.
+	*/
 	struct unique : any { std::string name() const { return "definition::unique"; } };
 
-	/// Abstract property that states that the definition is multiple.
+	/*!
+	  \internal
+	  \brief Abstract property that states that the definition is multiple.
+	*/
 	struct multiple : any { protected: multiple() {} };
 
-	/// Property that states that this window has n definitions.
+	/*!
+	  \internal
+	  \brief Property that states that this window has n definitions.
+	*/
 	struct n_ary : multiple { std::string name() const { return "definition::n_ary"; } };
 
-	/// Property that states that this window has a varying definition.
+	/*!
+	  \internal
+	  \brief Property that states that this window has a varying definition.
+	*/
 	struct varying : multiple { std::string name() const { return "definition::varying"; } };
       };
 
diff --git a/milena/mln/trait/windows.hh b/milena/mln/trait/windows.hh
index 2a77470..feec278 100644
--- a/milena/mln/trait/windows.hh
+++ b/milena/mln/trait/windows.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -68,7 +69,10 @@ namespace mln
   namespace trait
   {
 
-    /// Pack of 'undefined' type values for properties of windows.
+    /*!
+      \internal
+      \brief Pack of 'undefined' type values for properties of windows.
+    */
     template <typename W>
     struct undefined_window_
     {
@@ -78,13 +82,15 @@ namespace mln
     };
 
 
-    /*! \brief The trait pack structure for properties of windows.
-     *
-     * This structure is specialized for every concrete class of site
-     * set so that properties are properly defined.
-     *
-     * \see mln::doc::Window for the documentation of the "window"
-     * concept.
+    /*!
+      \internal
+      \brief The trait pack structure for properties of windows.
+
+      This structure is specialized for every concrete class of site
+      set so that properties are properly defined.
+
+      \see mln::doc::Window for the documentation of the "window"
+      concept.
      */
     template <typename W>
     struct window_ : undefined_window_<W>
@@ -92,7 +98,10 @@ namespace mln
     };
 
 
-    // \internal Trait for classical windows. 
+    /*!
+      \internal
+      \brief Trait for classical windows.
+    */
     struct classical_window_
     {
       typedef mln::trait::window::size::fixed        size;
diff --git a/milena/mln/util/branch_iter.hh b/milena/mln/util/branch_iter.hh
index 30b2faf..42cec57 100644
--- a/milena/mln/util/branch_iter.hh
+++ b/milena/mln/util/branch_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,12 +43,14 @@ namespace mln
   namespace util
   {
 
-    /*! \brief Basic 2D image class.
-     *
-     * The parameter \c T is the type of node's data. branch_iter is
-     * used to pre-order walk a branch.
-     *
-     */
+    /*!
+      \internal
+      \brief Iterator on branch.
+
+      The parameter \c T is the type of node's data. branch_iter is
+      used to pre-order walk a branch.
+
+    */
     template <typename T>
     class branch_iter
     {
diff --git a/milena/mln/util/branch_iter_ind.hh b/milena/mln/util/branch_iter_ind.hh
index 9cb2568..501d332 100644
--- a/milena/mln/util/branch_iter_ind.hh
+++ b/milena/mln/util/branch_iter_ind.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -56,12 +57,14 @@ namespace mln
       int pos_;
     };
 
-    /*! \brief Basic 2D image class.
-     *
-     * The parameter \c T is the type of node's data. branch_iter_ind
-     * is used to pre-order walk a branch.
-     *
-     */
+    /*!
+      \internal
+      \brief Iterator on branch.
+
+      The parameter \c T is the type of node's data. branch_iter_ind
+      is used to pre-order walk a branch.
+
+    */
     template <typename T>
     class branch_iter_ind
     {
diff --git a/milena/mln/util/edge.hh b/milena/mln/util/edge.hh
index 75a82c9..bf5acf5 100644
--- a/milena/mln/util/edge.hh
+++ b/milena/mln/util/edge.hh
@@ -175,7 +175,10 @@ namespace mln
   namespace internal
   {
 
-    /// subject_impl specialization (Proxy).
+    /*!
+      \internal
+      \brief subject_impl specialization (Proxy).
+    */
     /// \{
 
     template <typename G, typename E>
diff --git a/milena/mln/util/graph.hh b/milena/mln/util/graph.hh
index 54d1c76..bf31e58 100644
--- a/milena/mln/util/graph.hh
+++ b/milena/mln/util/graph.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008, 2009, 2010 EPITA Research and Development
-// Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2010, 2012 EPITA Research and
+// Development Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -48,7 +48,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for mln::util::graph.
+    /*!
+      \internal
+      \brief Data structure for mln::util::graph.
+    */
     template <>
     struct data<util::graph>
     {
diff --git a/milena/mln/util/internal/edge_impl.hh b/milena/mln/util/internal/edge_impl.hh
index ca5b5fa..695eeeb 100644
--- a/milena/mln/util/internal/edge_impl.hh
+++ b/milena/mln/util/internal/edge_impl.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,7 +44,10 @@ namespace mln
     namespace internal
     {
 
-      /// Implementation class to equip generalized edge classes.
+      /*!
+	\internal
+	\brief Implementation class to equip generalized edge classes.
+      */
       template <typename G>
       class edge_impl_
       {
@@ -51,28 +55,18 @@ namespace mln
 	  edge_impl_();
       };
 
-    } // end of namespace internal
-
-  } // end of namespace util
-
-} // end of namespace mln
 
 #ifndef MLN_INCLUDE_ONLY
 
-namespace mln
-{
 
-  namespace util
-  {
+      template <typename G>
+      inline
+      edge_impl_<G>::edge_impl_()
+      {
+      }
 
-    namespace internal
-    {
+#endif // ! MLN_INCLUDE_ONLY
 
-    template <typename G>
-    inline
-    edge_impl_<G>::edge_impl_()
-    {
-    }
 
     } // end of namespace internal
 
@@ -80,7 +74,5 @@ namespace mln
 
 } // end of namespace mln
 
-#endif // ! MLN_INCLUDE_ONLY
-
 
 #endif // ! MLN_UTIL_INTERNAL_EDGE_IMPL_HH
diff --git a/milena/mln/util/internal/graph_base.hh b/milena/mln/util/internal/graph_base.hh
index 3a9eea9..0297465 100644
--- a/milena/mln/util/internal/graph_base.hh
+++ b/milena/mln/util/internal/graph_base.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -60,7 +60,10 @@ namespace mln
 
     namespace internal
     {
-      /// \brief Base class for undirected graphs.
+      /*!
+	\internal
+	\brief Base class for undirected graphs.
+      */
       template<typename E>
       class graph_base : public Graph<E>
       {
diff --git a/milena/mln/util/internal/graph_iter.hh b/milena/mln/util/internal/graph_iter.hh
index 09e0bb4..6ebd627 100644
--- a/milena/mln/util/internal/graph_iter.hh
+++ b/milena/mln/util/internal/graph_iter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -42,8 +43,10 @@ namespace mln
   namespace internal
   {
 
-    /// Forward vertex iterator.
-
+    /*!
+      \internal
+      \brief Forward vertex iterator.
+    */
     template<typename G>
     class vertex_fwd_iterator
       : public graph_iter_base<G, util::vertex<G>, vertex_fwd_iterator<G> >
@@ -70,8 +73,10 @@ namespace mln
     };
 
 
-    /// Backward vertex iterator.
-
+    /*!
+      \internal
+      \brief Backward vertex iterator.
+    */
     template<typename G>
     class vertex_bkd_iterator
       : public graph_iter_base<G, util::vertex<G>, vertex_bkd_iterator<G> >
@@ -98,8 +103,10 @@ namespace mln
     };
 
 
-    /// Forward edge iterator.
-
+    /*!
+      \internal
+      \brief Forward edge iterator.
+    */
     template <typename G>
     class edge_fwd_iterator
       : public graph_iter_base<G, util::edge<G>, edge_fwd_iterator<G> >
@@ -126,8 +133,10 @@ namespace mln
     };
 
 
-    /// Backward edge iterator.
-
+    /*!
+      \internal
+      \brief Backward edge iterator.
+    */
     template <typename G>
     class edge_bkd_iterator
       : public graph_iter_base<G, util::edge<G>, edge_bkd_iterator<G> >
diff --git a/milena/mln/util/internal/vertex_impl.hh b/milena/mln/util/internal/vertex_impl.hh
index 754075e..04af289 100644
--- a/milena/mln/util/internal/vertex_impl.hh
+++ b/milena/mln/util/internal/vertex_impl.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,7 +44,10 @@ namespace mln
     namespace internal
     {
 
-      /// Implementation class to equip generalized vertex classes.
+      /*!
+	\internal
+	\brief Implementation class to equip generalized vertex classes.
+      */
       template <typename G>
       class vertex_impl_
       {
@@ -51,22 +55,9 @@ namespace mln
 	  vertex_impl_();
       };
 
-    } // end of namespace internal
-
-  } // end of namespace util
-
-} // end of namespace mln
 
 #ifndef MLN_INCLUDE_ONLY
 
-namespace mln
-{
-
-  namespace util
-  {
-
-    namespace internal
-    {
 
     template <typename G>
     inline
@@ -74,13 +65,13 @@ namespace mln
     {
     }
 
+
+#endif // ! MLN_INCLUDE_ONLY
+
     } // end of namespace internal
 
   } // end of namespace util
 
 } // end of namespace mln
 
-#endif // ! MLN_INCLUDE_ONLY
-
-
 #endif // ! MLN_UTIL_INTERNAL_VERTEX_IMPL_HH
diff --git a/milena/mln/util/lemmings.hh b/milena/mln/util/lemmings.hh
index c6d74b2..4aaefac 100644
--- a/milena/mln/util/lemmings.hh
+++ b/milena/mln/util/lemmings.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -40,8 +41,7 @@ namespace mln
   {
 
     /*! \brief Lemmings tool.
-     *
-     */
+    */
     template <typename I>
     struct lemmings_ : public Object< lemmings_<I> >
     {
diff --git a/milena/mln/util/line_graph.hh b/milena/mln/util/line_graph.hh
index f8104a4..f5b68af 100644
--- a/milena/mln/util/line_graph.hh
+++ b/milena/mln/util/line_graph.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -50,7 +50,10 @@ namespace mln
   namespace internal
   {
 
-    /// Data structure for mln::util::line_graph<G>.
+    /*!
+      \internal
+      \brief Data structure for mln::util::line_graph<G>.
+    */
     template <typename G>
     struct data< util::line_graph<G> >
     {
diff --git a/milena/mln/util/site_pair.hh b/milena/mln/util/site_pair.hh
index 52cb75d..4dee2fd 100644
--- a/milena/mln/util/site_pair.hh
+++ b/milena/mln/util/site_pair.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -97,8 +98,10 @@ namespace mln
   {
 
     /// \{
-    /// subject_impl specialization (Proxy)
-
+    /*!
+      \internal
+      \brief subject_impl specialization (Proxy)
+    */
     template <typename P, typename E>
     struct subject_impl< const util::site_pair<P>, E >
     {
diff --git a/milena/mln/util/vertex.hh b/milena/mln/util/vertex.hh
index 4f5f1b2..2cbdaa1 100644
--- a/milena/mln/util/vertex.hh
+++ b/milena/mln/util/vertex.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
+// Copyright (C) 2008, 2009, 2010, 2012 EPITA Research and Development
 // Laboratory (LRDE)
 //
 // This file is part of Olena.
@@ -165,7 +165,10 @@ namespace mln
   namespace internal
   {
 
-    /// subject_impl specialization (Proxy).
+    /*!
+      \internal
+      \brief subject_impl specialization (Proxy).
+    */
     /// \{
 
     template <typename G, typename E>
diff --git a/milena/mln/value/internal/value_like.hh b/milena/mln/value/internal/value_like.hh
index e3988d4..28dfc38 100644
--- a/milena/mln/value/internal/value_like.hh
+++ b/milena/mln/value/internal/value_like.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -43,10 +44,14 @@ namespace mln
     namespace internal
     {
 
-      /// Base class for value classes defined over another
-      /// type. Parameters are \c V the equivalent value type and
-      /// \c E the exact value type.
-      ///
+      /*!
+	\internal
+	\brief Base class for value classes defined over another
+	type.
+
+	Parameters are \c V the equivalent value type and
+	\c E the exact value type.
+      */
       template < typename V, // Equivalent.
 		 typename C, // Encoding.
 		 typename N, // Interoperation.
diff --git a/milena/mln/value/viter.hh b/milena/mln/value/viter.hh
index 308e0de..8d9434d 100644
--- a/milena/mln/value/viter.hh
+++ b/milena/mln/value/viter.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2007, 2008, 2009, 2012 EPITA Research and Development
+// Laboratory (LRDE)
 //
 // This file is part of Olena.
 //
@@ -44,10 +45,12 @@ namespace mln
   {
 
 
-    /*! \brief FIXME: Forward iterator on a set of values.
-     *
-     * The parameter \c S is the type of value set.
-     */
+    /*!
+      \internal
+      \brief FIXME: Forward iterator on a set of values.
+
+      The parameter \c S is the type of value set.
+    */
     template <typename S>
     struct fwd_viter_ : public Value_Iterator< fwd_viter_<S> >
     {
@@ -89,10 +92,12 @@ namespace mln
 
 
 
-    /*! \brief FIXME: Backward iterator on a set of values.
-     *
-     * The parameter \c S is the type of value set.
-     */
+    /*!
+      \internal
+      \brief FIXME: Backward iterator on a set of values.
+
+      The parameter \c S is the type of value set.
+    */
     template <typename S>
     struct bkd_viter_ : public Value_Iterator< bkd_viter_<S> >
     {
-- 
1.7.2.5
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0