---
milena/ChangeLog | 4 +
milena/doc/tutorial.tex | 159 +++++++++++++++++++++++++++++++++++++++-------
2 files changed, 138 insertions(+), 25 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 4a14115..ce8608c 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,7 @@
+2012-06-18 Guillaume Lazzara <z(a)lrde.epita.fr>
+
+ * doc/tutorial.tex: Add section about multifile compilation.
+
2012-05-23 Guillaume Lazzara <z(a)lrde.epita.fr>
Fix a bug in a tutorial example.
diff --git a/milena/doc/tutorial.tex b/milena/doc/tutorial.tex
index 8fee888..e67a9da 100644
--- a/milena/doc/tutorial.tex
+++ b/milena/doc/tutorial.tex
@@ -952,34 +952,141 @@ result.
\doxysubsection{tuto3howtocompile}{Include path}
-If Milena has been installed in a custom directory, e.g. not /usr/include or
-/usr/local/include, the path to the library headers must be passed to the
-compiler.
+If Milena has been installed in a custom directory, e.g. not
+/usr/include or /usr/local/include, the path to the library headers
+must be passed to the compiler.
With g++ and MinGW, the option is \B{-I$<$path$>$}.
\begin{verbatim}
$ g++ -Ipath/to/mln my_program.cc
\end{verbatim}
-For other compilers, please look at the documentation and search for ``include
-path''.
-
+For other compilers, please look at the documentation and search for
+``include path''.
\doxysubsection{tuto3liblink}{Library linking}
-As it is usually expected when using a library, no library linking is needed for
-the library itself.
-Milena is a ``header only'' library and is compiled ``on demand'' with your
-program.
+As it is usually expected when using a library, no library linking is
+needed for the library itself. Milena is a ``header only'' library
+and is compiled ``on demand'' with your program.
+
+If you use specific input/output you may need to link your program
+with the right graphic library. For more information, please refer to
+section \doxyref{inputoutput} in the Quick Reference Guide.
+
+
+\doxysubsection{tuto3multifile}{Multifile Compilation}
+
+In some cases, one might want to use Olena in a more complex program
+compiled through several independant files.
+
+Let's consider the program is composed of two files both including
+Milena headers:
+\begin{itemize}
+ \item main.cc
+ \item task.cc
+\end{itemize}
+
+Content of main.cc
+\begin{verbatim}
+#include <mln/core/image/image2d.hh>
+
+// Main.cc
-If you use specific input/output you may need to link your program with the
-right graphic library. For more information, please refer to section
-\doxyref{inputoutput} in the Quick Reference Guide.
+// Forward declaration.
+void f();
+
+int main()
+{
+ mln::image2d<int> ima;
+}
+\end{verbatim}
+
+Content of task.cc
+\begin{verbatim}
+#include <mln/core/image/image2d.hh>
+
+// task.cc
+
+void f()
+{
+ mln::image2d<int> ima;
+}
+
+\end{verbatim}
+
+The following call to the compiler will fail:
+\begin{verbatim}
+$ g++ -Ipath/to/mln main.cc task.cc
+/tmp/ccRaVKO2.o:(.data+0x0): multiple definition of `mln::trace::quiet'
+/tmp/ccAArtQl.o:(.data+0x0): first defined here
+/tmp/ccRaVKO2.o:(.bss+0x0): multiple definition of `mln::trace::tab'
+/tmp/ccAArtQl.o:(.bss+0x0): first defined here
+/tmp/ccRaVKO2.o:(.bss+0x4): multiple definition of `mln::trace::full_trace'
+/tmp/ccAArtQl.o:(.bss+0x4): first defined here
+/tmp/ccRaVKO2.o:(.bss+0x8): multiple definition of `mln::trace::internal::max_tab'
+[...]
+collect2: ld returned 1 exit status
+\end{verbatim}
+
+This issue is due to the ``header only'' architecture of the library
+and to global variables. global variable symbols are compiled for each
+files and it leads to symbols conflicts.
+
+The solution is to force the compiler to compile these symbols only
+once. Olena provided a mechanism to do this.
+
+In one of the files including olena headers, at the very top of
+the file (before any includes), add the following line:
+\begin{verbatim}
+#undef MLN_WO_GLOBAL_VARS
+\end{verbatim}
+
+For instance, we would have in main.cc:
+\begin{verbatim}
+#undef MLN_WO_GLOBAL_VARS
+#include <mln/core/image/image2d.hh>
+
+// Main.cc
+
+// Forward declaration.
+void f();
+
+int main()
+{
+ f();
+}
+
+\end{verbatim}
+
+The compile the sources again with the define:
+\begin{verbatim}
+$ g++ -DMLN_WO_GLOBAL_VARS -Ipath/to/mln main.cc task.cc
+\end{verbatim}
+
+The previous duplicate symbols will then be compiled thanks to main.cc
+which force the effective declaration of the global symbols. Because
+of the default define at compile time, any .cc files including headers
+from the library will just declare but not define global symbols.
+
+For that reason, sometimes one may also encounter the following error
+after defining MLN\_WO\_GLOBAL\_VARS.
+\begin{verbatim}
+g++ -DMLN_WO_GLOBAL_VARS -I$PWD/milena/ main.cc task.cc
+/tmp/cc4Ys1xX.o: In function `f()':
+task.cc:(.text+0x6): undefined reference to `mln::border::thickness'
+collect2: ld returned 1 exit status
+\end{verbatim}
+In our case, it would be because task.cc includes and uses global
+symbols which are not included in main.cc. Therefore, they are defined
+but never compiled. Here, the file main.cc should include the
+corresponding headers.
\doxysubsection{tuto3compildndebug}{Disable Debug}
-By default, Olena enables a lot of internal pre and post conditions. Usually,
-this is a useful feature and it should be enabled. It can heavily slow down a
-program though and these tests can be disabled by compiling using -DNDEBUG:
+By default, Olena enables a lot of internal pre and post
+conditions. Usually, this is a useful feature and it should be
+enabled. It can heavily slow down a program though and these tests can
+be disabled by compiling using -DNDEBUG:
\begin{verbatim}
$ g++ -DNDEBUG -Ipath/to/mln my_program.cc
@@ -987,20 +1094,22 @@ $ g++ -DNDEBUG -Ipath/to/mln my_program.cc
\doxysubsection{tuto3compoptimflags}{Compiler optimization flags}
-In this section you will find remarks about the compiler optimization flags and
-their impact on the compilation and execution time.
+In this section you will find remarks about the compiler optimization
+flags and their impact on the compilation and execution time.
\doxysubsubsection{tuto3compoptimgcc}{GCC}
\begin{itemize}
- \item \B{-O0}, combined with -DNDEBUG, it leads to the fastest compilation
- time. The execution is somewhat slow though since dispatch functions and one
- line members are not inlined by the compiler.
- \item \B{-O1}, best compromise between compilation time and execution time.
- \item \B{-O2}, \B{-O3}, combined with -DNDEBUG, it leads to the best execution
- time. However these optimizations dramatically slow down the compilation and
- requires much more memory at compile time.
+ \item \B{-O0}, combined with -DNDEBUG, it leads to the fastest
+ compilation time. The execution is somewhat slow though since
+ dispatch functions and one line members are not inlined by the
+ compiler.
+ \item \B{-O1}, best compromise between compilation time and
+ execution time.
+ \item \B{-O2}, \B{-O3}, combined with -DNDEBUG, it leads to the best
+ execution time. However these optimizations dramatically slow down
+ the compilation and requires much more memory at compile time.
\end{itemize}
\doxysubsubsection{tuto3compoptimother}{Other compilers}
--
1.7.2.5
---
milena/apps/graph-morpho/morpho.hh | 18 ++-
milena/doc/Doxyfile.in | 4 +-
milena/doc/DoxygenLayout.xml | 48 +++---
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 | 9 +-
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 | 19 ++-
milena/mln/core/dpoints_pixter.hh | 26 ++-
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 | 8 +-
milena/mln/core/image/graph_window_piter.hh | 28 ++-
milena/mln/core/image/image1d.hh | 9 +-
milena/mln/core/image/image2d.hh | 22 ++-
milena/mln/core/image/image3d.hh | 7 +-
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/thrubin_image.hh | 9 +-
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 | 9 +-
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 | 14 +-
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 | 19 ++-
milena/mln/core/internal/piter_adaptor.hh | 15 +-
milena/mln/core/internal/piter_identity.hh | 15 +-
milena/mln/core/internal/pixel_impl.hh | 20 ++-
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 | 11 +-
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 | 25 ++-
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 | 24 ++-
milena/mln/topo/static_n_face_iter.hh | 31 ++--
milena/mln/trait/ch_function_value.hh | 5 +-
milena/mln/trait/image/props.hh | 13 +-
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/stack.hh | 8 +-
milena/mln/value/viter.hh | 23 ++-
171 files changed, 1927 insertions(+), 1073 deletions(-)
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/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"/>
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 722db89..9e10105 100644
--- a/milena/mln/core/concept/gdpoint.hh
+++ b/milena/mln/core/concept/gdpoint.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.
//
@@ -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 bbf217c..9ddadc9 100644
--- a/milena/mln/core/concept/site_set.hh
+++ b/milena/mln/core/concept/site_set.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 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 eb19c2b..514ed1a 100644
--- a/milena/mln/core/dpoints_pixter.hh
+++ b/milena/mln/core/dpoints_pixter.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,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 068fbdb..f91b7da 100644
--- a/milena/mln/core/image/graph_window_if_piter.hh
+++ b/milena/mln/core/image/graph_window_if_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.
//
@@ -42,7 +43,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 6d10aa5..4e0817f 100644
--- a/milena/mln/core/image/image1d.hh
+++ b/milena/mln/core/image/image1d.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.
//
@@ -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 bc49561..ea8f3f8 100644
--- a/milena/mln/core/image/image2d.hh
+++ b/milena/mln/core/image/image2d.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.
//
@@ -65,7 +65,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> >
{
@@ -164,9 +167,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;
@@ -210,12 +217,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;
@@ -254,8 +266,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 59d6908..2789341 100644
--- a/milena/mln/core/image/image3d.hh
+++ b/milena/mln/core/image/image3d.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.
@@ -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 54acbc7..48f827f 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 24d7e37..e1f50a7 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.
//
@@ -50,7 +50,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/thrubin_image.hh b/milena/mln/core/image/vmorph/thrubin_image.hh
index 0195d1a..1263acd 100644
--- a/milena/mln/core/image/vmorph/thrubin_image.hh
+++ b/milena/mln/core/image/vmorph/thrubin_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.
//
@@ -46,7 +46,10 @@ namespace mln
namespace internal
{
- /// Data structure for \c mln::thrubin_image<I>.
+ /*!
+ \internal
+ \brief Data structure for \c mln::thrubin_image<I>.
+ */
template <typename I1, typename I2, typename F>
struct data< thrubin_image<I1, I2, 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 9aa7c51..edcf4da 100644
--- a/milena/mln/core/internal/check/image_fastest.hh
+++ b/milena/mln/core/internal/check/image_fastest.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
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 239ffbf..84d9cf8 100644
--- a/milena/mln/core/internal/image_identity.hh
+++ b/milena/mln/core/internal/image_identity.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.
//
@@ -119,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 f1765c9..c24ab19 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.
//
@@ -66,25 +67,25 @@ namespace mln
/// Give the foreground neighborhood in the case of a dual
/// neighborhood. For instance, with (object:c4, background:c8),
/// the result is c4.
-
+
neighb<W> foreground() const
{
W win = internal::force_exact<E>(*this).win().window_(1); // True, so object.
neighb<W> nbh(win);
return nbh;
}
-
+
/// Give the background neighborhood in the case of a dual
/// neighborhood. For instance, with (object:c4, background:c8),
/// the result is c8.
-
+
neighb<W> background() const
{
W win = internal::force_exact<E>(*this).win().window_(0); // False, so background.
neighb<W> nbh(win);
return nbh;
}
-
+
};
@@ -111,10 +112,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 d0549b1..ac78d31 100644
--- a/milena/mln/core/internal/pixel_impl.hh
+++ b/milena/mln/core/internal/pixel_impl.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.
//
@@ -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 e8f784c..39ea59d 100644
--- a/milena/mln/labeling/blobs_and_compute.hh
+++ b/milena/mln/labeling/blobs_and_compute.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.
//
@@ -71,8 +71,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 9cfd266..bb11e5c 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
@@ -530,14 +546,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>
@@ -547,14 +566,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;
@@ -695,7 +717,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 c78500a..01a421a 100644
--- a/milena/mln/topo/face_iter.hh
+++ b/milena/mln/topo/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.
//
@@ -60,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> >
@@ -104,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 4cdb091..0ed55be 100644
--- a/milena/mln/topo/n_face_iter.hh
+++ b/milena/mln/topo/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.
//
@@ -63,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>,
@@ -120,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 c7b7746..1e6463e 100644
--- a/milena/mln/trait/image/props.hh
+++ b/milena/mln/trait/image/props.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.
//
@@ -759,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).
@@ -782,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/stack.hh b/milena/mln/value/stack.hh
index 1782c1c..01ef66e 100644
--- a/milena/mln/value/stack.hh
+++ b/milena/mln/value/stack.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.
@@ -48,8 +48,10 @@ namespace mln
{
- /// data structure for stack_image.
- ///
+ /*!
+ \internal
+ \brief data structure for stack_image.
+ */
template <unsigned n, typename I>
struct data< value::stack_image<n, I> >
{
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
---
milena/doc/Doxyfile.in | 1773 +++++++++++++++++++++++++++++---
milena/doc/DoxygenLayout.xml | 1 -
milena/mln/core/internal/image_base.hh | 42 +-
3 files changed, 1660 insertions(+), 156 deletions(-)
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index 181f887..9b1cfd6 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -1,255 +1,1533 @@
-# Copyright (C) 2007, 2008, 2009, 2010, 2011 EPITA Research and
-# Development Laboratory (LRDE)
-#
-# This file is part of Olena.
-#
-# Olena is free software: you can redistribute it and/or modify it under
-# the terms of the GNU General Public License as published by the Free
-# Software Foundation, version 2 of the License.
-#
-# Olena is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Olena. If not, see <http://www.gnu.org/licenses/>.
+# Doxyfile 1.8.0-20120409
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
#
-# Doxyfile 1.5.1
+# All text after a hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ").
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or sequence of words) that should
+# identify the project. Note that if you do not use Doxywizard you need
+# to put quotes around the project name if it contains spaces.
+
PROJECT_NAME = "Milena"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
PROJECT_NUMBER = "@PACKAGE_VERSION@"
-PROJECT_BRIEF = "An Image Processing Platform"
-PROJECT_LOGO = @top_srcdir@/doc/images/logo.jpg
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer
+# a quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF = "An Image Processing Platform"
+
+# With the PROJECT_LOGO tag one can specify an logo or icon that is
+# included in the documentation. The maximum height of the logo should not
+# exceed 55 pixels and the maximum width should not exceed 200 pixels.
+# Doxygen will copy the logo to the output directory.
+
+PROJECT_LOGO = @top_srcdir@/doc/images/logo.jpg
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
OUTPUT_DIRECTORY = @builddir@/user-refman.tmp
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
CREATE_SUBDIRS = YES
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,
+# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+
OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
ALWAYS_DETAILED_SEC = YES
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
INLINE_INHERITED_MEMB = YES
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# 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.
+
STRIP_FROM_PATH = @top_srcdir@/milena
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# 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 =
+
+# 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
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
JAVADOC_AUTOBRIEF = YES
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
TAB_SIZE = 8
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
ALIASES =
+
+# This tag can be used to specify a number of word-keyword mappings (TCL only).
+# A mapping has the form "name=value". For example adding
+# "class=itcl::class" will allow you to use the command class in the
+# itcl::class meaning.
+
+TCL_SUBST =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
+# scopes will look different, etc.
+
OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
+# Fortran.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
+# VHDL.
+
+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.
+
+EXTENSION_MAPPING =
+
+# If MARKDOWN_SUPPORT is enabled (the default) then doxygen pre-processes all
+# comments according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you
+# can mix doxygen, HTML, and XML commands with Markdown formatting.
+# Disable only in case of backward compatibilities issues.
+
+MARKDOWN_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
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also makes the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
BUILTIN_STL_SUPPORT = YES
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+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
+# 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.
+
IDL_PROPERTY_SUPPORT = NO
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
SUBGROUPING = YES
-INLINE_GROUPED_CLASSES = YES
-SORT_GROUP_NAMES = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and
+# unions are shown inside the group in which they are included (e.g. using
+# @ingroup) instead of on a separate page (for HTML and Man pages) or
+# section (for LaTeX and RTF).
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
+# unions with only public data fields will be shown inline in the documentation
+# of the scope in which they are defined (i.e. file, namespace, or group
+# documentation), provided this scope is documented. If set to NO (the default),
+# structs, classes, and unions are shown on a separate page (for HTML and Man
+# pages) or section (for LaTeX and RTF).
+
+INLINE_SIMPLE_STRUCTS = NO
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+
TYPEDEF_HIDES_STRUCT = YES
+
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penalty.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will roughly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols.
+
+SYMBOL_CACHE_SIZE = 0
+
+# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be
+# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given
+# their name and scope. Since this can be an expensive process and often the
+# same symbol appear multiple times in the code, doxygen keeps a cache of
+# pre-resolved symbols. If the cache is too small doxygen will become slower.
+# If the cache is too large, memory is wasted. The cache size is given by this
+# formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols.
+
+LOOKUP_CACHE_SIZE = 0
+
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
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.
+
+EXTRACT_PACKAGE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
EXTRACT_LOCAL_CLASSES = NO
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
+# anonymous namespaces are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
HIDE_UNDOC_MEMBERS = NO
-HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = YES
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
HIDE_FRIEND_COMPOUNDS = YES
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
HIDE_IN_BODY_DOCS = YES
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
SHOW_INCLUDE_FILES = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+# will list include files with double quotes in the documentation
+# rather than with sharp brackets.
+
+FORCE_LOCAL_INCLUDES = NO
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
SORT_MEMBER_DOCS = YES
-SORT_MEMBERS_CTORS_1ST = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
SORT_BRIEF_DOCS = YES
-SORT_BY_SCOPE_NAME = YES
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
+# will sort the (brief and detailed) documentation of class members so that
+# constructors and destructors are listed first. If set to NO (the default)
+# the constructors will appear in the respective orders defined by
+# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
+# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
+# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+
+SORT_MEMBERS_CTORS_1ST = YES
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
+# the group names will appear in their defined order.
+
+SORT_GROUP_NAMES = YES
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to
+# do proper type resolution of all parameters of a function it will reject a
+# match between the prototype and the implementation of a member function even
+# if there is only one candidate or it is obvious which candidate to choose
+# by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen
+# will still accept a match between prototype and implementation in such cases.
+
+STRICT_PROTO_MATCHING = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
GENERATE_TODOLIST = NO
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or macro consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and macros in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
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
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
+# Folder Tree View (if specified). The default is YES.
+
+SHOW_FILES = NO
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page.
+# 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
+
+# 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
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
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
+# 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.
+
+LAYOUT_FILE = @top_srcdir@/milena/doc/DoxygenLayout.xml
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files
+# containing the references data. This must be a list of .bib files. The
+# .bib extension is automatically appended if omitted. Using this command
+# 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.
+
+CITE_BIB_FILES = @abs_top_srcdir@/doc/doc.bib
+
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
WARN_IF_UNDOCUMENTED = NO
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
WARN_IF_DOC_ERROR = YES
+
+# The WARN_NO_PARAMDOC option can be enabled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
WARN_NO_PARAMDOC = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
WARN_LOGFILE =
+
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
INPUT = @top_srcdir@/milena
-FILE_PATTERNS = *.cc \
- *.hh \
- *.hxx \
- *.hcc \
- *.dox
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# the list of possible encodings.
+
+INPUT_ENCODING = ISO-8859-1
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
+# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
+# *.f90 *.f *.for *.vhd *.vhdl
+
+FILE_PATTERNS = *.cc \
+ *.hh \
+ *.hxx \
+ *.hcc \
+ *.dox
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
RECURSIVE = YES
-EXCLUDE = @top_srcdir@/milena/sandbox \
- @top_srcdir@/milena/trash \
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE = @top_srcdir@/milena/sandbox \
+ @top_srcdir@/milena/trash \
@top_srcdir@/milena/mln/core/concept/proxy.hxx \
- @top_srcdir@/milena/doc/examples/trash \
- @top_srcdir@/milena/doc/user-refman \
- @top_srcdir@/milena/doc/devel-refman \
+ @top_srcdir@/milena/doc/examples/trash \
+ @top_srcdir@/milena/doc/user-refman \
+ @top_srcdir@/milena/doc/devel-refman \
@top_srcdir@/milena/tests/unit_test
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+
EXCLUDE_SYMLINKS = YES
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
EXCLUDE_PATTERNS = *spe.hh
-EXCLUDE_SYMBOLS = *_ \
- *_dispatch \
- mln::trait::* \
- trait::* \
- mln::*<void> \
- mln::*< void > \
- numeric_limits \
- subject_impl \
- subject_point_impl \
- check_t \
- ret \
- It \
- eval \
- is_a \
- composition_unary_impl_helper \
- image_base \
- binary_impl \
- unary_impl \
- proxy_impl \
- T
-EXAMPLE_PATH = @top_srcdir@/milena/doc/examples \
- @top_srcdir@/milena/doc/outputs \
- @top_srcdir@/milena/doc/examples/split \
- @top_srcdir@/milena/doc/outputs/split
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH = @top_srcdir@/milena/doc/examples \
+ @top_srcdir@/milena/doc/outputs \
+ @top_srcdir@/milena/doc/examples/split \
+ @top_srcdir@/milena/doc/outputs/split
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
EXAMPLE_PATTERNS = *.cc \
- *.cc.raw \
- *.txt
+ *.cc.raw \
+ *.txt
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
EXAMPLE_RECURSIVE = NO
-IMAGE_PATH = @top_srcdir@/milena/doc/img \
- @top_srcdir@/milena/doc/figures
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH = @top_srcdir@/milena/doc/img \
+ @top_srcdir@/milena/doc/figures
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+# If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis.
+# Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match.
+# The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty or if
+# non of the patterns match the file name, INPUT_FILTER is applied.
+
FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
FILTER_SOURCE_FILES = NO
-INPUT_ENCODING = ISO-8859-1
-CITE_BIB_FILES = @abs_top_srcdir@/doc/doc.bib
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any)
+# and it is also possible to disable source filtering for a specific pattern
+# using *.ext= (so without naming a filter). This option only has effect when
+# FILTER_SOURCE_FILES is enabled.
+
+FILTER_SOURCE_PATTERNS =
+
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
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.
+
STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
+# functions referencing it will be listed.
+
REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
REFERENCES_RELATION = YES
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.
+# Otherwise they will link to the documentation.
+
REFERENCES_LINK_SOURCE = NO
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
VERBATIM_HEADERS = YES
+
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
ALPHABETICAL_INDEX = YES
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# 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
+
+# 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.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
IGNORE_PREFIX = mln::
+
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header. Note that when using a custom header you are responsible
+# for the proper inclusion of any scripts and style sheets that doxygen
+# needs, which is dependent on the configuration options used.
+# It is advised to generate a default header using "doxygen -w html
+# header.html footer.html stylesheet.css YourConfigFile" and then modify
+# that header. Note that the header is subject to change so you typically
+# have to redo this when upgrading to a newer version of doxygen or when
+# changing the value of configuration settings such as GENERATE_TREEVIEW!
+
HTML_HEADER = @top_srcdir@/doc/header.html
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
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!
+
HTML_STYLESHEET = @top_srcdir@/doc/doxygen.css
-LAYOUT_FILE = @top_srcdir@/milena/doc/DoxygenLayout.xml
+
+# 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
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that
+# the files will be copied as-is; there are no commands or markers available.
+
+HTML_EXTRA_FILES =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+# Doxygen will adjust the colors in the style sheet and background images
+# according to this color. Hue is specified as an angle on a colorwheel,
+# see http://en.wikipedia.org/wiki/Hue for more information.
+# For instance the value 0 represents red, 60 is yellow, 120 is green,
+# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+# The allowed range is 0 to 359.
+
+HTML_COLORSTYLE_HUE = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+# the colors in the HTML output. For a value of 0 the output will use
+# grayscales only. A value of 255 will produce the most vivid colors.
+
+HTML_COLORSTYLE_SAT = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+# the luminance component of the colors in the HTML output. Values below
+# 100 gradually make the output lighter, whereas values above 100 make
+# the output darker. The value divided by 100 is the actual gamma applied,
+# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+# and 100 does not change the gamma.
+
+HTML_COLORSTYLE_GAMMA = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting
+# this to NO can help when comparing the output of multiple runs.
+
+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).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# 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).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
+# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+
+GENERATE_DOCSET = NO
+
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
+# can be grouped.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# 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
+
+# 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
+
+# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
+
+DOCSET_PUBLISHER_NAME = Publisher
+
+# 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
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# of the generated HTML documentation.
+
GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# content.
+
+CHM_INDEX_ENCODING =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
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
+
+# 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
+# that can be used as input for Qt's qhelpgenerator to generate a
+# Qt Compressed Help (.qch) of the generated HTML documentation.
+
+GENERATE_QHP = yes
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
+# The path specified is relative to the HTML output folder.
+
+QCH_FILE = "@builddir@/milena.qch"
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#namespace
+
+QHP_NAMESPACE = "fr.epita.lrde.olena.milena"
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+
+QHP_VIRTUAL_FOLDER = "milena-2.0"
+
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
+# add. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#custom-filters
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see
+# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
+# Qt Help Project / Custom Filters</a>.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's
+# filter section matches.
+# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
+# Qt Help Project / Filter Attributes</a>.
+
+QHP_SECT_FILTER_ATTRS =
+
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
+# .qhp file.
+
+QHG_LOCATION = "qhelpgenerator"
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+# will be generated, which together with the HTML files, form an Eclipse help
+# plugin. To install this plugin and make it available under the help contents
+# menu in Eclipse, the contents of the directory containing the HTML and XML
+# files needs to be copied into the plugins directory of eclipse. The name of
+# the directory within the plugins directory should be the same as
+# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
+# the help appears.
+
+GENERATE_ECLIPSEHELP = NO
+
+# A unique identifier for the eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have
+# this name.
+
+ECLIPSE_DOC_ID = org.doxygen.Project
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs)
+# at top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it. Since the tabs have the same information as the
+# navigation tree you can set this option to NO if you already set
+# GENERATE_TREEVIEW to YES.
+
DISABLE_INDEX = NO
-ENUM_VALUES_PER_LINE = 4
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# Windows users are probably better off using the HTML help feature.
+# Since the tree basically has the same information as the tab index you
+# could consider to set DISABLE_INDEX to NO when enabling this option.
+
GENERATE_TREEVIEW = YES
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
+# (range [0,1..20]) that doxygen will group on one line in the generated HTML
+# documentation. Note that a value of 0 will completely suppress the enum
+# values from appearing in the overview section.
+
+ENUM_VALUES_PER_LINE = 4
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
TREEVIEW_WIDTH = 250
+
+# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
+# links to external symbols imported via tag files in a separate window.
+
+EXT_LINKS_IN_WINDOW = NO
+
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
+# to force them to be regenerated.
+
+FORMULA_FONTSIZE = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are
+# not supported properly for IE 6.0, but are supported on all modern browsers.
+# Note that when changing this option you need to delete any form_*.png files
+# in the HTML output before the changes have effect.
+
+FORMULA_TRANSPARENT = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
+# (see http://www.mathjax.org) which uses client side Javascript for the
+# rendering instead of using prerendered bitmaps. Use this if you do not
+# have LaTeX installed or if you want to formulas look prettier in the HTML
+# output. When enabled you may also need to install MathJax separately and
+# configure the path to it using the MATHJAX_RELPATH option.
+
+USE_MATHJAX = NO
+
+# When MathJax is enabled you need to specify the location relative to the
+# HTML output directory using the MATHJAX_RELPATH option. The destination
+# directory should contain the MathJax.js script. For instance, if the mathjax
+# directory is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to
+# the MathJax Content Delivery Network so you can quickly see the result without
+# installing MathJax.
+# However, it is strongly recommended to install a local
+# copy of MathJax from http://www.mathjax.org before deployment.
+
+MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
+# names that should be enabled during MathJax rendering.
+
+MATHJAX_EXTENSIONS =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box
+# for the HTML output. The underlying search engine uses javascript
+# and DHTML and should work on any modern browser. Note that when using
+# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
+# (GENERATE_DOCSET) there is already a search function so this one should
+# typically be disabled. For large projects the javascript based search engine
+# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
+
+SEARCHENGINE = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a PHP enabled web server instead of at the web client
+# using Javascript. Doxygen will generate the search PHP script and index
+# file to put on the web server. The advantage of the server
+# based approach is that it scales better to large projects and allows
+# full text search. The disadvantages are that it is more difficult to setup
+# and does not have live searching capabilities.
+
+SERVER_BASED_SEARCH = NO
+
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
GENERATE_LATEX = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+# Note that when enabling USE_PDFLATEX this option is only used for
+# generating bitmaps for formulas in the HTML output, but not in the
+# Makefile that is written to the output directory.
+
LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, letter, legal and
+# executive. If left blank a4wide will be used.
+
PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
LATEX_HEADER =
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for
+# the generated latex document. The footer should contain everything after
+# the last chapter. If it is left blank doxygen will generate a
+# standard footer. Notice: only use this tag if you know what you are doing!
+
+LATEX_FOOTER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
PDF_HYPERLINKS = YES
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
USE_PDFLATEX = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
LATEX_BATCHMODE = YES
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
LATEX_HIDE_INDICES = NO
+
+# If LATEX_SOURCE_CODE is set to YES then doxygen will include
+# source code with syntax highlighting in the LaTeX output.
+# Note that which sources are shown also depends on other settings
+# such as SOURCE_BROWSER.
+
+LATEX_SOURCE_CODE = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See
+# http://en.wikipedia.org/wiki/BibTeX for more info.
+
+LATEX_BIB_STYLE = plain
+
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
RTF_HYPERLINKS = NO
+
+# Load style sheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
RTF_EXTENSIONS_FILE =
+
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
MAN_LINKS = NO
+
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
XML_PROGRAMLISTING = YES
+
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
GENERATE_AUTOGEN_DEF = NO
+
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader.
+# This is useful
+# if you want to understand what is going on.
+# On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
PERLMOD_MAKEVAR_PREFIX =
+
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
MACRO_EXPANSION = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
EXPAND_ONLY_PREDEF = YES
+
+# 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.
+
SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
INCLUDE_PATH = "@boostcppflags@"
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
PREDEFINED = "for_all(x)=for(x.start(); x.is_valid(); x.next())" \
- "for_all_2(x1, x2)=for(x1.start(), x2.start(); x1.is_valid(); x1.next(), x2.next())" \
- "for_all_3(x1, x2, x3)=for(x1.start(), x2.start(), x3.start(); x1.is_valid(); x1.next(), x2.next(), x3.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>" \
+ "for_all_2(x1, x2)=for(x1.start(), x2.start(); x1.is_valid(); x1.next(), x2.next())" \
+ "for_all_3(x1, x2, x3)=for(x1.start(), x2.start(), x3.start(); x1.is_valid(); x1.next(), x2.next(), x3.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>" \
"mln_piter(T)=typename T::piter" \
"mln_fwd_piter(T)=typename T::fwd_piter" \
"mln_bkd_piter(T)=typename T::bkd_piter" \
@@ -284,8 +1562,8 @@ PREDEFINED = "for_all(x)=for(x.start(); x.is_valid(); x.next())" \
"mln_trait_op_plus(L, R)=typename mln::trait::op::plus< L , R >::ret" \
"mln_trait_op_times(L, R)=typename mln::trait::op::times< L , R >::ret" \
"mln_trait_op_uminus(T)=typename mln::trait::op::uminus< T >::ret" \
- "mln_ch_value(I, V)=typename mln::trait::ch_value< I, V >::ret" \
- "mlc_unqualif_(T)=mln::metal::unqualif<T>::ret" \
+ "mln_ch_value(I, V)=typename mln::trait::ch_value< I, V >::ret" \
+ "mlc_unqualif_(T)=mln::metal::unqualif<T>::ret" \
"mln_piter_(T)=T::piter" \
"mln_fwd_piter_(T)=T::fwd_piter" \
"mln_bkd_piter_(T)=T::bkd_piter" \
@@ -319,91 +1597,318 @@ PREDEFINED = "for_all(x)=for(x.start(); x.is_valid(); x.next())" \
"mln_trait_op_div_(L, R)=mln::trait::op::div< L , R >::ret" \
"mln_trait_op_mod_(L, R)=mln::trait::op::mod< L , R >::ret" \
"mln_trait_op_uminus_(T)=mln::trait::op::uminus< T >::ret" \
- "mln_ch_value_(I, V)=typename mln::trait::ch_value< I, V >::ret" \
- "mln_ch_value(I, V)_=mln::trait::ch_value< I, V >::ret" \
- "mln_morpher_lvalue(I)=typename internal::morpher_lvalue_<I>::ret" \
- "mln_concrete(I)=typename mln::trait::concrete< I >::ret" \
- "mln_concrete_ch_value(I, V)=typename mln::trait::ch_value< typename mln::trait::concrete< I >::ret, V >::ret" \
- "mlc_const(T)=typename mln::metal::const_< T >::ret" \
- "mlc_const_return(T)=typename mln::metal::const_return_< T >::ret" \
- "mln_element(T)=typename T::element" \
- "mln_element_(T)=T::element" \
- "mln_delta(T)=typename T::delta" \
- "mln_delta_(T)=T::delta" \
- "mln_dpoint(T)=typename T::dpoint" \
- "mln_dpoint_(T)=T::dpoint" \
- "mln_point(T)=typename T::point" \
- "mln_point_(T)=T::point" \
- "mln_gradient_component(I)=typename mln::trait::ch_value< I, mln::value::props< typename I::value >::sum >::ret" \
- "mln_gradient(I)=mln::value::stack_image< I::point::dim, mln::trait::ch_value< I, mln::value::props< typename I::value >::sum >::ret >" \
- "mln_trait_value_sum_product(T, U)=typename mln::trait::value_< mln_trait_op_times(T,U) >::sum" \
- "mln_sum_product(T, U)=typename mln::trait::value_< mln_trait_op_times(T,U) >::sum" \
- "mln_deduce(T, A1, A2)=typename T::A1::A2" \
- "mln_graph_element(T)=typename T::graph_element" \
- "mln_graph_element_(T)=T::graph_element" \
- "mln_fun_vv2v(F, L, R)=mln::fun::vv2v::F< mln_value(L), mln_value(R) >" \
- "mln_fun_vv2v_result(F, L, R)=typename mln_fun_vv2v(F, L, R)::result" \
- "mln_ch_fun_vv2v(F, L, R)=typename mln::trait::ch_value< L, typename mln_fun_vv2v(F, L, R)::result >::ret" \
- "mln_meta_accu_result(A, T)=typename mln::internal::meta_accu_ret_result_helper<A,T>::result" \
- "mln_meta_accu_result_(A, T)=mln::internal::meta_accu_ret_result_helper<A,T>::result" \
- "mln_q_subject(T)=typename T::q_subject" \
- "mln_q_subject(T)_=T::q_subject" \
- "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_converts_to(T, U)=mln::metal::converts_to< T, U >" \
- "mlc_not_equal(T1, T2)=mln::metal::not_equal< T1, T2 >" \
- "BOOST_PP_LOCAL_ITERATE()=<boost/preprocessor/iteration/detail/local.hpp>"
+ "mln_ch_value_(I, V)=typename mln::trait::ch_value< I, V >::ret" \
+ "mln_ch_value(I, V)_=mln::trait::ch_value< I, V >::ret" \
+ "mln_morpher_lvalue(I)=typename internal::morpher_lvalue_<I>::ret" \
+ "mln_concrete(I)=typename mln::trait::concrete< I >::ret" \
+ "mln_concrete_ch_value(I, V)=typename mln::trait::ch_value< typename mln::trait::concrete< I >::ret, V >::ret" \
+ "mlc_const(T)=typename mln::metal::const_< T >::ret" \
+ "mlc_const_return(T)=typename mln::metal::const_return_< T >::ret" \
+ "mln_element(T)=typename T::element" \
+ "mln_element_(T)=T::element" \
+ "mln_delta(T)=typename T::delta" \
+ "mln_delta_(T)=T::delta" \
+ "mln_dpoint(T)=typename T::dpoint" \
+ "mln_dpoint_(T)=T::dpoint" \
+ "mln_point(T)=typename T::point" \
+ "mln_point_(T)=T::point" \
+ "mln_gradient_component(I)=typename mln::trait::ch_value< I, mln::value::props< typename I::value >::sum >::ret" \
+ "mln_gradient(I)=mln::value::stack_image< I::point::dim, mln::trait::ch_value< I, mln::value::props< typename I::value >::sum >::ret >" \
+ "mln_trait_value_sum_product(T, U)=typename mln::trait::value_< mln_trait_op_times(T,U) >::sum" \
+ "mln_sum_product(T, U)=typename mln::trait::value_< mln_trait_op_times(T,U) >::sum" \
+ "mln_deduce(T, A1, A2)=typename T::A1::A2" \
+ "mln_graph_element(T)=typename T::graph_element" \
+ "mln_graph_element_(T)=T::graph_element" \
+ "mln_fun_vv2v(F, L, R)=mln::fun::vv2v::F< mln_value(L), mln_value(R) >" \
+ "mln_fun_vv2v_result(F, L, R)=typename mln_fun_vv2v(F, L, R)::result" \
+ "mln_ch_fun_vv2v(F, L, R)=typename mln::trait::ch_value< L, typename mln_fun_vv2v(F, L, R)::result >::ret" \
+ "mln_meta_accu_result(A, T)=typename mln::internal::meta_accu_ret_result_helper<A,T>::result" \
+ "mln_meta_accu_result_(A, T)=mln::internal::meta_accu_ret_result_helper<A,T>::result" \
+ "mln_q_subject(T)=typename T::q_subject" \
+ "mln_q_subject(T)_=T::q_subject" \
+ "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_converts_to(T, U)=mln::metal::converts_to< T, U >" \
+ "mlc_not_equal(T1, T2)=mln::metal::not_equal< T1, T2 >" \
+ "BOOST_PP_LOCAL_ITERATE()=<boost/preprocessor/iteration/detail/local.hpp>"
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition that
+# overrules the definition found in the source code.
EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all references to function-like macros
+# that are alone on a line, have an all uppercase name, and do not end with a
+# semicolon, because these will confuse the parser if not removed.
+
SKIP_FUNCTION_MACROS = YES
+
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles. For each
+# tag file the location of the external documentation should be added. The
+# format of a tag file without this location is as follows:
+#
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+#
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths
+# or URLs. Note that each tag file must have a unique name (where the name does
+# NOT include the path). If a tag file is not located in the directory in which
+# doxygen is run, you must also specify the path to the tagfile here.
+
TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
GENERATE_TAGFILE = milena.tag
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
PERL_PATH = /usr/bin/perl
+
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option also works with HAVE_DOT disabled, but it is recommended to
+# install and use dot, since it yields more powerful graphs.
+
CLASS_DIAGRAMS = NO
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
HIDE_UNDOC_RELATIONS = NO
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
HAVE_DOT = YES
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
+# allowed to run in parallel. When set to 0 (the default) doxygen will
+# base this on the number of processors available in the system. You can set it
+# explicitly to a value larger than 0 to get control over the balance
+# between CPU load and processing speed.
+
+DOT_NUM_THREADS = 0
+
+# By default doxygen will use the Helvetica font for all dot files that
+# doxygen generates. When you want a differently looking font you can specify
+# the font name using DOT_FONTNAME. You need to make sure dot is able to find
+# the font, which can be done by putting it in a standard location or by setting
+# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the
+# directory containing the font.
+
+DOT_FONTNAME = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The default size is 10pt.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the Helvetica font.
+# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to
+# set the path where dot can find it.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# CLASS_DIAGRAMS tag to NO.
+
CLASS_GRAPH = NO
-COLLABORATION_GRAPH = NO # Disabled for light doc
-GROUP_GRAPHS = NO # Disabled for light doc
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = NO
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
+GROUP_GRAPHS = NO
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
UML_LOOK = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside
+# the class node. If there are many fields or methods and many nodes the
+# graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS
+# threshold limits the number of items for each type to make the size more
+# managable. Set this to 0 for no limit. Note that the threshold may be
+# exceeded by 50% before the limit is enforced.
+
+UML_LIMIT_NUM_FIELDS = 10
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
TEMPLATE_RELATIONS = NO
-INCLUDE_GRAPH = NO # Disabled for light doc
-INCLUDED_BY_GRAPH = NO # Disabled for light doc
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = NO
+
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
+# for selected functions only using the \callgraph command.
+
CALL_GRAPH = NO
+
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
+# graphs for selected functions only using the \callergraph command.
+
CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will generate a graphical hierarchy of all classes instead of a textual one.
+
GRAPHICAL_HIERARCHY = NO
-DIRECTORY_GRAPH = NO # Disabled for light doc
+
+# If the DIRECTORY_GRAPH and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
+DIRECTORY_GRAPH = NO
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are svg, png, jpg, or gif.
+# If left blank png will be used. If you choose svg you need to set
+# HTML_FILE_EXTENSION to xhtml in order to make the SVG files
+# visible in IE 9+ (other browsers do not have this requirement).
+
DOT_IMAGE_FORMAT = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+# Note that this requires a modern browser other than Internet Explorer.
+# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you
+# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files
+# visible. Older versions of IE do not have SVG support.
+
+INTERACTIVE_SVG = NO
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
DOTFILE_DIRS =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the
+# \mscfile command).
+
+MSCFILE_DIRS =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
MAX_DOT_GRAPH_DEPTH = 1000
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
+# a graph (i.e. they become hard to read).
+
DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
DOT_MULTI_TARGETS = NO
-GENERATE_LEGEND = NO # Disabled for light doc
-DOT_CLEANUP = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine
-#---------------------------------------------------------------------------
-SEARCHENGINE = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to the Qt help engine
-#---------------------------------------------------------------------------
-GENERATE_QHP = yes
-QHP_NAMESPACE = "fr.epita.lrde.olena.milena"
-QHP_VIRTUAL_FOLDER = "milena-2.0"
-QCH_FILE = "@builddir@/milena.qch"
-QHG_LOCATION = "qhelpgenerator"
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = NO
-# Local Variables:
-# mode: Makefile
-# End:
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
diff --git a/milena/doc/DoxygenLayout.xml b/milena/doc/DoxygenLayout.xml
index 8d23146..5559bca 100644
--- a/milena/doc/DoxygenLayout.xml
+++ b/milena/doc/DoxygenLayout.xml
@@ -18,7 +18,6 @@
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="yes" title="" intro=""/>
</tab>
- <tab type="dirs" visible="yes" title="" intro=""/>
<tab type="examples" visible="yes" title="" intro=""/>
</navindex>
diff --git a/milena/mln/core/internal/image_base.hh b/milena/mln/core/internal/image_base.hh
index afe3bfc..c9f76de 100644
--- a/milena/mln/core/internal/image_base.hh
+++ b/milena/mln/core/internal/image_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.
@@ -44,18 +44,6 @@
# include <mln/value/set.hh>
# include <mln/value/super_value.hh>
-// image_base
-// ^
-// |
-// ---------------------------
-// | |
-// image_primary image_morpher
-// ^ ^
-// | |
-// | -----------------------------------------
-// | | | |
-// pw_image_base image_domain_morpher image_value_morpher image_identity
-
namespace mln
{
@@ -73,14 +61,27 @@ namespace mln
};
- /// \cond TEST
+ /*! \internal
+ \brief A base class for images.
+
+ Parameter \p T is the image value type.
+ Parameter \p S is the image site set type.
+
+ \verbatim
+ image_base
+ ^
+ |
+ ---------------------------
+ | |
+ image_primary image_morpher
+ ^ ^
+ | |
+ | -----------------------------------------
+ | | | |
+ pw_image_base image_domain_morpher image_value_morpher image_identity
- /// A base class for images.
- ///
- /// Parameter \p T is the image value type.
- /// Parameter \p S is the image site set type.
- ///
- //
+ \endverbatim
+ */
template <typename T, typename S, typename E>
struct image_base
:
@@ -165,7 +166,6 @@ namespace mln
// Internal data, sharable by several images.
util::tracked_ptr< internal::data<E> > data_;
};
- /// \endcond
# ifndef MLN_INCLUDE_ONLY
--
1.7.2.5