https://svn.lrde.epita.fr/svn/oln/trunk/milena
Index: ChangeLog
from Thierry Geraud <thierry.geraud(a)lrde.epita.fr>
Move level::fill and level::paste into data::.
* mln/data: New directory.
* mln/level/fill.hh,
* mln/level/fill_with_image.hh,
* mln/level/fill_with_image.spe.hh,
* mln/level/fill_with_value.hh,
* mln/level/fill_with_value.spe.hh,
* mln/level/memcpy_.hh,
* mln/level/memset_.hh,
* mln/level/paste.hh,
* mln/level/paste.spe.hh: Move and rename as...
* mln/data/fill.hh,
* mln/data/fill_with_image.hh,
* mln/data/fill_with_image.spe.hh,
* mln/data/fill_with_value.hh,
* mln/data/fill_with_value.spe.hh,
* mln/data/memcpy_.hh,
* mln/data/memset_.hh,
* mln/data/paste.hh,
* mln/data/paste.spe.hh: ...these.
Update.
* mln/data/essential.hh: New.
* mln/data/all.hh: New.
* tests/data: New directory.
* tests/level/fill.cc,
* tests/level/fill_full.cc,
* tests/level/fill_with_image.cc,
* tests/level/fill_with_value.cc,
* tests/level/memcpy_.cc,
* tests/level/memset_.cc,
* tests/level/paste.cc,
* tests/level/paste_full.cc,
* tests/level/transform.cc: Move and rename as...
* tests/data/fill.cc,
* tests/data/fill_full.cc,
* tests/data/fill_with_image.cc,
* tests/data/fill_with_value.cc,
* tests/data/memcpy_.cc,
* tests/data/memset_.cc,
* tests/data/paste.cc: ...these.
Update.
* tests/data/Makefile.am: New.
* tests/unit_test/mln_level_fill.cc,
* tests/unit_test/mln_level_fill_with_image.cc,
* tests/unit_test/mln_level_fill_with_value.cc,
* tests/unit_test/mln_level_memcpy_.cc,
* tests/unit_test/mln_level_memset_.cc,
* tests/unit_test/mln_level_paste.cc: Move and rename as...
* tests/unit_test/mln_data_fill.cc,
* tests/unit_test/mln_data_fill_with_image.cc,
* tests/unit_test/mln_data_fill_with_value.cc,
* tests/unit_test/mln_data_memcpy_.cc,
* tests/unit_test/mln_data_memset_.cc,
* tests/unit_test/mln_data_paste.cc: ...these.
Update.
Assign is obsolete (it performed fill!)
* mln/level/assign.hh: Remove.
* mln/level/assign.spe.hh: Remove.
* tests/level/assign.cc: Remove.
* tests/level/assign_full.cc: Remove.
* mln/debug/println.spe.hh,
* mln/debug/draw_graph.hh,
* mln/core/site_set/p_image.hh,
* mln/core/image/extension_ima.hh,
* mln/core/w_window.hh,
* mln/core/routine/clone.hh,
* mln/core/concept/window.hh,
* mln/draw/line.hh,
* mln/draw/box.hh,
* mln/draw/plot.hh,
* mln/all.hh,
* mln/level/transform.spe.hh,
* mln/level/all.hh,
* mln/level/replace.hh,
* mln/level/essential.hh,
* mln/linear/gaussian.hh,
* mln/border/resize.hh,
* mln/convert/to_image.hh,
* mln/geom/resize.hh,
* mln/geom/chamfer.hh,
* mln/morpho/tree/compute_attribute_image.hh,
* mln/morpho/tree/compute_parent.hh,
* mln/morpho/elementary/like_ero_set.hh,
* mln/morpho/elementary/gradient.hh,
* mln/morpho/hit_or_miss.hh,
* mln/morpho/laplacian.hh,
* mln/morpho/Rd.hh,
* mln/morpho/includes.hh,
* mln/morpho/skeleton_constrained.hh,
* mln/morpho/meyer_wst.hh,
* mln/canvas/distance_front.hh,
* mln/canvas/morpho/algebraic_union_find.hh,
* mln/canvas/distance_geodesic.hh,
* mln/canvas/labeling.hh,
* mln/extension/fill.hh,
* mln/util/tree_to_image.hh,
* mln/labeling/blobs.hh,
* mln/labeling/level.hh,
* mln/labeling/regional_minima.hh,
* mln/labeling/regional_maxima.hh,
* tests/debug/println_with_border.cc,
* tests/debug/println.cc,
* tests/core/other/clock_test.cc,
* tests/core/image/sub_image.cc,
* tests/core/image/cast_image.cc,
* tests/core/image/sparse_image.cc,
* tests/core/image/obased_rle_image.cc,
* tests/core/image/value_enc_image.cc,
* tests/core/image/plain.cc,
* tests/core/image/bgraph_image.cc,
* tests/core/image/fi_adaptor.cc,
* tests/core/image/mono_rle_image.cc,
* tests/core/image/rle_image.cc,
* tests/core/image/mono_obased_rle_image.cc,
* tests/core/image/interpolated.cc,
* tests/draw/graph.cc,
* tests/draw/line.cc,
* tests/opt/at.cc,
* tests/level/transform_full.cc,
* tests/level/sort_psites_full.cc,
* tests/level/Makefile.am,
* tests/linear/gaussian.cc,
* tests/transform/distance_geodesic.cc,
* tests/transform/distance_front.cc,
* tests/border/fill_full.cc,
* tests/border/resize_image3d_1.cc,
* tests/border/resize_image3d_2.cc,
* tests/border/resize_image3d_3.cc,
* tests/test/positive.cc,
* tests/convert/to_p_set.cc,
* tests/convert/to_window.cc,
* tests/pw/value.cc,
* tests/binarization/threshold.cc,
* tests/morpho/artificial_line_graph_image_wst.cc,
* tests/morpho/dilation.cc,
* tests/morpho/tree/data.cc,
* tests/morpho/skeleton_constrained.cc,
* tests/morpho/elementary/gradient.cc,
* tests/morpho/elementary/closing.cc,
* tests/morpho/elementary/erosion.cc,
* tests/morpho/elementary/top_hat.cc,
* tests/morpho/elementary/gradient_external.cc,
* tests/morpho/elementary/opening.cc,
* tests/morpho/elementary/dilation.cc,
* tests/morpho/elementary/gradient_internal.cc,
* tests/morpho/lena_line_graph_image_wst1.cc,
* tests/morpho/rank_filter.cc,
* tests/morpho/complex_image_wst.cc,
* tests/morpho/hit_or_miss.cc,
* tests/morpho/combined.cc,
* tests/morpho/lena_line_graph_image_wst2.cc,
* tests/Makefile.am,
* tests/canvas/chamfer.cc,
* tests/canvas/browsing/hyper_directional.cc,
* tests/extension/fill.cc,
* tests/util/tree_to_image.cc,
* tests/util/tree_fast_to_image.cc,
* tests/labeling/level.cc: Update.
mln/all.hh | 1
mln/border/resize.hh | 4 -
mln/canvas/distance_front.hh | 4 -
mln/canvas/distance_geodesic.hh | 4 -
mln/canvas/labeling.hh | 8 +--
mln/canvas/morpho/algebraic_union_find.hh | 17 +++---
mln/convert/to_image.hh | 4 -
mln/core/concept/window.hh | 2
mln/core/image/extension_ima.hh | 4 -
mln/core/routine/clone.hh | 4 -
mln/core/site_set/p_image.hh | 4 -
mln/core/w_window.hh | 4 -
mln/data/all.hh | 60 ++++++++++++++++++++++++
mln/data/essential.hh | 40 ++++++++++++++++
mln/data/fill.hh | 24 ++++-----
mln/data/fill_with_image.hh | 24 ++++-----
mln/data/fill_with_image.spe.hh | 44 ++++++++---------
mln/data/fill_with_value.hh | 22 ++++----
mln/data/fill_with_value.spe.hh | 28 +++++------
mln/data/memcpy_.hh | 33 ++++++-------
mln/data/memset_.hh | 32 ++++++------
mln/data/paste.hh | 24 ++++-----
mln/data/paste.spe.hh | 38 +++++++--------
mln/debug/draw_graph.hh | 2
mln/debug/println.spe.hh | 4 -
mln/draw/box.hh | 2
mln/draw/line.hh | 4 -
mln/draw/plot.hh | 4 -
mln/extension/fill.hh | 2
mln/geom/chamfer.hh | 4 -
mln/geom/resize.hh | 2
mln/labeling/blobs.hh | 4 -
mln/labeling/level.hh | 2
mln/labeling/regional_maxima.hh | 4 -
mln/labeling/regional_minima.hh | 4 -
mln/level/all.hh | 20 ++------
mln/level/essential.hh | 15 ++----
mln/level/replace.hh | 4 -
mln/level/transform.spe.hh | 4 -
mln/linear/gaussian.hh | 22 ++++----
mln/morpho/Rd.hh | 6 +-
mln/morpho/elementary/gradient.hh | 2
mln/morpho/elementary/like_ero_set.hh | 4 -
mln/morpho/hit_or_miss.hh | 8 +--
mln/morpho/includes.hh | 2
mln/morpho/laplacian.hh | 2
mln/morpho/meyer_wst.hh | 2
mln/morpho/skeleton_constrained.hh | 4 -
mln/morpho/tree/compute_attribute_image.hh | 6 +-
mln/morpho/tree/compute_parent.hh | 4 -
mln/util/tree_to_image.hh | 6 +-
tests/Makefile.am | 1
tests/binarization/threshold.cc | 2
tests/border/fill_full.cc | 8 +--
tests/border/resize_image3d_1.cc | 4 -
tests/border/resize_image3d_2.cc | 4 -
tests/border/resize_image3d_3.cc | 4 -
tests/canvas/browsing/hyper_directional.cc | 12 ++--
tests/canvas/chamfer.cc | 8 +--
tests/convert/to_p_set.cc | 6 +-
tests/convert/to_window.cc | 6 +-
tests/core/image/bgraph_image.cc | 8 +--
tests/core/image/cast_image.cc | 4 -
tests/core/image/fi_adaptor.cc | 4 -
tests/core/image/interpolated.cc | 2
tests/core/image/mono_obased_rle_image.cc | 6 +-
tests/core/image/mono_rle_image.cc | 6 +-
tests/core/image/obased_rle_image.cc | 6 +-
tests/core/image/plain.cc | 8 +--
tests/core/image/rle_image.cc | 6 +-
tests/core/image/sparse_image.cc | 6 +-
tests/core/image/sub_image.cc | 8 +--
tests/core/image/value_enc_image.cc | 6 +-
tests/core/other/clock_test.cc | 8 +--
tests/data/Makefile.am | 23 +++++++++
tests/data/fill.cc | 8 +--
tests/data/fill_full.cc | 10 ++--
tests/data/fill_with_image.cc | 56 +++++++++++-----------
tests/data/fill_with_value.cc | 22 ++++----
tests/data/memcpy_.cc | 16 +++---
tests/data/memset_.cc | 20 ++++----
tests/data/paste.cc | 44 ++++++++---------
tests/debug/println.cc | 2
tests/debug/println_with_border.cc | 2
tests/draw/graph.cc | 2
tests/draw/line.cc | 12 ++--
tests/extension/fill.cc | 4 -
tests/labeling/level.cc | 2
tests/level/Makefile.am | 6 --
tests/level/paste_full.cc | 10 ++--
tests/level/sort_psites_full.cc | 2
tests/level/transform.cc | 20 ++++----
tests/level/transform_full.cc | 2
tests/linear/gaussian.cc | 4 -
tests/morpho/artificial_line_graph_image_wst.cc | 2
tests/morpho/combined.cc | 6 +-
tests/morpho/complex_image_wst.cc | 4 -
tests/morpho/dilation.cc | 4 -
tests/morpho/elementary/closing.cc | 2
tests/morpho/elementary/dilation.cc | 2
tests/morpho/elementary/erosion.cc | 2
tests/morpho/elementary/gradient.cc | 2
tests/morpho/elementary/gradient_external.cc | 2
tests/morpho/elementary/gradient_internal.cc | 2
tests/morpho/elementary/opening.cc | 2
tests/morpho/elementary/top_hat.cc | 2
tests/morpho/hit_or_miss.cc | 2
tests/morpho/lena_line_graph_image_wst1.cc | 2
tests/morpho/lena_line_graph_image_wst2.cc | 2
tests/morpho/rank_filter.cc | 2
tests/morpho/skeleton_constrained.cc | 4 -
tests/morpho/tree/data.cc | 2
tests/opt/at.cc | 12 ++--
tests/pw/value.cc | 4 -
tests/test/positive.cc | 4 -
tests/transform/distance_front.cc | 4 -
tests/transform/distance_geodesic.cc | 4 -
tests/unit_test/mln_data_fill.cc | 6 +-
tests/unit_test/mln_data_fill_with_image.cc | 6 +-
tests/unit_test/mln_data_fill_with_value.cc | 6 +-
tests/unit_test/mln_data_memcpy_.cc | 6 +-
tests/unit_test/mln_data_memset_.cc | 6 +-
tests/unit_test/mln_data_paste.cc | 6 +-
tests/util/tree_fast_to_image.cc | 4 -
tests/util/tree_to_image.cc | 4 -
125 files changed, 603 insertions(+), 493 deletions(-)
Index: mln/debug/println.spe.hh
--- mln/debug/println.spe.hh (revision 3073)
+++ mln/debug/println.spe.hh (working copy)
@@ -44,7 +44,7 @@
# include <mln/core/concept/window.hh>
# include <mln/debug/format.hh>
# include <mln/debug/put_word.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/accu/max.hh>
# include <mln/opt/at.hh>
@@ -110,7 +110,7 @@
unsigned len = len_ + 1;
image2d<char> output(b.nrows(), b.ncols() * len, 0);
- level::fill(output, ' ');
+ data::fill(output, ' ');
for_all(p)
{
std::ostringstream oss;
Index: mln/debug/draw_graph.hh
--- mln/debug/draw_graph.hh (revision 3073)
+++ mln/debug/draw_graph.hh (working copy)
@@ -39,7 +39,7 @@
# include <mln/core/site_set/p_edges.hh>
# include <mln/util/line_graph.hh>
# include <mln/draw/line.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
{
Index: mln/core/site_set/p_image.hh
--- mln/core/site_set/p_image.hh (revision 3073)
+++ mln/core/site_set/p_image.hh (working copy)
@@ -41,7 +41,7 @@
# include <mln/fun/ops.hh>
# include <mln/pw/value.hh>
# include <mln/pw/cst.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/fill_with_value.hh>
@@ -271,7 +271,7 @@
if (! is_valid())
return; // No-op.
nsites_ = 0;
- level::fill_with_value(ima_, false);
+ data::fill_with_value(ima_, false);
}
template <typename I>
Index: mln/core/image/extension_ima.hh
--- mln/core/image/extension_ima.hh (revision 3073)
+++ mln/core/image/extension_ima.hh (working copy)
@@ -39,7 +39,7 @@
/// or value_io::read_only; then ext_io can be read_write...
# include <mln/core/internal/image_identity.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/fill_with_value.hh>
@@ -278,7 +278,7 @@
{
mlc_equal(mln_trait_image_value_io(J),
trait::image::value_io::read_write)::check();
- level::fill_with_value(v);
+ data::fill_with_value(v);
}
// init_
Index: mln/core/w_window.hh
--- mln/core/w_window.hh (revision 3073)
+++ mln/core/w_window.hh (working copy)
@@ -347,7 +347,7 @@
ima.init_(geom::bbox(w_win));
{
- // level::fill(ima, literal::zero) is:
+ // data::fill(ima, literal::zero) is:
mln_value(I) zero = literal::zero;
mln_piter(I) p(ima.domain());
for_all(p)
@@ -373,7 +373,7 @@
// // Fill the image with zeros, as (weighted) windows are not
// // necessarily box-shaped (there might be holes corresponding to
// // null weights).
-// level::fill(ima, literal::zero);
+// data::fill(ima, literal::zero);
// P O = P::origin;
// mln_qiter(W) q(w_win, O);
// for_all(q)
Index: mln/core/routine/clone.hh
--- mln/core/routine/clone.hh (revision 3073)
+++ mln/core/routine/clone.hh (working copy)
@@ -35,7 +35,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/routine/init.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
@@ -64,7 +64,7 @@
mln_concrete(I) tmp;
initialize(tmp, model);
- level::fill(tmp, model);
+ data::fill(tmp, model);
trace::exiting("core::clone");
return tmp;
Index: mln/core/concept/window.hh
--- mln/core/concept/window.hh (revision 3073)
+++ mln/core/concept/window.hh (working copy)
@@ -327,7 +327,7 @@
// Hack (below) to avoid circular dependency.
ima.init_(mln::internal::geom_bbox(win));
{
- // level::fill(ima, false) is:
+ // data::fill(ima, false) is:
mln_piter(I) p(ima.domain());
for_all(p)
ima(p) = false;
Index: mln/draw/line.hh
--- mln/draw/line.hh (revision 3073)
+++ mln/draw/line.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/site_set/p_line2d.hh>
# include <mln/core/image/safe.hh>
-# include <mln/level/paste.hh>
+# include <mln/data/paste.hh>
# include <mln/pw/image.hh>
# include <mln/pw/cst.hh>
@@ -77,7 +77,7 @@
I& ima = exact(ima_);
mln_precondition(ima.has_data());
// if (! ima.has(beg) || ! ima.has(end)) trace::warning("out");
- level::paste(pw::cst(v) | p_line2d(beg, end),
+ data::paste(pw::cst(v) | p_line2d(beg, end),
safe(ima).rw());
}
Index: mln/draw/box.hh
--- mln/draw/box.hh (revision 3073)
+++ mln/draw/box.hh (working copy)
@@ -35,7 +35,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/alias/box2d.hh>
-# include <mln/level/paste.hh>
+# include <mln/data/paste.hh>
# include <mln/draw/line.hh>
# include <mln/pw/image.hh>
# include <mln/pw/cst.hh>
Index: mln/draw/plot.hh
--- mln/draw/plot.hh (revision 3073)
+++ mln/draw/plot.hh (working copy)
@@ -35,7 +35,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/site_set/p_line2d.hh>
-# include <mln/level/paste.hh>
+# include <mln/data/paste.hh>
# include <mln/pw/image.hh>
# include <mln/pw/cst.hh>
@@ -78,7 +78,7 @@
mln_point(I) beg = p, end = p;
beg[i] = beg[i] - 1;
end[i] = end[i] + 1;
- level::paste(pw::cst(v) | line2d(beg, end),
+ data::paste(pw::cst(v) | line2d(beg, end),
ima);
}
}
Index: mln/all.hh
--- mln/all.hh (revision 3073)
+++ mln/all.hh (working copy)
@@ -32,6 +32,7 @@
///
/// File that includes all the headers.
+#include <mln/data/all.hh>
#include <mln/util/all.hh>
#include <mln/fun/p2v/all.hh>
#include <mln/fun/x2x/all.hh>
Index: mln/level/transform.spe.hh
--- mln/level/transform.spe.hh (revision 3073)
+++ mln/level/transform.spe.hh (working copy)
@@ -40,7 +40,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/function.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/fill_with_value.hh>
# include <mln/value/set.hh>
# include <mln/value/lut_vec.hh>
@@ -215,7 +215,7 @@
initialize(output, input);
mln_result(F) val = f(input.val());
- fill_with_value(output, val);
+ data::fill_with_value(output, val);
trace::exiting("level::impl::transform_singleton");
return output;
Index: mln/level/all.hh
--- mln/level/all.hh (revision 3073)
+++ mln/level/all.hh (working copy)
@@ -1,4 +1,5 @@
// Copyright (C) 2007, 2008 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,9 @@
#ifndef MLN_LEVEL_ALL_HH
# define MLN_LEVEL_ALL_HH
-/*! \file mln/level/all.hh
- *
- * \brief File that includes all level-related routines.
- *
- */
+/// \file mln/level/all.hh
+///
+/// File that includes all level-related routines.
namespace mln
@@ -49,25 +48,21 @@
namespace generic {}
}
-
}
-
}
+
# include <mln/level/abs.hh>
# include <mln/level/apply.hh>
# include <mln/level/approx/all.hh>
-# include <mln/level/assign.hh>
# include <mln/level/compare.hh>
# include <mln/level/compute.hh>
# include <mln/level/convert.hh>
# include <mln/level/fast_median.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/level/median.hh>
-# include <mln/level/memcpy_.hh>
-# include <mln/level/memset_.hh>
# include <mln/level/naive/all.hh>
-# include <mln/level/paste.hh>
+# include <mln/data/paste.hh>
# include <mln/level/replace.hh>
# include <mln/level/saturate.hh>
# include <mln/level/sort_psites.hh>
@@ -78,5 +73,4 @@
# include <mln/level/was.median.hh>
-
#endif // ! MLN_LEVEL_ALL_HH
Index: mln/level/replace.hh
--- mln/level/replace.hh (revision 3073)
+++ mln/level/replace.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/image/image_if.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/pw/value.hh>
# include <mln/pw/cst.hh>
@@ -74,7 +74,7 @@
trace::entering("level::impl::generic::replace");
I& input = exact(input_);
- level::fill((input | (pw::value(input) == pw::cst(old_value))).rw(),
+ data::fill((input | (pw::value(input) == pw::cst(old_value))).rw(),
new_value);
trace::exiting("level::impl::generic::replace");
Index: mln/level/essential.hh
--- mln/level/essential.hh (revision 3073)
+++ mln/level/essential.hh (working copy)
@@ -1,4 +1,4 @@
-// Copyright (C) 2008 EPITA Research and Development Laboratory
+// Copyright (C) 2008 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,22 +28,18 @@
#ifndef MLN_LEVEL_ESSENTIAL_HH
# define MLN_LEVEL_ESSENTIAL_HH
-/*! \file mln/level/essential.hh
- *
- * \brief File that includes essential level-related routines.
- *
- */
+/// \file mln/level/essential.hh
+///
+/// File that includes essential level-related routines.
+
# include <mln/level/abs.hh>
# include <mln/level/apply.hh>
-# include <mln/level/assign.hh>
# include <mln/level/compare.hh>
# include <mln/level/compute.hh>
# include <mln/level/convert.hh>
# include <mln/level/fast_median.hh>
-# include <mln/level/fill.hh>
# include <mln/level/median.hh>
-# include <mln/level/paste.hh>
# include <mln/level/replace.hh>
# include <mln/level/saturate.hh>
# include <mln/level/transform.hh>
@@ -53,4 +49,5 @@
# include <mln/level/approx/essential.hh>
# include <mln/level/naive/essential.hh>
+
#endif // ! MLN_LEVEL_ESSENTIAL_HH
Index: mln/data/paste.spe.hh
--- mln/data/paste.spe.hh (revision 0)
+++ mln/data/paste.spe.hh (working copy)
@@ -28,9 +28,9 @@
#ifndef MLN_LEVEL_PASTE_SPE_HH
# define MLN_LEVEL_PASTE_SPE_HH
-/*! \file mln/level/paste.spe.hh
+/*! \file mln/data/paste.spe.hh
*
- * \brief Specializations for mln::level::paste.
+ * \brief Specializations for mln::data::paste.
*
*/
@@ -39,8 +39,8 @@
# endif // ! MLN_LEVEL_PASTE_HH
# include <mln/core/pixel.hh>
-# include <mln/level/fill_with_value.hh>
-# include <mln/level/memcpy_.hh>
+# include <mln/data/fill_with_value.hh>
+# include <mln/data/memcpy_.hh>
# include <mln/core/box_runstart_piter.hh>
# include <mln/border/get.hh>
@@ -51,7 +51,7 @@
namespace mln
{
- namespace level
+ namespace data
{
namespace internal
@@ -76,12 +76,12 @@
template <typename I, typename J>
void paste_fast(const Image<I>& input_, Image<J>& output_)
{
- trace::entering("level::impl::paste_fast");
+ trace::entering("data::impl::paste_fast");
const I& input = exact(input_);
J& output = exact(output_);
- level::internal::paste_tests(input, output);
+ data::internal::paste_tests(input, output);
mln_pixter(const I) pi(input);
mln_pixter(J) po(output);
@@ -92,18 +92,18 @@
po.val() = pi.val();
po.next();
}
- trace::exiting("level::impl::paste_fast");
+ trace::exiting("data::impl::paste_fast");
}
template <typename I, typename J>
void paste_fastest(const Image<I>& input_, Image<J>& output_)
{
- trace::entering("level::impl::paste_fastest");
+ trace::entering("data::impl::paste_fastest");
const I& input = exact(input_);
J& output = exact(output_);
- level::internal::paste_tests(input, output);
+ data::internal::paste_tests(input, output);
pixel<const I> src (input);
pixel<J> dst(output);
@@ -112,19 +112,19 @@
memcpy_(dst, src, input.nelements());
- trace::exiting("level::impl::paste_fastest");
+ trace::exiting("data::impl::paste_fastest");
}
template <typename I, typename J>
inline
void paste_lines(const Image<I>& input_, Image<J>& output_)
{
- trace::entering("level::impl::paste_lines");
+ trace::entering("data::impl::paste_lines");
const I& input = exact(input_);
J& output = exact(output_);
- level::internal::paste_tests(input, output);
+ data::internal::paste_tests(input, output);
mln_box_runstart_piter(I) p(input.domain());
for_all(p)
@@ -133,19 +133,19 @@
memcpy_(dst, make::pixel(input, p), p.run_length());
}
- trace::exiting("level::impl::paste_lines");
+ trace::exiting("data::impl::paste_lines");
}
template <typename I, typename J>
void paste_singleton(const Image<I>& input_, Image<J>&
output_)
{
- trace::entering("level::impl::paste_singleton");
+ trace::entering("data::impl::paste_singleton");
const I& input = exact(input_);
- level::fill_with_value((output_ | input.domain()).rw(), input.val());
+ data::fill_with_value((output_ | input.domain()).rw(), input.val());
- trace::exiting("level::impl::paste_singleton");
+ trace::exiting("data::impl::paste_singleton");
}
} // end of namespace impl.
@@ -275,9 +275,9 @@
input, output);
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/paste.spe.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/fill_with_image.hh
--- mln/data/fill_with_image.hh (revision 0)
+++ mln/data/fill_with_image.hh (working copy)
@@ -28,7 +28,7 @@
#ifndef MLN_LEVEL_FILL_WITH_IMAGE_HH
# define MLN_LEVEL_FILL_WITH_IMAGE_HH
-/*! \file mln/level/fill_with_image.hh
+/*! \file mln/data/fill_with_image.hh
*
* \brief Fill an image with the values from another image.
*
@@ -39,13 +39,13 @@
// Specializations are in:
-# include <mln/level/fill_with_image.spe.hh>
+# include <mln/data/fill_with_image.spe.hh>
namespace mln
{
- namespace level
+ namespace data
{
/// Fill the image \p ima with the values of the image \p data.
@@ -87,7 +87,7 @@
mln_precondition(exact(ima).domain() <= exact(data).domain());
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
namespace impl
@@ -99,22 +99,22 @@
template <typename I, typename J>
void fill_with_image(Image<I>& ima_, const Image<J>& data_)
{
- trace::entering("level::impl::generic::fill_with_image");
+ trace::entering("data::impl::generic::fill_with_image");
I& ima = exact(ima_);
const J& data = exact(data_);
- level::internal::fill_with_image_tests(ima, data);
+ data::internal::fill_with_image_tests(ima, data);
mln_piter(I) p(ima.domain());
for_all(p)
ima(p) = data(p);
- trace::exiting("level::impl::generic::fill_with_image");
+ trace::exiting("data::impl::generic::fill_with_image");
}
- } // end if namespace mln::level::impl::generic
+ } // end if namespace mln::data::impl::generic
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
// Facade.
@@ -123,16 +123,16 @@
inline
void fill_with_image(Image<I>& ima, const Image<J>& data)
{
- trace::entering("level::fill_with_image");
+ trace::entering("data::fill_with_image");
internal::fill_with_image_(ima, data);
- trace::exiting("level::fill_with_image");
+ trace::exiting("data::fill_with_image");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/fill_with_image.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/fill_with_value.spe.hh
--- mln/data/fill_with_value.spe.hh (revision 0)
+++ mln/data/fill_with_value.spe.hh (working copy)
@@ -28,15 +28,15 @@
#ifndef MLN_LEVEL_FILL_WITH_VALUE_SPE_HH
# define MLN_LEVEL_FILL_WITH_VALUE_SPE_HH
-/// \file mln/level/fill_with_value.spe.hh
-/// Specializations for mln::level::fill_with_value.
+/// \file mln/data/fill_with_value.spe.hh
+/// Specializations for mln::data::fill_with_value.
///
# ifndef MLN_LEVEL_FILL_WITH_VALUE_HH
# error "Forbidden inclusion of *.spe.hh"
# endif // ! MLN_LEVEL_FILL_WITH_VALUE_HH
-# include <mln/level/memset_.hh>
+# include <mln/data/memset_.hh>
# ifndef MLN_INCLUDE_ONLY
@@ -44,7 +44,7 @@
namespace mln
{
- namespace level
+ namespace data
{
namespace internal
@@ -75,7 +75,7 @@
inline
void fill_with_value_one_block(Image<I>& ima_, const V& val)
{
- trace::entering("level::impl::fill_with_value_one_block");
+ trace::entering("data::impl::fill_with_value_one_block");
I& ima = exact(ima_);
@@ -87,16 +87,16 @@
mlc_is(mln_trait_image_value_access(I),
trait::image::value_access::direct))::check();
- level::memset_(ima, ima.point_at_index(0), val, ima.nelements());
+ data::memset_(ima, ima.point_at_index(0), val, ima.nelements());
- trace::exiting("level::impl::fill_with_value_one_block");
+ trace::exiting("data::impl::fill_with_value_one_block");
}
template <typename I, typename V>
inline
void fill_with_value_cell_wise(Image<I>& ima_, const V& val)
{
- trace::entering("level::impl::fill_with_value_cell_wise");
+ trace::entering("data::impl::fill_with_value_cell_wise");
I& ima = exact(ima_);
@@ -106,14 +106,14 @@
for_all(v)
v.change_to(val);
- trace::exiting("level::impl::fill_with_value_cell_wise");
+ trace::exiting("data::impl::fill_with_value_cell_wise");
}
template <typename I, typename V>
inline
void fill_with_value_singleton(Image<I>& ima_, const V& val)
{
- trace::entering("level::impl::fill_with_value_singleton");
+ trace::entering("data::impl::fill_with_value_singleton");
I& ima = exact(ima_);
@@ -125,10 +125,10 @@
ima.val() = val;
- trace::exiting("level::impl::fill_with_value_singleton");
+ trace::exiting("data::impl::fill_with_value_singleton");
}
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
@@ -206,10 +206,10 @@
ima, val);
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/fill_with_value.spe.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/fill.hh
--- mln/data/fill.hh (revision 0)
+++ mln/data/fill.hh (working copy)
@@ -28,7 +28,7 @@
#ifndef MLN_LEVEL_FILL_HH
# define MLN_LEVEL_FILL_HH
-/*! \file mln/level/fill.hh
+/*! \file mln/data/fill.hh
*
* \brief Fill an image, that is, set pixel values.
*
@@ -39,14 +39,14 @@
# include <mln/pw/image.hh>
# include <mln/convert/to_fun.hh>
-# include <mln/level/fill_with_image.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/fill_with_image.hh>
+# include <mln/data/fill_with_value.hh>
namespace mln
{
- namespace level
+ namespace data
{
/*! Fill the whole image \p ima with the data provided by \p aux.
@@ -94,20 +94,20 @@
template <typename I>
void fill_dispatch_overload(I& ima, const mln_value(I)& v)
{
- mln::level::fill_with_value(ima, v);
+ mln::data::fill_with_value(ima, v);
}
template <typename I, typename J>
void fill_dispatch_overload(I& ima, const Image<J>& data)
{
- mln::level::fill_with_image(ima, data);
+ mln::data::fill_with_image(ima, data);
}
template <typename I, typename F>
void fill_dispatch_overload(I& ima, const Function<F>& f)
{
mlc_converts_to(mln_result(F), mln_value(I))::check();
- mln::level::fill_with_image(ima,
+ mln::data::fill_with_image(ima,
exact(f) | ima.domain());
}
@@ -115,7 +115,7 @@
void fill_dispatch_overload(I& ima, R (*f)(A))
{
mlc_converts_to(R, mln_value(I))::check();
- mln::level::fill_with_image(ima,
+ mln::data::fill_with_image(ima,
convert::to_fun(f) | ima.domain());
}
@@ -130,7 +130,7 @@
ima(p) = arr[i++];
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
// Facade.
@@ -139,18 +139,18 @@
inline
void fill(Image<I>& ima, const D& data)
{
- trace::entering("level::fill");
+ trace::entering("data::fill");
internal::fill_tests(ima, data);
internal::fill_dispatch(ima, data);
- trace::exiting("level::fill");
+ trace::exiting("data::fill");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/fill.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/essential.hh
--- mln/data/essential.hh (revision 0)
+++ mln/data/essential.hh (revision 0)
@@ -0,0 +1,40 @@
+// Copyright (C) 2008 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
+// of the GNU General Public License version 2 as published by the
+// Free Software Foundation.
+//
+// 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.
+//
+// You should have received a copy of the GNU General Public License
+// along with this library; see the file COPYING. If not, write to
+// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+// Boston, MA 02111-1307, USA.
+//
+// As a special exception, you may use this file as part of a free
+// software library without restriction. Specifically, if other files
+// instantiate templates or use macros or inline functions from this
+// file, or you compile this file and link it with other files to
+// produce an executable, this file does not by itself cause the
+// resulting executable to be covered by the GNU General Public
+// License. This exception does not however invalidate any other
+// reasons why the executable file might be covered by the GNU General
+// Public License.
+
+#ifndef MLN_DATA_ESSENTIAL_HH
+# define MLN_DATA_ESSENTIAL_HH
+
+/// \file mln/data/essential.hh
+///
+/// File that includes essential data-related routines.
+
+
+# include <mln/data/fill.hh>
+# include <mln/data/paste.hh>
+
+
+#endif // ! MLN_DATA_ESSENTIAL_HH
Index: mln/data/all.hh
--- mln/data/all.hh (revision 0)
+++ mln/data/all.hh (revision 0)
@@ -0,0 +1,60 @@
+// Copyright (C) 2007, 2008 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
+// of the GNU General Public License version 2 as published by the
+// Free Software Foundation.
+//
+// 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.
+//
+// You should have received a copy of the GNU General Public License
+// along with this library; see the file COPYING. If not, write to
+// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+// Boston, MA 02111-1307, USA.
+//
+// As a special exception, you may use this file as part of a free
+// software library without restriction. Specifically, if other files
+// instantiate templates or use macros or inline functions from this
+// file, or you compile this file and link it with other files to
+// produce an executable, this file does not by itself cause the
+// resulting executable to be covered by the GNU General Public
+// License. This exception does not however invalidate any other
+// reasons why the executable file might be covered by the GNU General
+// Public License.
+
+#ifndef MLN_DATA_ALL_HH
+# define MLN_DATA_ALL_HH
+
+/// \file mln/data/all.hh
+///
+/// File that includes all data-related routines.
+
+
+namespace mln
+{
+
+ /// Namespace of image processing routines related to pixel data.
+ namespace data
+ {
+
+ /// Implementation namespace of data namespace.
+ namespace impl {
+
+ /// Generic implementation namespace of data namespace.
+ namespace generic {}
+
+ }
+ }
+}
+
+
+# include <mln/data/fill.hh>
+# include <mln/data/paste.hh>
+
+
+
+#endif // ! MLN_DATA_ALL_HH
Index: mln/data/fill_with_image.spe.hh
--- mln/data/fill_with_image.spe.hh (revision 0)
+++ mln/data/fill_with_image.spe.hh (working copy)
@@ -28,9 +28,9 @@
#ifndef MLN_LEVEL_FILL_WITH_IMAGE_SPE_HH
# define MLN_LEVEL_FILL_WITH_IMAGE_SPE_HH
-/*! \file mln/level/fill_with_image.spe.hh
+/*! \file mln/data/fill_with_image.spe.hh
*
- * \brief Specializations for mln::level::fill_with_image.
+ * \brief Specializations for mln::data::fill_with_image.
*
*/
@@ -38,8 +38,8 @@
# error "Forbidden inclusion of *.spe.hh"
# endif // ! MLN_LEVEL_FILL_WITH_IMAGE_HH
-# include <mln/level/memcpy_.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/memcpy_.hh>
+# include <mln/data/fill_with_value.hh>
# include <mln/core/pixel.hh>
# include <mln/core/box_runstart_piter.hh>
# include <mln/border/get.hh>
@@ -50,7 +50,7 @@
namespace mln
{
- namespace level
+ namespace data
{
namespace internal
@@ -60,7 +60,7 @@
inline
void fill_with_image_tests(Image<I>& ima, const Image<J>&
data);
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
@@ -76,12 +76,12 @@
template <typename I, typename J>
void fill_with_image_fastest(Image<I>& ima_, const Image<J>&
data_)
{
- trace::entering("level::impl::fill_with_image_fastest");
+ trace::entering("data::impl::fill_with_image_fastest");
I& ima = exact(ima_);
const J& data = exact(data_);
- level::internal::fill_with_image_tests(ima, data);
+ data::internal::fill_with_image_tests(ima, data);
pixel<const J> src (data);
pixel<I> dst(ima);
@@ -90,18 +90,18 @@
memcpy_(dst, src, ima.nelements());
- trace::exiting("level::impl::fill_with_image_fastest");
+ trace::exiting("data::impl::fill_with_image_fastest");
}
template <typename I, typename J>
void fill_with_image_fast(Image<I>& ima_, const Image<J>&
data_)
{
- trace::entering("level::impl::fill_with_image_fast");
+ trace::entering("data::impl::fill_with_image_fast");
I& ima = exact(ima_);
const J& data = exact(data_);
- level::internal::fill_with_image_tests(ima, data);
+ data::internal::fill_with_image_tests(ima, data);
mln_pixter(I) pi(ima);
mln_pixter(const J) d(data);
@@ -112,19 +112,19 @@
pi.val() = d.val();
d.next();
}
- trace::exiting("level::impl::fill_with_image_fast");
+ trace::exiting("data::impl::fill_with_image_fast");
}
template <typename I, typename J>
inline
void fill_with_image_lines(Image<I>& ima_, const Image<J>&
data_)
{
- trace::entering("level::impl::fill_with_image_lines");
+ trace::entering("data::impl::fill_with_image_lines");
I& ima = exact(ima_);
const J& data = exact(data_);
- level::internal::fill_with_image_tests(ima, data);
+ data::internal::fill_with_image_tests(ima, data);
mln_box_runstart_piter(I) p(ima.domain());
for_all(p)
@@ -133,24 +133,24 @@
memcpy_(dst, make::pixel(data, p), p.run_length());
}
- trace::exiting("level::impl::fill_with_image_lines");
+ trace::exiting("data::impl::fill_with_image_lines");
}
template <typename I, typename J>
void fill_with_image_singleton(Image<I>& ima_,
const Image<J>& data_)
{
- trace::entering("level::impl::fill_with_image_singleton");
+ trace::entering("data::impl::fill_with_image_singleton");
const J& data = exact(data_);
- level::internal::fill_with_image_tests(ima_, data);
+ data::internal::fill_with_image_tests(ima_, data);
- level::fill_with_value(ima_, data.val());
+ data::fill_with_value(ima_, data.val());
- trace::exiting("level::impl::fill_with_image_singleton");
+ trace::exiting("data::impl::fill_with_image_singleton");
}
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
@@ -275,9 +275,9 @@
ima, data);
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/fill_with_image.spe.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/memcpy_.hh
--- mln/data/memcpy_.hh (revision 0)
+++ mln/data/memcpy_.hh (working copy)
@@ -1,4 +1,5 @@
-// Copyright (C) 2007 EPITA Research and Development Laboratory
+// Copyright (C) 2007, 2008 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
@@ -25,25 +26,25 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-#ifndef MLN_LEVEL_MEMCPY__HH
-# define MLN_LEVEL_MEMCPY__HH
+#ifndef MLN_DATA_MEMCPY__HH
+# define MLN_DATA_MEMCPY__HH
-/*! \file mln/level/memcpy_.hh
- *
- * \brief Same as std::memcpy but for fastest images.
- *
- * \todo Overload with images and points; Cf. memset_.
- */
+/// \file mln/data/memcpy_.hh
+///
+/// Same as std::memcpy but for fastest images.
+///
+/// \todo Overload with images and points; Cf. memset_.
# include <cstring>
# include <mln/core/concept/image.hh>
# include <mln/core/pixel.hh>
# include <mln/metal/is_not_const.hh>
+
namespace mln
{
- namespace level
+ namespace data
{
/*! Copy \p n pixels starting from pixel \p src to destination
@@ -75,7 +76,7 @@
inline
void memcpy__(Pd& dest, const Ps& src, std::size_t n)
{
- trace::entering("level::impl::memcpy__");
+ trace::entering("data::impl::memcpy__");
typedef mln_image(Pd) Id;
typedef mln_image(Ps) Is;
@@ -102,7 +103,7 @@
*p_d++ = *p_s++;
}
- trace::exiting("level::impl::memcpy__");
+ trace::exiting("data::impl::memcpy__");
}
}
@@ -113,7 +114,7 @@
const Generalized_Pixel<Ps>& src_,
std::size_t n)
{
- trace::entering("level::memcpy_");
+ trace::entering("data::memcpy_");
typedef mln_image(Pd) Id;
metal::is_not_const<Id>::check();
@@ -140,14 +141,14 @@
impl::memcpy__(dest, src, n);
- trace::exiting("level::memcpy_");
+ trace::exiting("data::memcpy_");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
-#endif // ! MLN_LEVEL_MEMCPY__HH
+#endif // ! MLN_DATA_MEMCPY__HH
Property changes on: mln/data/memcpy_.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/memset_.hh
--- mln/data/memset_.hh (revision 0)
+++ mln/data/memset_.hh (working copy)
@@ -26,13 +26,12 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-#ifndef MLN_LEVEL_MEMSET__HH
-# define MLN_LEVEL_MEMSET__HH
+#ifndef MLN_DATA_MEMSET__HH
+# define MLN_DATA_MEMSET__HH
-/*! \file mln/level/memset_.hh
- *
- * \brief Same as std::memset but for fastest images.
- */
+/// \file mln/data/memset_.hh
+///
+/// Same as std::memset but for fastest images.
# include <cstring>
@@ -40,10 +39,11 @@
# include <mln/core/pixel.hh>
# include <mln/metal/is_not_const.hh>
+
namespace mln
{
- namespace level
+ namespace data
{
/*! Set \p n pixels at value \p v starting from pixel \p p.
@@ -86,7 +86,7 @@
inline
void memset__(P& pix, const mln_value(P)& v, std::size_t n)
{
- trace::entering("level::impl::memset_");
+ trace::entering("data::impl::memset_");
typedef mln_image(P) I;
if (n == 0)
@@ -113,10 +113,10 @@
*ptr++ = v;
}
- trace::exiting("level::impl::memset_");
+ trace::exiting("data::impl::memset_");
}
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
template <typename P>
@@ -124,7 +124,7 @@
void memset_(Generalized_Pixel<P>& pix_,
const mln_value(P)& v, std::size_t n)
{
- trace::entering("level::memset_");
+ trace::entering("data::memset_");
typedef mln_image(P) I;
metal::is_not_const<I>::check();
@@ -137,7 +137,7 @@
impl::memset__(pix, v, n);
- trace::exiting("level::memset_");
+ trace::exiting("data::memset_");
}
template <typename I>
@@ -145,7 +145,7 @@
void memset_(I& input, const mln_psite(I)& p,
const mln_value(I)& v, std::size_t n)
{
- trace::entering("level::memset_");
+ trace::entering("data::memset_");
mlc_is(mln_trait_image_speed(I), trait::image::speed::fastest)::check();
@@ -156,14 +156,14 @@
pixel<I> pix(input, p);
impl::memset__(pix, v, n);
- trace::exiting("level::memset_");
+ trace::exiting("data::memset_");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
-#endif // ! MLN_LEVEL_MEMSET__HH
+#endif // ! MLN_DATA_MEMSET__HH
Property changes on: mln/data/memset_.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/paste.hh
--- mln/data/paste.hh (revision 0)
+++ mln/data/paste.hh (working copy)
@@ -28,7 +28,7 @@
#ifndef MLN_LEVEL_PASTE_HH
# define MLN_LEVEL_PASTE_HH
-/*! \file mln/level/paste.hh
+/*! \file mln/data/paste.hh
*
* \brief Paste the contents of an image into another one.
*
@@ -39,14 +39,14 @@
// Specializations are in:
-# include <mln/level/paste.spe.hh>
+# include <mln/data/paste.spe.hh>
namespace mln
{
- namespace level
+ namespace data
{
/// \brief Paste the contents of image \p input into the image \p
@@ -93,7 +93,7 @@
(void)output;
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
namespace impl
{
@@ -105,9 +105,9 @@
inline
void paste(const Image<I>& input_, Image<J>& output_)
{
- trace::entering("level::impl::generic::paste");
+ trace::entering("data::impl::generic::paste");
- level::internal::paste_tests(input_, output_);
+ data::internal::paste_tests(input_, output_);
const I& input = exact(input_);
J& output = exact(output_);
@@ -117,12 +117,12 @@
for_all(p)
output(p) = input(p);
- trace::exiting("level::impl::generic::paste");
+ trace::exiting("data::impl::generic::paste");
}
- } // end of namespace mln::level::impl::generic
+ } // end of namespace mln::data::impl::generic
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
// Facade.
@@ -131,18 +131,18 @@
inline
void paste(const Image<I>& input, Image<J>& output)
{
- trace::entering("level::paste");
+ trace::entering("data::paste");
internal::paste_tests(input, output);
internal::paste_(input, output);
- trace::exiting("level::paste");
+ trace::exiting("data::paste");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/paste.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/data/fill_with_value.hh
--- mln/data/fill_with_value.hh (revision 0)
+++ mln/data/fill_with_value.hh (working copy)
@@ -29,7 +29,7 @@
#ifndef MLN_LEVEL_FILL_WITH_VALUE_HH
# define MLN_LEVEL_FILL_WITH_VALUE_HH
-/// \file mln/level/fill_with_value.hh
+/// \file mln/data/fill_with_value.hh
///
/// Fill an image with a value, that is, set all pixel values to
/// the given value.
@@ -45,13 +45,13 @@
// Specializations are in:
-# include <mln/level/fill_with_value.spe.hh>
+# include <mln/data/fill_with_value.spe.hh>
namespace mln
{
- namespace level
+ namespace data
{
/// Fill the whole image \p ima with the single value \p v.
@@ -84,7 +84,7 @@
(void) ima;
}
- } // end of namespace mln::level::internal
+ } // end of namespace mln::data::internal
namespace impl
@@ -96,7 +96,7 @@
template <typename I, typename V>
void fill_with_value(Image<I>& ima_, const V& val)
{
- trace::entering("level::impl::generic::fill_with_value");
+ trace::entering("data::impl::generic::fill_with_value");
I& ima = exact(ima_);
@@ -109,12 +109,12 @@
for_all(p)
ima(p) = v;
- trace::exiting("level::impl::generic::fill_with_value");
+ trace::exiting("data::impl::generic::fill_with_value");
}
- } // end if namespace mln::level::impl::generic
+ } // end if namespace mln::data::impl::generic
- } // end of namespace mln::level::impl
+ } // end of namespace mln::data::impl
// Facade.
@@ -123,18 +123,18 @@
inline
void fill_with_value(Image<I>& ima, const V& val)
{
- trace::entering("level::fill_with_value");
+ trace::entering("data::fill_with_value");
internal::fill_with_value_tests(ima, val);
internal::fill_with_value_dispatch(ima, val);
- trace::exiting("level::fill_with_value");
+ trace::exiting("data::fill_with_value");
}
# endif // ! MLN_INCLUDE_ONLY
- } // end of namespace mln::level
+ } // end of namespace mln::data
} // end of namespace mln
Property changes on: mln/data/fill_with_value.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: mln/linear/gaussian.hh
--- mln/linear/gaussian.hh (revision 3073)
+++ mln/linear/gaussian.hh (working copy)
@@ -38,7 +38,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/alias/point2d.hh>
-# include <mln/level/paste.hh>
+# include <mln/data/paste.hh>
# include <mln/geom/ncols.hh>
# include <mln/geom/nrows.hh>
@@ -476,7 +476,7 @@
Image<O>& out)
{
mln_ch_value(O, float) work_img(exact(in).domain());
- level::paste(in, work_img);
+ data::paste(in, work_img);
extension::adjust_fill(work_img, 4, 0);
// On tiny sigma, Derich algorithm doesn't work.
@@ -487,7 +487,7 @@
work_img, coef, i);
// We don't need to convert work_img
- level::paste(work_img, out);
+ data::paste(work_img, out);
}
template <class I, class F, class O>
@@ -501,7 +501,7 @@
int dir)
{
mln_ch_value(O, float) work_img(exact(in).domain());
- level::paste(in, work_img);
+ data::paste(in, work_img);
extension::adjust_fill(work_img, 4, 0);
// On tiny sigma, Derich algorithm doesn't work.
@@ -511,7 +511,7 @@
work_img, coef, dir);
// We don't need to convert work_img
- level::paste(work_img, out);
+ data::paste(work_img, out);
}
@@ -525,7 +525,7 @@
Image<O>& out)
{
mln_ch_value(O, float) work_img(exact(in).domain());
- level::paste(in, work_img);
+ data::paste(in, work_img);
extension::adjust_fill(work_img, 4, 0);
// On tiny sigma, Derich algorithm doesn't work.
@@ -536,7 +536,7 @@
work_img, coef, i);
// Convert work_img into result type
- level::paste(level::stretch(mln_value(I)(), work_img), out);
+ data::paste(level::stretch(mln_value(I)(), work_img), out);
}
template <class I, class F, class O>
@@ -550,7 +550,7 @@
int dir)
{
mln_ch_value(O, float) work_img(exact(in).domain());
- level::paste(in, work_img);
+ data::paste(in, work_img);
extension::adjust_fill(work_img, 4, 0);
// On tiny sigma, Derich algorithm doesn't work.
@@ -560,7 +560,7 @@
work_img, coef, dir);
// Convert work_img into result type
- level::paste(level::stretch(mln_value(I)(), work_img), out);
+ data::paste(level::stretch(mln_value(I)(), work_img), out);
}
@@ -577,7 +577,7 @@
// typedef algebra::vec<3, float> vec3f;
// mln_ch_value(O, vec3f) work_img(exact(in).domain());
// FIXME : paste does not work (rgb8 -> vec3f).
- level::paste(in, out);
+ data::paste(in, out);
// On tiny sigma, Derich algorithm doesn't work.
// It is the same thing that to convolve with a Dirac.
@@ -600,7 +600,7 @@
// typedef algebra::vec<3, float> vec3f;
// mln_ch_value(O, vec3f) work_img(exact(in).domain());
// FIXME : paste does not work (rgb8 -> vec3f).
- level::paste(in, out);
+ data::paste(in, out);
// On tiny sigma, Derich algorithm doesn't work.
// It is the same thing that to convolve with a Dirac.
Index: mln/border/resize.hh
--- mln/border/resize.hh (revision 3073)
+++ mln/border/resize.hh (working copy)
@@ -42,7 +42,7 @@
# include <mln/core/routine/clone.hh>
# include <mln/core/routine/primary.hh>
# include <mln/border/get.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
@@ -81,7 +81,7 @@
mln_concrete(I) memo = clone(ima);
ima.resize_(thickness);
- level::fill(ima, memo);
+ data::fill(ima, memo);
mln_postcondition(border::get(ima) == thickness);
}
Index: mln/convert/to_image.hh
--- mln/convert/to_image.hh (revision 3073)
+++ mln/convert/to_image.hh (working copy)
@@ -41,7 +41,7 @@
# include <mln/core/concept/neighborhood.hh>
# include <mln/geom/bbox.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/histo/data.hh>
# include <mln/core/image/image1d.hh>
@@ -94,7 +94,7 @@
const S& pset = exact(pset_);
mln_image_from_grid(mln_site(S)::grid, bool) ima;
ima.init_(geom::bbox(pset).to_larger(border));
- level::fill(ima, false);
+ data::fill(ima, false);
mln_piter(S) p(pset);
for_all(p)
ima(p) = true;
Index: mln/geom/resize.hh
--- mln/geom/resize.hh (revision 3073)
+++ mln/geom/resize.hh (working copy)
@@ -83,7 +83,7 @@
unsigned n = (unsigned)(1 / ratio);
I output (new_cols);
- level::fill(output, 0);
+ data::fill(output, 0);
for (unsigned j = 0; j < cols; ++j)
{
Index: mln/geom/chamfer.hh
--- mln/geom/chamfer.hh (revision 3073)
+++ mln/geom/chamfer.hh (working copy)
@@ -89,8 +89,8 @@
void init() { initialize(output, exact(input));
fill_output();
// Was :
- // level::fill((output | (input | pw::cst(true)).domain()).rw(), 0);
- // level::fill((output | (input | pw::cst(false)).domain()).rw(), max);
+ // data::fill((output | (input | pw::cst(true)).domain()).rw(), 0);
+ // data::fill((output | (input | pw::cst(false)).domain()).rw(), max);
}
inline
bool handles(const P& p) const { return input(p) == false; }
Index: mln/morpho/tree/compute_attribute_image.hh
--- mln/morpho/tree/compute_attribute_image.hh (revision 3073)
+++ mln/morpho/tree/compute_attribute_image.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/util/pix.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
@@ -93,7 +93,7 @@
// few accumulators, e.g., for accu::rank which has the 'k'
// attribute.
A a = exact(a_);
- level::fill(acc, a);
+ data::fill(acc, a);
}
{
// Initialize every attribute with the corresponding pixel.
@@ -122,7 +122,7 @@
typedef typename T::function I;
mln_ch_value(I, mln_result(A)) output;
initialize(output, acc);
- level::fill(output, acc);
+ data::fill(output, acc);
trace::exiting("morpho::tree::compute_attribute_image");
return output;
Index: mln/morpho/tree/compute_parent.hh
--- mln/morpho/tree/compute_parent.hh (revision 3073)
+++ mln/morpho/tree/compute_parent.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
@@ -156,7 +156,7 @@
initialize(zpar, f);
// Initialization.
- level::fill(deja_vu, false);
+ data::fill(deja_vu, false);
// Body.
mln_bkd_piter(S) p(s);
Index: mln/morpho/elementary/like_ero_set.hh
--- mln/morpho/elementary/like_ero_set.hh (revision 3073)
+++ mln/morpho/elementary/like_ero_set.hh (working copy)
@@ -83,7 +83,7 @@
else
{
initialize(output, input);
- level::fill(output, false);
+ data::fill(output, false);
}
mln_piter(I) p(input.domain());
@@ -126,7 +126,7 @@
else
{
initialize(output, input);
- level::fill(output, false);
+ data::fill(output, false);
}
mln_pixter(const I) p_in(input);
Index: mln/morpho/elementary/gradient.hh
--- mln/morpho/elementary/gradient.hh (revision 3073)
+++ mln/morpho/elementary/gradient.hh (working copy)
@@ -114,7 +114,7 @@
mln_concrete(I) output;
initialize(output, input);
- level::fill(output, false);
+ data::fill(output, false);
mln_piter(I) p(input.domain());
mln_niter(N) n(nbh, p);
Index: mln/morpho/hit_or_miss.hh
--- mln/morpho/hit_or_miss.hh (revision 3073)
+++ mln/morpho/hit_or_miss.hh (working copy)
@@ -191,7 +191,7 @@
mln_concrete(I)
ero_fg = erosion(input, win_hit),
dil_bg = dilation(input, win_miss);
- level::fill(output,
+ data::fill(output,
fun::p2v::ternary(pw::value(input) == pw::value(ero_fg)
&& pw::value(dil_bg) < pw::value(input),
fun::cast<V>(pw::value(input) - pw::value(dil_bg)),
@@ -202,21 +202,21 @@
mln_concrete(I)
ero_bg = erosion(input, win_miss),
dil_fg = dilation(input, win_hit);
- level::fill(output,
+ data::fill(output,
fun::p2v::ternary(pw::value(input) == pw::value(dil_fg)
&& pw::value(ero_bg) > pw::value(input),
fun::cast<V>(pw::value(ero_bg) - pw::value(input)),
pw::cst(zero_V)));
}
else
- level::fill(output, zero_V);
+ data::fill(output, zero_V);
}
else // Unconstrained: UHMT.
{
mln_concrete(I)
ero = erosion(input, win_hit),
dil = dilation(input, win_miss);
- level::fill(output,
+ data::fill(output,
fun::p2v::ternary(pw::value(dil) < pw::value(ero),
fun::cast<V>(pw::value(ero) - pw::value(dil)),
pw::cst(zero_V)));
Index: mln/morpho/laplacian.hh
--- mln/morpho/laplacian.hh (revision 3073)
+++ mln/morpho/laplacian.hh (working copy)
@@ -71,7 +71,7 @@
mln_concrete(I)
d_I = morpho::minus(dilation(input, win), input),
e_I = morpho::minus(input, erosion(input, win));
- level::fill(output, d_I - e_I);
+ data::fill(output, d_I - e_I);
trace::exiting("morpho::laplacian");
}
Index: mln/morpho/Rd.hh
--- mln/morpho/Rd.hh (revision 3073)
+++ mln/morpho/Rd.hh (working copy)
@@ -44,7 +44,7 @@
# include <mln/trait/value_.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/level/compare.hh>
# include <mln/util/greater_point.hh>
@@ -121,9 +121,9 @@
parent(f.domain())
{
// init
- level::fill(o, f);
+ data::fill(o, f);
S = histo_reverse_sort(g);
- level::fill(is_proc, false); // FIXME: rm
+ data::fill(is_proc, false); // FIXME: rm
// first pass
for (unsigned i = 0; i < S.size(); ++i)
Index: mln/morpho/includes.hh
--- mln/morpho/includes.hh (revision 3073)
+++ mln/morpho/includes.hh (working copy)
@@ -54,7 +54,7 @@
# include <mln/fun/v2v/saturate.hh>
# include <mln/level/compare.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/test/positive.hh>
Index: mln/morpho/skeleton_constrained.hh
--- mln/morpho/skeleton_constrained.hh (revision 3073)
+++ mln/morpho/skeleton_constrained.hh (working copy)
@@ -39,7 +39,7 @@
# include <mln/core/site_set/p_queue_fast.hh>
# include <mln/core/site_set/p_priority.hh>
# include <mln/extension/adjust_duplicate.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
@@ -87,7 +87,7 @@
// Initialization.
{
initialize(output, input);
- level::fill(output, input);
+ data::fill(output, input);
extension::adjust_duplicate(output, nbh);
mln_piter(I) p(input.domain());
Index: mln/morpho/meyer_wst.hh
--- mln/morpho/meyer_wst.hh (revision 3073)
+++ mln/morpho/meyer_wst.hh (working copy)
@@ -133,7 +133,7 @@
// In_queue structure to avoid processing sites several times.
mln_ch_value(I, bool) in_queue;
initialize(in_queue, input);
- level::fill(in_queue, false);
+ data::fill(in_queue, false);
// Insert every neighbor P of every marked area in a
// hierarchical queue, with a priority level corresponding to
Index: mln/canvas/distance_front.hh
--- mln/canvas/distance_front.hh (revision 3073)
+++ mln/canvas/distance_front.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
# include <mln/core/concept/weighted_window.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/accu/max.hh>
@@ -83,7 +83,7 @@
// Distance map.
mln_ch_value(I, D) dmap;
initialize(dmap, input);
- level::fill(dmap, max);
+ data::fill(dmap, max);
// Mod determination.
unsigned mod;
Index: mln/canvas/morpho/algebraic_union_find.hh
--- mln/canvas/morpho/algebraic_union_find.hh (revision 3073)
+++ mln/canvas/morpho/algebraic_union_find.hh (working copy)
@@ -29,14 +29,13 @@
#ifndef MLN_CANVAS_MORPHO_ALGEBRAIC_UNION_FIND_HH
# define MLN_CANVAS_MORPHO_ALGEBRAIC_UNION_FIND_HH
-/*! \file mln/canvas/morpho/algebraic_union_find.hh
- *
- * \brief FIXME: Doc!
- */
+/// \file mln/canvas/morpho/algebraic_union_find.hh
+///
+/// FIXME: Doc!
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/util/pix.hh>
@@ -105,7 +104,7 @@
// init
{
initialize(deja_vu, input);
- mln::level::fill(deja_vu, false);
+ mln::data::fill(deja_vu, false);
initialize(parent, input);
initialize(data, input);
f.init(); // init required.
@@ -192,7 +191,7 @@
Change 2nd pass into:
for_all(p) if (not is_root(p)) output(p) = output(parent(p));
and add in init:
- mln::level::assign(output, input);
+ mln::data::fill(output, input);
*/
trace::exiting("canvas::morpho::algebraic_union_find");
}
@@ -231,7 +230,7 @@
// init
{
initialize(deja_vu, f.input);
- mln::level::fill(deja_vu, false);
+ mln::data::fill(deja_vu, false);
initialize(parent, f.input);
initialize(data, f.input);
f.init();
@@ -265,7 +264,7 @@
Change 2nd pass into:
for_all(p) if (not is_root(p)) f.output(p) = f.output(parent(p));
and add in init:
- mln::level::assign(f.output, f.input);
+ mln::data::fill(f.output, f.input);
*/
} // end of run()
Index: mln/canvas/distance_geodesic.hh
--- mln/canvas/distance_geodesic.hh (revision 3073)
+++ mln/canvas/distance_geodesic.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/neighborhood.hh>
# include <mln/core/site_set/p_queue_fast.hh>
# include <mln/core/routine/clone.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
@@ -79,7 +79,7 @@
// Initialization.
{
functor.init(input); // <-- init
- level::fill(dmap, max);
+ data::fill(dmap, max);
mln_piter(I) p(input.domain());
mln_niter(N) n(nbh, p);
for_all(p)
Index: mln/canvas/labeling.hh
--- mln/canvas/labeling.hh (revision 3073)
+++ mln/canvas/labeling.hh (working copy)
@@ -36,7 +36,7 @@
/// \todo Make the fastest version work.
# include <mln/core/concept/image.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/literal/zero.hh>
# include <mln/convert/to_upper_window.hh>
@@ -129,12 +129,12 @@
// Initialization.
{
initialize(deja_vu, input);
- mln::level::fill(deja_vu, false);
+ mln::data::fill(deja_vu, false);
initialize(parent, input);
initialize(output, input);
- mln::level::fill(output, L(literal::zero));
+ mln::data::fill(output, L(literal::zero));
nlabels = 0;
f.init(); // Client initialization.
@@ -274,7 +274,7 @@
for (unsigned p = 0; p < parent.nelements(); ++p)
parent.element(p) = p; // make_set
initialize(output, f.input);
- mln::level::fill(output, 0); // FIXME: Use literal::zero.
+ mln::data::fill(output, 0); // FIXME: Use literal::zero.
nlabels = 0;
}
Index: mln/extension/fill.hh
--- mln/extension/fill.hh (revision 3073)
+++ mln/extension/fill.hh (working copy)
@@ -39,7 +39,7 @@
# include <mln/core/concept/image.hh>
# include <mln/trait/image/props.hh>
# include <mln/border/fill.hh>
-# include <mln/level/fill_with_value.hh>
+# include <mln/data/fill_with_value.hh>
namespace mln
Index: mln/util/tree_to_image.hh
--- mln/util/tree_to_image.hh (revision 3073)
+++ mln/util/tree_to_image.hh (working copy)
@@ -38,7 +38,7 @@
# include <mln/core/image/image2d.hh>
# include <mln/util/tree.hh>
# include <mln/core/site_set/p_set.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
namespace mln
{
@@ -162,7 +162,7 @@
const J& ima = exact(ima_);
image2d<bool> out(ima.bbox());
- level::fill(out, false);
+ data::fill(out, false);
mln_piter(p_set<P>) p(s);
for_all(p)
out(p) = true;
@@ -219,7 +219,7 @@
const J& ima = exact(ima_);
image2d<bool> output(ima.domain());
- level::fill(output, false);
+ data::fill(output, false);
impl::display_branch_rec(ima, tree_node, output);
trace::exiting("util::display_branch");
Index: mln/labeling/blobs.hh
--- mln/labeling/blobs.hh (revision 3073)
+++ mln/labeling/blobs.hh (working copy)
@@ -38,7 +38,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/core/site_set/p_queue_fast.hh>
@@ -91,7 +91,7 @@
nlabels = literal::zero;
mln_ch_value(I, L) output;
initialize(output, input);
- level::fill(output, zero);
+ data::fill(output, zero);
// Loop.
mln_piter(I) p(input.domain());
Index: mln/labeling/level.hh
--- mln/labeling/level.hh (revision 3073)
+++ mln/labeling/level.hh (working copy)
@@ -37,7 +37,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
# include <mln/canvas/labeling.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
// The 'fastest' specialization is in:
# include <mln/labeling/level.spe.hh>
Index: mln/labeling/regional_minima.hh
--- mln/labeling/regional_minima.hh (revision 3073)
+++ mln/labeling/regional_minima.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
# include <mln/canvas/labeling.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/level/sort_psites.hh>
@@ -84,7 +84,7 @@
const N& nbh;
S s;
- void init() { level::fill(attr, true); }
+ void init() { data::fill(attr, true); }
bool handles(const P&) const { return true; }
bool labels(const P& p) const { return attr(p); }
bool equiv(const P& n, const P& p) const { return input(n) ==
Index: mln/labeling/regional_maxima.hh
--- mln/labeling/regional_maxima.hh (revision 3073)
+++ mln/labeling/regional_maxima.hh (working copy)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/concept/neighborhood.hh>
# include <mln/canvas/labeling.hh>
-# include <mln/level/fill.hh>
+# include <mln/data/fill.hh>
# include <mln/level/sort_psites.hh>
@@ -85,7 +85,7 @@
const N& nbh;
S s;
- void init() { level::fill(attr, true); }
+ void init() { data::fill(attr, true); }
bool handles(const P&) const { return true; }
bool labels(const P& p) const { return attr(p); }
bool equiv(const P& n, const P& p) const { return input(n) ==
Index: tests/debug/println_with_border.cc
--- tests/debug/println_with_border.cc (revision 3073)
+++ tests/debug/println_with_border.cc (working copy)
@@ -32,7 +32,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/image/image1d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/debug/println_with_border.hh>
#include <mln/opt/at.hh>
Index: tests/debug/println.cc
--- tests/debug/println.cc (revision 3073)
+++ tests/debug/println.cc (working copy)
@@ -31,7 +31,7 @@
*/
#include <mln/core/image/image2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/opt/at.hh>
Index: tests/core/other/clock_test.cc
--- tests/core/other/clock_test.cc (revision 3073)
+++ tests/core/other/clock_test.cc (working copy)
@@ -28,7 +28,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/clock_neighb2d.hh>
#include <mln/debug/println.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/labeling/level.hh>
#include <mln/core/alias/neighb2d.hh>
@@ -150,7 +150,7 @@
a5, a6, a7};
- level::fill(ima, t);
+ data::fill(ima, t);
image2d<unsigned> out = labeling::level(ima, false, c8(), n);
tmp = testc4(ima, p);
@@ -171,11 +171,11 @@
/// 0 before
- level::fill(ima, u);
+ data::fill(ima, u);
out = labeling::level(ima, false, c4(), m);
/// 1 after
- level::fill(ima, t);
+ data::fill(ima, t);
image2d<unsigned> out2 = labeling::level(ima, false, c4(), n);
int diff = n - m;
Index: tests/core/image/sub_image.cc
--- tests/core/image/sub_image.cc (revision 3073)
+++ tests/core/image/sub_image.cc (working copy)
@@ -34,7 +34,7 @@
#include <mln/core/image/sub_image.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
@@ -43,11 +43,11 @@
using namespace mln;
image2d<int> ima(8, 8);
- level::fill(ima, 0);
+ data::fill(ima, 0);
debug::println(ima);
- level::fill((ima | make::box2d(1,1, 3,3)).rw(), 5);
- level::fill((ima | make::box2d(4,4, 6,6)).rw(), 1);
+ data::fill((ima | make::box2d(1,1, 3,3)).rw(), 5);
+ data::fill((ima | make::box2d(4,4, 6,6)).rw(), 1);
debug::println(ima);
}
Index: tests/core/image/cast_image.cc
--- tests/core/image/cast_image.cc (revision 3073)
+++ tests/core/image/cast_image.cc (working copy)
@@ -32,7 +32,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/fun/p2b/chess.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/core/image/cast_image.hh>
@@ -42,7 +42,7 @@
using namespace mln;
image2d<bool> ima(8, 8);
- level::fill(ima, fun::p2b::chess());
+ data::fill(ima, fun::p2b::chess());
debug::println(ima);
debug::println( cast_image<int>(ima) );
}
Index: tests/core/image/sparse_image.cc
--- tests/core/image/sparse_image.cc (revision 3073)
+++ tests/core/image/sparse_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
@@ -74,8 +74,8 @@
std::cout << n << ", compression ratio: " <<
sparse.compression()
<< std::endl;
- level::fill(cmp, literal::zero);
- level::paste(sparse, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(sparse, cmp);
mln_assertion(cmp == level::transform(labels, fold_t()));
}
Index: tests/core/image/obased_rle_image.cc
--- tests/core/image/obased_rle_image.cc (revision 3073)
+++ tests/core/image/obased_rle_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
@@ -73,8 +73,8 @@
std::cout << n << ", compression ratio: " <<
rle.compression() << std::endl;
- level::fill(cmp, literal::zero);
- level::paste(rle, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(rle, cmp);
mln_assertion(cmp == level::transform(labels, fold_t()));
}
Index: tests/core/image/value_enc_image.cc
--- tests/core/image/value_enc_image.cc (revision 3073)
+++ tests/core/image/value_enc_image.cc (working copy)
@@ -40,7 +40,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
#include <mln/core/alias/p_runs2d.hh>
@@ -146,8 +146,8 @@
value_enc_image<point2d, int_u8> val_enc =
value_encode(level::transform(labels, fold_t()));
- level::fill(cmp, literal::zero);
- level::paste(val_enc, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(val_enc, cmp);
std::cout << val_enc.values().size() << std::endl;
mln_assertion(cmp == level::transform(labels, fold_t()));
Index: tests/core/image/plain.cc
--- tests/core/image/plain.cc (revision 3073)
+++ tests/core/image/plain.cc (working copy)
@@ -35,7 +35,7 @@
#include <mln/value/int_u8.hh>
#include <mln/level/compare.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
@@ -81,20 +81,20 @@
{
image2d<int_u8> lena(12,12);
- level::fill(lena, 42);
+ data::fill(lena, 42);
point2d p1(0,0);
point2d p2(5,4);
image2d< image2d<int_u8> > ima(2,2);
- level::fill(ima, lena);
+ data::fill(ima, lena);
// The 4 pixels of ima share the same data (holded by lena).
// Then this update will affect the 4 pixels of ima.
ima(p1)(p2) = 0;
// ima(0,0)(p2) == ima(0,1)(p2) == ima(1,0)(p2) == ima(1,1)(p2) == 0
image2d< plain< image2d<int_u8> > > ima_plain(2,2);
- level::fill(ima_plain, plain< image2d<int_u8> >(lena));
+ data::fill(ima_plain, plain< image2d<int_u8> >(lena));
// The 4 pixels of ima_plain are instances of plain<
// image2d<int_u8> >. So each of them hold their own data. Then
// this update will affect just one pixel at the coordinate 0,0 of
Index: tests/core/image/bgraph_image.cc
--- tests/core/image/bgraph_image.cc (revision 3073)
+++ tests/core/image/bgraph_image.cc (working copy)
@@ -33,8 +33,8 @@
#include <mln/value/int_u8.hh>
#include <mln/core/image/image2d.hh>
#include <mln/core/image/bgraph_image.hh>
-#include <mln/level/fill.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/fill.hh>
+#include <mln/data/paste.hh>
#include <mln/debug/println.hh>
@@ -98,8 +98,8 @@
{
using value::int_u8;
image2d<int_u8> ima_(ima.bbox());
- level::fill(ima_, 0);
- level::paste(ima, ima_);
+ data::fill(ima_, 0);
+ data::paste(ima, ima_);
debug::println(ima_);
}
Index: tests/core/image/fi_adaptor.cc
--- tests/core/image/fi_adaptor.cc (revision 3073)
+++ tests/core/image/fi_adaptor.cc (working copy)
@@ -35,7 +35,7 @@
#include <mln/value/int_u8.hh>
#include <mln/value/rgb8.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/median.hh>
#include <mln/display/show.hh>
@@ -75,7 +75,7 @@
level::median(adaptor, rect, ima);
- level::paste(ima, adaptor);
+ data::paste(ima, adaptor);
display::save (adaptor);
// FIXME: Don't use display::show in batch tests.
Index: tests/core/image/mono_rle_image.cc
--- tests/core/image/mono_rle_image.cc (revision 3073)
+++ tests/core/image/mono_rle_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
@@ -79,8 +79,8 @@
std::cout << n << ", compression ratio: " <<
rle.compression() << std::endl;
- level::fill(cmp, literal::zero);
- level::paste(rle, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(rle, cmp);
mln_assertion(cmp == level::transform(labels, only_two_t()));
}
Index: tests/core/image/rle_image.cc
--- tests/core/image/rle_image.cc (revision 3073)
+++ tests/core/image/rle_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
@@ -73,8 +73,8 @@
std::cout << n << ", compression ratio: " <<
rle.compression() << std::endl;
- level::fill(cmp, literal::zero);
- level::paste(rle, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(rle, cmp);
mln_assertion(cmp == level::transform(labels, fold_t()));
}
Index: tests/core/image/mono_obased_rle_image.cc
--- tests/core/image/mono_obased_rle_image.cc (revision 3073)
+++ tests/core/image/mono_obased_rle_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/labeling/blobs.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
@@ -73,8 +73,8 @@
std::cout << n << ", compression ratio: " <<
rle.compression() << std::endl;
- level::fill(cmp, literal::zero);
- level::paste(rle, cmp);
+ data::fill(cmp, literal::zero);
+ data::paste(rle, cmp);
mln_assertion(cmp == level::transform(labels, fold_t()));
}
Index: tests/core/image/interpolated.cc
--- tests/core/image/interpolated.cc (revision 3073)
+++ tests/core/image/interpolated.cc (working copy)
@@ -37,7 +37,7 @@
#include <mln/algebra/vec.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
Index: tests/draw/graph.cc
--- tests/draw/graph.cc (revision 3073)
+++ tests/draw/graph.cc (working copy)
@@ -73,7 +73,7 @@
mln::p_vertices<G, F> pg(g, fpoints);
image2d<int> ima(nrows, ncols);
- level::fill(ima, 0);
+ data::fill(ima, 0);
debug::draw_graph(ima, pg, 2, 1);
mln_assertion(ima == ref);
}
Index: tests/draw/line.cc
--- tests/draw/line.cc (revision 3073)
+++ tests/draw/line.cc (working copy)
@@ -36,7 +36,7 @@
#include <mln/core/image/sub_image.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/compare.hh>
#include <mln/draw/line.hh>
#include <mln/debug/println.hh>
@@ -51,18 +51,18 @@
mln_assertion(l.nsites() == 10);
image2d<bool> ima(10,10);
- level::fill(ima, false);
+ data::fill(ima, false);
draw::line(ima, b, e, true);
image2d<bool> ima2(10,10);
- level::fill(ima2, false);
- level::paste(pw::cst(true) | l, ima2);
+ data::fill(ima2, false);
+ data::paste(pw::cst(true) | l, ima2);
mln_assertion(ima2 == ima);
image2d<bool> ima3(10,10);
- level::fill(ima3, false);
- level::fill((ima3 | l).rw(), true);
+ data::fill(ima3, false);
+ data::fill((ima3 | l).rw(), true);
mln_assertion(ima3 == ima);
}
Index: tests/opt/at.cc
--- tests/opt/at.cc (revision 3073)
+++ tests/opt/at.cc (working copy)
@@ -41,8 +41,8 @@
#include <mln/core/image/image_if.hh>
#include <mln/core/image/extension_val.hh>*/
-#include <mln/level/fill.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/fill.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/opt/at.hh>
@@ -78,7 +78,7 @@
const II csub_ima(ima, make::box1d(4, 10));
point1d p(5);
- level::fill(ima, 51);
+ data::fill(ima, 51);
mln_assertion(csub_ima(p) == opt::at(csub_ima, 5));
opt::at(sub_ima, 5) = 12;
mln_assertion(sub_ima(p) == 12);
@@ -92,7 +92,7 @@
const II ccast(in);
point1d p(5);
- level::fill(in, 51);
+ data::fill(in, 51);
mln_assertion(ccast(p) == opt::at(ccast, 5));
// FIXME
//opt::at(cast, 5) = 12;
@@ -120,7 +120,7 @@
const II csub_ima(ima, make::box2d(4, 4, 10, 10));
point2d p(5, 5);
- level::fill(ima, 51);
+ data::fill(ima, 51);
mln_assertion(csub_ima(p) == opt::at(csub_ima, 5, 5));
opt::at(sub_ima, 5, 5) = 12;
mln_assertion(sub_ima(p) == 12);
@@ -134,7 +134,7 @@
const II ccast(in);
point2d p(5,5);
- level::fill(in, 51);
+ data::fill(in, 51);
mln_assertion(ccast(p) == opt::at(ccast, 5, 5));
// FIXME
//opt::at(cast, 5) = 12;
Index: tests/level/transform_full.cc
--- tests/level/transform_full.cc (revision 3073)
+++ tests/level/transform_full.cc (working copy)
@@ -48,7 +48,7 @@
#include <mln/value/int_s8.hh>
#include <mln/value/int_s16.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/transform.hh>
#include <mln/debug/iota.hh>
Index: tests/level/sort_psites_full.cc
--- tests/level/sort_psites_full.cc (revision 3073)
+++ tests/level/sort_psites_full.cc (working copy)
@@ -50,7 +50,7 @@
#include <mln/debug/iota.hh>
#include <mln/level/saturate.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/level/sort_psites.hh>
Index: tests/level/paste_full.cc
--- tests/level/paste_full.cc (revision 3073)
+++ tests/level/paste_full.cc (working copy)
@@ -25,9 +25,9 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/*! \file tests/level/paste_full.cc
+/*! \file tests/data/paste_full.cc
*
- * \brief Tests on mln::level::paste.
+ * \brief Tests on mln::data::paste.
*/
@@ -52,7 +52,7 @@
#include <mln/debug/iota.hh>
#include <mln/level/saturate.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
@@ -113,7 +113,7 @@
if (max_i > max_j)
level::saturate_inplace(input, 0, (T)max_j);
- level::paste(input, output);
+ data::paste(input, output);
mln_piter(I) p (input.domain ());
for_all(p)
@@ -274,7 +274,7 @@
unsigned rows = 4;
unsigned cols = 16;
- std::cerr << "Tests level::paste:" << std::endl;
+ std::cerr << "Tests data::paste:" << std::endl;
std::cerr << "on int:" << std::endl;
ch<int>(slis, rows, cols);
std::cerr << "on unsigned:" << std::endl;
Index: tests/level/transform.cc
--- tests/level/transform.cc (revision 3073)
+++ tests/level/transform.cc (working copy)
@@ -42,9 +42,9 @@
#include <mln/core/image/extension_val.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/core/var.hh>
@@ -101,7 +101,7 @@
{
image2d<unsigned short> ima(size, size);
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
level::transform(ima, mysqrt());
}
@@ -126,7 +126,7 @@
make::box2d(2,2, 5,5));
image2d<short unsigned int> out(8, 8);
- level::fill(out, 0);
+ data::fill(out, 0);
out = level::transform(ima, mysqrt());
}
@@ -135,7 +135,7 @@
flat_image<short, box2d> ima(5, make::box2d(size, size));
image2d<unsigned short> out(size, size);
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
out = level::transform(ima, mysqrt());
box2d::piter p(out.domain());
@@ -152,7 +152,7 @@
I out(size, size);
II ima_if = ima | fun::p2b::chess();
- level::fill_with_value(ima, 0);
+ data::fill_with_value(ima, 0);
debug::iota(ima);
out = level::transform(ima_if, mysqrt());
@@ -171,8 +171,8 @@
II cast(in);
III out(size, size);
- level::fill(in, 51);
- level::fill(out, 42);
+ data::fill(in, 51);
+ data::fill(out, 42);
out = level::transform(cast, mysqrt());
@@ -191,7 +191,7 @@
II sub_ima(ima, make::box2d(4,4, 10,10));
III out(size, size);
- level::fill(ima, 51);
+ data::fill(ima, 51);
out = level::transform(sub_ima, mysqrt());
II::piter p(sub_ima.domain());
@@ -209,7 +209,7 @@
II extend_ima(ima, 5);
III out(size, size);
- level::fill(ima, 51);
+ data::fill(ima, 51);
out = level::transform(extend_ima, mysqrt());
II::piter p(extend_ima.domain());
Index: tests/level/Makefile.am
--- tests/level/Makefile.am (revision 3073)
+++ tests/level/Makefile.am (working copy)
@@ -8,7 +8,6 @@
abs \
all_headers \
apply \
- assign \
compare \
compute \
convert \
@@ -20,8 +19,6 @@
median_dir \
median_fast \
median_hline2d \
- memcpy_ \
- memset_ \
paste \
saturate \
sort_psites \
@@ -34,7 +31,6 @@
abs_SOURCES = abs.cc
all_headers_SOURCES = all_headers.cc
apply_SOURCES = apply.cc
-assign_SOURCES = assign.cc
compare_SOURCES = compare.cc
compute_SOURCES = compute.cc
convert_SOURCES = convert.cc
@@ -46,8 +42,6 @@
median_dir_SOURCES = median_dir.cc
median_fast_SOURCES = median_fast.cc
median_hline2d_SOURCES = median_hline2d.cc
-memcpy__SOURCES = memcpy_.cc
-memset__SOURCES = memset_.cc
paste_SOURCES = paste.cc
saturate_SOURCES = saturate.cc
sort_psites_SOURCES = sort_psites.cc
Index: tests/data/paste.cc
--- tests/data/paste.cc (revision 0)
+++ tests/data/paste.cc (working copy)
@@ -26,9 +26,9 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/level/paste.cc
+/// \file tests/data/paste.cc
///
-/// Tests on mln::level::paste.
+/// Tests on mln::data::paste.
#include <mln/core/image/image1d.hh>
#include <mln/core/image/image2d.hh>
@@ -40,8 +40,8 @@
#include <mln/core/image/sub_image.hh>
#include <mln/core/image/extension_val.hh>
-#include <mln/level/fill.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/fill.hh>
+#include <mln/data/paste.hh>
#include <mln/level/compare.hh>
#include <mln/fun/p2b/chess.hh>
@@ -69,10 +69,10 @@
image2d<int> ima3(b, 2);
- level::paste(ima, ima2); // Not so fast version...
+ data::paste(ima, ima2); // Not so fast version...
mln_assertion(ima == (ima2 | b));
- level::paste(ima, ima3); // Fast version...
+ data::paste(ima, ima3); // Fast version...
mln_assertion(ima == ima3);
}
@@ -88,10 +88,10 @@
image3d<int> ima3(b, 2);
- level::paste(ima, ima2); // Not so fast version...
+ data::paste(ima, ima2); // Not so fast version...
mln_assertion(ima == (ima2 | b));
- level::paste(ima, ima3); // Fast version...
+ data::paste(ima, ima3); // Fast version...
mln_assertion(ima == ima3);
}
@@ -101,7 +101,7 @@
image1d<unsigned short> out(size);
debug::iota(ima);
- level::paste(ima, out);
+ data::paste(ima, out);
mln_assertion(ima == out);
}
@@ -113,8 +113,8 @@
make::box2d(2,2, 5,5));
image2d<short unsigned int> out(8, 8);
- level::fill(out, 0);
- level::paste(ima, out);
+ data::fill(out, 0);
+ data::paste(ima, out);
}
// flat image test
@@ -122,8 +122,8 @@
flat_image<short, box2d> ima(5, make::box2d(size, size));
image2d<unsigned short> out(size, size);
- level::fill_with_value(ima, 51);
- level::paste(ima, out);
+ data::fill_with_value(ima, 51);
+ data::paste(ima, out);
mln_assertion(ima == out);
}
@@ -137,9 +137,9 @@
I out(size, size);
II ima_if = ima | fun::p2b::chess();
- level::fill_with_value(ima, 0);
+ data::fill_with_value(ima, 0);
debug::iota(ima);
- level::paste(ima_if, out);
+ data::paste(ima_if, out);
mln_assertion(ima_if == out);
}
@@ -154,10 +154,10 @@
II cast(in);
III out(size, size);
- level::fill(in, 51);
- level::fill(out, 42);
+ data::fill(in, 51);
+ data::fill(out, 42);
- level::paste(cast, out);
+ data::paste(cast, out);
mln_assertion(cast == out);
}
@@ -172,8 +172,8 @@
II sub_ima(ima, make::box2d(4,4, 10,10));
III out(size, size);
- level::fill(ima, 51);
- level::paste(sub_ima, out);
+ data::fill(ima, 51);
+ data::paste(sub_ima, out);
II::piter p(sub_ima.domain());
for_all(p)
@@ -190,8 +190,8 @@
II extend_ima(ima, 5);
III out(size, size);
- level::fill(ima, 51);
- level::paste(extend_ima, out);
+ data::fill(ima, 51);
+ data::paste(extend_ima, out);
II::piter p(extend_ima.domain());
for_all(p)
Property changes on: tests/data/paste.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/fill_with_value.cc
--- tests/data/fill_with_value.cc (revision 0)
+++ tests/data/fill_with_value.cc (working copy)
@@ -26,12 +26,12 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/level/fill_with_value.cc
+/// \file tests/data/fill_with_value.cc
///
-/// Tests on mln::level::fill_with_value
+/// Tests on mln::data::fill_with_value
-#include <mln/level/fill_with_value.hh>
+#include <mln/data/fill_with_value.hh>
#include <mln/core/image/image1d.hh>
#include <mln/core/image/image2d.hh>
@@ -54,7 +54,7 @@
{
typedef image1d<unsigned char> I;
I ima(size);
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
mln_piter_(I) p(ima.domain());
for_all(p)
mln_assertion(ima(p) == 51);
@@ -64,7 +64,7 @@
{
typedef image2d<unsigned char> I;
I ima(size, size);
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
mln_piter_(I) p(ima.domain());
for_all(p)
mln_assertion(ima(p) == 51);
@@ -73,7 +73,7 @@
{
typedef image3d<value::rgb8> I;
I ima(size, size, size);
- level::fill_with_value(ima, value::rgb8(255, 0, 255));
+ data::fill_with_value(ima, value::rgb8(255, 0, 255));
mln_piter_(I) p(ima.domain());
for_all(p)
mln_assertion(ima(p) == value::rgb8(255, 0, 255));
@@ -82,7 +82,7 @@
{
flat_image<short, box2d> ima(5, make::box2d(2, 3));
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
box2d::piter p(ima.domain());
for_all(p)
mln_assertion(ima(p) == 51);
@@ -94,10 +94,10 @@
typedef image_if<I, fun::p2b::chess> II;
I ima(size, size);
- level::fill_with_value(ima, 51);
+ data::fill_with_value(ima, 51);
II ima_if = ima | fun::p2b::chess();
- level::fill_with_value(ima_if, 42);
+ data::fill_with_value(ima_if, 42);
II::piter p(ima_if.domain());
for_all(p)
@@ -110,7 +110,7 @@
I ima(size, size);
II sub_ima(ima, make::box2d(4,4, 10,10));
- level::fill_with_value(sub_ima, 5);
+ data::fill_with_value(sub_ima, 5);
II::piter p(sub_ima.domain());
for_all(p)
@@ -123,7 +123,7 @@
I ima(size, size);
II extend_ima(ima, 5);
- level::fill_with_value(extend_ima, 51);
+ data::fill_with_value(extend_ima, 51);
II::piter p(extend_ima.domain());
for_all(p)
Property changes on: tests/data/fill_with_value.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/fill_with_image.cc
--- tests/data/fill_with_image.cc (revision 0)
+++ tests/data/fill_with_image.cc (working copy)
@@ -26,12 +26,12 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/// \file tests/level/fill_with_value.cc
+/// \file tests/data/fill_with_value.cc
///
-/// Tests on mln::level::fill_with_value
+/// Tests on mln::data::fill_with_value
-#include <mln/level/fill_with_value.hh>
-#include <mln/level/fill_with_image.hh>
+#include <mln/data/fill_with_value.hh>
+#include <mln/data/fill_with_image.hh>
#include <mln/level/compare.hh>
#include <mln/core/image/image1d.hh>
@@ -67,7 +67,7 @@
image2d<int> ima2(b2, 0);
debug::iota(ima2);
- level::fill_with_image(ima, ima2); // Not so fast version...
+ data::fill_with_image(ima, ima2); // Not so fast version...
mln_assertion(ima == (ima2 | b));
}
@@ -78,7 +78,7 @@
image2d<unsigned int> ima2(size, size);
debug::iota(ima2);
- level::fill_with_image(ima, ima2);
+ data::fill_with_image(ima, ima2);
mln_assertion(ima == ima2);
}
@@ -90,7 +90,7 @@
image2d<int> ima2(b2, 0);
debug::iota(ima2);
- level::fill_with_image(ima, ima2);
+ data::fill_with_image(ima, ima2);
mln_assertion(ima == (ima2 | b));
}
@@ -100,11 +100,11 @@
I ima(size, size);
I ima2(size, size);
- level::fill_with_value(ima, 51);
- level::fill_with_value(ima2, 42);
+ data::fill_with_value(ima, 51);
+ data::fill_with_value(ima2, 42);
II ima_if = ima | fun::p2b::chess();
- level::fill_with_image(ima_if, ima2);
+ data::fill_with_image(ima_if, ima2);
II::piter p(ima_if.domain());
for_all(p)
@@ -124,10 +124,10 @@
image3d<int> ima3(b, 2);
- level::fill_with_image(ima, ima2); // Not so fast version...
+ data::fill_with_image(ima, ima2); // Not so fast version...
mln_assertion(ima == (ima2 | b));
- level::fill_with_image(ima3, ima); // Fast version...
+ data::fill_with_image(ima3, ima); // Fast version...
mln_assertion(ima == ima3);
}
@@ -137,7 +137,7 @@
image1d<unsigned short> out(size);
debug::iota(ima);
- level::fill_with_image(out, ima);
+ data::fill_with_image(out, ima);
mln_assertion(ima == out);
}
@@ -149,8 +149,8 @@
make::box2d(-2,-2, 15,15));
image2d<short unsigned int> out(8, 8);
- level::fill(out, 0);
- level::fill_with_image(out, ima);
+ data::fill(out, 0);
+ data::fill_with_image(out, ima);
}
// flat image test
@@ -158,8 +158,8 @@
flat_image<short, box2d> ima(5, make::box2d(size, size));
image2d<unsigned short> out(size, size);
- level::fill_with_value(ima, 51);
- level::fill_with_image(out, ima);
+ data::fill_with_value(ima, 51);
+ data::fill_with_image(out, ima);
mln_assertion(ima == out);
}
@@ -173,9 +173,9 @@
I out(size, size);
II ima_if = ima | fun::p2b::chess();
- level::fill_with_value(ima, 42);
- level::fill_with_value(out, 0);
- level::fill_with_image(ima_if, ima);
+ data::fill_with_value(ima, 42);
+ data::fill_with_value(out, 0);
+ data::fill_with_image(ima_if, ima);
mln_piter_(II) p(ima_if.domain());
for_all(p)
@@ -191,10 +191,10 @@
II cast(in);
I out(size, size);
- level::fill(in, 51);
- level::fill(out, 42);
+ data::fill(in, 51);
+ data::fill(out, 42);
- level::fill_with_image(out, cast);
+ data::fill_with_image(out, cast);
mln_assertion(cast == out);
}
@@ -209,9 +209,9 @@
II sub_ima(ima, make::box2d(4,4, 10,10));
- level::fill(ima, 51);
- level::fill(out, 0);
- level::fill_with_image(sub_ima, ima);
+ data::fill(ima, 51);
+ data::fill(out, 0);
+ data::fill_with_image(sub_ima, ima);
II::piter p(sub_ima.domain());
for_all(p)
@@ -228,8 +228,8 @@
II extend_ima(ima, 5);
III out(size, size);
- level::fill(ima, 51);
- level::fill_with_image(out, extend_ima);
+ data::fill(ima, 51);
+ data::fill_with_image(out, extend_ima);
mln_assertion(out == extend_ima);
}
Property changes on: tests/data/fill_with_image.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/Makefile.am
--- tests/data/Makefile.am (revision 0)
+++ tests/data/Makefile.am (revision 0)
@@ -0,0 +1,23 @@
+## Process this file through Automake to create Makefile.in -*- Makefile -*-
+
+include $(top_srcdir)/milena/tests/tests.mk
+
+check_PROGRAMS = \
+ fill \
+ fill_with_value \
+ fill_with_image \
+ memcpy_ \
+ memset_ \
+ paste
+
+fill_SOURCES = fill.cc
+fill_with_value_SOURCES = fill_with_value.cc
+fill_with_image_SOURCES = fill_with_image.cc
+memcpy__SOURCES = memcpy_.cc
+memset__SOURCES = memset_.cc
+paste_SOURCES = paste.cc
+
+# Lengthy tests.
+fill_full_SOURCES = fill_full.cc
+
+TESTS = $(check_PROGRAMS)
Index: tests/data/fill.cc
--- tests/data/fill.cc (revision 0)
+++ tests/data/fill.cc (working copy)
@@ -25,13 +25,13 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/*! \file tests/level/fill.cc
+/*! \file tests/data/fill.cc
*
- * \brief Tests on mln::level::fill
+ * \brief Tests on mln::data::fill
*/
#include <mln/core/image/image2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
int main()
{
@@ -45,7 +45,7 @@
{
const unsigned size = 3;
image2d<unsigned> ima(size, size);
- level::fill(ima, u);
+ data::fill(ima, u);
box_fwd_piter_<point2d> p(ima.domain());
for_all (p)
mln_assertion (ima(p) == u);
Property changes on: tests/data/fill.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/fill_full.cc
--- tests/data/fill_full.cc (revision 0)
+++ tests/data/fill_full.cc (working copy)
@@ -25,9 +25,9 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/*! \file tests/level/fill_full.cc
+/*! \file tests/data/fill_full.cc
*
- * \brief Tests on mln::level::fill
+ * \brief Tests on mln::data::fill
*/
@@ -53,7 +53,7 @@
#include <mln/debug/iota.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/fun/p2v/iota.hh>
@@ -111,7 +111,7 @@
{
I& ima = exact(ima_);
- level::fill(ima, v);
+ data::fill(ima, v);
{
mln_piter(I) p (ima.domain ());
@@ -359,7 +359,7 @@
{
using namespace mln;
- std::cerr << "Tests level::fill:" << std::endl;
+ std::cerr << "Tests data::fill:" << std::endl;
std::cerr << "on int:" << std::endl;
chk<int>(1000);
std::cerr << "on unsigned:" << std::endl;
Property changes on: tests/data/fill_full.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/memcpy_.cc
--- tests/data/memcpy_.cc (revision 0)
+++ tests/data/memcpy_.cc (working copy)
@@ -1,4 +1,5 @@
// Copyright (C) 2007, 2008 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
@@ -25,17 +26,16 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/*! \file tests/level/memcpy_.cc
- *
- * \brief Tests on mln::level::memcpy_.
- *
- * \todo Make this test not dummy!
- */
+/// \file tests/data/memcpy_.cc
+///
+/// Tests on mln::data::memcpy_.
+///
+/// \todo Make this test not dummy!
#include <mln/core/image/image2d.hh>
#include <mln/debug/iota.hh>
-#include <mln/level/memcpy_.hh>
+#include <mln/data/memcpy_.hh>
int main()
@@ -51,7 +51,7 @@
dest = point2d(1, 2);
pixel<I> pix = make::pixel(ima, dest);
- level::memcpy_(pix,
+ data::memcpy_(pix,
make::pixel(ima, src),
2 + 2 * ima.border());
Property changes on: tests/data/memcpy_.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/data/memset_.cc
--- tests/data/memset_.cc (revision 0)
+++ tests/data/memset_.cc (working copy)
@@ -1,4 +1,5 @@
-// Copyright (C) 2007 EPITA Research and Development Laboratory
+// Copyright (C) 2007, 2008 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
@@ -25,15 +26,14 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
-/*! \file tests/level/memset_.cc
- *
- * \brief Tests on mln::level::memset_.
- */
+/// \file tests/data/memset_.cc
+///
+/// Tests on mln::data::memset_.
#include <mln/core/image/image2d.hh>
#include <mln/geom/ncols.hh>
-#include <mln/level/fill.hh>
-#include <mln/level/memset_.hh>
+#include <mln/data/fill.hh>
+#include <mln/data/memset_.hh>
#include <mln/opt/at.hh>
@@ -42,13 +42,13 @@
using namespace mln;
image2d<int> ima(3, 3);
- level::fill(ima, 0);
+ data::fill(ima, 0);
int X = 9;
- level::memset_(ima, point2d(0,0),
+ data::memset_(ima, point2d(0,0),
X,
geom::ncols(ima) + 2 * ima.border() + 1);
// ^
// |
- mln_assertion(opt::at(ima, 1,0) == X); // <----------------+
+ mln_assertion(opt::at(ima, 1,0) == X); // <---------+
mln_assertion(opt::at(ima, 1,1) != X);
}
Property changes on: tests/data/memset_.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/linear/gaussian.cc
--- tests/linear/gaussian.cc (revision 3073)
+++ tests/linear/gaussian.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/io/pgm/save.hh>
#include <mln/level/transform.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/math/round.hh>
#include <mln/linear/gaussian.hh>
@@ -61,7 +61,7 @@
image2d<float> lenaf(lena.domain());
- level::paste(lena, lenaf);
+ data::paste(lena, lenaf);
image2d<float> outf = linear::gaussian(lenaf, 5.1f);
}
Index: tests/transform/distance_geodesic.cc
--- tests/transform/distance_geodesic.cc (revision 3073)
+++ tests/transform/distance_geodesic.cc (working copy)
@@ -32,7 +32,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/alias/neighb2d.hh>
#include <mln/value/int_u8.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/opt/at.hh>
@@ -45,7 +45,7 @@
using value::int_u8;
image2d<bool> input(9, 9);
- level::fill(input, false);
+ data::fill(input, false);
opt::at(input, 4, 4) = true;
image2d<int_u8> output = transform::distance_geodesic(input, c4(), int_u8(4));
Index: tests/transform/distance_front.cc
--- tests/transform/distance_front.cc (revision 3073)
+++ tests/transform/distance_front.cc (working copy)
@@ -33,7 +33,7 @@
#include <mln/core/alias/neighb2d.hh>
#include <mln/make/w_window2d_int.hh>
#include <mln/value/int_u8.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/opt/at.hh>
@@ -46,7 +46,7 @@
using value::int_u8;
image2d<bool> input(9, 9);
- level::fill(input, false);
+ data::fill(input, false);
opt::at(input, 4, 4) = true;
int ws[] = { 0, 9, 0, 9, 0,
Index: tests/border/fill_full.cc
--- tests/border/fill_full.cc (revision 3073)
+++ tests/border/fill_full.cc (working copy)
@@ -33,7 +33,7 @@
/// \todo Rewrite this non-sense test file!!!
#include <mln/border/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/core/image/image1d.hh>
#include <mln/core/image/image2d.hh>
#include <mln/core/image/image3d.hh>
@@ -55,7 +55,7 @@
check1d(unsigned row, unsigned border, T& value, T& v)
{
image1d<T> ima(row, border);
- level::fill (ima, v);
+ data::fill (ima, v);
border::fill (ima, value);
unsigned i = 0;
@@ -74,7 +74,7 @@
check2d(unsigned row, unsigned col, unsigned border, T& value, T& v)
{
image2d<T> ima(row, col, border);
- level::fill (ima, v);
+ data::fill (ima, v);
border::fill (ima, value);
unsigned c = col + 2 * border;
@@ -104,7 +104,7 @@
check3d(unsigned sli, unsigned row, unsigned col, unsigned border, T& value, T&
v)
{
image3d<T> ima(sli, row, col, border);
- level::fill (ima, v);
+ data::fill (ima, v);
border::fill (ima, value);
unsigned c = col + 2 * border;
Index: tests/border/resize_image3d_1.cc
--- tests/border/resize_image3d_1.cc (revision 3073)
+++ tests/border/resize_image3d_1.cc (working copy)
@@ -37,7 +37,7 @@
#include <mln/border/resize.hh>
#include <mln/debug/println_with_border.hh>
#include <mln/border/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
using namespace mln;
@@ -52,7 +52,7 @@
<< std::endl
<< std::endl;
image3d<value::int_u8> ima(3, 1, 2, border);
- level::fill (ima, 2);
+ data::fill (ima, 2);
border::fill(ima, 8);
std::cout << "before resize ("
Index: tests/border/resize_image3d_2.cc
--- tests/border/resize_image3d_2.cc (revision 3073)
+++ tests/border/resize_image3d_2.cc (working copy)
@@ -37,7 +37,7 @@
#include <mln/border/resize.hh>
#include <mln/debug/println_with_border.hh>
#include <mln/border/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
using namespace mln;
@@ -52,7 +52,7 @@
<< std::endl
<< std::endl;
image3d<int> ima(2, 3, 2, border);
- level::fill (ima, 2);
+ data::fill (ima, 2);
border::fill(ima, 8);
std::cout << "before resize ("
Index: tests/border/resize_image3d_3.cc
--- tests/border/resize_image3d_3.cc (revision 3073)
+++ tests/border/resize_image3d_3.cc (working copy)
@@ -37,7 +37,7 @@
#include <mln/border/resize.hh>
#include <mln/debug/println_with_border.hh>
#include <mln/border/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
using namespace mln;
@@ -47,7 +47,7 @@
unsigned new_border = 1;
image3d<value::int_u8> ima(1, 3, 2, border);
- level::fill (ima, 2);
+ data::fill (ima, 2);
border::fill(ima, 8);
mln_assertion(ima.has(point3d(-3, -3, -3)) == true);
Index: tests/test/positive.cc
--- tests/test/positive.cc (revision 3073)
+++ tests/test/positive.cc (working copy)
@@ -31,7 +31,7 @@
*/
#include <mln/core/image/image2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/test/positive.hh>
@@ -55,7 +55,7 @@
typedef image2d<int> I;
I ima(1,1);
- level::fill(ima, 0);
+ data::fill(ima, 0);
test_v2b(fun::v2v::id<mln_value_(I)>() >= pw::cst(0));
Index: tests/convert/to_p_set.cc
--- tests/convert/to_p_set.cc (revision 3073)
+++ tests/convert/to_p_set.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/convert/to_p_set.hh>
#include <mln/util/ord.hh>
@@ -74,8 +74,8 @@
// Image :
image2d<bool> ima(make::box2d(-6, -6, 6, 6));
- level::fill(ima, false);
- level::fill((ima | ref).rw(), true);
+ data::fill(ima, false);
+ data::fill((ima | ref).rw(), true);
p_set<point2d> test_ima = convert::to_p_set(ima);
test(ref, test_ima);
Index: tests/convert/to_window.cc
--- tests/convert/to_window.cc (revision 3073)
+++ tests/convert/to_window.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/convert/to_window.hh>
#include <mln/convert/to_p_set.hh>
@@ -76,8 +76,8 @@
// Image :
image2d<bool> ima(make::box2d(-6, -6, 6, 6));
- level::fill(ima, false);
- level::fill((ima | convert::to_p_set(ref)).rw(), true);
+ data::fill(ima, false);
+ data::fill((ima | convert::to_p_set(ref)).rw(), true);
window2d test_ima = convert::to_window(ima);
test(ref, test_ima);
Index: tests/pw/value.cc
--- tests/pw/value.cc (revision 3073)
+++ tests/pw/value.cc (working copy)
@@ -31,7 +31,7 @@
*/
#include <mln/core/image/image2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/pw/all.hh>
@@ -40,7 +40,7 @@
using namespace mln;
image2d<int> ima(3, 3);
- level::fill(ima, 0);
+ data::fill(ima, 0);
point2d p(1, 1);
ima(p) = 51;
Index: tests/binarization/threshold.cc
--- tests/binarization/threshold.cc (revision 3073)
+++ tests/binarization/threshold.cc (working copy)
@@ -56,7 +56,7 @@
image2d<int> lena(l.domain(), 0);
- level::paste(l, lena);
+ data::paste(l, lena);
io::pbm::save(binarization::threshold(lena, 50), "out2.pgm");
}
Index: tests/morpho/artificial_line_graph_image_wst.cc
--- tests/morpho/artificial_line_graph_image_wst.cc (revision 3073)
+++ tests/morpho/artificial_line_graph_image_wst.cc (working copy)
@@ -146,7 +146,7 @@
point2d output_pmax(input.domain().pmax()[0] * 2,
input.domain().pmax()[1] * 2);
output_t output(box2d(output_pmin, output_pmax));
- level::fill(output, literal::black);
+ data::fill(output, literal::black);
mln_fwd_piter_(image2d<input_val_t>) p(input.domain());
for_all(p)
{
Index: tests/morpho/dilation.cc
--- tests/morpho/dilation.cc (revision 3073)
+++ tests/morpho/dilation.cc (working copy)
@@ -42,7 +42,7 @@
#include <mln/io/pgm/save.hh>
#include <mln/value/int_u8.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/morpho/dilation.hh>
#include <mln/pw/value.hh>
@@ -86,7 +86,7 @@
{
image2d<bool> bin(lena.domain());
- level::fill(bin, pw::value(lena) > pw::cst(127u));
+ data::fill(bin, pw::value(lena) > pw::cst(127u));
image2d<bool> out = morpho::dilation(bin, rec);
image2d<int_u8> test(lena.domain());
Index: tests/morpho/tree/data.cc
--- tests/morpho/tree/data.cc (revision 3073)
+++ tests/morpho/tree/data.cc (working copy)
@@ -72,7 +72,7 @@
{
image2d<unsigned> area(ima.domain());
- level::fill(area, 1);
+ data::fill(area, 1);
tree_t::piter p(t.domain());
for_all(p)
if (! t.is_root(p))
Index: tests/morpho/skeleton_constrained.cc
--- tests/morpho/skeleton_constrained.cc (revision 3073)
+++ tests/morpho/skeleton_constrained.cc (working copy)
@@ -41,7 +41,7 @@
#include <mln/io/pbm/load.hh>
#include <mln/io/pbm/save.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/debug/println_with_border.hh>
@@ -98,7 +98,7 @@
image2d<bool> K(pic.domain());
- level::fill(K, false);
+ data::fill(K, false);
image2d<int_u8> dmap = transform::distance_geodesic(logical::not_(pic),
Index: tests/morpho/elementary/gradient.cc
--- tests/morpho/elementary/gradient.cc (revision 3073)
+++ tests/morpho/elementary/gradient.cc (working copy)
@@ -62,7 +62,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
mln_VAR(gra,
Index: tests/morpho/elementary/closing.cc
--- tests/morpho/elementary/closing.cc (revision 3073)
+++ tests/morpho/elementary/closing.cc (working copy)
@@ -57,7 +57,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
image2d<bool> clo = morpho::elementary::closing(msk, c4());
Index: tests/morpho/elementary/erosion.cc
--- tests/morpho/elementary/erosion.cc (revision 3073)
+++ tests/morpho/elementary/erosion.cc (working copy)
@@ -57,7 +57,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
image2d<bool> ero = morpho::elementary::erosion(msk, c4());
Index: tests/morpho/elementary/top_hat.cc
--- tests/morpho/elementary/top_hat.cc (revision 3073)
+++ tests/morpho/elementary/top_hat.cc (working copy)
@@ -56,7 +56,7 @@
debug::println( morpho::elementary::top_hat_self_complementary(ima, c4()) );
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
debug::println( morpho::elementary::top_hat_white(msk, c4()) );
Index: tests/morpho/elementary/gradient_external.cc
--- tests/morpho/elementary/gradient_external.cc (revision 3073)
+++ tests/morpho/elementary/gradient_external.cc (working copy)
@@ -62,7 +62,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
mln_VAR(gra,
Index: tests/morpho/elementary/opening.cc
--- tests/morpho/elementary/opening.cc (revision 3073)
+++ tests/morpho/elementary/opening.cc (working copy)
@@ -57,7 +57,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
image2d<bool> ope = morpho::elementary::opening(msk, c4());
Index: tests/morpho/elementary/dilation.cc
--- tests/morpho/elementary/dilation.cc (revision 3073)
+++ tests/morpho/elementary/dilation.cc (working copy)
@@ -57,7 +57,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
image2d<bool> dil = morpho::elementary::dilation(msk, c4());
Index: tests/morpho/elementary/gradient_internal.cc
--- tests/morpho/elementary/gradient_internal.cc (revision 3073)
+++ tests/morpho/elementary/gradient_internal.cc (working copy)
@@ -62,7 +62,7 @@
}
image2d<bool> msk(3, 3, 0);
- level::fill(msk, pw::value(ima) >= pw::cst(5u));
+ data::fill(msk, pw::value(ima) >= pw::cst(5u));
debug::println(msk);
{
mln_VAR(gra,
Index: tests/morpho/lena_line_graph_image_wst1.cc
--- tests/morpho/lena_line_graph_image_wst1.cc (revision 3073)
+++ tests/morpho/lena_line_graph_image_wst1.cc (working copy)
@@ -183,7 +183,7 @@
point2d output_pmax(input.domain().pmax()[0] * 2,
input.domain().pmax()[1] * 2);
output_t output(box2d(output_pmin, output_pmax));
- level::fill(output, literal::black);
+ data::fill(output, literal::black);
// Reuse the piter on INPUT.
for_all(p)
{
Index: tests/morpho/rank_filter.cc
--- tests/morpho/rank_filter.cc (revision 3073)
+++ tests/morpho/rank_filter.cc (working copy)
@@ -37,7 +37,7 @@
#include <mln/io/pgm/save.hh>
#include <mln/value/int_u8.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/compare.hh>
#include <mln/level/median.hh>
#include <mln/morpho/rank_filter.hh>
Index: tests/morpho/complex_image_wst.cc
--- tests/morpho/complex_image_wst.cc (revision 3073)
+++ tests/morpho/complex_image_wst.cc (working copy)
@@ -47,7 +47,7 @@
#include <mln/core/image/complex_neighborhoods.hh>
#include <mln/core/image/complex_neighborhood_piter.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/norm/l2.hh>
@@ -149,7 +149,7 @@
// Create and initialize an image based on PC.
dist_ima_t dist_ima(pc);
- level::fill(dist_ima, 0u);
+ data::fill(dist_ima, 0u);
/*--------------------------------.
| Complex-based image iterators. |
Index: tests/morpho/hit_or_miss.cc
--- tests/morpho/hit_or_miss.cc (revision 3073)
+++ tests/morpho/hit_or_miss.cc (working copy)
@@ -41,7 +41,7 @@
#include <mln/io/pbm/load.hh>
#include <mln/io/pbm/save.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/morpho/hit_or_miss.hh>
Index: tests/morpho/combined.cc
--- tests/morpho/combined.cc (revision 3073)
+++ tests/morpho/combined.cc (working copy)
@@ -31,7 +31,7 @@
#include <cmath>
#include <mln/core/image/image2d.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/core/alias/window2d.hh>
@@ -76,7 +76,7 @@
// {
// image2d<int> ima(b);
-// level::fill(ima, 51);
+// data::fill(ima, 51);
// debug::println(ima);
// std::cout << win << std::endl;
@@ -90,7 +90,7 @@
// {
// image2d<int> ima(b);
-// level::fill(ima, cos_sin);
+// data::fill(ima, cos_sin);
// debug::println(ima);
// std::cout << std::endl;
Index: tests/morpho/lena_line_graph_image_wst2.cc
--- tests/morpho/lena_line_graph_image_wst2.cc (revision 3073)
+++ tests/morpho/lena_line_graph_image_wst2.cc (working copy)
@@ -140,7 +140,7 @@
point2d output_pmax(input.domain().pmax()[0] * 2,
input.domain().pmax()[1] * 2);
output_t output(box2d(output_pmin, output_pmax));
- level::fill(output, literal::black);
+ data::fill(output, literal::black);
mln_fwd_piter_(image2d<input_val_t>) p(input.domain());
for_all(p)
{
Index: tests/Makefile.am
--- tests/Makefile.am (revision 3073)
+++ tests/Makefile.am (working copy)
@@ -11,6 +11,7 @@
canvas \
convert \
core \
+ data \
debug \
display \
draw \
Index: tests/canvas/chamfer.cc
--- tests/canvas/chamfer.cc (revision 3073)
+++ tests/canvas/chamfer.cc (working copy)
@@ -34,7 +34,7 @@
#include <mln/core/image/sub_image.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/core/alias/w_window2d_int.hh>
#include <mln/core/alias/w_window2d_float.hh>
@@ -54,7 +54,7 @@
image2d<bool> ima(9, 9);
{
- level::fill(ima, false);
+ data::fill(ima, false);
opt::at(ima, 4,4) = true;
const w_window2d_int& w_win = make::mk_chamfer_3x3_int<2, 0> ();
image2d<unsigned> out = geom::chamfer(ima, w_win, max);
@@ -76,7 +76,7 @@
}
{
- level::fill(ima, false);
+ data::fill(ima, false);
opt::at(ima, 4,4) = true;
const w_window2d_int& w_win = make::mk_chamfer_3x3_int<2, 3> ();
image2d<unsigned> out = geom::chamfer(ima, w_win, max);
@@ -99,7 +99,7 @@
}
{
- level::fill(ima, false);
+ data::fill(ima, false);
opt::at(ima, 4,4) = true;
const w_window2d_int& w_win = make::mk_chamfer_5x5_int<4, 6, 9> ();
image2d<unsigned> out = geom::chamfer(ima, w_win, max);
Index: tests/canvas/browsing/hyper_directional.cc
--- tests/canvas/browsing/hyper_directional.cc (revision 3073)
+++ tests/canvas/browsing/hyper_directional.cc (working copy)
@@ -34,7 +34,7 @@
#include <mln/canvas/browsing/hyper_directional.hh>
#include <mln/fun/p2v/iota.hh>
#include <mln/debug/println.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
template <typename I_, typename F>
@@ -95,24 +95,24 @@
image2d<unsigned> ima2(3, 3);
image3d<unsigned> ima3(3, 3, 3);
- level::fill(ima2, 0);
+ data::fill(ima2, 0);
my_test(ima2, fun::p2v::iota(), canvas::browsing::hyper_directional, 0);
debug::println(ima2);
- level::fill(ima2, 0);
+ data::fill(ima2, 0);
my_test(ima2, fun::p2v::iota(), canvas::browsing::hyper_directional, 1);
debug::println(ima2);
- level::fill(ima3, 0);
+ data::fill(ima3, 0);
my_test(ima3, fun::p2v::iota(), canvas::browsing::hyper_directional, 0);
debug::println(ima3);
- level::fill(ima3, 0);
+ data::fill(ima3, 0);
my_test(ima3, fun::p2v::iota(), canvas::browsing::hyper_directional, 1);
debug::println(ima3);
- level::fill(ima3, 0);
+ data::fill(ima3, 0);
my_test(ima3, fun::p2v::iota(), canvas::browsing::hyper_directional, 2);
debug::println(ima3);
}
Index: tests/extension/fill.cc
--- tests/extension/fill.cc (revision 3073)
+++ tests/extension/fill.cc (working copy)
@@ -34,7 +34,7 @@
#include <mln/core/image/extended.hh>
#include <mln/extension/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
@@ -46,7 +46,7 @@
image2d<unsigned> ima(3, 3, border);
- level::fill(ima, 0);
+ data::fill(ima, 0);
extension::fill(ima, 9);
box2d b = ima.bbox();
Index: tests/util/tree_to_image.cc
--- tests/util/tree_to_image.cc (revision 3073)
+++ tests/util/tree_to_image.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/core/site_set/p_set.hh>
#include <mln/value/int_u8.hh>
#include <mln/level/stretch.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
#include <vector>
@@ -62,7 +62,7 @@
typedef fllt_node<point2d , int_u8> I;
image2d<int_u8> output (16, 16);
- level::fill(output, 0);
+ data::fill(output, 0);
I s1;
I s2;
Index: tests/util/tree_fast_to_image.cc
--- tests/util/tree_fast_to_image.cc (revision 3073)
+++ tests/util/tree_fast_to_image.cc (working copy)
@@ -36,7 +36,7 @@
#include <mln/core/site_set/p_set.hh>
#include <mln/value/int_u8.hh>
#include <mln/level/stretch.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
#include <mln/level/compare.hh>
#include <mln/io/pgm/save.hh>
#include <vector>
@@ -105,7 +105,7 @@
tree.add_child(tree.root_, s6);
tree.add_parent(s7);
image2d<int_u8> output (16, 16);
- level::fill(output, 0);
+ data::fill(output, 0);
util::tree_fast_to_image(tree, output);
int_u8 vs[16][16] = {
Index: tests/labeling/level.cc
--- tests/labeling/level.cc (revision 3073)
+++ tests/labeling/level.cc (working copy)
@@ -38,7 +38,7 @@
#include <mln/accu/count.hh>
#include <mln/accu/compute.hh>
#include <mln/labeling/level.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
#include <mln/pw/all.hh>
#include <mln/core/image/image_if.hh>
Index: tests/unit_test/mln_data_paste.cc
--- tests/unit_test/mln_data_paste.cc (revision 3073)
+++ tests/unit_test/mln_data_paste.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/paste.hh.
+// Unit test for mln/data/paste.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/paste.hh>
-#include <mln/level/paste.hh>
+#include <mln/data/paste.hh>
+#include <mln/data/paste.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_paste.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/unit_test/mln_data_memset_.cc
--- tests/unit_test/mln_data_memset_.cc (revision 3073)
+++ tests/unit_test/mln_data_memset_.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/memset_.hh.
+// Unit test for mln/data/memset_.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/memset_.hh>
-#include <mln/level/memset_.hh>
+#include <mln/data/memset_.hh>
+#include <mln/data/memset_.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_memset_.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/unit_test/mln_data_fill_with_image.cc
--- tests/unit_test/mln_data_fill_with_image.cc (revision 3073)
+++ tests/unit_test/mln_data_fill_with_image.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/fill_with_image.hh.
+// Unit test for mln/data/fill_with_image.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/fill_with_image.hh>
-#include <mln/level/fill_with_image.hh>
+#include <mln/data/fill_with_image.hh>
+#include <mln/data/fill_with_image.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_fill_with_image.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/unit_test/mln_data_fill_with_value.cc
--- tests/unit_test/mln_data_fill_with_value.cc (revision 3073)
+++ tests/unit_test/mln_data_fill_with_value.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/fill_with_value.hh.
+// Unit test for mln/data/fill_with_value.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/fill_with_value.hh>
-#include <mln/level/fill_with_value.hh>
+#include <mln/data/fill_with_value.hh>
+#include <mln/data/fill_with_value.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_fill_with_value.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/unit_test/mln_data_memcpy_.cc
--- tests/unit_test/mln_data_memcpy_.cc (revision 3073)
+++ tests/unit_test/mln_data_memcpy_.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/memcpy_.hh.
+// Unit test for mln/data/memcpy_.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/memcpy_.hh>
-#include <mln/level/memcpy_.hh>
+#include <mln/data/memcpy_.hh>
+#include <mln/data/memcpy_.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_memcpy_.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: tests/unit_test/mln_data_fill.cc
--- tests/unit_test/mln_data_fill.cc (revision 3073)
+++ tests/unit_test/mln_data_fill.cc (working copy)
@@ -1,9 +1,9 @@
-// Unit test for mln/level/fill.hh.
+// Unit test for mln/data/fill.hh.
// Generated by ./build_unit_test.sh, do not modify.
// Include the file twice, so we detect missing inclusion guards.
-#include <mln/level/fill.hh>
-#include <mln/level/fill.hh>
+#include <mln/data/fill.hh>
+#include <mln/data/fill.hh>
int main()
{
Property changes on: tests/unit_test/mln_data_fill.cc
___________________________________________________________________
Added: svn:mergeinfo