URL:
https://svn.lrde.epita.fr/svn/oln/trunk/milena
ChangeLog:
2007-12-20 Simon Nivault <simon.nivault(a)lrde.epita.fr>
Some fixes for unit/sanity tests.
* mln/accu/median_alt.hh,
* mln/accu/v.hh,
* mln/arith/min.spe.hh,
* mln/arith/revert.spe.hh,
* mln/arith/times.spe.hh,
* mln/convert/to_rgb.hh,
* mln/convert/to_tiles.hh,
* mln/convert/to_w_window.hh,
* mln/core/dpoints_piter.hh,
* mln/core/hexa_piter.hh,
* mln/core/interpolated.hh,
* mln/core/line_piter.hh,
* mln/core/p_runs.hh,
* mln/core/runs_psite.hh,
* mln/core/t_image.hh,
* mln/core/tr_image.hh,
* mln/core/tr_mesh.hh,
* mln/core/translate_image.hh,
* mln/debug/iota.spe.hh,
* mln/debug/println.spe.hh,
* mln/debug/println_with_border.spe.hh,
* mln/fun/v2v/saturate.hh,
* mln/geom/seeds2tiling.hh,
* mln/geom/seeds2tiling_roundness.hh,
* mln/histo/compute.spe.hh,
* mln/io/abort.hh,
* mln/io/pfm/load.hh,
* mln/io/pfm/save.hh,
* mln/io/pnm/max_component.hh,
* mln/labeling/level.spe.hh,
* mln/level/apply.spe.hh,
* mln/level/approx/median.hh,
* mln/level/assign.spe.hh,
* mln/level/fast_median.hh,
* mln/level/fill.spe.hh,
* mln/level/paste.spe.hh,
* mln/level/take.spe.hh,
* mln/level/transform.spe.hh,
* mln/level/was.median.hh,
* mln/linear/gaussian.hh,
* mln/logical/and.spe.hh,
* mln/logical/and_not.spe.hh,
* mln/logical/not.spe.hh,
* mln/logical/or.spe.hh,
* mln/morpho/dilation_fast.hh,
* mln/morpho/erosion.spe.hh,
* mln/morpho/erosion_fast.hh,
* mln/morpho/thick_miss.hh,
* mln/trait/image/props.hh,
* mln/util/tree_fast_to_image.hh,
* mln/util/tree_to_image.hh,
* tests/level/approx/median.cc: Fix
* tests/h_vec.cc: Rename as...
* tests/core/h_vec.cc: ...this.
---
mln/accu/median_alt.hh | 2
mln/accu/v.hh | 1
mln/arith/min.spe.hh | 4 +
mln/arith/revert.spe.hh | 4 +
mln/arith/times.spe.hh | 4 +
mln/convert/to_rgb.hh | 1
mln/convert/to_tiles.hh | 2
mln/convert/to_w_window.hh | 2
mln/core/dpoints_piter.hh | 1
mln/core/hexa_piter.hh | 1
mln/core/interpolated.hh | 2
mln/core/line_piter.hh | 2
mln/core/p_runs.hh | 1
mln/core/runs_psite.hh | 2
mln/core/t_image.hh | 2
mln/core/tr_image.hh | 1
mln/core/tr_mesh.hh | 2
mln/core/translate_image.hh | 1
mln/debug/iota.spe.hh | 4 +
mln/debug/println.spe.hh | 4 +
mln/debug/println_with_border.spe.hh | 4 +
mln/fun/v2v/saturate.hh | 1
mln/geom/seeds2tiling.hh | 1
mln/geom/seeds2tiling_roundness.hh | 1
mln/histo/compute.spe.hh | 4 +
mln/io/abort.hh | 2
mln/io/pfm/load.hh | 3 +
mln/io/pfm/save.hh | 1
mln/io/pnm/max_component.hh | 3 +
mln/labeling/level.spe.hh | 4 +
mln/level/apply.spe.hh | 4 +
mln/level/approx/median.hh | 8 +--
mln/level/assign.spe.hh | 4 +
mln/level/fast_median.hh | 4 +
mln/level/fill.spe.hh | 4 +
mln/level/paste.spe.hh | 4 +
mln/level/take.spe.hh | 4 +
mln/level/transform.spe.hh | 4 +
mln/level/was.median.hh | 2
mln/linear/gaussian.hh | 1
mln/logical/and.spe.hh | 5 +-
mln/logical/and_not.spe.hh | 4 +
mln/logical/not.spe.hh | 4 +
mln/logical/or.spe.hh | 4 +
mln/morpho/dilation_fast.hh | 1
mln/morpho/erosion.spe.hh | 4 +
mln/morpho/erosion_fast.hh | 1
mln/morpho/thick_miss.hh | 4 -
mln/trait/image/props.hh | 10 ++++
mln/util/tree_fast_to_image.hh | 1
mln/util/tree_to_image.hh | 1
tests/core/h_vec.cc | 73 +++++++++++++++++++++++++++++++++++
tests/level/approx/median.cc | 7 +--
53 files changed, 207 insertions(+), 18 deletions(-)
Index: trunk/milena/tests/h_vec.cc (deleted)
===================================================================
Index: trunk/milena/tests/level/approx/median.cc
===================================================================
--- trunk/milena/tests/level/approx/median.cc (revision 1621)
+++ trunk/milena/tests/level/approx/median.cc (revision 1622)
@@ -52,9 +52,10 @@
win::octagon2d oct(13);
border::thickness = 52;
- image2d<int_u8>
- lena = io::pgm::load("../../../img/lena.pgm"),
- out(lena.domain());
+ image2d<int_u8> lena;
+
+ io::pgm::load(lena, "../../../img/lena.pgm");
+ image2d<int_u8> out(lena.domain());
// level::approx::median(lena, rect, out);
level::approx::median(lena, oct, out);
Index: trunk/milena/tests/core/h_vec.cc
===================================================================
--- trunk/milena/tests/core/h_vec.cc (revision 0)
+++ trunk/milena/tests/core/h_vec.cc (revision 1622)
@@ -0,0 +1,73 @@
+// Copyright (C) 2007 EPITA Research and Development Laboratory
+//
+// 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.
+
+/*! \file tests/h_vec.cc
+ *
+ * \brief Tests on mln::h_vec.
+ */
+
+#include <mln/core/h_vec.hh>
+#include <mln/core/point3d.hh>
+
+using namespace mln;
+
+
+void run_in_3d(const metal::vec<3, int>&)
+{
+}
+
+void run_in_3d_h(const h_vec<3, int>&)
+{
+}
+
+
+void foo(const mln::h_vec<3,float>&)
+{
+}
+
+
+int main()
+{
+
+ metal::vec<3, int> x;
+ h_vec<3, int> w = x.to_h_vec();
+
+ typedef h_vec<3, int> p3d;
+ p3d p;
+ run_in_3d(p.to_vec());
+
+ point3d k;
+ run_in_3d(k);
+ run_in_3d_h(k.to_h_vec());
+
+ {
+ metal::vec<3,float> v;
+ h_vec<3,float> w(v.to_h_vec());
+ w = v.to_h_vec();
+ foo(v.to_h_vec());
+ }
+}
Index: trunk/milena/mln/trait/image/props.hh
===================================================================
--- trunk/milena/mln/trait/image/props.hh (revision 1621)
+++ trunk/milena/mln/trait/image/props.hh (revision 1622)
@@ -34,6 +34,7 @@
*/
# include <string>
+# include <mln/trait/undef.hh>
# include <mln/trait/value/kind.hh>
@@ -206,9 +207,18 @@
/// \{
// Fwd decl. (used by trait::image::space_from_point).
+ namespace grid
+ {
+ struct tick;
+ struct square;
+ struct hexa;
+ struct cube;
+ }
+
template <typename M, typename C> struct point_;
typedef point_<grid::tick, int> point1d;
typedef point_<grid::square, int> point2d;
+ typedef point_<grid::hexa, int> point2d_h;
typedef point_<grid::cube, int> point3d;
namespace trait
Index: trunk/milena/mln/debug/iota.spe.hh
===================================================================
--- trunk/milena/mln/debug/iota.spe.hh (revision 1621)
+++ trunk/milena/mln/debug/iota.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::debug::iota.
*/
+# ifndef MLN_DEBUG_IOTA_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_DEBUG_IOTA_HH
+
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/debug/println_with_border.spe.hh
===================================================================
--- trunk/milena/mln/debug/println_with_border.spe.hh (revision 1621)
+++ trunk/milena/mln/debug/println_with_border.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::debug::println_with_border.
*/
+# ifndef MLN_DEBUG_PRINTLN_WITH_BORDER_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_DEBUG_PRINTLN_WITH_BORDER_HH
+
# include <mln/core/concept/image.hh>
# include <mln/core/concept/window.hh>
# include <mln/debug/format.hh>
Index: trunk/milena/mln/debug/println.spe.hh
===================================================================
--- trunk/milena/mln/debug/println.spe.hh (revision 1621)
+++ trunk/milena/mln/debug/println.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::debug::println.
*/
+# ifndef MLN_DEBUG_PRINTLN_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_DEBUG_PRINTLN_HH
+
# include <mln/core/concept/image.hh>
# include <mln/core/concept/window.hh>
# include <mln/debug/format.hh>
Index: trunk/milena/mln/histo/compute.spe.hh
===================================================================
--- trunk/milena/mln/histo/compute.spe.hh (revision 1621)
+++ trunk/milena/mln/histo/compute.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations of histogram computation.
*/
+# ifndef MLN_HISTO_COMPUTE_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_HISTO_COMPUTE_HH
+
# ifndef MLN_INCLUDE_ONLY
Index: trunk/milena/mln/core/dpoints_piter.hh
===================================================================
--- trunk/milena/mln/core/dpoints_piter.hh (revision 1621)
+++ trunk/milena/mln/core/dpoints_piter.hh (revision 1622)
@@ -34,6 +34,7 @@
* iterators.
*/
+# include <vector>
# include <mln/core/internal/point_iterator_base.hh>
# include <mln/core/concept/point_site.hh>
Index: trunk/milena/mln/core/translate_image.hh
===================================================================
--- trunk/milena/mln/core/translate_image.hh (revision 1621)
+++ trunk/milena/mln/core/translate_image.hh (revision 1622)
@@ -37,6 +37,7 @@
# include <mln/core/internal/image_identity.hh>
# include <mln/core/box2d.hh>
+# include <mln/core/line_piter.hh>
namespace mln
Index: trunk/milena/mln/core/tr_image.hh
===================================================================
--- trunk/milena/mln/core/tr_image.hh (revision 1621)
+++ trunk/milena/mln/core/tr_image.hh (revision 1622)
@@ -39,6 +39,7 @@
# include <mln/core/internal/image_identity.hh>
# include <mln/metal/vec.hh>
+# include <mln/value/set.hh>
namespace mln
Index: trunk/milena/mln/core/hexa_piter.hh
===================================================================
--- trunk/milena/mln/core/hexa_piter.hh (revision 1621)
+++ trunk/milena/mln/core/hexa_piter.hh (revision 1622)
@@ -36,6 +36,7 @@
# include <mln/core/internal/piter_adaptor.hh>
# include <mln/core/box2d.hh>
+# include <mln/core/box2d_h.hh>
# include <mln/core/inplace.hh>
namespace mln
Index: trunk/milena/mln/core/line_piter.hh
===================================================================
--- trunk/milena/mln/core/line_piter.hh (revision 1621)
+++ trunk/milena/mln/core/line_piter.hh (revision 1622)
@@ -36,7 +36,7 @@
*/
# include <mln/core/internal/point_iterator_base.hh>
-
+# include <mln/core/box.hh>
namespace mln
{
Index: trunk/milena/mln/core/interpolated.hh
===================================================================
--- trunk/milena/mln/core/interpolated.hh (revision 1621)
+++ trunk/milena/mln/core/interpolated.hh (revision 1622)
@@ -38,7 +38,7 @@
# include <mln/core/internal/image_identity.hh>
# include <mln/metal/vec.hh>
-
+# include <mln/value/set.hh>
namespace mln
{
Index: trunk/milena/mln/core/runs_psite.hh
===================================================================
--- trunk/milena/mln/core/runs_psite.hh (revision 1621)
+++ trunk/milena/mln/core/runs_psite.hh (revision 1622)
@@ -34,7 +34,6 @@
*/
# include <mln/core/concept/point_site.hh>
-# include <mln/core/p_runs.hh>
namespace mln
@@ -188,5 +187,6 @@
} // end of namespace mln
+# include <mln/core/p_runs.hh>
#endif // ! MLN_CORE_INTERNAL_RUNS_PSITE_HH
Index: trunk/milena/mln/core/tr_mesh.hh
===================================================================
--- trunk/milena/mln/core/tr_mesh.hh (revision 1621)
+++ trunk/milena/mln/core/tr_mesh.hh (revision 1622)
@@ -35,7 +35,7 @@
*/
# include <mln/core/concept/mesh.hh>
-# include <mln/core/bool.hh>
+# include <mln/metal/bool.hh>
namespace mln
Index: trunk/milena/mln/core/t_image.hh
===================================================================
--- trunk/milena/mln/core/t_image.hh (revision 1621)
+++ trunk/milena/mln/core/t_image.hh (revision 1622)
@@ -35,7 +35,7 @@
# include <mln/core/internal/image_morpher.hh>
# include <mln/core/box.hh>
-
+# include <mln/value/set.hh>
namespace mln
{
Index: trunk/milena/mln/core/p_runs.hh
===================================================================
--- trunk/milena/mln/core/p_runs.hh (revision 1621)
+++ trunk/milena/mln/core/p_runs.hh (revision 1622)
@@ -52,7 +52,6 @@
template <typename P> struct p_runs_fwd_piter_;
template <typename P> struct p_runs_bkd_piter_;
-
/*! \brief p_runs_ class represent a point set used in run_image_ class.
*
* Parameter \c P is the type of the image point.
Index: trunk/milena/mln/arith/times.spe.hh
===================================================================
--- trunk/milena/mln/arith/times.spe.hh (revision 1621)
+++ trunk/milena/mln/arith/times.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_ARITH_TIMES_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_ARITH_TIMES_HH
+
# include <mln/arith/includes.hh>
Index: trunk/milena/mln/arith/min.spe.hh
===================================================================
--- trunk/milena/mln/arith/min.spe.hh (revision 1621)
+++ trunk/milena/mln/arith/min.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::arith::min.
*/
+# ifndef MLN_ARITH_MIN_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_ARITH_MIN_HH
+
# include <mln/core/concept/image.hh>
# ifndef MLN_INCLUDE_ONLY
Index: trunk/milena/mln/arith/revert.spe.hh
===================================================================
--- trunk/milena/mln/arith/revert.spe.hh (revision 1621)
+++ trunk/milena/mln/arith/revert.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_ARITH_REVERT_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_ARITH_REVERT_HH
+
# include <mln/core/concept/image.hh>
# include <mln/trait/value_.hh>
Index: trunk/milena/mln/level/was.median.hh
===================================================================
--- trunk/milena/mln/level/was.median.hh (revision 1621)
+++ trunk/milena/mln/level/was.median.hh (revision 1622)
@@ -33,6 +33,8 @@
* \brief Obsolete routines for median filtering.
*/
+# include <mln/geom/shift.hh>
+# include <mln/core/window2d.hh>
namespace mln
{
Index: trunk/milena/mln/level/transform.spe.hh
===================================================================
--- trunk/milena/mln/level/transform.spe.hh (revision 1621)
+++ trunk/milena/mln/level/transform.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LEVEL_TRANSFORM_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_TRANSFORM_HH
+
# include <mln/core/concept/image.hh>
# include <mln/core/concept/function.hh>
Index: trunk/milena/mln/level/paste.spe.hh
===================================================================
--- trunk/milena/mln/level/paste.spe.hh (revision 1621)
+++ trunk/milena/mln/level/paste.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::level::paste.
*/
+# ifndef MLN_LEVEL_PASTE_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_PASTE_HH
+
# include <mln/level/memcpy_.hh>
Index: trunk/milena/mln/level/fast_median.hh
===================================================================
--- trunk/milena/mln/level/fast_median.hh (revision 1621)
+++ trunk/milena/mln/level/fast_median.hh (revision 1622)
@@ -37,6 +37,10 @@
# include <mln/core/window2d.hh>
# include <mln/accu/median.hh>
# include <mln/geom/shift.hh>
+# include <mln/geom/min_col.hh>
+# include <mln/geom/min_row.hh>
+# include <mln/geom/max_col.hh>
+# include <mln/geom/max_row.hh>
# include <mln/set/diff.hh>
Index: trunk/milena/mln/level/assign.spe.hh
===================================================================
--- trunk/milena/mln/level/assign.spe.hh (revision 1621)
+++ trunk/milena/mln/level/assign.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LEVEL_ASSIGN_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_ASSIGN_HH
+
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/level/take.spe.hh
===================================================================
--- trunk/milena/mln/level/take.spe.hh (revision 1621)
+++ trunk/milena/mln/level/take.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::level::take.
*/
+# ifndef MLN_LEVEL_TAKE_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_TAKE_HH
+
# include <mln/core/concept/accumulator.hh>
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/level/approx/median.hh
===================================================================
--- trunk/milena/mln/level/approx/median.hh (revision 1621)
+++ trunk/milena/mln/level/approx/median.hh (revision 1622)
@@ -120,22 +120,22 @@
{
clock_t c = clock();
level::median(input, win::diag2d(len), tmp1);
- std::cout << float(clock() - c) / CLOCKS_PER_SEC << std::endl;
+ std::cout << "diag " << float(clock() - c) / CLOCKS_PER_SEC
<< std::endl;
}
{
clock_t c = clock();
level::median(tmp1, win::backdiag2d(len), tmp2);
- std::cout << float(clock() - c) / CLOCKS_PER_SEC << std::endl;
+ std::cout << "back " << float(clock() - c) / CLOCKS_PER_SEC
<< std::endl;
}
{
clock_t c = clock();
level::median(tmp2, win::hline2d(len), tmp1);
- std::cout << float(clock() - c) / CLOCKS_PER_SEC << std::endl;
+ std::cout << "hlin " << float(clock() - c) / CLOCKS_PER_SEC
<< std::endl;
}
{
clock_t c = clock();
level::median(tmp1, win::vline2d(len), output);
- std::cout << float(clock() - c) / CLOCKS_PER_SEC << std::endl;
+ std::cout << "vlin " << float(clock() - c) / CLOCKS_PER_SEC
<< std::endl;
}
}
Index: trunk/milena/mln/level/apply.spe.hh
===================================================================
--- trunk/milena/mln/level/apply.spe.hh (revision 1621)
+++ trunk/milena/mln/level/apply.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specializations for mln::level::apply.
*/
+# ifndef MLN_LEVEL_APPLY_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_APPLY_HH
+
# include <mln/core/concept/image.hh>
# include <mln/core/concept/function.hh>
Index: trunk/milena/mln/level/fill.spe.hh
===================================================================
--- trunk/milena/mln/level/fill.spe.hh (revision 1621)
+++ trunk/milena/mln/level/fill.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LEVEL_FILL_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LEVEL_FILL_HH
+
# include <cstring>
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/linear/gaussian.hh
===================================================================
--- trunk/milena/mln/linear/gaussian.hh (revision 1621)
+++ trunk/milena/mln/linear/gaussian.hh (revision 1622)
@@ -37,6 +37,7 @@
# include <mln/core/concept/image.hh>
# include <mln/level/paste.hh>
+# include <vector>
namespace mln
Index: trunk/milena/mln/accu/median_alt.hh
===================================================================
--- trunk/milena/mln/accu/median_alt.hh (revision 1621)
+++ trunk/milena/mln/accu/median_alt.hh (revision 1622)
@@ -48,7 +48,7 @@
* value set with type \c S.
*/
template <typename S>
- struct median_alt : : public mln::accu::internal::base_< mln_value(S),
median_alt<S> >
+ struct median_alt : public mln::accu::internal::base_< mln_value(S),
median_alt<S> >
{
typedef mln_value(S) argument;
Index: trunk/milena/mln/accu/v.hh
===================================================================
--- trunk/milena/mln/accu/v.hh (revision 1621)
+++ trunk/milena/mln/accu/v.hh (revision 1622)
@@ -36,6 +36,7 @@
# include <mln/core/concept/meta_accumulator.hh>
# include <mln/accu/internal/base.hh>
# include <mln/metal/is_a.hh>
+# include <mln/util/pix.hh>
namespace mln
Index: trunk/milena/mln/convert/to_tiles.hh
===================================================================
--- trunk/milena/mln/convert/to_tiles.hh (revision 1621)
+++ trunk/milena/mln/convert/to_tiles.hh (revision 1622)
@@ -38,6 +38,8 @@
# include <mln/geom/nrows.hh>
# include <mln/geom/ncols.hh>
+# include <vector>
+
namespace mln
{
Index: trunk/milena/mln/convert/to_rgb.hh
===================================================================
--- trunk/milena/mln/convert/to_rgb.hh (revision 1621)
+++ trunk/milena/mln/convert/to_rgb.hh (revision 1622)
@@ -35,6 +35,7 @@
* \todo Re-write.
*/
+# include <mln/value/rgb.hh>
namespace mln
{
Index: trunk/milena/mln/convert/to_w_window.hh
===================================================================
--- trunk/milena/mln/convert/to_w_window.hh (revision 1621)
+++ trunk/milena/mln/convert/to_w_window.hh (revision 1622)
@@ -34,7 +34,7 @@
*/
# include <mln/core/concept/image.hh>
-# include <mln/core/window.hh>
+# include <mln/core/w_window.hh>
namespace mln
Index: trunk/milena/mln/geom/seeds2tiling_roundness.hh
===================================================================
--- trunk/milena/mln/geom/seeds2tiling_roundness.hh (revision 1621)
+++ trunk/milena/mln/geom/seeds2tiling_roundness.hh (revision 1622)
@@ -36,6 +36,7 @@
# include <map>
+# include <mln/core/concept/neighborhood.hh>
# include <mln/core/p_priority_queue_fast.hh>
# include <mln/core/clone.hh>
# include <mln/accu/mean.hh>
Index: trunk/milena/mln/geom/seeds2tiling.hh
===================================================================
--- trunk/milena/mln/geom/seeds2tiling.hh (revision 1621)
+++ trunk/milena/mln/geom/seeds2tiling.hh (revision 1622)
@@ -35,6 +35,7 @@
# include <map>
+# include <mln/core/concept/neighborhood.hh>
# include <mln/core/p_queue.hh>
# include <mln/core/clone.hh>
# include <mln/accu/mean.hh>
Index: trunk/milena/mln/fun/v2v/saturate.hh
===================================================================
--- trunk/milena/mln/fun/v2v/saturate.hh (revision 1621)
+++ trunk/milena/mln/fun/v2v/saturate.hh (revision 1622)
@@ -36,6 +36,7 @@
# include <mln/core/concept/function.hh>
# include <mln/metal/converts_to.hh>
# include <mln/trait/value_.hh>
+# include <mln/value/cast.hh>
namespace mln
Index: trunk/milena/mln/morpho/erosion_fast.hh
===================================================================
--- trunk/milena/mln/morpho/erosion_fast.hh (revision 1621)
+++ trunk/milena/mln/morpho/erosion_fast.hh (revision 1622)
@@ -37,6 +37,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/window.hh>
+# include <mln/core/dpoint2d.hh>
# include <mln/geom/shift.hh>
# include <mln/set/diff.hh>
Index: trunk/milena/mln/morpho/thick_miss.hh
===================================================================
--- trunk/milena/mln/morpho/thick_miss.hh (revision 1621)
+++ trunk/milena/mln/morpho/thick_miss.hh (revision 1622)
@@ -62,8 +62,8 @@
const Window<Wfg>& win_fg, const Window<Wbg>& win_bg)
{
trace::entering("morpho::thick_miss");
- mln_precondition(exact(output).domain() == exact(input).domain());
- mln_precondition(exact(win_miss).is_centered());
+ // FIXME: Fix the following line (win_miss ??)
+// mln_precondition(exact(win_miss).is_centered());
mln_precondition(set::inter(exact(win_fg), exact(win_bg)).is_empty());
mln_concrete(I)
Index: trunk/milena/mln/morpho/erosion.spe.hh
===================================================================
--- trunk/milena/mln/morpho/erosion.spe.hh (revision 1621)
+++ trunk/milena/mln/morpho/erosion.spe.hh (revision 1622)
@@ -28,6 +28,10 @@
#ifndef MLN_MORPHO_EROSION_SPE_HH
# define MLN_MORPHO_EROSION_SPE_HH
+# ifndef MLN_MORPHO_EROSION_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_MORPHO_EROSION_HH
+
# include <mln/win/octagon2d.hh>
# include <mln/win/rectangle2d.hh>
Index: trunk/milena/mln/morpho/dilation_fast.hh
===================================================================
--- trunk/milena/mln/morpho/dilation_fast.hh (revision 1621)
+++ trunk/milena/mln/morpho/dilation_fast.hh (revision 1622)
@@ -37,6 +37,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/window.hh>
+# include <mln/core/dpoint2d.hh>
# include <mln/geom/shift.hh>
# include <mln/set/diff.hh>
Index: trunk/milena/mln/io/pfm/save.hh
===================================================================
--- trunk/milena/mln/io/pfm/save.hh (revision 1621)
+++ trunk/milena/mln/io/pfm/save.hh (revision 1622)
@@ -40,6 +40,7 @@
# include <iostream>
# include <fstream>
+# include <mln/core/point2d.hh>
# include <mln/geom/size2d.hh>
# include <mln/metal/equal.hh>
# include <mln/metal/bexpr.hh>
Index: trunk/milena/mln/io/pfm/load.hh
===================================================================
--- trunk/milena/mln/io/pfm/load.hh (revision 1621)
+++ trunk/milena/mln/io/pfm/load.hh (revision 1622)
@@ -37,6 +37,9 @@
*
*/
+# include <iostream>
+# include <fstream>
+
# include <mln/core/image2d.hh>
# include <mln/value/int_u8.hh>
Index: trunk/milena/mln/io/abort.hh
===================================================================
--- trunk/milena/mln/io/abort.hh (revision 1621)
+++ trunk/milena/mln/io/abort.hh (revision 1622)
@@ -36,6 +36,8 @@
*
*/
+# include <iostream>
+
namespace mln
{
Index: trunk/milena/mln/io/pnm/max_component.hh
===================================================================
--- trunk/milena/mln/io/pnm/max_component.hh (revision 1621)
+++ trunk/milena/mln/io/pnm/max_component.hh (revision 1622)
@@ -36,6 +36,9 @@
* value type.
*/
+# include <mln/value/rgb.hh>
+# include <mln/value/int_u.hh>
+
namespace mln
{
Index: trunk/milena/mln/logical/or.spe.hh
===================================================================
--- trunk/milena/mln/logical/or.spe.hh (revision 1621)
+++ trunk/milena/mln/logical/or.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LOGICAL_OR_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LOGICAL_OR_HH
+
# include <mln/core/concept/image.hh>
# ifndef MLN_INCLUDE_ONLY
Index: trunk/milena/mln/logical/not.spe.hh
===================================================================
--- trunk/milena/mln/logical/not.spe.hh (revision 1621)
+++ trunk/milena/mln/logical/not.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LOGICAL_NOT_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LOGICAL_NOT_HH
+
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/logical/and_not.spe.hh
===================================================================
--- trunk/milena/mln/logical/and_not.spe.hh (revision 1621)
+++ trunk/milena/mln/logical/and_not.spe.hh (revision 1622)
@@ -34,6 +34,10 @@
*
*/
+# ifndef MLN_LOGICAL_AND_NOT_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LOGICAL_AND_NOT_HH
+
# include <mln/core/concept/image.hh>
Index: trunk/milena/mln/logical/and.spe.hh
===================================================================
--- trunk/milena/mln/logical/and.spe.hh (revision 1621)
+++ trunk/milena/mln/logical/and.spe.hh (revision 1622)
@@ -34,8 +34,11 @@
*
*/
-# include <mln/core/concept/image.hh>
+# ifndef MLN_LOGICAL_AND_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LOGICAL_AND_HH
+# include <mln/core/concept/image.hh>
# ifndef MLN_INCLUDE_ONLY
Index: trunk/milena/mln/util/tree_to_image.hh
===================================================================
--- trunk/milena/mln/util/tree_to_image.hh (revision 1621)
+++ trunk/milena/mln/util/tree_to_image.hh (revision 1622)
@@ -36,6 +36,7 @@
*
*/
+# include <mln/core/concept/image.hh>
# include <mln/util/tree.hh>
# include <mln/core/p_set.hh>
Index: trunk/milena/mln/util/tree_fast_to_image.hh
===================================================================
--- trunk/milena/mln/util/tree_fast_to_image.hh (revision 1621)
+++ trunk/milena/mln/util/tree_fast_to_image.hh (revision 1622)
@@ -36,6 +36,7 @@
*
*/
+# include <mln/core/concept/image.hh>
# include <mln/util/tree_fast.hh>
# include <mln/core/p_set.hh>
# include <list>
Index: trunk/milena/mln/labeling/level.spe.hh
===================================================================
--- trunk/milena/mln/labeling/level.spe.hh (revision 1621)
+++ trunk/milena/mln/labeling/level.spe.hh (revision 1622)
@@ -33,6 +33,10 @@
* \brief Specialization for mln::labeling::level.
*/
+# ifndef MLN_LABELING_LEVEL_HH
+# error "Forbidden inclusion of *.spe.hh"
+# endif // ! MLN_LABELING_LEVEL_HH
+
# include <mln/border/adjust.hh>
# include <mln/border/fill.hh>
# include <mln/value/other.hh>