* doc/Doxyfile.in: add macro definitions.
* doc/outputs/outputs.mk: update output reference files list.
* headers.mk: update distributed files list.
* apps/statues/trimesh/misc.hh,
* doc/examples/tuto3/first_routine.cc,
* mln/accu/compute.hh,
* mln/accu/line.hh,
* mln/core/image/graph_elt_window_if.hh,
* mln/data/fill_with_image.hh,
* mln/data/paste.hh,
* mln/fun/x2x/composed.hh,
* mln/geom/pmin_pmax.hh,
* mln/geom/seeds2tiling.hh,
* mln/io/dump/save.hh,
* mln/io/txt/save.hh,
* mln/labeling/compute.hh,
* mln/labeling/pack.hh,
* mln/labeling/relabel.hh,
* mln/util/internal/id2element.hh,
* mln/world/inter_pixel/dim2/is_dot.hh,
* mln/world/inter_pixel/dim2/is_edge.hh,
* mln/world/inter_pixel/dim2/is_pixel.hh,
* mln/world/inter_pixel/dim2/is_row_odd.hh,
* mln/world/inter_pixel/full2image.hh,
* tests/accu/site_set/rectangularity.cc,
* tests/make/region_adjacency_graph.cc,
* mln/level/median.hh,
* mln/level/stretch.hh,
* mln/level/transform.hh,
* mln/level/transform_inplace.hh,
* mln/level/update.hh,
* mln/make/dummy_p_edges.hh,
* mln/make/dummy_p_vertices.hh,
* mln/make/edge_image.hh,
* mln/make/rag_and_labeled_wsl.hh,
* mln/make/region_adjacency_graph.hh,
* mln/make/relabelfun.hh,
* mln/morpho/closing/area_on_vertices.hh,
* mln/registration/icp.hh,
* tests/morpho/Rd.cc: Fix documentation issues/missing documentation.
---
milena/ChangeLog | 48 +++++++++++++++++++++++
milena/apps/statues/trimesh/misc.hh | 5 +-
milena/doc/Doxyfile.in | 11 ++++-
milena/doc/examples/tuto3/first_routine.cc | 2 +-
milena/doc/outputs/outputs.mk | 1 +
milena/headers.mk | 11 ++++-
milena/mln/accu/compute.hh | 6 ++-
milena/mln/accu/line.hh | 6 ++-
milena/mln/core/image/graph_elt_window_if.hh | 2 +-
milena/mln/data/fill_with_image.hh | 5 ++
milena/mln/data/paste.hh | 12 ++++++
milena/mln/fun/x2x/composed.hh | 4 +-
milena/mln/geom/pmin_pmax.hh | 12 +++---
milena/mln/geom/seeds2tiling.hh | 26 ++++++++-----
milena/mln/io/dump/save.hh | 8 ++++
milena/mln/io/txt/save.hh | 7 ++-
milena/mln/labeling/pack.hh | 10 +++--
milena/mln/labeling/relabel.hh | 26 ++++++------
milena/mln/level/median.hh | 3 +-
milena/mln/level/stretch.hh | 13 ++++++-
milena/mln/level/transform.hh | 5 +-
milena/mln/level/transform_inplace.hh | 7 ++-
milena/mln/level/update.hh | 10 +++--
milena/mln/make/dummy_p_edges.hh | 2 +-
milena/mln/make/dummy_p_vertices.hh | 2 +-
milena/mln/make/edge_image.hh | 6 +-
milena/mln/make/rag_and_labeled_wsl.hh | 4 +-
milena/mln/make/region_adjacency_graph.hh | 13 +++---
milena/mln/make/relabelfun.hh | 11 ++++-
milena/mln/morpho/closing/area_on_vertices.hh | 8 +++-
milena/mln/registration/icp.hh | 14 ++++++-
milena/mln/util/internal/id2element.hh | 2 +-
milena/mln/world/inter_pixel/dim2/is_dot.hh | 2 +-
milena/mln/world/inter_pixel/dim2/is_edge.hh | 2 +-
milena/mln/world/inter_pixel/dim2/is_pixel.hh | 2 +-
milena/mln/world/inter_pixel/dim2/is_row_odd.hh | 2 +-
milena/mln/world/inter_pixel/full2image.hh | 8 ++--
milena/tests/accu/site_set/rectangularity.cc | 2 +-
milena/tests/make/region_adjacency_graph.cc | 2 +-
milena/tests/morpho/Rd.cc | 2 +-
40 files changed, 231 insertions(+), 93 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index f9eea0c..2fda128 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,51 @@
+2009-05-11 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
+
+ Fix documentation.
+
+ * doc/Doxyfile.in: add macro definitions.
+
+ * doc/outputs/outputs.mk: update output reference files list.
+
+ * headers.mk: update distributed files list.
+
+ * apps/statues/trimesh/misc.hh,
+ * doc/examples/tuto3/first_routine.cc,
+ * mln/accu/compute.hh,
+ * mln/accu/line.hh,
+ * mln/core/image/graph_elt_window_if.hh,
+ * mln/data/fill_with_image.hh,
+ * mln/data/paste.hh,
+ * mln/fun/x2x/composed.hh,
+ * mln/geom/pmin_pmax.hh,
+ * mln/geom/seeds2tiling.hh,
+ * mln/io/dump/save.hh,
+ * mln/io/txt/save.hh,
+ * mln/labeling/compute.hh,
+ * mln/labeling/pack.hh,
+ * mln/labeling/relabel.hh,
+ * mln/util/internal/id2element.hh,
+ * mln/world/inter_pixel/dim2/is_dot.hh,
+ * mln/world/inter_pixel/dim2/is_edge.hh,
+ * mln/world/inter_pixel/dim2/is_pixel.hh,
+ * mln/world/inter_pixel/dim2/is_row_odd.hh,
+ * mln/world/inter_pixel/full2image.hh,
+ * tests/accu/site_set/rectangularity.cc,
+ * tests/make/region_adjacency_graph.cc,
+ * mln/level/median.hh,
+ * mln/level/stretch.hh,
+ * mln/level/transform.hh,
+ * mln/level/transform_inplace.hh,
+ * mln/level/update.hh,
+ * mln/make/dummy_p_edges.hh,
+ * mln/make/dummy_p_vertices.hh,
+ * mln/make/edge_image.hh,
+ * mln/make/rag_and_labeled_wsl.hh,
+ * mln/make/region_adjacency_graph.hh,
+ * mln/make/relabelfun.hh,
+ * mln/morpho/closing/area_on_vertices.hh,
+ * mln/registration/icp.hh,
+ * tests/morpho/Rd.cc: Fix documentation issues/missing documentation.
+
2009-05-07 Thierry Geraud <thierry.geraud(a)lrde.epita.fr>
Fix missing updates about debug colorize.
diff --git a/milena/apps/statues/trimesh/misc.hh b/milena/apps/statues/trimesh/misc.hh
index a9f0fce..d72477d 100644
--- a/milena/apps/statues/trimesh/misc.hh
+++ b/milena/apps/statues/trimesh/misc.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 the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -474,7 +475,7 @@ namespace mln
Jean Cousty. Artwork 3D Model Database Indexing and
Classification.
- \param[in] ima The surface (triangle mesh) on which the
+ \param[in] mesh The surface (triangle mesh) on which the
curvature is to be computed. */
/* FIXME: We should restrict attached data to vertices in return
value. */
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index f088755..cedcbc1 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -215,7 +215,7 @@ PREDEFINED = "mlc_unqualif(T)=typename
mln::metal::unqualif<T>::ret"
"mln_enc(T)=typename T::enc" \
"mln_value(T)=typename T::value" \
"mln_qlf_value(T)=typename T::qlf_value" \
- "mln_pset(T)=typename T::pset" \
+ "mln_domain(T)=typename T::domain_t" \
"mln_sum(T)=typename mln::value::props<T>::sum"
\
"mln_vset(T)=typename T::vset" \
"mln_rvalue(T)=typename T::rvalue" \
@@ -250,7 +250,7 @@ PREDEFINED = "mlc_unqualif(T)=typename
mln::metal::unqualif<T>::ret"
"mln_enc_(T)=T::enc" \
"mln_value_(T)=T::value" \
"mln_qlf_value_(T)=T::qlf_value" \
- "mln_pset_(T)=T::pset" \
+ "mln_domain_(T)=T::domain_t" \
"mln_sum_(T)=mln::value::props<T>::sum" \
"mln_vset_(T)=T::vset" \
"mln_rvalue_(T)=T::rvalue" \
@@ -286,7 +286,12 @@ PREDEFINED = "mlc_unqualif(T)=typename
mln::metal::unqualif<T>::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_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"
diff --git a/milena/doc/examples/tuto3/first_routine.cc
b/milena/doc/examples/tuto3/first_routine.cc
index b4d3b58..5ed5919 100644
--- a/milena/doc/examples/tuto3/first_routine.cc
+++ b/milena/doc/examples/tuto3/first_routine.cc
@@ -1,4 +1,4 @@
-/// \file doc/examples/first_routine.cc
+/// \file doc/examples/tuto3/first_routine.cc
#include <mln/essential/2d.hh>
#include <tests/data.hh>
diff --git a/milena/doc/outputs/outputs.mk b/milena/doc/outputs/outputs.mk
index ac10062..5b9de7c 100644
--- a/milena/doc/outputs/outputs.mk
+++ b/milena/doc/outputs/outputs.mk
@@ -21,6 +21,7 @@ outputs/box2d-bbox.txt \
outputs/graph-iter.txt \
outputs/graph-output-1.txt \
outputs/fill-call-1.txt \
+outputs/site_set_create.txt \
outputs/ima2d-rot.txt \
outputs/paste-call-1.txt \
outputs/fun-p2v-1.txt \
diff --git a/milena/headers.mk b/milena/headers.mk
index 7d75826..34e4823 100644
--- a/milena/headers.mk
+++ b/milena/headers.mk
@@ -60,13 +60,15 @@ mln/literal/essential.hh \
mln/world/binary_2d/subsample.hh \
mln/world/binary_2d/projected_histo.hh \
mln/world/inter_pixel/neighb2d.hh \
-mln/world/inter_pixel/full.hh \
+mln/world/inter_pixel/image2full.hh \
mln/world/inter_pixel/display_edge.hh \
mln/world/inter_pixel/dim2/is_pixel.hh \
mln/world/inter_pixel/dim2/all.hh \
mln/world/inter_pixel/dim2/is_edge.hh \
+mln/world/inter_pixel/dim2/make_edge_image.hh \
mln/world/inter_pixel/dim2/is_dot.hh \
mln/world/inter_pixel/dim2/is_row_odd.hh \
+mln/world/inter_pixel/full2image.hh \
mln/registration/get_rtransf.hh \
mln/registration/internal/rms.hh \
mln/registration/get_rot.hh \
@@ -106,6 +108,7 @@ mln/util/timer.hh \
mln/util/yes.hh \
mln/util/line_graph.hh \
mln/util/ord.hh \
+mln/util/adjacency_matrix.hh \
mln/util/tree_fast_to_image.hh \
mln/util/tree.hh \
mln/util/couple.hh \
@@ -302,10 +305,13 @@ mln/fun/x2x/translation.hh \
mln/fun/x2x/rotation.hh \
mln/fun/x2x/essential.hh \
mln/fun/component/red.hh \
+mln/fun/component/comp_count.hh \
+mln/fun/component/scomp.hh \
mln/fun/component/green.hh \
mln/fun/component/comp.hh \
mln/fun/component/blue.hh \
mln/fun/component/rgb.hh \
+mln/fun/component/ithcomp.hh \
mln/fun/compose.hh \
mln/fun/meta/red.hh \
mln/fun/meta/hue.hh \
@@ -476,6 +482,7 @@ mln/accu/image/init.hh \
mln/accu/image/to_result.hh \
mln/accu/image/all.hh \
mln/accu/image/set_value.hh \
+mln/accu/image/untake.hh \
mln/accu/image/take.hh \
mln/accu/image/take_as_init.hh \
mln/accu/image/take_n_times.hh \
@@ -566,7 +573,6 @@ mln/trait/ch_function_value.hh \
mln/trait/ch_value.hh \
mln/trait/solve.hh \
mln/trait/solve_unary.hh \
-mln/trait/fun.hh \
mln/trait/op/postdec.hh \
mln/trait/op/mod.hh \
mln/trait/op/lor.hh \
@@ -594,6 +600,7 @@ mln/trait/op/uplus.hh \
mln/trait/op/essential.hh \
mln/trait/op/eq.hh \
mln/trait/concrete.hh \
+mln/trait/functions.hh \
mln/trait/windows.hh \
mln/trait/site_sets.hh \
mln/trait/image_from_grid.hh \
diff --git a/milena/mln/accu/compute.hh b/milena/mln/accu/compute.hh
index a632fa8..f78c6ec 100644
--- a/milena/mln/accu/compute.hh
+++ b/milena/mln/accu/compute.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Laboratory (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -50,6 +50,7 @@ namespace mln
/// Make an accumulator compute the pixels of the image \p input.
///
/// \param[in] input The input image.
+ /// \param[in] a An accumulator.
///
/// This routine runs: \n
/// a.take(make::pix(input, p));
@@ -65,6 +66,7 @@ namespace mln
/// Make an accumulator compute the pixels of the image \p input.
///
/// \param[in] input The input image.
+ /// \param[in] a A meta accumulator.
///
/// This routine runs: \n
/// a.take(make::pix(input, p));
diff --git a/milena/mln/accu/line.hh b/milena/mln/accu/line.hh
index b4f30a7..4fec281 100644
--- a/milena/mln/accu/line.hh
+++ b/milena/mln/accu/line.hh
@@ -51,8 +51,10 @@ namespace mln
/*! Line an accumulator onto the pixel values of the image \p input.
*
* \param[in] input The input image.
- * \param[in] a The accumulator.
- * \return The accumulator result.
+ * \param[in] p_start The starting site of the line.
+ * \param[in] len The line length.
+ * \param[in] half_length The half length of the line.
+ * \param[in,out] output The resulting image.
*
* This routine runs: \n
* tmp = \p a \n
diff --git a/milena/mln/core/image/graph_elt_window_if.hh
b/milena/mln/core/image/graph_elt_window_if.hh
index dd4f6d9..c03ac79 100644
--- a/milena/mln/core/image/graph_elt_window_if.hh
+++ b/milena/mln/core/image/graph_elt_window_if.hh
@@ -125,7 +125,7 @@ namespace mln
/// Default. Construct an invalid window.
graph_elt_window_if();
- /// \param[in] graph_image A graph image.
+ /// \param[in] mask A graph image of bool.
///
/// \sa vertex_image, edge_image.
graph_elt_window_if(const Image<I>& mask);
diff --git a/milena/mln/data/fill_with_image.hh b/milena/mln/data/fill_with_image.hh
index 3b79e72..df67089 100644
--- a/milena/mln/data/fill_with_image.hh
+++ b/milena/mln/data/fill_with_image.hh
@@ -95,6 +95,11 @@ namespace mln
namespace generic
{
+ /// Generic implementation.
+ ///
+ /// \param[in,out] ima The image to be filled.
+ /// \param[in] data The image.
+ //
template <typename I, typename J>
void fill_with_image(Image<I>& ima_, const Image<J>& data_)
{
diff --git a/milena/mln/data/paste.hh b/milena/mln/data/paste.hh
index ef3911d..740a2a1 100644
--- a/milena/mln/data/paste.hh
+++ b/milena/mln/data/paste.hh
@@ -72,6 +72,12 @@ namespace mln
namespace internal
{
+ /// Internal tests for data::paste.
+ ///
+ /// \param[in] input The input image providing pixels values.
+ /// \param[in,out] output The image in which values are
+ /// assigned.
+ //
template <typename I, typename J>
inline
void paste_tests(const Image<I>& input, Image<J>& output)
@@ -97,6 +103,12 @@ namespace mln
namespace generic
{
+ /// Generic implementation of data::paste.
+ ///
+ /// \param[in] input The input image providing pixels values.
+ /// \param[in,out] output The image in which values are
+ /// assigned.
+ //
template <typename I, typename J>
inline
void paste(const Image<I>& input_, Image<J>& output_)
diff --git a/milena/mln/fun/x2x/composed.hh b/milena/mln/fun/x2x/composed.hh
index 0bc20b3..49d74f2 100644
--- a/milena/mln/fun/x2x/composed.hh
+++ b/milena/mln/fun/x2x/composed.hh
@@ -153,9 +153,9 @@ namespace mln
mlc_is(T2, Bijection_x2x<T2>)::value
&&
mlc_is(T1, Bijection_x2x<T1>)::value>(f,
g)
{}
-};
+ };
-} // end of namespace mln::fun::x2x
+ } // end of namespace mln::fun::x2x
} // end of namespace mln::fun
diff --git a/milena/mln/geom/pmin_pmax.hh b/milena/mln/geom/pmin_pmax.hh
index 3f28fe9..12e3ea7 100644
--- a/milena/mln/geom/pmin_pmax.hh
+++ b/milena/mln/geom/pmin_pmax.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2007 EPITA Research and Development Laboratory
+// Copyright (C) 2007, 2009 EPITA Research and Development Laboratory
+// (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -28,11 +29,10 @@
#ifndef MLN_GEOM_PMIN_PMAX_HH
# define MLN_GEOM_PMIN_PMAX_HH
-/*! \file mln/geom/pmin_pmax.hh
- *
- * \brief Several routines to compute the minimum point and/or maximum
- * point.
- */
+/// \file mln/geom/pmin_pmax.hh
+///
+/// Several routines to compute the minimum point and/or maximum
+/// point.
# include <utility>
diff --git a/milena/mln/geom/seeds2tiling.hh b/milena/mln/geom/seeds2tiling.hh
index 0dc8eef..85fb3ce 100644
--- a/milena/mln/geom/seeds2tiling.hh
+++ b/milena/mln/geom/seeds2tiling.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Laboratory (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -29,10 +29,9 @@
#ifndef MLN_GEOM_SEEDS2TILING_HH
# define MLN_GEOM_SEEDS2TILING_HH
-/*! \file mln/geom/seeds2tiling.hh
- *
- * \brief Convert a binary image with seeds into a labeled image.
- */
+/// \file mln/geom/seeds2tiling.hh
+///
+/// Convert a binary image with seeds into a labeled image.
# include <map>
@@ -46,27 +45,34 @@
namespace mln
{
+
namespace geom
{
- /// \brief Take a labeled image \p ima_ with seeds and extend them
+ /// Take a labeled image \p ima_ with seeds and extend them
/// until creating tiles.
///
/// \param[in,out] ima_ The labeled image with seed.
/// \param[in] nbh The neighborhood to use on this algorithm.
///
- /// \pre \p ima_ has to be initialized.
+ /// \return A tiled image.
///
- /// \{
+ /// \pre \p ima_ has to be initialized.
+ //
template <typename I, typename N>
I seeds2tiling (Image<I>& ima_, const Neighborhood<N>& nbh);
- /// \}
+
# ifndef MLN_INCLUDE_ONLY
namespace impl
{
+ /// Generic implementation of geom::seed2tiling.
+ ///
+ /// \param[in,out] ima_ The labeled image with seed.
+ /// \param[in] nbh The neighborhood to use on this algorithm.
+ //
template <typename I, typename N>
inline
I
diff --git a/milena/mln/io/dump/save.hh b/milena/mln/io/dump/save.hh
index 41d4571..5056dc6 100644
--- a/milena/mln/io/dump/save.hh
+++ b/milena/mln/io/dump/save.hh
@@ -31,6 +31,7 @@
/// \file mln/io/dump/save.hh
///
/// Save a Milena image by dumping its data to a file.
+///
/// \todo handle endianness.
# include <iostream>
@@ -42,6 +43,7 @@
# include <mln/data/memcpy_.hh>
# include <mln/trait/value_.hh>
+
namespace mln
{
@@ -55,12 +57,15 @@ namespace mln
///
/// \param[in] ima_ The image to save.
/// \param[in] filename the destination.
+ //
template <typename I>
void save(const Image<I>& ima_, const std::string& filename);
+
# ifndef MLN_INCLUDE_ONLY
+
namespace internal
{
@@ -121,6 +126,9 @@ namespace mln
} // end of namespace mln::io::dump::internal
+
+ // Facade
+
template <typename I>
void save(const Image<I>& ima_, const std::string& filename)
{
diff --git a/milena/mln/io/txt/save.hh b/milena/mln/io/txt/save.hh
index 4cc4e39..db0d423 100644
--- a/milena/mln/io/txt/save.hh
+++ b/milena/mln/io/txt/save.hh
@@ -1,4 +1,4 @@
-// Copyright (C) 2008 EPITA Research and Development Laboratory
+// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
// (LRDE)
//
// This file is part of the Olena Library. This library is free
@@ -31,7 +31,7 @@
/// \file mln/io/txt/save.hh
///
-/// \brief Save an image as txt file.
+/// Save an image as txt file.
# include <iostream>
# include <fstream>
@@ -52,8 +52,9 @@ namespace mln
/// Save an image as txt file.
///
- /// \param[in] ima_ The image to save. Must be an image of char.
+ /// \param[in] ima The image to save. Must be an image of char.
/// \param[in] filename the destination.
+ //
void
save(const image2d<char>& ima, const std::string& filename);
diff --git a/milena/mln/labeling/pack.hh b/milena/mln/labeling/pack.hh
index 5235cd3..29ef2c2 100644
--- a/milena/mln/labeling/pack.hh
+++ b/milena/mln/labeling/pack.hh
@@ -52,8 +52,9 @@ namespace mln
{
/// Relabel a labeled image in order to have a contiguous labeling.
- /// \input[in] label The labeled image.
- /// \input[out] new_nlabels The number of labels after relabeling.
+ ///
+ /// \param[in] label The labeled image.
+ /// \param[out] new_nlabels The number of labels after relabeling.
///
/// \return The relabeled image.
//
@@ -65,8 +66,9 @@ namespace mln
/// Relabel inplace a labeled image in order to have a contiguous
/// labeling.
- /// \input[in] label The labeled image.
- /// \input[out] new_nlabels The number of labels after relabeling.
+ ///
+ /// \param[in] label The labeled image.
+ /// \param[out] new_nlabels The number of labels after relabeling.
//
template <typename I>
void
diff --git a/milena/mln/labeling/relabel.hh b/milena/mln/labeling/relabel.hh
index a775bfa..60b150f 100644
--- a/milena/mln/labeling/relabel.hh
+++ b/milena/mln/labeling/relabel.hh
@@ -52,10 +52,10 @@ namespace mln
{
/// Remove components and relabel a labeled image.
- /// \input[in] label the labeled image.
- /// \input[in] nlabels the number of labels in \p label.
- /// \input[out] new_nlabels the number of labels after relabeling.
- /// \input[in] f function returning whether a label must be replaced
+ /// \param[in] label the labeled image.
+ /// \param[in] nlabels the number of labels in \p label.
+ /// \param[out] new_nlabels the number of labels after relabeling.
+ /// \param[in] fv2b function returning whether a label must be replaced
/// by the background.
///
/// \return the relabeled image.
@@ -69,9 +69,9 @@ namespace mln
/// Remove components and relabel a labeled image.
- /// \input[in] label the labeled image.
- /// \input[in] nlabels the number of labels in \p label.
- /// \input[in] f function returning the new component id for each pixel
+ /// \param[in] label the labeled image.
+ /// \param[in] nlabels the number of labels in \p label.
+ /// \param[in] fv2v function returning the new component id for each pixel
/// value.
///
/// \return the relabeled image.
@@ -84,9 +84,9 @@ namespace mln
/// Remove components and relabel a labeled image inplace.
- /// \input[in, out] label the labeled image.
- /// \input[in, out] nlabels the number of labels in \p label.
- /// \input[in] f function returning whether a label must be replaced
+ /// \param[in, out] label the labeled image.
+ /// \param[in, out] nlabels the number of labels in \p label.
+ /// \param[in] fv2b function returning whether a label must be replaced
/// by the background.
//
template <typename I, typename F>
@@ -97,9 +97,9 @@ namespace mln
/// Remove components and relabel a labeled image inplace.
- /// \input[in, out] label the labeled image.
- /// \input[in, out] nlabels the number of labels in \p label.
- /// \input[in] f function returning the new component id for each
+ /// \param[in, out] label the labeled image.
+ /// \param[in, out] nlabels the number of labels in \p label.
+ /// \param[in] fv2v function returning the new component id for each
/// pixel value.
//
template <typename I, typename F>
diff --git a/milena/mln/level/median.hh b/milena/mln/level/median.hh
index 4a5c3cd..f62c7e5 100644
--- a/milena/mln/level/median.hh
+++ b/milena/mln/level/median.hh
@@ -59,9 +59,8 @@ namespace mln
*
* \param[in] input The image to be filtered.
* \param[in] win The window.
- * \param[out] output The output image.
*
- * \pre \p input and \p output have to be initialized.
+ * \pre \p input have to be initialized.
*/
template <typename I, typename W>
mln_concrete(I)
diff --git a/milena/mln/level/stretch.hh b/milena/mln/level/stretch.hh
index 63bac49..f10f4e3 100644
--- a/milena/mln/level/stretch.hh
+++ b/milena/mln/level/stretch.hh
@@ -57,7 +57,8 @@ namespace mln
*
* \param[in] v A value to set the output value type.
* \param[in] input The input image.
- * \param[out] output The result image.
+ *
+ * \return A stretch image with values of the same type as \p v.
*
* \pre input.is_valid
*/
@@ -71,6 +72,13 @@ namespace mln
namespace impl
{
+ /// Generic implementation of level::stretch.
+ ///
+ /// \param[in] v A value to set the output value type.
+ /// \param[in] input The input image.
+ ///
+ /// \return A stretch image with values of the same type as \p v.
+ //
template <typename V, typename I>
inline
mln_ch_value(I, V)
@@ -112,6 +120,9 @@ namespace mln
} // end of namespace mln::level::impl
+
+ // Facade
+
template <typename V, typename I>
inline
mln_ch_value(I, V)
diff --git a/milena/mln/level/transform.hh b/milena/mln/level/transform.hh
index 07ed377..f61fbc9 100644
--- a/milena/mln/level/transform.hh
+++ b/milena/mln/level/transform.hh
@@ -1,5 +1,5 @@
-// Copyright (C) 2007, 2008 EPITA Research and Development Laboratory
-// (LRDE)
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development
+// Laboratory (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -130,6 +130,7 @@ namespace mln
namespace generic
{
+ /// Generic implementation of level::transform.
template <typename I, typename F>
mln_ch_value(I, mln_result(F))
transform(const Image<I>& input_, const Function_v2v<F>& f_)
diff --git a/milena/mln/level/transform_inplace.hh
b/milena/mln/level/transform_inplace.hh
index ca85b28..dc632e2 100644
--- a/milena/mln/level/transform_inplace.hh
+++ b/milena/mln/level/transform_inplace.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
+// (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -8,7 +9,7 @@
// This library 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.
+// General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this library; see the file COPYING. If not, write to
@@ -64,7 +65,7 @@ namespace mln
/*! Transform inplace the image \p ima with the image \p aux
through a function \p f.
*
- * \param[in] ima1 The image to be transformed.
+ * \param[in] ima The image to be transformed.
* \param[in] aux The auxiliary image.
* \param[in] f The function.
*
diff --git a/milena/mln/level/update.hh b/milena/mln/level/update.hh
index 10632a5..306d1ad 100644
--- a/milena/mln/level/update.hh
+++ b/milena/mln/level/update.hh
@@ -90,6 +90,7 @@ namespace mln
namespace generic
{
+ /// Generic implementation of level::update.
template <typename A, typename I>
inline
mln_result(A)
@@ -112,21 +113,22 @@ namespace mln
} // end of namespace mln::level::impl::generic
+ /// Fastest implementation of level::update.
template <typename A, typename I>
inline
mln_result(A)
update_fastest(Accumulator<A>& a_, const Image<I>& input_)
{
trace::entering("level::impl::update_fastest");
-
+
A& a = exact(a_);
const I& input = exact(input_);
level::internal::update_tests(a, input);
-
+
mln_pixter(const I) pxl(input);
for_all(pxl)
a.take(pxl.val());
-
+
trace::exiting("level::impl::update_fastest");
return a.to_result();
}
@@ -134,7 +136,7 @@ namespace mln
} // end of namespace mln::level::impl
-
+
// Dispatch.
diff --git a/milena/mln/make/dummy_p_edges.hh b/milena/mln/make/dummy_p_edges.hh
index 7c17aec..aaf17f8 100644
--- a/milena/mln/make/dummy_p_edges.hh
+++ b/milena/mln/make/dummy_p_edges.hh
@@ -62,7 +62,7 @@ namespace mln
/// Create a p_edges which associate a graph element to a constant site.
/// \c 0 (int) is used as dummy site.
///
- /// \param[in] g_ A graph.
+ /// \param[in] g A graph.
///
/// \return A p_edges.
//
diff --git a/milena/mln/make/dummy_p_vertices.hh b/milena/mln/make/dummy_p_vertices.hh
index c9c643d..462473a 100644
--- a/milena/mln/make/dummy_p_vertices.hh
+++ b/milena/mln/make/dummy_p_vertices.hh
@@ -62,7 +62,7 @@ namespace mln
/// Create a p_vertices which associate a graph element to a constant site.
/// \c 0 (int) is used as dummy site.
///
- /// \param[in] g_ A graph.
+ /// \param[in] g A graph.
///
/// \return A p_vertices.
//
diff --git a/milena/mln/make/edge_image.hh b/milena/mln/make/edge_image.hh
index bd03162..0c2deff 100644
--- a/milena/mln/make/edge_image.hh
+++ b/milena/mln/make/edge_image.hh
@@ -60,7 +60,7 @@ namespace mln
/// Construct an edge image.
///
- /// \param[in] g A graph
+ /// \param[in] g_ A graph
/// \param[in] fp A function mapping edge ids to sites.
/// \param[in] fv A function mapping edge ids to values.
///
@@ -78,7 +78,7 @@ namespace mln
///
/// \param[in] v_ima_ A vertex image.
/// \param[in] pe A p_edges mapping graph element to sites .
- /// \param[in] fv A function mapping two vertex ids to a value.
+ /// \param[in] fv_ A function mapping two vertex ids to a value.
/// The result is associated to the corresponding edge.
///
/// \return an edge image.
@@ -94,7 +94,7 @@ namespace mln
/// Construct an edge image.
///
/// \param[in] v_ima_ A vertex image.
- /// \param[in] fv A function mapping two vertex ids to a value.
+ /// \param[in] fv_ A function mapping two vertex ids to a value.
/// The result is associated to the corresponding edge.
///
/// \return an edge image without localization information mapped to
diff --git a/milena/mln/make/rag_and_labeled_wsl.hh
b/milena/mln/make/rag_and_labeled_wsl.hh
index 60f2824..c170d18 100644
--- a/milena/mln/make/rag_and_labeled_wsl.hh
+++ b/milena/mln/make/rag_and_labeled_wsl.hh
@@ -57,8 +57,8 @@ namespace mln
/// Create a region adjacency graph and a label image of the watershed line
/// from a watershed image.
///
- /// \param[in] wshd Watershed image.
- /// \param[in] nbh Neighborhood
+ /// \param[in] wshd_ Watershed image.
+ /// \param[in] nbh_ Neighborhood
/// \param[in] nbasins Number of influence zone in \p wshd.
///
/// \return A couple. First element is the graph, second element is an
diff --git a/milena/mln/make/region_adjacency_graph.hh
b/milena/mln/make/region_adjacency_graph.hh
index b930367..ba2e177 100644
--- a/milena/mln/make/region_adjacency_graph.hh
+++ b/milena/mln/make/region_adjacency_graph.hh
@@ -53,7 +53,8 @@ namespace mln
/// Create a region adjacency graph from a watershed image.
///
- /// \param[in] wshd watershed image.
+ /// \param[in] wshd_ watershed image.
+ /// \param[in] nbh A neighborhood.
/// \param[in] nbasins number of influence zone in \p wshd.
///
/// \return util::graph Graph based on the adjacency of the influence zones.
@@ -61,7 +62,7 @@ namespace mln
util::graph
region_adjacency_graph(const Image<I>& wshd_,
const Neighborhood<N>& nbh,
- mln_value(I) nbasins);
+ const mln_value(I)& nbasins);
@@ -75,7 +76,7 @@ namespace mln
void
region_adjacency_graph_tests(const Image<I>& wshd,
const Neighborhood<N>& nbh,
- mln_value(I))
+ const mln_value(I)&)
{
mln_precondition(exact(wshd).is_valid());
mln_precondition(exact(nbh).is_valid());
@@ -96,7 +97,7 @@ namespace mln
util::graph
region_adjacency_graph(const Image<I>& wshd_,
const Neighborhood<N>& nbh_,
- mln_value(I) nbasins)
+ const mln_value(I)& nbasins)
{
trace::entering("make::impl::generic::region_adjacency_graph");
@@ -163,7 +164,7 @@ namespace mln
util::graph
region_adjacency_graph_dispatch(const Image<I>& wshd,
const Neighborhood<N>& nbh,
- mln_value(I) nbasins)
+ const mln_value(I)& nbasins)
{
return make::impl::generic::region_adjacency_graph(wshd, nbh, nbasins);
}
@@ -179,7 +180,7 @@ namespace mln
util::graph
region_adjacency_graph(const Image<I>& wshd,
const Neighborhood<N>& nbh,
- mln_value(I) nbasins)
+ const mln_value(I)& nbasins)
{
trace::entering("make::region_adjacency_graph");
diff --git a/milena/mln/make/relabelfun.hh b/milena/mln/make/relabelfun.hh
index 19b072d..11fe1fe 100644
--- a/milena/mln/make/relabelfun.hh
+++ b/milena/mln/make/relabelfun.hh
@@ -1,4 +1,5 @@
-// Copyright (C) 2008 EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2008, 2009 EPITA Research and Development Laboratory
+// (LRDE)
//
// This file is part of the Olena Library. This library is free
// software; you can redistribute it and/or modify it under the terms
@@ -45,7 +46,9 @@ namespace mln
/// Create a i2v function from a v2b function.
/// This function can be used to relabel a labeled image.
///
- /// \param[in] f a v2b function.
+ /// \param[in] fv2b A v2b function.
+ /// \param[in] nlabels The number of labels.
+ /// \param[in] new_nlabels The number of labels after relabeling.
///
/// \return a i2v function.
///
@@ -59,7 +62,9 @@ namespace mln
/// Create a i2v function from a v2v function.
/// This function can be used to relabel a labeled image.
///
- /// \param[in] f a v2v function.
+ /// \param[in] fv2v A v2v function.
+ /// \param[in] nlabels The number of labels.
+ /// \param[in] new_nlabels The number of labels after relabeling.
///
/// \return a i2v function.
///
diff --git a/milena/mln/morpho/closing/area_on_vertices.hh
b/milena/mln/morpho/closing/area_on_vertices.hh
index 099e473..46c6774 100644
--- a/milena/mln/morpho/closing/area_on_vertices.hh
+++ b/milena/mln/morpho/closing/area_on_vertices.hh
@@ -34,7 +34,6 @@
/// Morphological area closing on a line graph image computing
/// the area in terms of adjacent vertices.
-# include <mln/pw/image.hh>
# include <mln/core/image/edge_image.hh>
# include <mln/morpho/closing/algebraic.hh>
# include <mln/morpho/attribute/count_adjacent_vertices.hh>
@@ -51,6 +50,13 @@ namespace mln
/// Morphological area closing on a mln::line_graph_image computing
/// the area in terms of adjacent vertices.
+ ///
+ /// \param[in] input An edge image.
+ /// \param[in] nbh A graph neighborhood.
+ /// \param[in] lambda Closing parameter.
+ ///
+ /// \return An edge image.
+ //
template <typename P, typename V, typename G, typename N>
edge_image<P,V,G>
area_on_vertices(const edge_image<P,V,G>& input,
diff --git a/milena/mln/registration/icp.hh b/milena/mln/registration/icp.hh
index 540efba..a2bee09 100644
--- a/milena/mln/registration/icp.hh
+++ b/milena/mln/registration/icp.hh
@@ -90,11 +90,13 @@ namespace mln
/*! Register point in \p c using a function of closest points
* \p closest_point.
+ * This overload allows to specify initial transformations.
*
* \param[in] P_ The cloud of points.
* \param[in] X the reference surface.
* \param[in] closest_point The function of closest points.
- * \param[out] qk The rigid transformation obtained.
+ * \param[in] initial_rot An initial rotation.
+ * \param[in] initial_translation An initial translation.
*
* \return the rigid transformation which may be use later to create
* a registered image.
@@ -118,6 +120,16 @@ namespace mln
const mln_vec(P)& initial_translation);
+ /*! Register point in \p c using a function of closest points
+ * \p closest_point.
+ *
+ * \param[in] P_ The cloud of points.
+ * \param[in] X the reference surface.
+ * \param[in] closest_point The function of closest points.
+ *
+ * \return the rigid transformation which may be use later to create
+ * a registered image.
+ */
template <typename P, typename F>
composed< translation<P::dim,float>,rotation<P::dim,float> >
icp(const p_array<P>& P_,
diff --git a/milena/mln/util/internal/id2element.hh
b/milena/mln/util/internal/id2element.hh
index 48550da..34aac26 100644
--- a/milena/mln/util/internal/id2element.hh
+++ b/milena/mln/util/internal/id2element.hh
@@ -29,7 +29,7 @@
#ifndef MLN_UTIL_INTERNAL_ID2VERTEX_HH
# define MLN_UTIL_INTERNAL_ID2VERTEX_HH
-/// \file mln/util/id2element.hh
+/// \file mln/util/internal/id2element.hh
///
/// Function constructing a element from an id.
diff --git a/milena/mln/world/inter_pixel/dim2/is_dot.hh
b/milena/mln/world/inter_pixel/dim2/is_dot.hh
index da41552..74c7732 100644
--- a/milena/mln/world/inter_pixel/dim2/is_dot.hh
+++ b/milena/mln/world/inter_pixel/dim2/is_dot.hh
@@ -28,7 +28,7 @@
#ifndef MLN_WORLD_INTER_PIXEL_DIM2_IS_DOT_HH
# define MLN_WORLD_INTER_PIXEL_DIM2_IS_DOT_HH
-/// \file mln/world/inter_pixel/dim2d/is_dot.hh
+/// \file mln/world/inter_pixel/dim2/is_dot.hh
///
/// FIXME: insert comment.
diff --git a/milena/mln/world/inter_pixel/dim2/is_edge.hh
b/milena/mln/world/inter_pixel/dim2/is_edge.hh
index c5ef485..383bb85 100644
--- a/milena/mln/world/inter_pixel/dim2/is_edge.hh
+++ b/milena/mln/world/inter_pixel/dim2/is_edge.hh
@@ -28,7 +28,7 @@
#ifndef MLN_WORLD_INTER_PIXEL_DIM2_IS_EDGE_HH
# define MLN_WORLD_INTER_PIXEL_DIM2_IS_EDGE_HH
-/// \file mln/world/inter_pixel/dim2d/is_edge.hh
+/// \file mln/world/inter_pixel/dim2/is_edge.hh
///
/// FIXME: insert comment.
diff --git a/milena/mln/world/inter_pixel/dim2/is_pixel.hh
b/milena/mln/world/inter_pixel/dim2/is_pixel.hh
index 1aa866d..c9cc4e9 100644
--- a/milena/mln/world/inter_pixel/dim2/is_pixel.hh
+++ b/milena/mln/world/inter_pixel/dim2/is_pixel.hh
@@ -28,7 +28,7 @@
#ifndef MLN_WORLD_INTER_PIXEL_DIM2_IS_PIXEL_HH
# define MLN_WORLD_INTER_PIXEL_DIM2_IS_PIXEL_HH
-/// \file mln/world/inter_pixel/dim2d/is_pixel.hh
+/// \file mln/world/inter_pixel/dim2/is_pixel.hh
///
/// FIXME: insert comment.
diff --git a/milena/mln/world/inter_pixel/dim2/is_row_odd.hh
b/milena/mln/world/inter_pixel/dim2/is_row_odd.hh
index 24cdb29..6bf4905 100644
--- a/milena/mln/world/inter_pixel/dim2/is_row_odd.hh
+++ b/milena/mln/world/inter_pixel/dim2/is_row_odd.hh
@@ -28,7 +28,7 @@
#ifndef MLN_WORLD_INTER_PIXEL_DIM2_IS_ROW_ODD_HH
# define MLN_WORLD_INTER_PIXEL_DIM2_IS_ROW_ODD_HH
-/// \file mln/world/inter_pixel/dim2d/is_row_odd.hh
+/// \file mln/world/inter_pixel/dim2/is_row_odd.hh
///
/// FIXME: insert comment.
diff --git a/milena/mln/world/inter_pixel/full2image.hh
b/milena/mln/world/inter_pixel/full2image.hh
index c116964..50f6b28 100644
--- a/milena/mln/world/inter_pixel/full2image.hh
+++ b/milena/mln/world/inter_pixel/full2image.hh
@@ -25,10 +25,10 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-#ifndef MLN_WORLD_INTER_PIXEL_FULL_HH
-# define MLN_WORLD_INTER_PIXEL_FULL_HH
+#ifndef MLN_WORLD_INTER_PIXEL_FULL2IMAGE_HH
+# define MLN_WORLD_INTER_PIXEL_FULL2IMAGE_HH
-/// \file mln/world/inter_pixel/full.hh
+/// \file mln/world/inter_pixel/full2image.hh
///
/// Convert an inter-pixel image to a classical image.
///
@@ -92,4 +92,4 @@ namespace mln
} // end of namespace mln
-#endif // ! MLN_WORLD_INTER_PIXEL_FULL
+#endif // ! MLN_WORLD_INTER_PIXEL_FULL2IMAGE
diff --git a/milena/tests/accu/site_set/rectangularity.cc
b/milena/tests/accu/site_set/rectangularity.cc
index ee6b6d1..9efef9b 100644
--- a/milena/tests/accu/site_set/rectangularity.cc
+++ b/milena/tests/accu/site_set/rectangularity.cc
@@ -25,7 +25,7 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/accu/site_set/rectangularity.hh
+/// \file tests/accu/site_set/rectangularity.cc
///
/// Tests on mln::accu::site_set::rectangularity.
diff --git a/milena/tests/make/region_adjacency_graph.cc
b/milena/tests/make/region_adjacency_graph.cc
index 7f8cb12..641626b 100644
--- a/milena/tests/make/region_adjacency_graph.cc
+++ b/milena/tests/make/region_adjacency_graph.cc
@@ -25,7 +25,7 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/make/graph.cc
+/// \file tests/make/region_adjacency_graph.cc
///
/// Tests on mln::make::region_adjacency_graph.
diff --git a/milena/tests/morpho/Rd.cc b/milena/tests/morpho/Rd.cc
index 48bc5bb..8b4ec21 100644
--- a/milena/tests/morpho/Rd.cc
+++ b/milena/tests/morpho/Rd.cc
@@ -26,7 +26,7 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/morpho/combined.cc
+/// \file tests/morpho/rd.cc
///
/// Test on mln::morpho::Rd.
--
1.6.1.2