Olena-patches
Threads by month
- ----- 2025 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- 9625 discussions
[PATCH 1/3] Extend Autoconf macro OLN_WITH_LIB to handle the library's dependencies.
by Roland Levillain 12 Jun '09
by Roland Levillain 12 Jun '09
12 Jun '09
* m4/oln-with-lib.m4 (OLN_WITH_LIB): Add a sixth (optional)
argument to pass other libraries that the search library depends
on.
Pass it to...
(_OLN_WITH_LIB): ...this macro.
Pass it to AC_CHECK_LIB.
---
ChangeLog | 11 +++++++++++
m4/oln-with-lib.m4 | 20 ++++++++++++++------
2 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 4e75555..10f5d0a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-06-12 Roland Levillain <roland(a)lrde.epita.fr>
+
+ Extend Autoconf macro OLN_WITH_LIB to handle the library's dependencies.
+
+ * m4/oln-with-lib.m4 (OLN_WITH_LIB): Add a sixth (optional)
+ argument to pass other libraries that the search library depends
+ on.
+ Pass it to...
+ (_OLN_WITH_LIB): ...this macro.
+ Pass it to AC_CHECK_LIB.
+
2009-06-12 Edwin Carlinet <carlinet(a)lrde.epita.fr>
Update configure with tests/accu/shape makefile.
diff --git a/m4/oln-with-lib.m4 b/m4/oln-with-lib.m4
index 1f59714..a3cc9e1 100644
--- a/m4/oln-with-lib.m4
+++ b/m4/oln-with-lib.m4
@@ -1,13 +1,17 @@
# -*- Autoconf -*-
-# OLN_WITH_LIB(PACKAGE, HEADER, LIBRARY, [SHELL_NAME], [CPP_NAME])
+# OLN_WITH_LIB(PACKAGE, HEADER, LIBRARY, [SHELL_NAME], [CPP_NAME],
+# [OTHER-LIBRARIES])
# ----------------------------------------------------------------
# Checks whether library PACKAGE is available from C++ programs.
# HEADER and LIBRARY are respectively a header and the library name
# (object) that are checked to assess the usability of the library.
# SHELL_NAME is a name used in shell variables (preferably in lower
# case), while CPP_NAME is used in the name of C++ preprocessor macros
-# and flags (preferably in upper case).
+# and flags (preferably in upper case). OTHER-LIBRARIES are
+# additional libraries that LIBRARY depends upon, that should be
+# passed as a space-separated list of linker arguments (e.g.
+# `-lXt -lX11').
#
# If they are not given, SHELL_NAME defaults to m4_tolower([LIBRARY])
# and CPP_NAME defaults to m4_toupper([LIBRARY]).
@@ -23,6 +27,8 @@
# OLN_WITH_LIB([FreeImagePlus], [FreeImagePlus.h], [freeimageplus])
# OLN_WITH_LIB([CFITSIO], [fitsio.h], [cfitsio])
# OLN_WITH_LIB([Zlib], [zlib.h], [z], [zlib], [ZLIB])
+# OLN_WITH_LIB([GDCM], [gdcm-2.0/gdcmReader.h], [gdcmCommon], [gdcm], [GDCM],
+# [-lgdcmzlib])
#
AC_DEFUN([OLN_WITH_LIB],
[dnl Do some sanity checking of the arguments.
@@ -32,11 +38,13 @@ m4_if([$3], , [AC_FATAL([$0: missing argument 3])])dnl
_OLN_WITH_LIB([$1], [$2], [$3],dnl
dnl Process optional arguments.
m4_default([$4], m4_tolower([$3])),dnl
-m4_default([$5], m4_toupper([$3])))dnl
+m4_default([$5], m4_toupper([$3])),dnl
+[$6])dnl
])# OLN_WITH_LIB
-# _OLN_WITH_LIB(PACKAGE, HEADER, LIBRARY, SHELL_NAME, CPP_NAME)
+# _OLN_WITH_LIB(PACKAGE, HEADER, LIBRARY, SHELL_NAME, CPP_NAME,
+# [OTHER-LIBRARIES])
# -------------------------------------------------------------
# Actual implementation of OLN_WITH_LIB.
AC_DEFUN([_OLN_WITH_LIB],
@@ -63,8 +71,8 @@ AC_DEFUN([_OLN_WITH_LIB],
[main],
[oln_have_$4=yes
$5_LDFLAGS="$$5_LDFLAGS -l$3"
- AC_DEFINE([HAVE_$5], 1, [Define to 1 if we can use $1])
- ]
+ AC_DEFINE([HAVE_$5], 1, [Define to 1 if we can use $1])],
+ [], [$6]
)]
)
CPPFLAGS=$oln_save_CPPFLAGS
--
1.6.2.4
1
0
URL: https://svn.lrde.epita.fr/svn/oln/trunk
ChangeLog:
2009-06-12 Edwin Carlinet <carlinet(a)lrde.epita.fr>
Update configure with tests/accu/shape makefile.
* configure.ac: Update configure.
---
configure.ac | 1 +
1 file changed, 1 insertion(+)
Index: trunk/configure.ac
===================================================================
--- trunk/configure.ac (revision 4121)
+++ trunk/configure.ac (revision 4122)
@@ -255,6 +255,7 @@
milena/tests/accu/site_set/Makefile
milena/tests/accu/stat/Makefile
milena/tests/accu/math/Makefile
+ milena/tests/accu/shape/Makefile
milena/tests/algebra/Makefile
milena/tests/arith/Makefile
milena/tests/binarization/Makefile
1
0
URL: https://svn.lrde.epita.fr/svn/oln/trunk/scribo
ChangeLog:
2009-06-12 Edwin Carlinet <carlinet(a)lrde.epita.fr>
Fixes about accumulator includes and calls.
* extract/lines_discontinued.hh,
* extract/primitive/cells.hh,
* extract/primitive/objects.hh,
* filter/thin_objects.hh,
* make/text.hh,
* text/extract_lines.hh,
* text/grouping/group_from_double_link.hh,
* text/grouping/group_from_graph.hh,
* text/grouping/group_from_single_link.hh:
Replace accu::accu_name by accu::new_dir::accu_name,
accu::meta::accu_name by accu::meta::new_dir::accu_name,
accu/accu_name by accu/new_dir/accu_name.
---
extract/lines_discontinued.hh | 4 ++--
extract/primitive/cells.hh | 4 ++--
extract/primitive/objects.hh | 2 +-
filter/thin_objects.hh | 2 +-
make/text.hh | 4 ++--
text/extract_lines.hh | 2 +-
text/grouping/group_from_double_link.hh | 2 +-
text/grouping/group_from_graph.hh | 2 +-
text/grouping/group_from_single_link.hh | 2 +-
9 files changed, 12 insertions(+), 12 deletions(-)
Index: trunk/scribo/text/extract_lines.hh
===================================================================
--- trunk/scribo/text/extract_lines.hh (revision 4120)
+++ trunk/scribo/text/extract_lines.hh (revision 4121)
@@ -36,7 +36,7 @@
# include <mln/data/fill.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/draw/box.hh>
Index: trunk/scribo/text/grouping/group_from_double_link.hh
===================================================================
--- trunk/scribo/text/grouping/group_from_double_link.hh (revision 4120)
+++ trunk/scribo/text/grouping/group_from_double_link.hh (revision 4121)
@@ -36,7 +36,7 @@
# include <mln/core/concept/image.hh>
# include <mln/core/site_set/box.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/array.hh>
Index: trunk/scribo/text/grouping/group_from_single_link.hh
===================================================================
--- trunk/scribo/text/grouping/group_from_single_link.hh (revision 4120)
+++ trunk/scribo/text/grouping/group_from_single_link.hh (revision 4121)
@@ -34,7 +34,7 @@
# include <mln/core/site_set/box.hh>
# include <mln/fun/i2v/array.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/array.hh>
Index: trunk/scribo/text/grouping/group_from_graph.hh
===================================================================
--- trunk/scribo/text/grouping/group_from_graph.hh (revision 4120)
+++ trunk/scribo/text/grouping/group_from_graph.hh (revision 4121)
@@ -37,7 +37,7 @@
# include <mln/canvas/browsing/depth_first_search.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/pw/all.hh>
Index: trunk/scribo/filter/thin_objects.hh
===================================================================
--- trunk/scribo/filter/thin_objects.hh (revision 4120)
+++ trunk/scribo/filter/thin_objects.hh (revision 4121)
@@ -89,7 +89,7 @@
struct thin_objects_filter
: Function_v2b< thin_objects_filter<L> >
{
- typedef accu::bbox<mln_psite(L)> box_accu_t;
+ typedef accu::shape::bbox<mln_psite(L)> box_accu_t;
/// Constructor
///
Index: trunk/scribo/extract/lines_discontinued.hh
===================================================================
--- trunk/scribo/extract/lines_discontinued.hh (revision 4120)
+++ trunk/scribo/extract/lines_discontinued.hh (revision 4121)
@@ -42,7 +42,7 @@
# include <mln/morpho/rank_filter.hh>
# include <mln/morpho/dilation.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/array.hh>
# include <mln/util/couple.hh>
@@ -168,7 +168,7 @@
mln_ch_value(I,V)
output = lines_discontinued(input, nbh, nlines, win, rank_k);
- line_bboxes = labeling::compute(accu::meta::bbox(), output, nlines);
+ line_bboxes = labeling::compute(accu::meta::shape::bbox(), output, nlines);
mln_postcondition(line_bboxes.nelements() == nlines.next());
//FIXME: is it correct?
Index: trunk/scribo/extract/primitive/cells.hh
===================================================================
--- trunk/scribo/extract/primitive/cells.hh (revision 4120)
+++ trunk/scribo/extract/primitive/cells.hh (revision 4121)
@@ -34,7 +34,7 @@
# include <mln/core/concept/neighborhood.hh>
# include <mln/core/site_set/box.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/couple.hh>
# include <mln/util/array.hh>
@@ -109,7 +109,7 @@
cells = scribo::table::rebuild(input, mln::make::couple(vlines,hlines),
30, ncells).first();
mln::util::array<box<mln_site(I)> >
- cellbboxes = labeling::compute(accu::meta::bbox(), cells, ncells);
+ cellbboxes = labeling::compute(accu::meta::shape::bbox(), cells, ncells);
trace::exiting("scribo::primitive::cells");
return cellbboxes;
Index: trunk/scribo/extract/primitive/objects.hh
===================================================================
--- trunk/scribo/extract/primitive/objects.hh (revision 4120)
+++ trunk/scribo/extract/primitive/objects.hh (revision 4121)
@@ -43,7 +43,7 @@
# include <scribo/core/object_image.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/accu/center.hh>
Index: trunk/scribo/make/text.hh
===================================================================
--- trunk/scribo/make/text.hh (revision 4120)
+++ trunk/scribo/make/text.hh (revision 4121)
@@ -129,7 +129,7 @@
mln_ch_value(I,V) lbl = labeling::blobs(input, nbh, nbboxes);
- boxes_t cboxes = labeling::compute(accu::meta::bbox(), lbl, nbboxes);
+ boxes_t cboxes = labeling::compute(accu::meta::shape::bbox(), lbl, nbboxes);
trace::exiting("scribo::make::text");
return make::text(cboxes, lbl, nbboxes);
@@ -152,7 +152,7 @@
L lbl = labeling::relabel(text.label_image(), text.nbboxes(), fv2v);
- mln::util::array< accu::bbox<mln_site(L)> > tboxes(new_nbboxes.next());
+ mln::util::array< accu::shape::bbox<mln_site(L)> > tboxes(new_nbboxes.next());
mln::util::array< accu::center<mln_site(L)> > tcenters(new_nbboxes.next());
for_all_components(i, text.bboxes())
{
1
0
12 Jun '09
URL: https://svn.lrde.epita.fr/svn/oln/trunk/milena
ChangeLog:
2009-06-12 Edwin Carlinet <carlinet(a)lrde.epita.fr>
Move height, volume, bbox accus in shape directory.
* mln/accu/height.hh,
* mln/accu/bbox.hh,
* mln/accu/volume.hh: Move to...
* mln/accu/shape,
* mln/accu/shape/bbox.hh,
* mln/accu/shape/height.hh,
* mln/accu/shape/volume.hh:
Move accus in shape directory.
* tests/accu/bbox.cc: Move to...
* tests/accu/shape,
* tests/accu/shape/bbox.cc:
Move tests in shape directory.
* tests/accu/Makefile.am,
* tests/accu/shape/Makefile.am:
Update makefiles respecting new locations.
* mln/accu/median_alt.hh: Move to...
* mln/accu/stat/median_alt.hh:
Move median_alt (no more used anywhere...) in stat directory.
* mln/accu/all.hh,
* mln/accu/essential.hh,
* mln/accu/shape/all.hh,
* mln/accu/shape/essential.hh
* mln/accu/stat/all.hh:
Update all.hh and essential.hh respecting new locations.
* doc/examples/labeling-compute.cc,
* doc/examples/split/labeling-compute-3.cc,
* mln/accu/site_set/rectangularity.hh,
* mln/accu/center.hh,
* mln/core/image/dmorph/p2p_image.hh,
* mln/core/image/imorph/labeled_image.hh,
* mln/core/internal/geom_bbox.hh,
* mln/core/internal/site_set_impl.hh,
* mln/geom/bbox.hh,
* sandbox/abraham/mln/core/site_set/p_priority_queue.hh,
* sandbox/duhamel/mesh_p.hh,
* sandbox/duhamel/queue_p_fast.hh,
* sandbox/duhamel/queue_p_priority.hh,
* sandbox/fred/old/p2p/p2p_morpher.hh,
* sandbox/fred/old/value.cc,
* sandbox/garrigues/factures/extract_array.cc,
* sandbox/garrigues/factures/extract_array_highlight.cc,
* sandbox/garrigues/fllt/essai.cc,
* sandbox/garrigues/fllt/fllt_simple.cc,
* sandbox/garrigues/fllt/fllt_simple.svg.1.cc,
* sandbox/garrigues/fllt/fllt_simple.svg.2.cc,
* sandbox/garrigues/fllt/fllt_simple.svg.3.cc,
* sandbox/garrigues/fllt/fllt_theo.cc,
* sandbox/garrigues/fllt/types.hh,
* sandbox/icdar/2009/hsc/clean_input.hh,
* sandbox/icdar/2009/hsc/clean_lines.hh,
* sandbox/icdar/2009/hsc/clean_lines_with_grouped_bboxes.hh,
* sandbox/icdar/2009/hsc/get_line_images.hh,
* sandbox/icdar/2009/hsc/lines_to_boxes.cc,
* sandbox/inim/2010/boxes/boxes.cc,
* sandbox/inim/2010/rag/center_weight.hh,
* sandbox/jardonnet/n_cmpt/n_cmpt.cc,
* sandbox/jardonnet/n_cmpt/n_cmpt.hh,
* sandbox/jardonnet/n_cmpt/n_cmpt2.hh,
* sandbox/jardonnet/n_cmpt/n_cmpt3.hh,
* sandbox/jardonnet/n_cmpt/n_cmpt4.hh,
* sandbox/jardonnet/n_cmpt/n_cmpt5.hh,
* sandbox/jardonnet/n_cmpt/nwst.hh,
* sandbox/jardonnet/n_cmpt/test_attribute_watershed.cc,
* sandbox/jardonnet/n_cmpt/tikz.hh,
* sandbox/laurent/ismm2009.cc,
* sandbox/nivault/extract_character.cc,
* sandbox/nivault/extract_score.cc,
* sandbox/pellegrin/set/core/internal/multi_set.hh,
* sandbox/pellegrin/set/core/internal/uni_set.hh,
* sandbox/pellegrin/set/core/p_array.hh,
* sandbox/pellegrin/set/core/p_bgraph.hh,
* sandbox/pellegrin/set/core/p_graph.hh,
* sandbox/pellegrin/set/core/p_line_graph.hh,
* sandbox/pellegrin/set/core/p_priority_queue.hh,
* sandbox/pellegrin/set/core/p_priority_queue_fast.hh,
* sandbox/pellegrin/set/core/p_priority_queue_fast_with_array.hh,
* sandbox/pellegrin/set/core/p_queue.hh,
* sandbox/pellegrin/set/core/p_queue_fast.hh,
* sandbox/pellegrin/set/core/p_run.hh,
* sandbox/pellegrin/set/core/p_runs.hh,
* sandbox/pellegrin/set/core/p_set.hh,
* sandbox/theo/color/blen_pix.hh,
* sandbox/theo/color/filter_blen_rgb_edges.cc,
* sandbox/theo/color/segment_gl_pixels.cc,
* sandbox/theo/color/segment_rgb_edges.cc,
* sandbox/theo/esiee/laurent/ismm09/trash.hh,
* sandbox/theo/fllt.svg.6.cc,
* sandbox/theo/fllt.svg.7.hh,
* sandbox/theo/fllt/fllt.hh,
* sandbox/theo/fllt/fllt.svg.1.cc,
* sandbox/theo/fllt/fllt.svg.2.cc,
* sandbox/theo/fllt/fllt.svg.3.cc,
* sandbox/theo/fllt/fllt.svg.4.cc,
* sandbox/theo/fllt/fllt.svg.5.cc,
* sandbox/theo/fllt/fllt.svg.6.cc,
* sandbox/theo/fllt/fllt.svg.7.hh,
* sandbox/theo/fllt/fllt_test.hh,
* sandbox/theo/p_runs__with_dedicated_piter.hh,
* sandbox/theo/tufa_2008/experiment.cc,
* sandbox/theo/tufa_2008/filter.cc,
* sandbox/theo/tufa_2008/n_cmpt.cc,
* sandbox/theo/tufa_2008/wst_f_equal_wst_a.cc,
* tests/accu/all_accus.cc,
* tests/core/image/edge_image.cc,
* tests/core/image/graph_image.cc,
* tests/core/image/imorph/labeled_image.cc,
* tests/core/image/vertex_image.cc,
* tests/morpho/closing/leveling.cc,
* tests/morpho/graph_image_morpho.cc,
* tests/morpho/opening/leveling.cc,
* trash/obased_rle_image.hh,
* trash/p_bgraph.hh:
Replace accu::accu_name by accu::shape::accu_name,
accu::meta::accu_name by accu::meta::shape::accu_name,
accu/accu_name by accu/shape/accu_name.
---
doc/examples/labeling-compute.cc | 4
doc/examples/split/labeling-compute-3.cc | 2
mln/accu/all.hh | 6
mln/accu/center.hh | 2
mln/accu/essential.hh | 3
mln/accu/shape/all.hh | 59 +
mln/accu/shape/bbox.hh | 236 ++++++
mln/accu/shape/essential.hh | 37 +
mln/accu/shape/height.hh | 212 ++++++
mln/accu/shape/volume.hh | 229 ++++++
mln/accu/site_set/rectangularity.hh | 8
mln/accu/stat/all.hh | 1
mln/accu/stat/median_alt.hh | 339 ++++++++++
mln/core/image/dmorph/p2p_image.hh | 4
mln/core/image/imorph/labeled_image.hh | 6
mln/core/internal/geom_bbox.hh | 4
mln/core/internal/site_set_impl.hh | 4
mln/geom/bbox.hh | 4
sandbox/abraham/mln/core/site_set/p_priority_queue.hh | 4
sandbox/duhamel/mesh_p.hh | 4
sandbox/duhamel/queue_p_fast.hh | 4
sandbox/duhamel/queue_p_priority.hh | 4
sandbox/fred/old/p2p/p2p_morpher.hh | 6
sandbox/fred/old/value.cc | 4
sandbox/garrigues/factures/extract_array.cc | 2
sandbox/garrigues/factures/extract_array_highlight.cc | 2
sandbox/garrigues/fllt/essai.cc | 4
sandbox/garrigues/fllt/fllt_simple.cc | 4
sandbox/garrigues/fllt/fllt_simple.svg.1.cc | 4
sandbox/garrigues/fllt/fllt_simple.svg.2.cc | 4
sandbox/garrigues/fllt/fllt_simple.svg.3.cc | 4
sandbox/garrigues/fllt/fllt_theo.cc | 4
sandbox/garrigues/fllt/types.hh | 2
sandbox/icdar/2009/hsc/clean_input.hh | 4
sandbox/icdar/2009/hsc/clean_lines.hh | 2
sandbox/icdar/2009/hsc/clean_lines_with_grouped_bboxes.hh | 4
sandbox/icdar/2009/hsc/get_line_images.hh | 4
sandbox/icdar/2009/hsc/lines_to_boxes.cc | 2
sandbox/inim/2010/boxes/boxes.cc | 2
sandbox/inim/2010/rag/center_weight.hh | 2
sandbox/jardonnet/n_cmpt/n_cmpt.cc | 2
sandbox/jardonnet/n_cmpt/n_cmpt.hh | 4
sandbox/jardonnet/n_cmpt/n_cmpt2.hh | 4
sandbox/jardonnet/n_cmpt/n_cmpt3.hh | 6
sandbox/jardonnet/n_cmpt/n_cmpt4.hh | 6
sandbox/jardonnet/n_cmpt/n_cmpt5.hh | 6
sandbox/jardonnet/n_cmpt/nwst.hh | 2
sandbox/jardonnet/n_cmpt/test_attribute_watershed.cc | 4
sandbox/jardonnet/n_cmpt/tikz.hh | 6
sandbox/laurent/ismm2009.cc | 2
sandbox/nivault/extract_character.cc | 10
sandbox/nivault/extract_score.cc | 2
sandbox/pellegrin/set/core/internal/multi_set.hh | 2
sandbox/pellegrin/set/core/internal/uni_set.hh | 2
sandbox/pellegrin/set/core/p_array.hh | 4
sandbox/pellegrin/set/core/p_bgraph.hh | 4
sandbox/pellegrin/set/core/p_graph.hh | 4
sandbox/pellegrin/set/core/p_line_graph.hh | 4
sandbox/pellegrin/set/core/p_priority_queue.hh | 4
sandbox/pellegrin/set/core/p_priority_queue_fast.hh | 4
sandbox/pellegrin/set/core/p_priority_queue_fast_with_array.hh | 4
sandbox/pellegrin/set/core/p_queue.hh | 4
sandbox/pellegrin/set/core/p_queue_fast.hh | 4
sandbox/pellegrin/set/core/p_run.hh | 4
sandbox/pellegrin/set/core/p_runs.hh | 4
sandbox/pellegrin/set/core/p_set.hh | 4
sandbox/theo/color/blen_pix.hh | 8
sandbox/theo/color/filter_blen_rgb_edges.cc | 2
sandbox/theo/color/segment_gl_pixels.cc | 6
sandbox/theo/color/segment_rgb_edges.cc | 4
sandbox/theo/esiee/laurent/ismm09/trash.hh | 2
sandbox/theo/fllt.svg.6.cc | 4
sandbox/theo/fllt.svg.7.hh | 4
sandbox/theo/fllt/fllt.hh | 6
sandbox/theo/fllt/fllt.svg.1.cc | 4
sandbox/theo/fllt/fllt.svg.2.cc | 4
sandbox/theo/fllt/fllt.svg.3.cc | 4
sandbox/theo/fllt/fllt.svg.4.cc | 4
sandbox/theo/fllt/fllt.svg.5.cc | 4
sandbox/theo/fllt/fllt.svg.6.cc | 4
sandbox/theo/fllt/fllt.svg.7.hh | 4
sandbox/theo/fllt/fllt_test.hh | 4
sandbox/theo/p_runs__with_dedicated_piter.hh | 4
sandbox/theo/tufa_2008/experiment.cc | 4
sandbox/theo/tufa_2008/filter.cc | 2
sandbox/theo/tufa_2008/n_cmpt.cc | 4
sandbox/theo/tufa_2008/wst_f_equal_wst_a.cc | 4
tests/accu/Makefile.am | 5
tests/accu/all_accus.cc | 2
tests/accu/shape/Makefile.am | 27
tests/accu/shape/bbox.cc | 42 +
tests/core/image/edge_image.cc | 4
tests/core/image/graph_image.cc | 4
tests/core/image/imorph/labeled_image.cc | 2
tests/core/image/vertex_image.cc | 4
tests/morpho/closing/leveling.cc | 2
tests/morpho/graph_image_morpho.cc | 4
tests/morpho/opening/leveling.cc | 2
trash/obased_rle_image.hh | 2
trash/p_bgraph.hh | 4
100 files changed, 1356 insertions(+), 176 deletions(-)
Index: trunk/milena/trash/obased_rle_image.hh
===================================================================
--- trunk/milena/trash/obased_rle_image.hh (revision 4119)
+++ trunk/milena/trash/obased_rle_image.hh (revision 4120)
@@ -61,7 +61,7 @@
std::vector< std::vector<unsigned> > obj_;
/// Bounding boxes of the objects.
- std::vector< accu::bbox<P> > bbox_;
+ std::vector< accu::shape::bbox<P> > bbox_;
/// Value of Objects.
std::vector<T> v_obj_;
Index: trunk/milena/trash/p_bgraph.hh
===================================================================
--- trunk/milena/trash/p_bgraph.hh (revision 4119)
+++ trunk/milena/trash/p_bgraph.hh (revision 4120)
@@ -33,7 +33,7 @@
# include <mln/core/concept/point_site.hh>
# include <mln/core/internal/site_set_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/internal/boost_graph.hh>
# include <mln/core/image/bgraph_psite.hh>
# include <mln/core/site_set/p_bgraph_piter.hh>
@@ -121,7 +121,7 @@
mln_precondition(gr != 0);
// FIXME: Warning: if the underlying graph is updated later, this
// won't be taken into account by this p_bgraph!
- accu::bbox<P> a;
+ accu::shape::bbox<P> a;
for (node_iterators iter = boost::vertices(*gr_);
iter.first != iter.second;
Index: trunk/milena/mln/core/image/dmorph/p2p_image.hh
===================================================================
--- trunk/milena/mln/core/image/dmorph/p2p_image.hh (revision 4119)
+++ trunk/milena/mln/core/image/dmorph/p2p_image.hh (revision 4120)
@@ -32,7 +32,7 @@
# include <mln/core/internal/image_domain_morpher.hh>
# include <mln/core/concept/function.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
namespace mln
@@ -160,7 +160,7 @@
: ima_(ima),
f_(f)
{
- accu::bbox<mln_site(I)> a;
+ accu::shape::bbox<mln_site(I)> a;
mln_domain(I) b = ima.domain();
a.take(f(b.pmin()));
a.take(f(b.pmax()));
Index: trunk/milena/mln/core/image/imorph/labeled_image.hh
===================================================================
--- trunk/milena/mln/core/image/imorph/labeled_image.hh (revision 4119)
+++ trunk/milena/mln/core/image/imorph/labeled_image.hh (revision 4120)
@@ -128,7 +128,7 @@
typedef labeled_image< tag::image_<I> > skeleton;
/// Type of the bounding component bounding boxes.
- typedef mln_result(accu::bbox<mln_psite(I)>) bbox_t;
+ typedef mln_result(accu::shape::bbox<mln_psite(I)>) bbox_t;
/// Constructors
/// @{
@@ -334,7 +334,7 @@
void
labeled_image<I>::update_()
{
- this->data_->bboxes_ = labeling::compute(accu::meta::bbox(),
+ this->data_->bboxes_ = labeling::compute(accu::meta::shape::bbox(),
this->data_->ima_,
this->data_->nlabels_);
}
@@ -352,7 +352,7 @@
//// p_if<mln_psite(I)>
// unsigned
// extended_impl_selector<I,
-// accu::pair<accu::bbox<mln_psite(I)>,
+// accu::pair<accu::shape::bbox<mln_psite(I)>,
// accu::center<mln_psite(I),V> >,
// E>::domain(const mln_value(I)& label) const
// {
Index: trunk/milena/mln/core/internal/site_set_impl.hh
===================================================================
--- trunk/milena/mln/core/internal/site_set_impl.hh (revision 4119)
+++ trunk/milena/mln/core/internal/site_set_impl.hh (revision 4120)
@@ -30,7 +30,7 @@
/// Provide implementation for optional site set methods.
# include <mln/core/concept/site_set.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
@@ -83,7 +83,7 @@
template <typename S>
void update_bbox_(const Site_Set<S>& s);
- accu::bbox<mln_site(Sc)> bb_;
+ accu::shape::bbox<mln_site(Sc)> bb_;
};
template <typename Sc>
Index: trunk/milena/mln/core/internal/geom_bbox.hh
===================================================================
--- trunk/milena/mln/core/internal/geom_bbox.hh (revision 4119)
+++ trunk/milena/mln/core/internal/geom_bbox.hh (revision 4120)
@@ -33,7 +33,7 @@
/// circular dependency since mln/geom/bbox.hh cannot be included in
/// concept files.
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/literal/origin.hh>
@@ -55,7 +55,7 @@
geom_bbox(const W& win)
{
typedef mln_psite(W) P;
- accu::bbox<P> b;
+ accu::shape::bbox<P> b;
P O = literal::origin;
mln_qiter(W) q(exact(win), O);
for_all(q)
Index: trunk/milena/mln/accu/bbox.hh (deleted)
===================================================================
Index: trunk/milena/mln/accu/median_alt.hh (deleted)
===================================================================
Index: trunk/milena/mln/accu/volume.hh (deleted)
===================================================================
Index: trunk/milena/mln/accu/height.hh (deleted)
===================================================================
Index: trunk/milena/mln/accu/site_set/rectangularity.hh
===================================================================
--- trunk/milena/mln/accu/site_set/rectangularity.hh (revision 4119)
+++ trunk/milena/mln/accu/site_set/rectangularity.hh (revision 4120)
@@ -31,7 +31,7 @@
/// Compute the rectangularity of a site set.
# include <mln/accu/internal/couple.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/accu/math/count.hh>
namespace mln
@@ -49,7 +49,7 @@
//
template <typename P>
class rectangularity
- : public accu::internal::couple<accu::bbox<P>,
+ : public accu::internal::couple<accu::shape::bbox<P>,
accu::math::count<P>,
float,
rectangularity<P> >
@@ -57,12 +57,12 @@
public:
- typedef accu::internal::couple<accu::bbox<P>,
+ typedef accu::internal::couple<accu::shape::bbox<P>,
accu::math::count<P>,
float,
rectangularity<P> > super_;
- typedef accu::bbox<P> A1;
+ typedef accu::shape::bbox<P> A1;
typedef accu::math::count<P> A2;
typedef float result;
Index: trunk/milena/mln/accu/shape/essential.hh
===================================================================
--- trunk/milena/mln/accu/shape/essential.hh (revision 0)
+++ trunk/milena/mln/accu/shape/essential.hh (revision 4120)
@@ -0,0 +1,37 @@
+// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_SHAPE_ESSENTIAL_HH
+# define MLN_ACCU_SHAPE_ESSENTIAL_HH
+
+/// \file
+///
+/// File that includes the most useful shape accumulator types.
+
+# include <mln/accu/shape/bbox.hh>
+
+#endif // ! MLN_ACCU_SHAPE_ESSENTIAL_HH
+
+
Property changes on: trunk/milena/mln/accu/shape/essential.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/accu/shape/volume.hh
===================================================================
--- trunk/milena/mln/accu/shape/volume.hh (revision 0)
+++ trunk/milena/mln/accu/shape/volume.hh (revision 4120)
@@ -0,0 +1,229 @@
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_SHAPE_VOLUME_HH
+# define MLN_ACCU_SHAPE_VOLUME_HH
+
+/// \file
+/// Define an accumulator that computes the volume of a
+/// component through one of its pixels.
+
+/*!
+This accumulator uses an mln::util::pix (pixel) to update the
+reference level, area and volume information of the component.
+
+The class mln/accu/volume is not a general-purpose accumulator;
+it is used to implement volume-based connected filters.
+\see mln::morpho::closing::volume
+\see mln::morpho::opening::volume
+*/
+
+# include <mln/accu/internal/base.hh>
+# include <mln/core/concept/meta_accumulator.hh>
+# include <mln/math/diff_abs.hh>
+
+# include <mln/util/pix.hh>
+# include <mln/literal/zero.hh>
+
+namespace mln
+{
+
+ namespace accu
+ {
+
+ namespace shape
+ {
+
+ /// \brief Volume accumulator class.
+ ///
+ /// The parameter \p I is the image type on which the accumulator
+ /// of pixels is built.
+ ///
+ /// \ingroup modaccuimages
+ template <typename I>
+ struct volume
+ : public mln::accu::internal::base< unsigned , volume<I> >
+ {
+ /// The accumulated data type.
+ ///
+ /// The volume of component is represented by the volume of its
+ /// root pixel. See mln::morpho::closing_volume and
+ /// mln::morpho::opening_volume for actual uses of this
+ /// accumulator.
+ /// FIXME: Replaced by mln::morpho::attribute::volume
+ typedef util::pix<I> argument;
+ /// The value type associated to the pixel type.
+ typedef typename argument::value value;
+
+ volume();
+
+ /// Manipulators.
+ /// \{
+ void init();
+ void take(const argument& pixel);
+ void take(const volume<I>& other);
+
+ /// Force the value of the counter to \a v.
+ void set_value(unsigned v);
+ /// \}
+
+ /// Get the value of the accumulator.
+ unsigned to_result() const;
+
+ /// Check whether this accu is able to return a result.
+ /// Always true here.
+ bool is_valid() const;
+
+ protected:
+ /// The reference level (the level of the component's root).
+ value ref_level__;
+ /// The area of the component.
+ unsigned area__;
+ /// The volume of the component.
+ unsigned volume_;
+ };
+
+
+ } // end of mln::accu::shape
+
+
+ namespace meta
+ {
+
+ namespace shape
+ {
+
+ /// Meta accumulator for volume.
+
+ struct volume : public Meta_Accumulator< volume >
+ {
+ template <typename I>
+ struct with
+ {
+ typedef accu::shape::volume<I> ret;
+ };
+ };
+
+ } // end of namespace mln::accu::meta::shape
+
+ } // end of namespace mln::accu::meta
+
+# ifndef MLN_INCLUDE_ONLY
+
+ namespace shape
+ {
+
+ template <typename I>
+ inline
+ volume<I>::volume()
+ {
+ init();
+ }
+
+ template <typename I>
+ inline
+ void
+ volume<I>::init()
+ {
+ ref_level__ = literal::zero;
+ volume_ = 0;
+ area__ = 0;
+ }
+
+ template <typename I>
+ inline
+ void
+ volume<I>::take(const argument& pixel)
+ {
+ /* FIXME: Growing a component using this particular `take'
+ routine won't work, since the update does not take care of
+ the reference level to compute the new volume. Maybe we
+ could distinguish two cases:
+
+ 1. the empty accumulator case (which corresponds to the
+ following code);
+ 2. the non-empty accumulator case (which sohuld act as in
+ `take(const volume<I>& other)').
+
+ Currently, the implementation is only valid if the
+ accumulator was initialy empty before the call to
+ `take(const argument&)'. */
+ ref_level__ = pixel.v();
+ ++area__;
+ ++volume_;
+ }
+
+ template <typename I>
+ inline
+ void
+ volume<I>::take(const volume<I>& other)
+ {
+ area__ += other.area__;
+ /* FIXME: Is it `t.area__' or `area__' ? Théo said it was
+ the latter, but both the ISMM 2005 paper and Olena 0.11 use
+ the former. */
+ volume_ +=
+ other.volume_ +
+ other.area__ * mln::math::diff_abs(other.ref_level__, ref_level__);
+ // Member ref_level__ is not touched.
+ }
+
+ template <typename I>
+ inline
+ unsigned
+ volume<I>::to_result() const
+ {
+ return volume_;
+ }
+
+ template <typename I>
+ inline
+ void
+ volume<I>::set_value(unsigned v)
+ {
+ volume_ = v;
+ // Reset the other members.
+ ref_level__ = literal::zero;
+ area__ = 0;
+ }
+
+ template <typename I>
+ inline
+ bool
+ volume<I>::is_valid() const
+ {
+ return true;
+ }
+
+# endif // ! MLN_INCLUDE_ONLY
+
+ } // end of namespace mln::accu::shape
+
+ } // end of namespace mln::accu
+
+} // end of namespace mln
+
+
+#endif // ! MLN_ACCU_SHAPE_VOLUME_HH
Property changes on: trunk/milena/mln/accu/shape/volume.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/accu/shape/all.hh
===================================================================
--- trunk/milena/mln/accu/shape/all.hh (revision 0)
+++ trunk/milena/mln/accu/shape/all.hh (revision 4120)
@@ -0,0 +1,59 @@
+// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_SHAPE_ALL_HH
+# define MLN_ACCU_SHAPE_ALL_HH
+
+/// \file
+///
+/// File that includes all shape accumulator types.
+
+
+namespace mln
+{
+
+ namespace accu
+ {
+
+ namespace meta
+ {
+
+ /// Namespace of shape meta-accumulators.
+ namespace shape {}
+
+ } // end of namespace mln::accu::meta
+
+ /// Namespace of shape accumulators.
+ namespace shape {}
+
+ } // end of namespace mln::accu
+
+} // end of namespace mln
+
+# include <mln/accu/shape/volume.hh>
+# include <mln/accu/shape/height.hh>
+# include <mln/accu/shape/bbox.hh>
+
+#endif // ! MLN_ACCU_SHAPE_ALL_HH
Property changes on: trunk/milena/mln/accu/shape/all.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/accu/shape/height.hh
===================================================================
--- trunk/milena/mln/accu/shape/height.hh (revision 0)
+++ trunk/milena/mln/accu/shape/height.hh (revision 4120)
@@ -0,0 +1,212 @@
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_SHAPE_HEIGHT_HH
+# define MLN_ACCU_SHAPE_HEIGHT_HH
+
+/// \file
+///
+/// Define an accumulator that computes the height of a
+/// component through one of its pixels.
+/*
+This accumulator uses an mln::util::pix (pixel) to update the
+height information of the component.
+
+The class mln/accu/height is not a general-purpose accumulator;
+it is used to implement height-based connected filters.
+\see mln::morpho::closing::height
+\see mln::morpho::opening::height
+*/
+
+# include <mln/accu/internal/base.hh>
+# include <mln/core/concept/meta_accumulator.hh>
+
+# include <mln/util/pix.hh>
+# include <mln/math/min.hh>
+# include <mln/math/max.hh>
+
+namespace mln
+{
+
+ namespace accu
+ {
+
+ namespace shape
+ {
+
+ /// \brief Height accumulator.
+ ///
+ /// The parameter \p I is the image type on which the accumulator
+ /// of pixels is built.
+ ///
+ /// \ingroup modaccuimages
+ //
+ template <typename I>
+ struct height
+ : public mln::accu::internal::base< unsigned , height<I> >
+ {
+ /// The accumulated data type.
+ ///
+ /// The height of component is represented by the height of its
+ /// root pixel. See mln::morpho::closing_height and
+ /// mln::morpho::opening_height for actual uses of this
+ /// accumulator.
+ /// FIXME: Replaced by mln::morpho::attribute::height
+ typedef util::pix<I> argument;
+ /// The value type associated to the pixel type.
+ typedef typename argument::value value;
+
+ height();
+
+ /// Manipulators.
+ /// \{
+ void init();
+ void take(const argument&);
+ void take(const height<I>& other);
+
+ /// Force the value of the counter to \a h.
+ void set_value(unsigned h);
+ /// \}
+
+ /// Get the value of the accumulator.
+ unsigned to_result() const;
+
+ /// Check whether this accu is able to return a result.
+ /// Always true here.
+ bool is_valid() const;
+
+ protected:
+ /// The minimum level in the component.
+ value min_level__;
+ /// The maximum level in the component.
+ value max_level__;
+ /// The height of the component.
+ unsigned height_;
+ };
+
+
+ } // end of mln::accu::shape
+
+
+ namespace meta
+ {
+
+ namespace shape
+ {
+
+ /// Meta accumulator for height.
+ struct height : public Meta_Accumulator< height >
+ {
+ template <typename I>
+ struct with
+ {
+ typedef accu::shape::height<I> ret;
+ };
+ };
+
+ } // end of namespace mln::accu::meta::shape
+
+ } // end of namespace mln::accu::meta
+
+
+# ifndef MLN_INCLUDE_ONLY
+
+ namespace shape
+ {
+
+ template <typename I>
+ inline
+ height<I>::height()
+ {
+ init();
+ }
+
+ template <typename I>
+ inline
+ void
+ height<I>::init()
+ {
+ min_level__ = mln_max(value);
+ max_level__ = mln_min(value);
+ height_ = 0;
+ }
+
+ template <typename I>
+ inline
+ void
+ height<I>::take(const argument& t)
+ {
+ min_level__ = mln::math::min(min_level__, t.v());
+ max_level__ = mln::math::max(max_level__, t.v());
+ height_ = max_level__ - min_level__;
+ }
+
+ template <typename I>
+ inline
+ void
+ height<I>::take(const height<I>& other)
+ {
+ min_level__ = mln::math::min(min_level__, other.min_level__);
+ max_level__ = mln::math::max(max_level__, other.max_level__);
+ height_ = max_level__ - min_level__;
+ }
+
+ template <typename I>
+ inline
+ unsigned
+ height<I>::to_result() const
+ {
+ return height_;
+ }
+
+ template <typename I>
+ inline
+ void
+ height<I>::set_value(unsigned h)
+ {
+ height_ = h;
+ // Reset the other members.
+ min_level__ = mln_max(value);
+ max_level__ = mln_min(value);
+ }
+
+ template <typename I>
+ inline
+ bool
+ height<I>::is_valid() const
+ {
+ return true;
+ }
+
+# endif // ! MLN_INCLUDE_ONLY
+
+ } // end of namespace mln::accu::shape
+
+ } // end of namespace mln::accu
+
+} // end of namespace mln
+
+
+#endif // ! MLN_ACCU_SHAPE_HEIGHT_HH
Property changes on: trunk/milena/mln/accu/shape/height.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/accu/shape/bbox.hh
===================================================================
--- trunk/milena/mln/accu/shape/bbox.hh (revision 0)
+++ trunk/milena/mln/accu/shape/bbox.hh (revision 4120)
@@ -0,0 +1,236 @@
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_SHAPE_BBOX_HH
+# define MLN_ACCU_SHAPE_BBOX_HH
+
+/// \file
+///
+/// Define an accumulator that computes a bbox.
+
+# include <mln/core/site_set/box.hh>
+# include <mln/core/concept/meta_accumulator.hh>
+# include <mln/accu/internal/base.hh>
+
+
+namespace mln
+{
+
+ namespace accu
+ {
+
+ namespace shape
+ {
+
+
+ /// \brief Generic bounding box accumulator class.
+ ///
+ /// The parameter \c P is the type of points.
+ ///
+ /// \ingroup modaccusiteset
+ //
+ template <typename P>
+ struct bbox : public mln::accu::internal::base< const box<P>& , bbox<P> >
+ {
+ typedef P argument;
+
+ bbox();
+
+ /// Manipulators.
+ /// \{
+ void init();
+ void take_as_init_(const P& p);
+ void take(const P& p);
+ void take(const bbox<P>& other);
+ void take(const box<P>& b);
+ /// \}
+
+ /// Get the value of the accumulator.
+ const box<P>& to_result() const;
+
+ /// Check whether this accu is able to return a result.
+ /// Always true here.
+ bool is_valid() const;
+
+ protected:
+
+ bool is_valid_;
+ box<P> b_;
+ };
+
+
+ } // end of mln::accu::shape
+
+
+ namespace meta
+ {
+
+ namespace shape
+ {
+
+ /// Meta accumulator for bbox.
+ struct bbox : public Meta_Accumulator< bbox >
+ {
+ template <typename T>
+ struct with
+ {
+ typedef accu::shape::bbox<T> ret;
+ };
+ };
+
+ } // end of namespace mln::accu::meta::shape
+
+ } // end of namespace mln::accu::meta
+
+# ifndef MLN_INCLUDE_ONLY
+
+ namespace shape
+ {
+
+ template <typename P>
+ inline
+ bbox<P>::bbox()
+ {
+ init();
+ }
+
+ template <typename P>
+ inline
+ void
+ bbox<P>::init()
+ {
+ is_valid_ = false;
+ }
+
+ template <typename P>
+ inline
+ void
+ bbox<P>::take_as_init_(const P& p)
+ {
+ b_.pmin() = p;
+ b_.pmax() = p;
+ is_valid_ = true;
+ }
+
+ template <typename P>
+ inline
+ void
+ bbox<P>::take(const P& p)
+ {
+ if (! is_valid_)
+ {
+ b_.pmin() = p;
+ b_.pmax() = p;
+ is_valid_ = true;
+ return;
+ }
+ for (unsigned i = 0; i < P::dim; ++i)
+ if (p[i] < b_.pmin()[i])
+ b_.pmin()[i] = p[i];
+ else if (p[i] > b_.pmax()[i])
+ b_.pmax()[i] = p[i];
+ }
+
+ template <typename P>
+ inline
+ void
+ bbox<P>::take(const bbox<P>& other)
+ {
+ if (! other.is_valid_)
+ {
+ // no-op
+ return;
+ }
+ if (! this->is_valid_)
+ {
+ // 'other' makes '*this' valid
+ *this = other;
+ is_valid_ = true;
+ return;
+ }
+ // both are valids so:
+ const box<P>& o_b = other.b_;
+ for (unsigned i = 0; i < P::dim; ++i)
+ {
+ if (o_b.pmin()[i] < b_.pmin()[i])
+ b_.pmin()[i] = o_b.pmin()[i];
+ if (o_b.pmax()[i] > b_.pmax()[i])
+ b_.pmax()[i] = o_b.pmax()[i];
+ }
+ }
+
+ template <typename P>
+ inline
+ void
+ bbox<P>::take(const box<P>& b)
+ {
+ if (! b.is_valid())
+ {
+ // no-op
+ return;
+ }
+ if (! this->is_valid_)
+ {
+ b_ = b;
+ is_valid_ = true;
+ return;
+ }
+ // both are valids so:
+ for (unsigned i = 0; i < P::dim; ++i)
+ {
+ if (b.pmin()[i] < b_.pmin()[i])
+ b_.pmin()[i] = b.pmin()[i];
+ if (b.pmax()[i] > b_.pmax()[i])
+ b_.pmax()[i] = b.pmax()[i];
+ }
+ }
+
+ template <typename P>
+ inline
+ const box<P>&
+ bbox<P>::to_result() const
+ {
+ // mln_precondition(is_valid_);
+ return b_;
+ }
+
+ template <typename P>
+ inline
+ bool
+ bbox<P>::is_valid() const
+ {
+ return is_valid_;
+ }
+
+# endif // ! MLN_INCLUDE_ONLY
+
+ } // end of namespace mln::accu::shape
+
+ } // end of namespace mln::accu
+
+} // end of namespace mln
+
+
+#endif // ! MLN_ACCU_SHAPE_BBOX_HH
Property changes on: trunk/milena/mln/accu/shape/bbox.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/accu/all.hh
===================================================================
--- trunk/milena/mln/accu/all.hh (revision 4119)
+++ trunk/milena/mln/accu/all.hh (revision 4120)
@@ -53,11 +53,9 @@
}
-# include <mln/accu/bbox.hh>
# include <mln/accu/count_labels.hh>
# include <mln/accu/center.hh>
// << # include <mln/accu/count_adjacent_vertices.hh> >>
-# include <mln/accu/height.hh>
# include <mln/accu/histo.hh>
# include <mln/accu/label_used.hh>
# include <mln/accu/line.hh>
@@ -66,7 +64,6 @@
# include <mln/accu/rank.hh>
# include <mln/accu/rms.hh>
// << # include <mln/accu/tuple.hh> >>
-# include <mln/accu/volume.hh>
// Routines.
@@ -85,6 +82,7 @@
# include <mln/accu/site_set/all.hh>
# include <mln/accu/stat/all.hh>
# include <mln/accu/logic/all.hh>
-
+# include <mln/accu/math/all.hh>
+# include <mln/accu/shape/all.hh>
#endif // ! MLN_ACCU_ALL_HH
Index: trunk/milena/mln/accu/center.hh
===================================================================
--- trunk/milena/mln/accu/center.hh (revision 4119)
+++ trunk/milena/mln/accu/center.hh (revision 4120)
@@ -33,7 +33,7 @@
/// \todo Fix to_result() value when invalid...
# include <mln/accu/internal/base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
namespace mln
{
Index: trunk/milena/mln/accu/essential.hh
===================================================================
--- trunk/milena/mln/accu/essential.hh (revision 4119)
+++ trunk/milena/mln/accu/essential.hh (revision 4120)
@@ -30,7 +30,6 @@
///
/// File that includes the most useful accumulator types.
-# include <mln/accu/bbox.hh>
# include <mln/accu/center.hh>
# include <mln/accu/histo.hh>
# include <mln/accu/rank.hh>
@@ -38,5 +37,7 @@
# include <mln/accu/stat/essential.hh>
# include <mln/accu/image/essential.hh>
# include <mln/accu/site_set/essential.hh>
+# include <mln/accu/shape/essential.hh>
+# include <mln/accu/math/essential.hh>
#endif // ! MLN_ACCU_ESSENTIAL_HH
Index: trunk/milena/mln/accu/stat/all.hh
===================================================================
--- trunk/milena/mln/accu/stat/all.hh (revision 4119)
+++ trunk/milena/mln/accu/stat/all.hh (revision 4120)
@@ -63,5 +63,6 @@
# include <mln/accu/stat/min_max.hh>
# include <mln/accu/stat/mean.hh>
# include <mln/accu/stat/median_h.hh>
+# include <mln/accu/stat/median_alt.hh>
#endif // ! MLN_ACCU_STAT_ALL_HH
Index: trunk/milena/mln/accu/stat/median_alt.hh
===================================================================
--- trunk/milena/mln/accu/stat/median_alt.hh (revision 0)
+++ trunk/milena/mln/accu/stat/median_alt.hh (revision 4120)
@@ -0,0 +1,339 @@
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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_ACCU_STAT_MEDIAN_ALT_HH
+# define MLN_ACCU_STAT_MEDIAN_ALT_HH
+
+/// \file
+///
+/// Define alternative generic median accumulator class.
+
+# include <mln/accu/internal/base.hh>
+# include <mln/accu/histo.hh>
+
+
+namespace mln
+{
+
+ namespace accu
+ {
+
+ namespace stat
+ {
+
+
+ /// \brief Generic median_alt function based on histogram over a
+ /// value set with type \c S.
+ ///
+ /// \ingroup modaccuvalues
+ //
+ template <typename S>
+ struct median_alt : public mln::accu::internal::base< const mln_value(S)&, median_alt<S> >
+ {
+ typedef mln_value(S) argument;
+
+ median_alt(const Value_Set<S>& s);
+
+ /// Manipulators.
+ /// \{
+ void take(const argument& t);
+ void untake(const argument& t);
+ void init();
+ /// \}
+
+ /// Get the value of the accumulator.
+ const argument& to_result() const;
+
+ /// Check whether this accu is able to return a result.
+ /// Always true here.
+ bool is_valid() const;
+
+ // FIXME: remove
+ void debug__() const
+ {
+ std::cout << " i = " << i_
+ << " t = " << t_
+ << " s = " << sum_minus_ << " ; " << h_[i_] << " ; " << sum_plus_ << " = " << h_.sum()
+ << std::endl;
+ }
+
+ protected:
+
+ histo<S> h_;
+ /// derived from h_
+ const S& s_;
+
+ unsigned sum_minus_, sum_plus_;
+
+ /// the median index
+ unsigned i_;
+ /// the median argument
+ argument t_;
+
+ // Auxiliary methods
+ void go_minus_();
+ void go_plus_();
+ };
+
+ template <typename T>
+ struct median_alt_on : public median_alt< value::set<T> >
+ {
+ median_alt_on()
+ : median_alt< value::set<T> >(value::set<T>::the())
+ {
+ }
+ };
+
+ } // end of mln::accu::stat
+
+
+ namespace meta
+ {
+
+ namespace stat
+ {
+
+ /// Meta accumulator for median_alt.
+
+ template <typename T>
+ struct median_alt : public Meta_Accumulator< median_alt<T> >
+ {
+ median_alt(const Value_Set<T>& s_) : s(s_) {}
+
+ struct with
+ {
+ typedef accu::stat::median_alt<T> ret;
+ };
+
+ Value_Set<T> s;
+ };
+
+ } // end of namespace mln::accu::meta::stat
+
+ } // end of namespace mln::accu::meta
+
+
+ template <typename T>
+ stat::median_alt<T> unmeta(const meta::stat::median_alt<T>& m, T)
+ {
+ stat::median_alt<T> a(m.s);
+ return a;
+ }
+
+
+# ifndef MLN_INCLUDE_ONLY
+
+ namespace stat
+ {
+
+ template <typename S>
+ inline
+ median_alt<S>::median_alt(const Value_Set<S>& s)
+ : h_(s),
+ s_(h_.vset())
+ {
+ init();
+ }
+
+
+ template <typename S>
+ inline
+ void
+ median_alt<S>::take(const argument& t)
+ {
+ // update h_
+ h_.take(t);
+
+ // particular case:
+ // current state was initialization
+ if (h_[i_] == 0)
+ {
+ // std::cout << "init!" << std::endl;
+ i_ = s_.index_of(t);
+ t_ = t;
+ return;
+ }
+
+ // particular case:
+ // the median does not change
+ if (t == t_)
+ {
+ // std::cout << "no change!" << std::endl;
+ return;
+ }
+
+ // general case:
+
+ if (t < t_)
+ {
+ ++sum_minus_;
+ if (2 * sum_minus_ > h_.sum())
+ go_minus_();
+ }
+ else
+ // t > t_
+ {
+ ++sum_plus_;
+ if (2 * sum_plus_ > h_.sum())
+ go_plus_();
+ }
+ }
+
+
+ template <typename S>
+ inline
+ void
+ median_alt<S>::untake(const argument& t)
+ {
+ mln_precondition(h_(t) != 0);
+
+ // update h_
+ h_.untake(t);
+
+ // particular case:
+ // the only value has been removed
+ if (h_.sum() == 0)
+ {
+ init();
+ return;
+ }
+
+ // general case:
+ if (t < t_)
+ {
+ --sum_minus_;
+ if (2 * sum_plus_ > h_.sum())
+ go_plus_();
+ }
+ else if (t > t_)
+ {
+ --sum_plus_;
+ if (2 * sum_minus_ > h_.sum())
+ go_minus_();
+ }
+ else
+ // t == t_
+ {
+ if (h_[i_] == 0)
+ {
+ // go to the heaviest side
+ if (sum_plus_ > sum_minus_)
+ go_plus_();
+ else
+ go_minus_(); // default when both sides are balanced
+ }
+ else
+ {
+ if (2 * sum_plus_ > h_.sum())
+ go_plus_();
+ else if (2 * sum_minus_ > h_.sum())
+ go_minus_();
+ // else no change
+ }
+ }
+ }
+
+ template <typename S>
+ inline
+ void
+ median_alt<S>::init()
+ {
+ h_.init();
+ sum_minus_ = 0;
+ sum_plus_ = 0;
+ i_ = (mln_max(argument) - mln_min(argument)) / 2;
+ t_ = s_[i_];
+ }
+
+ template <typename S>
+ inline
+ const typename median_alt<S>::argument&
+ median_alt<S>::to_result() const
+ {
+ return t_;
+ }
+
+ template <typename S>
+ inline
+ bool
+ median_alt<S>::is_valid() const
+ {
+ return true;
+ }
+
+ template <typename S>
+ inline
+ void
+ median_alt<S>::go_minus_()
+ {
+ do
+ {
+ sum_plus_ += h_[i_];
+ do
+ --i_;
+ while (h_[i_] == 0);
+ sum_minus_ -= h_[i_];
+ }
+ while (2 * sum_minus_ > h_.sum());
+ t_ = s_[i_];
+ }
+
+
+ template <typename S>
+ inline
+ void
+ median_alt<S>::go_plus_()
+ {
+ do
+ {
+ sum_minus_ += h_[i_];
+ do
+ ++i_;
+ while (h_[i_] == 0);
+ sum_plus_ -= h_[i_];
+ }
+ while (2 * sum_plus_ > h_.sum());
+ t_ = s_[i_];
+ }
+
+ template <typename S>
+ inline
+ std::ostream& operator<<(std::ostream& ostr, const median_alt<S>& m)
+ {
+ m.debug__();
+ return ostr << m.to_result();
+ }
+
+
+# endif // ! MLN_INCLUDE_ONLY
+
+ } // end of namespace mln::accu::stat
+
+ } // end of namespace mln::accu
+
+} // end of namespace mln
+
+
+#endif // ! MLN_ACCU_STAT_MEDIAN_ALT_HH
Property changes on: trunk/milena/mln/accu/stat/median_alt.hh
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/mln/geom/bbox.hh
===================================================================
--- trunk/milena/mln/geom/bbox.hh (revision 4119)
+++ trunk/milena/mln/geom/bbox.hh (revision 4120)
@@ -44,7 +44,7 @@
# include <mln/core/concept/window.hh>
# include <mln/core/concept/weighted_window.hh>
# include <mln/literal/zero.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
namespace mln
@@ -149,7 +149,7 @@
trace::entering("geom::bbox");
typedef mln_psite(W) P;
- accu::bbox<P> b;
+ accu::shape::bbox<P> b;
P O = literal::origin;
mln_qiter(W) q(exact(win), O);
for_all(q)
Index: trunk/milena/sandbox/duhamel/mesh_p.hh
===================================================================
--- trunk/milena/sandbox/duhamel/mesh_p.hh (revision 4119)
+++ trunk/milena/sandbox/duhamel/mesh_p.hh (revision 4120)
@@ -4,7 +4,7 @@
# include <mln/core/concept/point.hh>
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/internal/site_iterator_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/graph.hh>
# include "mesh_psite.hh"
@@ -120,7 +120,7 @@
: gr_ (gr),
loc_ (loc)
{
- accu::bbox<P> a;
+ accu::shape::bbox<P> a;
for (unsigned i = 0; i < loc.size(); ++i)
a.take(loc[i]);
bb_ = a.to_result();
Index: trunk/milena/sandbox/duhamel/queue_p_fast.hh
===================================================================
--- trunk/milena/sandbox/duhamel/queue_p_fast.hh (revision 4119)
+++ trunk/milena/sandbox/duhamel/queue_p_fast.hh (revision 4120)
@@ -40,7 +40,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/vec_p_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
namespace mln
@@ -121,7 +121,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
};
Index: trunk/milena/sandbox/duhamel/queue_p_priority.hh
===================================================================
--- trunk/milena/sandbox/duhamel/queue_p_priority.hh (revision 4119)
+++ trunk/milena/sandbox/duhamel/queue_p_priority.hh (revision 4120)
@@ -41,7 +41,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/vec_p_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/queue_p.hh>
namespace mln
@@ -120,7 +120,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/fred/old/value.cc
===================================================================
--- trunk/milena/sandbox/fred/old/value.cc (revision 4119)
+++ trunk/milena/sandbox/fred/old/value.cc (revision 4120)
@@ -2,7 +2,7 @@
#include <mln/opt/at.hh>
#include <mln/debug/iota.hh>
#include <mln/debug/println.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/canvas/morpho/connected_filter.hh>
#include <mln/core/alias/neighb2d.hh>
#include "value_wrapper.hh"
@@ -20,5 +20,5 @@
for (int k = 0; k < 2; k++)
opt::at(a, i, j)[k] = 20 + (k ? i : j);
- debug::println(canvas::morpho::connected_filter(a, c4(), morpho::attribute::site_wrapper< accu::bbox<mln::point2d> >(), make::box2d(8, 8), true));
+ debug::println(canvas::morpho::connected_filter(a, c4(), morpho::attribute::site_wrapper< accu::shape::bbox<mln::point2d> >(), make::box2d(8, 8), true));
}
\ No newline at end of file
Index: trunk/milena/sandbox/fred/old/p2p/p2p_morpher.hh
===================================================================
--- trunk/milena/sandbox/fred/old/p2p/p2p_morpher.hh (revision 4119)
+++ trunk/milena/sandbox/fred/old/p2p/p2p_morpher.hh (revision 4120)
@@ -37,7 +37,7 @@
# include <mln/core/site_set/box.hh>
# include <mln/value/set.hh>
# include <mln/core/concept/function.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
namespace mln
{
@@ -181,7 +181,7 @@
a box. */
// Create transformed bounding box
- accu::bbox<P> tbox;
+ accu::shape::bbox<P> tbox;
tbox.take_as_init (fun (ima.domain ().pmin ()));
tbox.take (fun (ima.domain ().pmax ()));
@@ -223,7 +223,7 @@
typedef mln_psite(I) P;
// Create transformed bounding box
- accu::bbox<P> tbox;
+ accu::shape::bbox<P> tbox;
tbox.take_as_init (this->data_->funinv_ (this->data_->ima_.domain ().pmin ()));
tbox.take (this->data_->funinv_ (this->data_->ima_.domain ().pmax ()));
Index: trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast.hh (revision 4120)
@@ -42,7 +42,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/p_array_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_queue_fast.hh>
# include <trait/point_set.hh>
@@ -139,7 +139,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/pellegrin/set/core/p_bgraph.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_bgraph.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_bgraph.hh (revision 4120)
@@ -36,7 +36,7 @@
# include <mln/core/concept/point_site.hh>
# include <mln/core/internal/point_set_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/internal/boost_graph.hh>
# include <mln/core/image/bgraph_psite.hh>
# include <mln/core/site_set/p_bgraph_piter.hh>
@@ -134,7 +134,7 @@
mln_precondition(gr != 0);
// FIXME: Warning: if the underlying graph is updated later, this
// won't be taken into account by this p_bgraph!
- accu::bbox<P> a;
+ accu::shape::bbox<P> a;
for (node_iterators iter = boost::vertices(*gr_);
iter.first != iter.second;
Index: trunk/milena/sandbox/pellegrin/set/core/p_run.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_run.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_run.hh (revision 4120)
@@ -35,7 +35,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/internal/set_of.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <trait/point_set.hh>
@@ -109,7 +109,7 @@
protected:
- accu::bbox<P> bb_;
+ accu::shape::bbox<P> bb_;
// FIXME: Add invariant bb_.is_valid() <=> nsites() != 0
/// The first point of the run.
Index: trunk/milena/sandbox/pellegrin/set/core/p_line_graph.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_line_graph.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_line_graph.hh (revision 4120)
@@ -31,7 +31,7 @@
# include <mln/core/concept/point_site.hh>
# include <mln/core/internal/point_set_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/graph.hh>
# include <mln/core/image/line_graph_psite.hh>
# include <mln/core/site_set/p_line_graph_piter.hh>
@@ -126,7 +126,7 @@
// FIXME: Dummy initialization of bb_.
// // FIXME: Warning: if the underlying graph is updated later, this
// // won't be taken into account by this p_line_graph!
-// accu::bbox<point> a;
+// accu::shape::bbox<point> a;
// for (util::edge_id e = 0; e < nlines(); ++e)
// a.take(point(gr_.node_data(gr_.edge(e).n1()),
// gr_.node_data(gr_.edge(e).n2())));
Index: trunk/milena/sandbox/pellegrin/set/core/p_array.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_array.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_array.hh (revision 4120)
@@ -36,7 +36,7 @@
# include <vector>
# include <mln/core/internal/point_set_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <trait/point_set.hh>
@@ -116,7 +116,7 @@
protected:
std::vector<P> vect_;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void update_bb_() const;
Index: trunk/milena/sandbox/pellegrin/set/core/p_queue.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_queue.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_queue.hh (revision 4120)
@@ -40,7 +40,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/p_array_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <trait/point_set.hh>
@@ -137,7 +137,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/pellegrin/set/core/p_priority_queue.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_priority_queue.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_priority_queue.hh (revision 4120)
@@ -42,7 +42,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/p_array_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_queue.hh>
# include <trait/point_set.hh>
@@ -139,7 +139,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/pellegrin/set/core/p_runs.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_runs.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_runs.hh (revision 4120)
@@ -40,7 +40,7 @@
# include <mln/core/internal/site_iterator_base.hh>
# include <mln/core/runs_psite.hh>
# include <mln/core/site_set/p_run.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/lazy_set.hh>
# include <trait/point_set.hh>
@@ -120,7 +120,7 @@
util::lazy_set_<p_run<P> > con_;
/// Exact bounding box.
- accu::bbox<P> fb_;
+ accu::shape::bbox<P> fb_;
};
# ifndef MLN_INCLUDE_ONLY
Index: trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast_with_array.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast_with_array.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_priority_queue_fast_with_array.hh (revision 4120)
@@ -42,7 +42,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/p_array_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_queue_fast.hh>
# include <trait/point_set.hh>
@@ -139,7 +139,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/pellegrin/set/core/p_set.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_set.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_set.hh (revision 4120)
@@ -35,7 +35,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/internal/set_of.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_array.hh>
# include <trait/point_set.hh>
@@ -109,7 +109,7 @@
protected:
- accu::bbox<P> bb_;
+ accu::shape::bbox<P> bb_;
// FIXME: Add invariant bb_.is_valid() <=> nsites() != 0
};
Index: trunk/milena/sandbox/pellegrin/set/core/internal/multi_set.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/internal/multi_set.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/internal/multi_set.hh (revision 4120)
@@ -90,7 +90,7 @@
protected:
- accu::bbox<P> bb_;
+ accu::shape::bbox<P> bb_;
// FIXME: Add invariant bb_.is_valid() <=> nsites() != 0
};
Index: trunk/milena/sandbox/pellegrin/set/core/internal/uni_set.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/internal/uni_set.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/internal/uni_set.hh (revision 4120)
@@ -90,7 +90,7 @@
protected:
- accu::bbox<P> bb_;
+ accu::shape::bbox<P> bb_;
// FIXME: Add invariant bb_.is_valid() <=> nsites() != 0
};
Index: trunk/milena/sandbox/pellegrin/set/core/p_graph.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_graph.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_graph.hh (revision 4120)
@@ -31,7 +31,7 @@
# include <mln/core/concept/point_site.hh>
# include <mln/core/internal/point_set_base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/graph.hh>
# include <mln/core/image/graph_psite.hh>
# include <mln/core/site_set/p_graph_piter.hh>
@@ -131,7 +131,7 @@
{
// FIXME: Warning: if the underlying graph is updated later, this
// won't be taken into account by this p_graph!
- accu::bbox<P> a;
+ accu::shape::bbox<P> a;
for (unsigned i = 0; i < nsites(); ++i)
a.take(gr_.node_data(i));
bb_ = a.to_result();
Index: trunk/milena/sandbox/pellegrin/set/core/p_queue_fast.hh
===================================================================
--- trunk/milena/sandbox/pellegrin/set/core/p_queue_fast.hh (revision 4119)
+++ trunk/milena/sandbox/pellegrin/set/core/p_queue_fast.hh (revision 4120)
@@ -41,7 +41,7 @@
# include <mln/core/internal/point_set_base.hh>
# include <mln/core/p_array_piter.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <trait/point_set.hh>
@@ -138,7 +138,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
};
Index: trunk/milena/sandbox/nivault/extract_score.cc
===================================================================
--- trunk/milena/sandbox/nivault/extract_score.cc (revision 4119)
+++ trunk/milena/sandbox/nivault/extract_score.cc (revision 4120)
@@ -53,7 +53,7 @@
# include <mln/core/alias/neighb2d.hh>
# include <mln/accu/stat/mean.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/accu/p.hh>
# include <mln/accu/math/count.hh>
Index: trunk/milena/sandbox/nivault/extract_character.cc
===================================================================
--- trunk/milena/sandbox/nivault/extract_character.cc (revision 4119)
+++ trunk/milena/sandbox/nivault/extract_character.cc (revision 4120)
@@ -51,7 +51,7 @@
# include <mln/core/alias/neighb2d.hh>
# include <mln/accu/stat/mean.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/accu/p.hh>
# include <mln/accu/math/count.hh>
@@ -128,7 +128,7 @@
template <typename I, typename O>
void
extract_lines(I& text_image, O& output,
- std::vector< accu::bbox <point2d> >& v_bbox,
+ std::vector< accu::shape::bbox <point2d> >& v_bbox,
int limits)
{
typedef image2d<unsigned> I_LABEL;
@@ -143,7 +143,7 @@
{
bool ok = false;
int i = 0;
- accu::bbox<point2d> accu;
+ accu::shape::bbox<point2d> accu;
{
bool okk = true;
while (okk)
@@ -256,7 +256,7 @@
std::cout << "nb_labels = " << nb_labels << std::endl;
// Extraction of informations in the image (BoundingBox, Cardinality, ... ).
- std::vector< accu::bbox <point2d> > vec_bbox (nb_labels + 1);
+ std::vector< accu::shape::bbox <point2d> > vec_bbox (nb_labels + 1);
std::vector< accu::count_<point2d> > vec_card (nb_labels + 1);
mln_piter_(I_LABEL) p (label_image.domain ());
@@ -320,7 +320,7 @@
// unsigned nb_dilated_node_labels;
// I_LABEL label_image2 = labeling::blobs(bool_ima, c8(), nb_dilated_node_labels);
// std::cout << "nb_dilated_node_labels = " << nb_dilated_node_labels << std::endl;
-// std::vector< accu::bbox <point2d> > vec_bbox2 (nb_dilated_node_labels + 1);
+// std::vector< accu::shape::bbox <point2d> > vec_bbox2 (nb_dilated_node_labels + 1);
// // Extract area of text.
// mln_piter_(I_LABEL) pl (label_image.domain ());
Index: trunk/milena/sandbox/icdar/2009/hsc/clean_lines_with_grouped_bboxes.hh
===================================================================
--- trunk/milena/sandbox/icdar/2009/hsc/clean_lines_with_grouped_bboxes.hh (revision 4119)
+++ trunk/milena/sandbox/icdar/2009/hsc/clean_lines_with_grouped_bboxes.hh (revision 4120)
@@ -65,12 +65,12 @@
// mln_ch_value(L,LV) lbl = labeling::background(input, c8(), nlabels);
// util::array<box<mln_site(L)> >
-// bboxes = labeling::compute(accu::meta::bbox(), lbl, nlabels);
+// bboxes = labeling::compute(accu::meta::shape::bbox(), lbl, nlabels);
nlabels = text.nbboxes();
const image2d<value::label_16>& lbl = text.label_image();
util::array<box<mln_site(L)> >
- bboxes = labeling::compute(accu::meta::bbox(), lbl, nlabels);
+ bboxes = labeling::compute(accu::meta::shape::bbox(), lbl, nlabels);
text.bboxes() = bboxes;
scribo::debug::save_textbboxes_image(input, text.bboxes(), literal::red, "plop.ppm");
Index: trunk/milena/sandbox/icdar/2009/hsc/clean_input.hh
===================================================================
--- trunk/milena/sandbox/icdar/2009/hsc/clean_input.hh (revision 4119)
+++ trunk/milena/sandbox/icdar/2009/hsc/clean_input.hh (revision 4120)
@@ -5,7 +5,7 @@
#include <mln/labeling/background.hh>
#include <mln/labeling/compute.hh>
#include <mln/accu/math/count.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/fun/i2v/array.hh>
#include <mln/data/transform.hh>
@@ -23,7 +23,7 @@
L nlabels;
image2d<L> lab = labeling::background(input, c8(), nlabels);
util::array<unsigned> count = labeling::compute(accu::math::count<point2d>(), lab, nlabels);
- util::array<box2d> box = labeling::compute(accu::bbox<point2d>(), lab, nlabels);
+ util::array<box2d> box = labeling::compute(accu::shape::bbox<point2d>(), lab, nlabels);
fun::i2v::array<bool> ok(nlabels.next(), false); // default is text
ok(0) = true; // bg is 'white'
Index: trunk/milena/sandbox/icdar/2009/hsc/lines_to_boxes.cc
===================================================================
--- trunk/milena/sandbox/icdar/2009/hsc/lines_to_boxes.cc (revision 4119)
+++ trunk/milena/sandbox/icdar/2009/hsc/lines_to_boxes.cc (revision 4120)
@@ -44,7 +44,7 @@
label_8 n = unsigned(n_boxes);
mln_VAR(input_, violent_cast_image_<label_8>(input));
- util::array<box2d> boxes = labeling::compute(accu::meta::bbox(),
+ util::array<box2d> boxes = labeling::compute(accu::meta::shape::bbox(),
input_,
n);
Index: trunk/milena/sandbox/icdar/2009/hsc/get_line_images.hh
===================================================================
--- trunk/milena/sandbox/icdar/2009/hsc/get_line_images.hh (revision 4119)
+++ trunk/milena/sandbox/icdar/2009/hsc/get_line_images.hh (revision 4120)
@@ -10,7 +10,7 @@
#include <mln/data/fill.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
@@ -37,7 +37,7 @@
mln_precondition(lines.is_valid());
util::array<box<mln_site(L)> >
- bboxes = labeling::compute(accu::meta::bbox(), lines, nlines);
+ bboxes = labeling::compute(accu::meta::shape::bbox(), lines, nlines);
typedef mln_ch_value(L,bool) line_t;
util::array<line_t> result;
Index: trunk/milena/sandbox/icdar/2009/hsc/clean_lines.hh
===================================================================
--- trunk/milena/sandbox/icdar/2009/hsc/clean_lines.hh (revision 4119)
+++ trunk/milena/sandbox/icdar/2009/hsc/clean_lines.hh (revision 4120)
@@ -40,7 +40,7 @@
LV nlabels;
mln_ch_value(L,LV) lbl = labeling::background(input, c8(), nlabels);
- util::array<box<mln_site(L)> > bboxes = labeling::compute(accu::meta::bbox(), lbl, nlabels);
+ util::array<box<mln_site(L)> > bboxes = labeling::compute(accu::meta::shape::bbox(), lbl, nlabels);
/// Compute the most represented label for each component.
accu::label_maj<LV, mln_value(L)> accu(nlabels.next());
Index: trunk/milena/sandbox/jardonnet/n_cmpt/tikz.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/tikz.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/tikz.hh (revision 4120)
@@ -39,7 +39,7 @@
# include <mln/debug/println.hh>
# include <mln/debug/iota.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
@@ -109,7 +109,7 @@
typedef p_array<mln_psite(I)> S;
typedef mln_ch_value(I, value::int_u<16>) V;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_decreasing(ima);
morpho::tree::data<I,S> t(ima, sp, nbh);
@@ -153,7 +153,7 @@
typedef mln_psite(V) P;
//data
- mln_ch_value(V, accu::volume<V>) data(volume.domain());
+ mln_ch_value(V, accu::shape::volume<V>) data(volume.domain());
//deja_vu
mln_ch_value(V, bool) deja_vu(volume.domain());
Index: trunk/milena/sandbox/jardonnet/n_cmpt/nwst.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/nwst.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/nwst.hh (revision 4120)
@@ -38,7 +38,7 @@
# include <mln/literal/colors.hh>
# include <mln/io/ppm/save.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
Index: trunk/milena/sandbox/jardonnet/n_cmpt/test_attribute_watershed.cc
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/test_attribute_watershed.cc (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/test_attribute_watershed.cc (revision 4120)
@@ -9,7 +9,7 @@
#include <mln/morpho/meyer_wst.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/morpho/tree/data.hh>
#include <mln/morpho/tree/compute_attribute_image.hh>
@@ -47,7 +47,7 @@
// compute volume image
typedef p_array<mln_psite_(I)> S;
typedef mln_ch_value_(I,unsigned) V;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_decreasing(ima);
morpho::tree::data<I,S> t(ima, sp, c4());
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt2.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt2.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt2.hh (revision 4120)
@@ -31,7 +31,7 @@
# include <mln/data/fill.hh>
# include <mln/core/site_set/p_vaccess.hh>
# include <mln/data/sort_psites.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
# include <mln/value/int_u.hh>
@@ -73,7 +73,7 @@
// compute volume image
typedef p_array<mln_psite(I)> S;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_increasing(input);
morpho::tree::data<I,S> t(input, sp, c4());
image2d<unsigned> volume = morpho::tree::compute_attribute_image(A(), t);
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt3.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt3.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt3.hh (revision 4120)
@@ -34,7 +34,7 @@
# include <mln/debug/println.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
@@ -79,7 +79,7 @@
// compute volume image
typedef p_array<mln_psite(I)> S;
typedef mln_ch_value(I,unsigned) V;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_decreasing(ima);
morpho::tree::data<I,S> t(ima, sp, nbh);
@@ -108,7 +108,7 @@
// prepare union find
typedef mln_psite(V) P;
//data
- mln_ch_value(V, accu::volume<V>) data(volume.domain());
+ mln_ch_value(V, accu::shape::volume<V>) data(volume.domain());
//deja_vu
mln_ch_value(V, bool) deja_vu(volume.domain());
mln::data::fill(deja_vu, false);
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt4.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt4.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt4.hh (revision 4120)
@@ -34,7 +34,7 @@
# include <mln/debug/println.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
@@ -79,7 +79,7 @@
// compute volume image
typedef p_array<mln_psite(I)> S;
typedef mln_ch_value(I,unsigned) V;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_decreasing(ima);
morpho::tree::data<I,S> t(ima, sp, nbh);
@@ -109,7 +109,7 @@
// prepare union find
typedef mln_psite(V) P;
//data
- mln_ch_value(V, accu::volume<V>) data(volume.domain());
+ mln_ch_value(V, accu::shape::volume<V>) data(volume.domain());
//deja_vu
mln_ch_value(V, bool) deja_vu(volume.domain());
mln::data::fill(deja_vu, false);
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt5.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt5.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt5.hh (revision 4120)
@@ -35,7 +35,7 @@
# include <mln/debug/println.hh>
# include <mln/debug/iota.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
# include <mln/morpho/tree/data.hh>
# include <mln/morpho/tree/compute_attribute_image.hh>
@@ -79,7 +79,7 @@
typedef p_array<mln_psite(I)> S;
typedef mln_ch_value(I,unsigned) V;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
S sp = data::sort_psites_decreasing(ima);
morpho::tree::data<I,S> t(ima, sp, nbh);
@@ -117,7 +117,7 @@
typedef mln_psite(V) P;
//data
- mln_ch_value(V, accu::volume<V>) data(volume.domain());
+ mln_ch_value(V, accu::shape::volume<V>) data(volume.domain());
//deja_vu
mln_ch_value(V, bool) deja_vu(volume.domain());
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.cc
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.cc (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.cc (revision 4120)
@@ -7,7 +7,7 @@
#include <mln/io/pgm/load.hh>
#include <mln/io/pgm/save.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include "n_cmpt.hh"
Index: trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.hh
===================================================================
--- trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.hh (revision 4119)
+++ trunk/milena/sandbox/jardonnet/n_cmpt/n_cmpt.hh (revision 4120)
@@ -34,7 +34,7 @@
# include <mln/util/pix.hh>
# include <mln/data/sort_psites.hh>
# include <mln/accu/math/count.hh>
-# include <mln/accu/volume.hh>
+# include <mln/accu/shape/volume.hh>
namespace mln
{
@@ -75,7 +75,7 @@
// Local type.
typedef mln_psite(I) P;
- typedef accu::volume<I> A;
+ typedef accu::shape::volume<I> A;
//typedef accu::math::count<unsigned> A;
typedef mln_psite(I) P;
typedef p_array<P> S;
Index: trunk/milena/sandbox/garrigues/fllt/essai.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/essai.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/essai.cc (revision 4120)
@@ -4,7 +4,7 @@
#include <mln/core/image_if_value.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
@@ -36,7 +36,7 @@
// private:
// image2d<int_u8> ima_;
-// accu::bbox<point2d> bb_;
+// accu::shape::bbox<point2d> bb_;
// };
# define image_if_value_sub image_if_value<const sub_image<image2d<value::int_u8>, box2d> >
Index: trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.1.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.1.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.1.cc (revision 4120)
@@ -43,7 +43,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/io/pgm/save.hh>
@@ -160,7 +160,7 @@
arr_t* A = new arr_t();
arr_t* N = new arr_t();
- accu::bbox<mln_point(I)> R_box, N_box;
+ accu::shape::bbox<mln_point(I)> R_box, N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.3.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.3.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.3.cc (revision 4120)
@@ -44,7 +44,7 @@
#include <mln/data/compare.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/io/pgm/save.hh>
#include <mln/util/tree.hh>
@@ -344,7 +344,7 @@
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<mln_point(I)> R_box, N_box;
+ accu::shape::bbox<mln_point(I)> R_box, N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
unsigned cc_cpt = 0;
Index: trunk/milena/sandbox/garrigues/fllt/fllt_simple.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/fllt_simple.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/fllt_simple.cc (revision 4120)
@@ -49,7 +49,7 @@
#include <mln/data/compare.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/io/pgm/save.hh>
#include <mln/util/tree.hh>
@@ -462,7 +462,7 @@
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<mln_point(I)> R_box, N_box;
+ accu::shape::bbox<mln_point(I)> R_box, N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
unsigned cc_cpt = 0;
Index: trunk/milena/sandbox/garrigues/fllt/types.hh
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/types.hh (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/types.hh (revision 4120)
@@ -104,7 +104,7 @@
private:
image2d<value::int_u8> ima_;
unsigned nsites_;
- accu::bbox<point2d> bb_;
+ accu::shape::bbox<point2d> bb_;
};
Index: trunk/milena/sandbox/garrigues/fllt/fllt_theo.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/fllt_theo.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/fllt_theo.cc (revision 4120)
@@ -42,7 +42,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/io/pgm/save.hh>
@@ -110,7 +110,7 @@
arr_t A;
arr_t N[256];
- accu::bbox<mln_point(I)> R_box;
+ accu::shape::bbox<mln_point(I)> R_box;
data::fill(tagged, false);
mln_piter(I) min(input.domain());
Index: trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.2.cc
===================================================================
--- trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.2.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/fllt/fllt_simple.svg.2.cc (revision 4120)
@@ -43,7 +43,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/io/pgm/save.hh>
@@ -177,7 +177,7 @@
arr_t* A = new arr_t();
arr_t* N = new arr_t();
- accu::bbox<mln_point(I)> R_box, N_box;
+ accu::shape::bbox<mln_point(I)> R_box, N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/garrigues/factures/extract_array_highlight.cc
===================================================================
--- trunk/milena/sandbox/garrigues/factures/extract_array_highlight.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/factures/extract_array_highlight.cc (revision 4120)
@@ -66,7 +66,7 @@
image2d<unsigned> labels = labeling::value(in, true, c4(), nlabels);
// Get the caracteristics of the connected components.
- std::vector< accu::pair_< accu::bbox<point2d>, accu::count_<point2d> > > caracteristics(nlabels + 1);
+ std::vector< accu::pair_< accu::shape::bbox<point2d>, accu::count_<point2d> > > caracteristics(nlabels + 1);
mln_fwd_piter_(ima2d_unsigned) p(labels.domain());
for_all(p)
caracteristics[labels(p)].take(p);
Index: trunk/milena/sandbox/garrigues/factures/extract_array.cc
===================================================================
--- trunk/milena/sandbox/garrigues/factures/extract_array.cc (revision 4119)
+++ trunk/milena/sandbox/garrigues/factures/extract_array.cc (revision 4120)
@@ -70,7 +70,7 @@
image2d<unsigned> labels = labeling::value(bin, true, c4(), nlabels);
// Get the caracteristics of the connected components.
- std::vector< accu::pair_< accu::bbox<point2d>, accu::count_<point2d> > > caracteristics(nlabels);
+ std::vector< accu::pair_< accu::shape::bbox<point2d>, accu::count_<point2d> > > caracteristics(nlabels);
mln_fwd_piter_(ima2d_unsigned) p(labels.domain());
for_all(p)
caracteristics[labels(p)].take(p);
Index: trunk/milena/sandbox/abraham/mln/core/site_set/p_priority_queue.hh
===================================================================
--- trunk/milena/sandbox/abraham/mln/core/site_set/p_priority_queue.hh (revision 4119)
+++ trunk/milena/sandbox/abraham/mln/core/site_set/p_priority_queue.hh (revision 4120)
@@ -42,7 +42,7 @@
# include <mln/core/internal/site_set_base.hh>
# include <mln/core/site_set/p_array.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_queue.hh>
namespace mln
@@ -124,7 +124,7 @@
mutable bool vect_needs_update_;
void vect_update_() const;
- mutable accu::bbox<P> bb_;
+ mutable accu::shape::bbox<P> bb_;
mutable bool bb_needs_update_;
void bb_update_() const;
Index: trunk/milena/sandbox/inim/2010/boxes/boxes.cc
===================================================================
--- trunk/milena/sandbox/inim/2010/boxes/boxes.cc (revision 4119)
+++ trunk/milena/sandbox/inim/2010/boxes/boxes.cc (revision 4120)
@@ -88,7 +88,7 @@
mln::util::array<unsigned>& array)
{
/// Accumulator array
- mln::util::array< accu::bbox<mln_site(I)> > tboxes;
+ mln::util::array< accu::shape::bbox<mln_site(I)> > tboxes;
tboxes.resize(text.bboxes().nelements());
/// Adding bounding boxes to accumulator
Index: trunk/milena/sandbox/inim/2010/rag/center_weight.hh
===================================================================
--- trunk/milena/sandbox/inim/2010/rag/center_weight.hh (revision 4119)
+++ trunk/milena/sandbox/inim/2010/rag/center_weight.hh (revision 4120)
@@ -36,7 +36,7 @@
/// \todo Fix to_result() value when invalid...
# include <mln/accu/internal/base.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/util/couple.hh>
namespace mln
Index: trunk/milena/sandbox/theo/p_runs__with_dedicated_piter.hh
===================================================================
--- trunk/milena/sandbox/theo/p_runs__with_dedicated_piter.hh (revision 4119)
+++ trunk/milena/sandbox/theo/p_runs__with_dedicated_piter.hh (revision 4120)
@@ -33,7 +33,7 @@
* \brief Definition of a set of point runs.
*/
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/core/site_set/p_run.hh>
# include <mln/core/p_double.hh>
# include <mln/core/internal/piter_adaptor.hh>
@@ -158,7 +158,7 @@
unsigned nsites_;
/// Bounding box accumulator.
- accu::bbox<P> b_;
+ accu::shape::bbox<P> b_;
/// Set of runs.
util::set< p_run<P> > run_;
Index: trunk/milena/sandbox/theo/fllt.svg.6.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt.svg.6.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt.svg.6.cc (revision 4120)
@@ -48,7 +48,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -576,7 +576,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
bool touch_border_of_image = false;
unsigned n_step_1 = 0, n_step_3 = 0, n_comps = 0, n_holes = 0;
Index: trunk/milena/sandbox/theo/esiee/laurent/ismm09/trash.hh
===================================================================
--- trunk/milena/sandbox/theo/esiee/laurent/ismm09/trash.hh (revision 4119)
+++ trunk/milena/sandbox/theo/esiee/laurent/ismm09/trash.hh (revision 4120)
@@ -100,7 +100,7 @@
// }
// // accu::math::count< util::pix<g_t> > a_;
-// accu::height<g_t> a_;
+// accu::shape::height<g_t> a_;
// compute_attribute_extincted(g, cplx2d::e2e(), a_,
// w);
Index: trunk/milena/sandbox/theo/fllt/fllt.hh
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.hh (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.hh (revision 4120)
@@ -52,7 +52,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -400,7 +400,7 @@
image2d< fllt_node(P, V)* >& smallest_shapes,
int in_R,
int in_N,
- accu::bbox<P>& N_box,
+ accu::shape::bbox<P>& N_box,
p_array<P>* N[257],
const V& g,
unsigned& n_comps)
@@ -608,7 +608,7 @@
arr_t* N[257];
for (unsigned i = 0; i < 257; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
unsigned n_step_1 = 0, n_step_3 = 0, n_step_4c = 0, sum4c = 0,
n_comps = 0, n_holes = 0, n_browsed = 0, n_find_root = 0,
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.1.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.1.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.1.cc (revision 4120)
@@ -40,7 +40,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/literal/black.hh>
#include <mln/literal/white.hh>
@@ -116,7 +116,7 @@
arr_t A;
arr_t N[256];
- accu::bbox<mln_point(I)> R_box;
+ accu::shape::bbox<mln_point(I)> R_box;
// Step 1.
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.7.hh
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.7.hh (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.7.hh (revision 4120)
@@ -54,7 +54,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -493,7 +493,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
bool touch_border_of_image = false;
unsigned n_step_1 = 0, n_step_3 = 0, n_step_4c = 0, n_comps = 0, n_holes = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.2.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.2.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.2.cc (revision 4120)
@@ -41,7 +41,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/literal/black.hh>
@@ -163,7 +163,7 @@
R.reserve(input.nsites());
arr_t N[256];
- accu::bbox<mln_point(I)> R_box;
+ accu::shape::bbox<mln_point(I)> R_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.3.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.3.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.3.cc (revision 4120)
@@ -42,7 +42,7 @@
#include <mln/data/fill.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/literal/black.hh>
@@ -168,7 +168,7 @@
typedef p_array<mln_point(I)> arr_t;
arr_t A;
arr_t N[256];
- accu::bbox<mln_point(I)> N_box;
+ accu::shape::bbox<mln_point(I)> N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.4.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.4.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.4.cc (revision 4120)
@@ -43,7 +43,7 @@
#include <mln/data/compare.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -173,7 +173,7 @@
typedef p_array<mln_point(I)> arr_t;
arr_t A;
arr_t N[256];
- accu::bbox<mln_point(I)> N_box;
+ accu::shape::bbox<mln_point(I)> N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.5.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.5.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.5.cc (revision 4120)
@@ -43,7 +43,7 @@
#include <mln/data/compare.hh>
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -175,7 +175,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<mln_point(I)> N_box;
+ accu::shape::bbox<mln_point(I)> N_box;
unsigned n_step_1 = 0, n_step_3 = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt.svg.6.cc
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt.svg.6.cc (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt.svg.6.cc (revision 4120)
@@ -48,7 +48,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -573,7 +573,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
bool touch_border_of_image = false;
unsigned n_step_1 = 0, n_step_3 = 0, n_comps = 0, n_holes = 0;
Index: trunk/milena/sandbox/theo/fllt/fllt_test.hh
===================================================================
--- trunk/milena/sandbox/theo/fllt/fllt_test.hh (revision 4119)
+++ trunk/milena/sandbox/theo/fllt/fllt_test.hh (revision 4120)
@@ -50,7 +50,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -522,7 +522,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
bool touch_border_of_image = false;
unsigned n_step_1 = 0, n_step_3 = 0, n_step_4c = 0, n_comps = 0, n_holes = 0;
Index: trunk/milena/sandbox/theo/fllt.svg.7.hh
===================================================================
--- trunk/milena/sandbox/theo/fllt.svg.7.hh (revision 4119)
+++ trunk/milena/sandbox/theo/fllt.svg.7.hh (revision 4120)
@@ -52,7 +52,7 @@
#include <mln/debug/println.hh>
#include <mln/labeling/regional_minima.hh>
#include <mln/labeling/regional_maxima.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/geom/bbox.hh>
#include <mln/pw/all.hh>
@@ -485,7 +485,7 @@
arr_t* N[256];
for (unsigned i = 0; i < 256; ++i)
N[i] = new arr_t();
- accu::bbox<P> N_box;
+ accu::shape::bbox<P> N_box;
bool touch_border_of_image = false;
unsigned n_step_1 = 0, n_step_3 = 0, n_step_4c = 0, n_comps = 0, n_holes = 0;
Index: trunk/milena/sandbox/theo/tufa_2008/wst_f_equal_wst_a.cc
===================================================================
--- trunk/milena/sandbox/theo/tufa_2008/wst_f_equal_wst_a.cc (revision 4119)
+++ trunk/milena/sandbox/theo/tufa_2008/wst_f_equal_wst_a.cc (revision 4120)
@@ -42,7 +42,7 @@
#include <mln/core/alias/neighb2d.hh>
#include <mln/morpho/tree/data.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/morpho/tree/compute_attribute_image.hh>
#include <mln/morpho/meyer_wst.hh>
@@ -119,7 +119,7 @@
// We get a min-tree so that we can perform morphological closings.
morpho::tree::data<I,S> t(f, s, c4());
- accu::volume<I> vol;
+ accu::shape::volume<I> vol;
image2d<unsigned> a = morpho::tree::compute_attribute_image(vol, t);
labeling::regional_minima(a, c4(), n);
Index: trunk/milena/sandbox/theo/tufa_2008/experiment.cc
===================================================================
--- trunk/milena/sandbox/theo/tufa_2008/experiment.cc (revision 4119)
+++ trunk/milena/sandbox/theo/tufa_2008/experiment.cc (revision 4120)
@@ -42,7 +42,7 @@
#include <mln/core/alias/neighb2d.hh>
#include <mln/morpho/tree/data.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/win/disk2d.hh>
#include <mln/morpho/tree/compute_attribute_image.hh>
@@ -112,7 +112,7 @@
// We get a min-tree so that we can perform morphological closings.
morpho::tree::data<I,S> t(f, s, c4());
- accu::volume<I> attr;
+ accu::shape::volume<I> attr;
image2d<unsigned> a = morpho::tree::compute_attribute_image(attr, t);
io::pgm::save(data::stretch(int_u8(), a),
Index: trunk/milena/sandbox/theo/tufa_2008/n_cmpt.cc
===================================================================
--- trunk/milena/sandbox/theo/tufa_2008/n_cmpt.cc (revision 4119)
+++ trunk/milena/sandbox/theo/tufa_2008/n_cmpt.cc (revision 4120)
@@ -41,7 +41,7 @@
#include <mln/morpho/tree/data.hh>
#include <mln/morpho/tree/compute_attribute_image.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/accu/math/count.hh>
@@ -256,7 +256,7 @@
unsigned n = std::atoi(argv[2]);
accu::math::count< util::pix<I> > acc;
- // accu::volume<I> acc;
+ // accu::shape::volume<I> acc;
image2d<int_u8> g = n_cmpt(acc, f, c4(), n + 1);
debug::println(g);
Index: trunk/milena/sandbox/theo/tufa_2008/filter.cc
===================================================================
--- trunk/milena/sandbox/theo/tufa_2008/filter.cc (revision 4119)
+++ trunk/milena/sandbox/theo/tufa_2008/filter.cc (revision 4120)
@@ -150,7 +150,7 @@
// We get a min-tree so that we can perform morphological closings.
morpho::tree::data<I,S> t(f, s, c4());
- accu::volume<I> attr;
+ accu::shape::volume<I> attr;
image2d<unsigned> a = morpho::tree::compute_attribute_image(attr, t);
Index: trunk/milena/sandbox/theo/color/segment_rgb_edges.cc
===================================================================
--- trunk/milena/sandbox/theo/color/segment_rgb_edges.cc (revision 4119)
+++ trunk/milena/sandbox/theo/color/segment_rgb_edges.cc (revision 4120)
@@ -23,7 +23,7 @@
#include <mln/labeling/compute.hh>
#include <mln/accu/math/count.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/accu/stat/mean.hh>
#include "sum_pix.hh"
@@ -284,7 +284,7 @@
// accu::math::count< util::pix<I> > a_;
- // accu::volume<I> a_;
+ // accu::shape::volume<I> a_;
// accu::sum_pix< util::pix<I> > a_;
blen_image = input_;
Index: trunk/milena/sandbox/theo/color/filter_blen_rgb_edges.cc
===================================================================
--- trunk/milena/sandbox/theo/color/filter_blen_rgb_edges.cc (revision 4119)
+++ trunk/milena/sandbox/theo/color/filter_blen_rgb_edges.cc (revision 4120)
@@ -26,7 +26,7 @@
#include <mln/labeling/compute.hh>
#include <mln/accu/math/count.hh>
-#include <mln/accu/volume.hh>
+#include <mln/accu/shape/volume.hh>
#include <mln/accu/stat/mean.hh>
#include "sum_pix.hh"
Index: trunk/milena/sandbox/theo/color/segment_gl_pixels.cc
===================================================================
--- trunk/milena/sandbox/theo/color/segment_gl_pixels.cc (revision 4119)
+++ trunk/milena/sandbox/theo/color/segment_gl_pixels.cc (revision 4120)
@@ -17,7 +17,7 @@
#include <mln/morpho/elementary/gradient.hh>
#include <mln/morpho/meyer_wst.hh>
-#include <mln/accu/height.hh>
+#include <mln/accu/shape/height.hh>
#include "segment.hh"
@@ -88,8 +88,8 @@
// accu::math::count< util::pix<I> > a_;
// accu::sum_pix< util::pix<I> > a_;
- // accu::volume<I> a_;
- accu::height<I> a_;
+ // accu::shape::volume<I> a_;
+ accu::shape::height<I> a_;
// It seems that both extinction and changing attributes only
// properly works for the 'height' attribute.
Index: trunk/milena/sandbox/theo/color/blen_pix.hh
===================================================================
--- trunk/milena/sandbox/theo/color/blen_pix.hh (revision 4119)
+++ trunk/milena/sandbox/theo/color/blen_pix.hh (revision 4120)
@@ -34,7 +34,7 @@
/// Define an accumulator that computes a sum.
# include <mln/core/concept/meta_accumulator.hh>
-# include <mln/accu/bbox.hh>
+# include <mln/accu/shape/bbox.hh>
# include <mln/accu/internal/base.hh>
# include <mln/util/pix.hh> // To prevent accu::blen_pix to work on pixels (ambiguous).
@@ -81,19 +81,19 @@
/// Always true here.
bool is_valid() const;
- const accu::bbox<point3d>& b() const
+ const accu::shape::bbox<point3d>& b() const
{
return b_;
}
- accu::bbox<point3d>& b()
+ accu::shape::bbox<point3d>& b()
{
return b_;
}
protected:
- accu::bbox<point3d> b_;
+ accu::shape::bbox<point3d> b_;
unsigned len_;
};
Index: trunk/milena/sandbox/laurent/ismm2009.cc
===================================================================
--- trunk/milena/sandbox/laurent/ismm2009.cc (revision 4119)
+++ trunk/milena/sandbox/laurent/ismm2009.cc (revision 4120)
@@ -20,7 +20,7 @@
#include <mln/labeling/compute.hh>
#include <mln/accu/math/count.hh>
-#include <mln/accu/height.hh>
+#include <mln/accu/shape/height.hh>
#include <mln/util/timer.hh>
#include <mln/util/fibonacci_heap.hh>
Index: trunk/milena/tests/core/image/vertex_image.cc
===================================================================
--- trunk/milena/tests/core/image/vertex_image.cc (revision 4119)
+++ trunk/milena/tests/core/image/vertex_image.cc (revision 4120)
@@ -28,7 +28,7 @@
#include <mln/core/image/vertex_image.hh>
#include <mln/make/vertex_image.hh>
#include <mln/core/image/image2d.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/fun/i2v/array.hh>
#include <mln/util/graph.hh>
#include <mln/debug/draw_graph.hh>
@@ -121,7 +121,7 @@
// FIXME: Move this part to a special test case.
// Compute the bounding box of 'ima'.
- accu::bbox<point2d> a;
+ accu::shape::bbox<point2d> a;
mln_piter_(ima_t) p(ima.domain());
for_all(p)
a.take(p);
Index: trunk/milena/tests/core/image/graph_image.cc
===================================================================
--- trunk/milena/tests/core/image/graph_image.cc (revision 4119)
+++ trunk/milena/tests/core/image/graph_image.cc (revision 4120)
@@ -31,7 +31,7 @@
#include <mln/core/concept/function.hh>
#include <mln/core/neighb.hh>
#include <mln/core/var.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/fun/i2v/array.hh>
#include <mln/util/graph.hh>
#include <mln/debug/draw_graph.hh>
@@ -126,7 +126,7 @@
// FIXME: Move this part to a special test case.
// Compute the bounding box of 'ima'.
- accu::bbox<point2d> a;
+ accu::shape::bbox<point2d> a;
mln_piter_(ima_t) p(ima.domain());
for_all(p)
a.take(p);
Index: trunk/milena/tests/core/image/edge_image.cc
===================================================================
--- trunk/milena/tests/core/image/edge_image.cc (revision 4119)
+++ trunk/milena/tests/core/image/edge_image.cc (revision 4120)
@@ -27,7 +27,7 @@
#include <mln/core/image/edge_image.hh>
#include <mln/core/image/image2d.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/fun/i2v/array.hh>
#include <mln/util/graph.hh>
#include <mln/util/site_pair.hh>
@@ -115,7 +115,7 @@
// FIXME: Move this part to a special test case.
// Compute the bounding box of 'ima'.
- accu::bbox<point2d> a;
+ accu::shape::bbox<point2d> a;
mln_piter_(ima_t) p(ima.domain());
for_all(p)
{
Index: trunk/milena/tests/core/image/imorph/labeled_image.cc
===================================================================
--- trunk/milena/tests/core/image/imorph/labeled_image.cc (revision 4119)
+++ trunk/milena/tests/core/image/imorph/labeled_image.cc (revision 4120)
@@ -31,7 +31,7 @@
#include <mln/value/label_8.hh>
#include <mln/accu/pair.hh>
#include <mln/accu/center.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
Index: trunk/milena/tests/accu/bbox.cc (deleted)
===================================================================
Index: trunk/milena/tests/accu/shape/Makefile.am
===================================================================
--- trunk/milena/tests/accu/shape/Makefile.am (revision 0)
+++ trunk/milena/tests/accu/shape/Makefile.am (revision 4120)
@@ -0,0 +1,27 @@
+# Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE).
+#
+# This file is part of Olena.
+#
+# Olena is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation, version 2 of the License.
+#
+# Olena is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Olena. If not, see <http://www.gnu.org/licenses/>.
+#
+
+## Process this file through Automake to create Makefile.in.
+
+include $(top_srcdir)/milena/tests/tests.mk
+
+check_PROGRAMS = \
+ bbox
+
+bbox_SOURCES = bbox.cc
+
+TESTS = $(check_PROGRAMS)
Property changes on: trunk/milena/tests/accu/shape/Makefile.am
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/tests/accu/shape/bbox.cc
===================================================================
--- trunk/milena/tests/accu/shape/bbox.cc (revision 0)
+++ trunk/milena/tests/accu/shape/bbox.cc (revision 4120)
@@ -0,0 +1,42 @@
+// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project 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.
+
+#include <mln/core/alias/point2d.hh>
+#include <mln/core/alias/box2d.hh>
+
+#include <mln/accu/shape/bbox.hh>
+
+int main()
+{
+ using namespace mln;
+ accu::shape::bbox<point2d> accu;
+
+ accu.take_as_init(point2d(0,0));
+ accu.take(point2d(0,5));
+ accu.take(point2d(5,0));
+ accu.take(point2d(5,5));
+
+ mln_assertion(accu.to_result() == make::box2d(0,0,5,5));
+}
Property changes on: trunk/milena/tests/accu/shape/bbox.cc
___________________________________________________________________
Added: svn:mergeinfo
Index: trunk/milena/tests/accu/Makefile.am
===================================================================
--- trunk/milena/tests/accu/Makefile.am (revision 4119)
+++ trunk/milena/tests/accu/Makefile.am (revision 4120)
@@ -23,11 +23,11 @@
image \
site_set \
stat \
- math
+ math \
+ shape
check_PROGRAMS = \
all_accus \
- bbox \
compute \
histo \
line \
@@ -43,7 +43,6 @@
tuple
all_accus_SOURCES = all_accus.cc
-bbox_SOURCES = bbox.cc
compute_SOURCES = compute.cc
histo_SOURCES = histo.cc
line_SOURCES = line.cc
Index: trunk/milena/tests/accu/all_accus.cc
===================================================================
--- trunk/milena/tests/accu/all_accus.cc (revision 4119)
+++ trunk/milena/tests/accu/all_accus.cc (revision 4120)
@@ -32,7 +32,7 @@
{
using namespace mln;
- accu::bbox<point2d> b;
+ accu::shape::bbox<point2d> b;
accu::math::count<int> c;
accu::histo<bool> h;
accu::stat::max<int> ma;
Index: trunk/milena/tests/morpho/closing/leveling.cc
===================================================================
--- trunk/milena/tests/morpho/closing/leveling.cc (revision 4119)
+++ trunk/milena/tests/morpho/closing/leveling.cc (revision 4120)
@@ -50,7 +50,7 @@
// FIXME: Can't be called with new implementation. (When_pix = not_ok).
// {
-// accu::volume<I> a;
+// accu::shape::volume<I> a;
// io::pgm::save(morpho::closing::leveling(lena, c4(), a, 10),
// "ref.pgm");
// }
Index: trunk/milena/tests/morpho/opening/leveling.cc
===================================================================
--- trunk/milena/tests/morpho/opening/leveling.cc (revision 4119)
+++ trunk/milena/tests/morpho/opening/leveling.cc (revision 4120)
@@ -50,7 +50,7 @@
// FIXME: Can't be called with new implementation. (When_pix = not_ok).
// {
-// accu::volume<I> a;
+// accu::shape::volume<I> a;
// io::pgm::save(morpho::opening::leveling(lena, c4(), a, 10),
// "ref.pgm");
// }
Index: trunk/milena/tests/morpho/graph_image_morpho.cc
===================================================================
--- trunk/milena/tests/morpho/graph_image_morpho.cc (revision 4119)
+++ trunk/milena/tests/morpho/graph_image_morpho.cc (revision 4120)
@@ -23,7 +23,7 @@
// exception does not however invalidate any other reasons why the
// executable file might be covered by the GNU General Public License.
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/core/alias/box2d.hh>
#include <mln/core/alias/point2d.hh>
@@ -105,7 +105,7 @@
// Compute the bounding box of IMA.
/* FIXME: mln::graph_image should automatically feature a bbox when
its parameter P is akin to a point. */
- accu::bbox<point2d> a;
+ accu::shape::bbox<point2d> a;
for (unsigned i = 0; i < sites.size(); ++i)
a.take(sites(i));
box2d bbox = a.to_result();
Index: trunk/milena/doc/examples/split/labeling-compute-3.cc
===================================================================
--- trunk/milena/doc/examples/split/labeling-compute-3.cc (revision 4119)
+++ trunk/milena/doc/examples/split/labeling-compute-3.cc (revision 4120)
@@ -1,4 +1,4 @@
util::array<box2d> boxes =
- labeling::compute(accu::meta::bbox(),
+ labeling::compute(accu::meta::shape::bbox(),
lbl,
nlabels);
Index: trunk/milena/doc/examples/labeling-compute.cc
===================================================================
--- trunk/milena/doc/examples/labeling-compute.cc (revision 4119)
+++ trunk/milena/doc/examples/labeling-compute.cc (revision 4120)
@@ -9,7 +9,7 @@
#include <mln/util/array.hh>
-#include <mln/accu/bbox.hh>
+#include <mln/accu/shape/bbox.hh>
#include <mln/value/label_8.hh>
@@ -45,7 +45,7 @@
// \{
util::array<box2d> boxes =
- labeling::compute(accu::meta::bbox(),
+ labeling::compute(accu::meta::shape::bbox(),
lbl,
nlabels);
// \}
1
0
* all.hh,
* binarization/simple.hh,
* core/all.hh,
* core/central_sites.hh,
* core/erase_objects.hh,
* core/object_image.hh,
* debug/all.hh,
* debug/save_label_image.hh,
* debug/save_linked_bboxes_image.hh,
* debug/save_table_image.hh,
* draw/all.hh,
* draw/bounding_box_links.hh,
* draw/bounding_boxes.hh,
* extract/lines_discontinued.hh,
* extract/primitive/canvas.hh,
* extract/primitive/cells.hh,
* extract/primitive/lines_discontinued.hh,
* extract/primitive/lines_h_discontinued.hh,
* extract/primitive/lines_h_thick.hh,
* extract/primitive/lines_thick.hh,
* extract/primitive/lines_v_discontinued.hh,
* extract/primitive/lines_v_thick.hh,
* extract/primitive/objects.hh,
* filter/all.hh,
* filter/large_objects.hh,
* filter/small_objects.hh,
* filter/thick_objects.hh,
* filter/thin_objects.hh,
* make/all.hh,
* make/debug_filename.hh,
* make/influence_zone_graph.hh,
* make/text.hh,
* preprocessing/all.hh,
* preprocessing/unskew.hh,
* table/align_lines_horizontaly.hh,
* table/align_lines_verticaly.hh,
* table/all.hh,
* table/connect_horizontal_lines.hh,
* table/connect_vertical_lines.hh,
* table/erase.hh,
* table/extract.hh,
* table/internal/align_lines.hh,
* table/internal/all.hh,
* table/internal/connect_lines.hh,
* table/internal/repair_lines.hh,
* table/rebuild.hh,
* table/repair_horizontal_lines.hh,
* table/repair_vertical_lines.hh,
* text/all.hh,
* text/clean.hh,
* text/extract_lines.hh,
* text/grouping/all.hh,
* text/grouping/group_from_double_link.hh,
* text/grouping/group_from_graph.hh,
* text/grouping/group_from_single_link.hh,
* text/grouping/group_with_graph.hh,
* text/grouping/group_with_several_left_links.hh,
* text/grouping/group_with_several_right_links.hh,
* text/grouping/group_with_single_left_link.hh,
* text/grouping/group_with_single_right_link.hh,
* text/grouping/internal/all.hh,
* text/grouping/internal/find_graph_link.hh,
* text/grouping/internal/find_left_link.hh,
* text/grouping/internal/find_right_link.hh,
* text/grouping/internal/find_root.hh,
* text/grouping/internal/init_link_array.hh,
* text/grouping/internal/is_link_valid.hh,
* text/grouping/internal/update_graph_link.hh,
* text/grouping/internal/update_link_array.hh,
* text/recognition.hh,
* util/all.hh,
* util/text.hh: do not pass argument to \file command in
documentation.
---
scribo/ChangeLog | 78 ++++++++++++++++++++
scribo/all.hh | 2 +-
scribo/binarization/simple.hh | 2 +-
scribo/core/all.hh | 2 +-
scribo/core/central_sites.hh | 2 +-
scribo/core/erase_objects.hh | 2 +-
scribo/core/object_image.hh | 2 +-
scribo/debug/all.hh | 2 +-
scribo/debug/save_label_image.hh | 2 +-
scribo/debug/save_linked_bboxes_image.hh | 2 +-
scribo/debug/save_table_image.hh | 2 +-
scribo/draw/all.hh | 2 +-
scribo/draw/bounding_box_links.hh | 2 +-
scribo/draw/bounding_boxes.hh | 2 +-
scribo/extract/lines_discontinued.hh | 2 +-
scribo/extract/primitive/canvas.hh | 2 +-
scribo/extract/primitive/cells.hh | 2 +-
scribo/extract/primitive/lines_discontinued.hh | 2 +-
scribo/extract/primitive/lines_h_discontinued.hh | 2 +-
scribo/extract/primitive/lines_h_thick.hh | 2 +-
scribo/extract/primitive/lines_thick.hh | 2 +-
scribo/extract/primitive/lines_v_discontinued.hh | 2 +-
scribo/extract/primitive/lines_v_thick.hh | 2 +-
scribo/extract/primitive/objects.hh | 2 +-
scribo/filter/all.hh | 2 +-
scribo/filter/large_objects.hh | 2 +-
scribo/filter/small_objects.hh | 2 +-
scribo/filter/thick_objects.hh | 2 +-
scribo/filter/thin_objects.hh | 2 +-
scribo/make/all.hh | 2 +-
scribo/make/debug_filename.hh | 2 +-
scribo/make/influence_zone_graph.hh | 2 +-
scribo/make/text.hh | 2 +-
scribo/preprocessing/all.hh | 2 +-
scribo/preprocessing/unskew.hh | 2 +-
scribo/table/align_lines_horizontaly.hh | 2 +-
scribo/table/align_lines_verticaly.hh | 2 +-
scribo/table/all.hh | 2 +-
scribo/table/connect_horizontal_lines.hh | 2 +-
scribo/table/connect_vertical_lines.hh | 2 +-
scribo/table/erase.hh | 2 +-
scribo/table/extract.hh | 2 +-
scribo/table/internal/align_lines.hh | 2 +-
scribo/table/internal/all.hh | 2 +-
scribo/table/internal/connect_lines.hh | 2 +-
scribo/table/internal/repair_lines.hh | 2 +-
scribo/table/rebuild.hh | 2 +-
scribo/table/repair_horizontal_lines.hh | 2 +-
scribo/table/repair_vertical_lines.hh | 2 +-
scribo/text/all.hh | 2 +-
scribo/text/clean.hh | 2 +-
scribo/text/extract_lines.hh | 2 +-
scribo/text/grouping/all.hh | 2 +-
scribo/text/grouping/group_from_double_link.hh | 2 +-
scribo/text/grouping/group_from_graph.hh | 2 +-
scribo/text/grouping/group_from_single_link.hh | 2 +-
scribo/text/grouping/group_with_graph.hh | 2 +-
.../text/grouping/group_with_several_left_links.hh | 2 +-
.../grouping/group_with_several_right_links.hh | 2 +-
.../text/grouping/group_with_single_left_link.hh | 2 +-
.../text/grouping/group_with_single_right_link.hh | 2 +-
scribo/text/grouping/internal/all.hh | 2 +-
scribo/text/grouping/internal/find_graph_link.hh | 2 +-
scribo/text/grouping/internal/find_left_link.hh | 2 +-
scribo/text/grouping/internal/find_right_link.hh | 2 +-
scribo/text/grouping/internal/find_root.hh | 2 +-
scribo/text/grouping/internal/init_link_array.hh | 2 +-
scribo/text/grouping/internal/is_link_valid.hh | 2 +-
scribo/text/grouping/internal/update_graph_link.hh | 2 +-
scribo/text/grouping/internal/update_link_array.hh | 2 +-
scribo/text/recognition.hh | 2 +-
scribo/util/all.hh | 2 +-
scribo/util/text.hh | 2 +-
73 files changed, 150 insertions(+), 72 deletions(-)
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index 3d9c37d..208a2b5 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,5 +1,83 @@
2009-06-12 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
+ Clear \file command arguments in Scribo.
+
+ * all.hh,
+ * binarization/simple.hh,
+ * core/all.hh,
+ * core/central_sites.hh,
+ * core/erase_objects.hh,
+ * core/object_image.hh,
+ * debug/all.hh,
+ * debug/save_label_image.hh,
+ * debug/save_linked_bboxes_image.hh,
+ * debug/save_table_image.hh,
+ * draw/all.hh,
+ * draw/bounding_box_links.hh,
+ * draw/bounding_boxes.hh,
+ * extract/lines_discontinued.hh,
+ * extract/primitive/canvas.hh,
+ * extract/primitive/cells.hh,
+ * extract/primitive/lines_discontinued.hh,
+ * extract/primitive/lines_h_discontinued.hh,
+ * extract/primitive/lines_h_thick.hh,
+ * extract/primitive/lines_thick.hh,
+ * extract/primitive/lines_v_discontinued.hh,
+ * extract/primitive/lines_v_thick.hh,
+ * extract/primitive/objects.hh,
+ * filter/all.hh,
+ * filter/large_objects.hh,
+ * filter/small_objects.hh,
+ * filter/thick_objects.hh,
+ * filter/thin_objects.hh,
+ * make/all.hh,
+ * make/debug_filename.hh,
+ * make/influence_zone_graph.hh,
+ * make/text.hh,
+ * preprocessing/all.hh,
+ * preprocessing/unskew.hh,
+ * table/align_lines_horizontaly.hh,
+ * table/align_lines_verticaly.hh,
+ * table/all.hh,
+ * table/connect_horizontal_lines.hh,
+ * table/connect_vertical_lines.hh,
+ * table/erase.hh,
+ * table/extract.hh,
+ * table/internal/align_lines.hh,
+ * table/internal/all.hh,
+ * table/internal/connect_lines.hh,
+ * table/internal/repair_lines.hh,
+ * table/rebuild.hh,
+ * table/repair_horizontal_lines.hh,
+ * table/repair_vertical_lines.hh,
+ * text/all.hh,
+ * text/clean.hh,
+ * text/extract_lines.hh,
+ * text/grouping/all.hh,
+ * text/grouping/group_from_double_link.hh,
+ * text/grouping/group_from_graph.hh,
+ * text/grouping/group_from_single_link.hh,
+ * text/grouping/group_with_graph.hh,
+ * text/grouping/group_with_several_left_links.hh,
+ * text/grouping/group_with_several_right_links.hh,
+ * text/grouping/group_with_single_left_link.hh,
+ * text/grouping/group_with_single_right_link.hh,
+ * text/grouping/internal/all.hh,
+ * text/grouping/internal/find_graph_link.hh,
+ * text/grouping/internal/find_left_link.hh,
+ * text/grouping/internal/find_right_link.hh,
+ * text/grouping/internal/find_root.hh,
+ * text/grouping/internal/init_link_array.hh,
+ * text/grouping/internal/is_link_valid.hh,
+ * text/grouping/internal/update_graph_link.hh,
+ * text/grouping/internal/update_link_array.hh,
+ * text/recognition.hh,
+ * util/all.hh,
+ * util/text.hh: do not pass argument to \file command in
+ documentation.
+
+2009-06-12 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
+
Compile more examples in Scribo.
* src/Makefile.am: compile new examples.
diff --git a/scribo/all.hh b/scribo/all.hh
index 0245b67..8fadbb2 100644
--- a/scribo/all.hh
+++ b/scribo/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_ALL_HH
# define SCRIBO_ALL_HH
-/// \file scribo/all.hh
+/// \file
///
/// Include all headers located in scribo/.
diff --git a/scribo/binarization/simple.hh b/scribo/binarization/simple.hh
index e36003e..5980508 100644
--- a/scribo/binarization/simple.hh
+++ b/scribo/binarization/simple.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_BINARIZATION_SIMPLE_HH
# define SCRIBO_BINARIZATION_SIMPLE_HH
-/// \file scribo/binarization/simple.hh
+/// \file
///
/// Simple binarization of a gray-level document.
diff --git a/scribo/core/all.hh b/scribo/core/all.hh
index 76177b0..b98bf04 100644
--- a/scribo/core/all.hh
+++ b/scribo/core/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_CORE_ALL_HH
# define SCRIBO_CORE_ALL_HH
-/// \file scribo/core/all.hh
+/// \file
///
/// Include all headers located in scribo/core.
diff --git a/scribo/core/central_sites.hh b/scribo/core/central_sites.hh
index 22dd726..275ba51 100644
--- a/scribo/core/central_sites.hh
+++ b/scribo/core/central_sites.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_CORE_CENTRAL_SITES_HH
# define SCRIBO_CORE_CENTRAL_SITES_HH
-/// \file scribo/core/central_sites.hh
+/// \file
///
/// Returns the edge central sites of a box.
diff --git a/scribo/core/erase_objects.hh b/scribo/core/erase_objects.hh
index da003b1..59a1346 100644
--- a/scribo/core/erase_objects.hh
+++ b/scribo/core/erase_objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_CORE_ERASE_OBJECTS_HH
# define SCRIBO_CORE_ERASE_OBJECTS_HH
-/// \file scribo/core/erase_objects.hh
+/// \file
///
/// Remove the content of bounding boxes from an image.
diff --git a/scribo/core/object_image.hh b/scribo/core/object_image.hh
index bc41785..a920680 100644
--- a/scribo/core/object_image.hh
+++ b/scribo/core/object_image.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_CORE_OBJECT_IMAGE_HH
# define SCRIBO_CORE_OBJECT_IMAGE_HH
-/// \file scribo/core/object_image.hh
+/// \file
///
/// FIXME.
diff --git a/scribo/debug/all.hh b/scribo/debug/all.hh
index a6f3294..f7ffe1c 100644
--- a/scribo/debug/all.hh
+++ b/scribo/debug/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DEBUG_ALL_HH
# define SCRIBO_DEBUG_ALL_HH
-/// \file scribo/debug/all.hh
+/// \file
///
/// Include all headers located in scribo/debug.
diff --git a/scribo/debug/save_label_image.hh b/scribo/debug/save_label_image.hh
index b35dbc5..b41325e 100644
--- a/scribo/debug/save_label_image.hh
+++ b/scribo/debug/save_label_image.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_MAKE_DEBUG_SAVE_LABEL_IMAGE_HH
# define SCRIBO_MAKE_DEBUG_SAVE_LABEL_IMAGE_HH
-/// \file scribo/debug/save_label_image.hh
+/// \file
///
/// Save a labeled image in a color image.
diff --git a/scribo/debug/save_linked_bboxes_image.hh b/scribo/debug/save_linked_bboxes_image.hh
index 91d58b4..f9ec7c9 100644
--- a/scribo/debug/save_linked_bboxes_image.hh
+++ b/scribo/debug/save_linked_bboxes_image.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DEBUG_SAVE_LINKED_BBOXES_IMAGE_HH
# define SCRIBO_DEBUG_SAVE_LINKED_BBOXES_IMAGE_HH
-/// \file scribo/draw/bounding_boxes.hh
+/// \file
///
/// Save the bounding box links image.
diff --git a/scribo/debug/save_table_image.hh b/scribo/debug/save_table_image.hh
index 2ac67af..746d162 100644
--- a/scribo/debug/save_table_image.hh
+++ b/scribo/debug/save_table_image.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DEBUG_SAVE_TABLE_IMAGE_HH
# define SCRIBO_DEBUG_SAVE_TABLE_IMAGE_HH
-/// \file scribo/debug/save_table_image.hh
+/// \file
///
/// Save table line bounding boxes in an image.
diff --git a/scribo/draw/all.hh b/scribo/draw/all.hh
index 784fb02..e8ff2a7 100644
--- a/scribo/draw/all.hh
+++ b/scribo/draw/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DRAW_ALL_HH
# define SCRIBO_DRAW_ALL_HH
-/// \file scribo/draw/all.hh
+/// \file
///
/// Include all headers located in scribo/draw.
diff --git a/scribo/draw/bounding_box_links.hh b/scribo/draw/bounding_box_links.hh
index 4b18c7f..c1dc997 100644
--- a/scribo/draw/bounding_box_links.hh
+++ b/scribo/draw/bounding_box_links.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DRAW_BOUNDING_BOX_LINKS_HH
# define SCRIBO_DRAW_BOUNDING_BOX_LINKS_HH
-/// \file scribo/draw/bounding_boxes.hh
+/// \file
///
/// Draw a list of bounding box links.
diff --git a/scribo/draw/bounding_boxes.hh b/scribo/draw/bounding_boxes.hh
index 6e71bec..6cbc6d9 100644
--- a/scribo/draw/bounding_boxes.hh
+++ b/scribo/draw/bounding_boxes.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_DRAW_BOUNDING_BOXES_HH
# define SCRIBO_DRAW_BOUNDING_BOXES_HH
-/// \file scribo/draw/bounding_boxes.hh
+/// \file
///
/// Draw a list of bounding boxes and their associated mass center.
diff --git a/scribo/extract/lines_discontinued.hh b/scribo/extract/lines_discontinued.hh
index b790320..9697ecd 100644
--- a/scribo/extract/lines_discontinued.hh
+++ b/scribo/extract/lines_discontinued.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_DISCONTINUED_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_DISCONTINUED_HH
-/// \file scribo/primitive/lines/lines_discontinued.hh
+/// \file
///
/// Extract discontinued lines in a binary image.
diff --git a/scribo/extract/primitive/canvas.hh b/scribo/extract/primitive/canvas.hh
index 0c78662..dbd1de4 100644
--- a/scribo/extract/primitive/canvas.hh
+++ b/scribo/extract/primitive/canvas.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_CANVAS_HH
# define SCRIBO_EXTRACT_PRIMITIVE_CANVAS_HH
-/// \file scribo/primitive/canvas.hh
+/// \file
///
/// Rebuild a table from its line bounding boxes.
diff --git a/scribo/extract/primitive/cells.hh b/scribo/extract/primitive/cells.hh
index 764d228..08a4e49 100644
--- a/scribo/extract/primitive/cells.hh
+++ b/scribo/extract/primitive/cells.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_CELLS_HH
# define SCRIBO_EXTRACT_PRIMITIVE_CELLS_HH
-/// \file scribo/primitive/cells.hh
+/// \file
///
/// Extract canvas cells from a binary image.
diff --git a/scribo/extract/primitive/lines_discontinued.hh b/scribo/extract/primitive/lines_discontinued.hh
index 50792fa..0e87efd 100644
--- a/scribo/extract/primitive/lines_discontinued.hh
+++ b/scribo/extract/primitive/lines_discontinued.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_DISCONTINUED_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_DISCONTINUED_HH
-/// \file scribo/primitive/lines/lines_discontinued.hh
+/// \file
///
/// Extract discontinued lines in a binary image.
diff --git a/scribo/extract/primitive/lines_h_discontinued.hh b/scribo/extract/primitive/lines_h_discontinued.hh
index c6666b8..ce62fde 100644
--- a/scribo/extract/primitive/lines_h_discontinued.hh
+++ b/scribo/extract/primitive/lines_h_discontinued.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_H_DISCONTINUED_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_H_DISCONTINUED_HH
-/// \file scribo/primitive/lines_h_discontinued.hh
+/// \file
///
/// Extract horizontal discontinued lines.
diff --git a/scribo/extract/primitive/lines_h_thick.hh b/scribo/extract/primitive/lines_h_thick.hh
index f7cbf18..74ea67e 100644
--- a/scribo/extract/primitive/lines_h_thick.hh
+++ b/scribo/extract/primitive/lines_h_thick.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_H_THICK_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_H_THICK_HH
-/// \file scribo/primitive/lines_h_thick.hh
+/// \file
///
/// Extract horizontal thick lines.
diff --git a/scribo/extract/primitive/lines_thick.hh b/scribo/extract/primitive/lines_thick.hh
index 1eaa707..5d88cc5 100644
--- a/scribo/extract/primitive/lines_thick.hh
+++ b/scribo/extract/primitive/lines_thick.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_THICK_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_THICK_HH
-/// \file scribo/primitive/lines_thick.hh
+/// \file
///
/// Extract thick lines in a binary image.
diff --git a/scribo/extract/primitive/lines_v_discontinued.hh b/scribo/extract/primitive/lines_v_discontinued.hh
index 374e5d1..0755d2b 100644
--- a/scribo/extract/primitive/lines_v_discontinued.hh
+++ b/scribo/extract/primitive/lines_v_discontinued.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_V_DISCONTINUED_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_V_DISCONTINUED_HH
-/// \file scribo/primitive/lines_v_discontinued.hh
+/// \file
///
/// Extract vertical discontinued lines.
diff --git a/scribo/extract/primitive/lines_v_thick.hh b/scribo/extract/primitive/lines_v_thick.hh
index a3290a5..19cec92 100644
--- a/scribo/extract/primitive/lines_v_thick.hh
+++ b/scribo/extract/primitive/lines_v_thick.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_LINES_V_THICK_HH
# define SCRIBO_EXTRACT_PRIMITIVE_LINES_V_THICK_HH
-/// \file scribo/primitive/lines_v_thick.hh
+/// \file
///
/// Extract vertical thick lines.
diff --git a/scribo/extract/primitive/objects.hh b/scribo/extract/primitive/objects.hh
index a90f5b4..28fbf85 100644
--- a/scribo/extract/primitive/objects.hh
+++ b/scribo/extract/primitive/objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_EXTRACT_PRIMITIVE_OBJECTS_HH
# define SCRIBO_EXTRACT_PRIMITIVE_OBJECTS_HH
-/// \file scribo/core/objects.hh
+/// \file
///
/// Extract objects in a binary image.
diff --git a/scribo/filter/all.hh b/scribo/filter/all.hh
index ba8ac7f..9a1eed5 100644
--- a/scribo/filter/all.hh
+++ b/scribo/filter/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_FILTER_ALL_HH
# define SCRIBO_FILTER_ALL_HH
-/// \file scribo/filter/all.hh
+/// \file
///
/// Include all headers located in scribo/filter.
diff --git a/scribo/filter/large_objects.hh b/scribo/filter/large_objects.hh
index 125cbf0..336cdb7 100644
--- a/scribo/filter/large_objects.hh
+++ b/scribo/filter/large_objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_FILTER_LARGE_OBJECTS_HH
# define SCRIBO_FILTER_LARGE_OBJECTS_HH
-/// \file scribo/filter/large_objects.hh
+/// \file
///
/// Remove large objects in a binary image.
diff --git a/scribo/filter/small_objects.hh b/scribo/filter/small_objects.hh
index 898f60b..006827a 100644
--- a/scribo/filter/small_objects.hh
+++ b/scribo/filter/small_objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_FILTER_SMALL_OBJECTS_HH
# define SCRIBO_FILTER_SMALL_OBJECTS_HH
-/// \file scribo/filter/small_objects.hh
+/// \file
///
/// Remove small objects in a binary image.
diff --git a/scribo/filter/thick_objects.hh b/scribo/filter/thick_objects.hh
index 7147221..d9443cd 100644
--- a/scribo/filter/thick_objects.hh
+++ b/scribo/filter/thick_objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_FILTER_THICK_OBJECTS_HH
# define SCRIBO_FILTER_THICK_OBJECTS_HH
-/// \file scribo/filter/thick_objects.hh
+/// \file
///
/// Remove too thick objects.
diff --git a/scribo/filter/thin_objects.hh b/scribo/filter/thin_objects.hh
index 1a40c49..7fc56ba 100644
--- a/scribo/filter/thin_objects.hh
+++ b/scribo/filter/thin_objects.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_FILTER_THIN_OBJECTS_HH
# define SCRIBO_FILTER_THIN_OBJECTS_HH
-/// \file scribo/filter/thin_objects.hh
+/// \file
///
/// Remove too thin objects.
diff --git a/scribo/make/all.hh b/scribo/make/all.hh
index c69928a..8fb3ca0 100644
--- a/scribo/make/all.hh
+++ b/scribo/make/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_MAKE_ALL_HH
# define SCRIBO_MAKE_ALL_HH
-/// \file scribo/make/all.hh
+/// \file
///
/// Include all headers located in scribo/make.
diff --git a/scribo/make/debug_filename.hh b/scribo/make/debug_filename.hh
index 8cd8562..0aadbfe 100644
--- a/scribo/make/debug_filename.hh
+++ b/scribo/make/debug_filename.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_MAKE_DEBUG_FILENAME_HH
# define SCRIBO_MAKE_DEBUG_FILENAME_HH
-/// \file scribo/make/debug_filename.hh
+/// \file
///
/// Construct and returns a formated output file name.
diff --git a/scribo/make/influence_zone_graph.hh b/scribo/make/influence_zone_graph.hh
index 3df9f71..ca0d6fb 100644
--- a/scribo/make/influence_zone_graph.hh
+++ b/scribo/make/influence_zone_graph.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_MAKE_INFLUENCE_ZONE_GRAPH_HH
# define SCRIBO_MAKE_INFLUENCE_ZONE_GRAPH_HH
-/// \file scribo/make/influence_zone_graph.hh
+/// \file
///
/// Create a region adjacency graph from the influence zone image
/// of binary image.
diff --git a/scribo/make/text.hh b/scribo/make/text.hh
index c47508b..4551266 100644
--- a/scribo/make/text.hh
+++ b/scribo/make/text.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_MAKE_TEXT_HH
# define SCRIBO_MAKE_TEXT_HH
-/// \file scribo/make/text.hh
+/// \file
///
/// Construct a util::text.
diff --git a/scribo/preprocessing/all.hh b/scribo/preprocessing/all.hh
index 942e01c..93974cf 100644
--- a/scribo/preprocessing/all.hh
+++ b/scribo/preprocessing/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_PREPROCESSING_ALL_HH
# define SCRIBO_PREPROCESSING_ALL_HH
-/// \file scribo/preprocessing/all.hh
+/// \file
///
/// Include all headers located in scribo/preprocessing.
diff --git a/scribo/preprocessing/unskew.hh b/scribo/preprocessing/unskew.hh
index ba7c405..2563c25 100644
--- a/scribo/preprocessing/unskew.hh
+++ b/scribo/preprocessing/unskew.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_UNSKEW_HOUGH_HH
# define SCRIBO_UNSKEW_HOUGH_HH
-/// \file scribo/preprocessing/unskew.hh
+/// \file
///
/// Unskew an image.
diff --git a/scribo/table/align_lines_horizontaly.hh b/scribo/table/align_lines_horizontaly.hh
index b205b97..cf776ae 100644
--- a/scribo/table/align_lines_horizontaly.hh
+++ b/scribo/table/align_lines_horizontaly.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_ALIGN_LINES_HORIZONTALY_HH
# define SCRIBO_TABLE_ALIGN_LINES_HORIZONTALY_HH
-/// \file scribo/table/align_lines_horizontaly.hh
+/// \file
///
/// Align line bounding boxes horizontaly.
diff --git a/scribo/table/align_lines_verticaly.hh b/scribo/table/align_lines_verticaly.hh
index f7138bc..11770d6 100644
--- a/scribo/table/align_lines_verticaly.hh
+++ b/scribo/table/align_lines_verticaly.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_ALIGN_LINES_VERTICALY_HH
# define SCRIBO_TABLE_ALIGN_LINES_VERTICALY_HH
-/// \file scribo/table/align_lines_verticaly.hh
+/// \file
///
/// Align line bounding boxes verticaly.
diff --git a/scribo/table/all.hh b/scribo/table/all.hh
index 186af77..967fd7b 100644
--- a/scribo/table/all.hh
+++ b/scribo/table/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_ALL_HH
# define SCRIBO_TABLE_ALL_HH
-/// \file scribo/table/all.hh
+/// \file
///
/// Include all headers located in scribo/table.
diff --git a/scribo/table/connect_horizontal_lines.hh b/scribo/table/connect_horizontal_lines.hh
index 45cc826..78088fc 100644
--- a/scribo/table/connect_horizontal_lines.hh
+++ b/scribo/table/connect_horizontal_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_CONNECT_HORIZONTAL_LINES_HH
# define SCRIBO_TABLE_CONNECT_HORIZONTAL_LINES_HH
-/// \file scribo/table/connect_horizontal_lines.hh
+/// \file
///
/// Connect horizontal lines with the new aligned columns.
///
diff --git a/scribo/table/connect_vertical_lines.hh b/scribo/table/connect_vertical_lines.hh
index 4b1423c..f885601 100644
--- a/scribo/table/connect_vertical_lines.hh
+++ b/scribo/table/connect_vertical_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_CONNECT_VERTICAL_LINES_HH
# define SCRIBO_TABLE_CONNECT_VERTICAL_LINES_HH
-/// \file scribo/table/connect_vertical_lines.hh
+/// \file
///
/// Connect vertical lines with aligned rows.
///
diff --git a/scribo/table/erase.hh b/scribo/table/erase.hh
index 91c4228..7cc9461 100644
--- a/scribo/table/erase.hh
+++ b/scribo/table/erase.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_ERASE_HH
# define SCRIBO_TABLE_ERASE_HH
-/// \file scribo/table/erase.hh
+/// \file
///
/// \brief Erase the table lines in an image.
diff --git a/scribo/table/extract.hh b/scribo/table/extract.hh
index f117603..c09909b 100644
--- a/scribo/table/extract.hh
+++ b/scribo/table/extract.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_EXTRACT_HH
# define SCRIBO_TABLE_EXTRACT_HH
-/// \file scribo/table/extract.hh
+/// \file
///
/// Extract tables from a binary image.
/// Use arbitrary criterions.
diff --git a/scribo/table/internal/align_lines.hh b/scribo/table/internal/align_lines.hh
index 8ab2e8b..5ea50e2 100644
--- a/scribo/table/internal/align_lines.hh
+++ b/scribo/table/internal/align_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_INTERNAL_ALIGN_LINES_HH
# define SCRIBO_TABLE_INTERNAL_ALIGN_LINES_HH
-/// \file scribo/table/internal/align_lines.hh
+/// \file
///
/// Align table lines verticaly or horizontaly.
diff --git a/scribo/table/internal/all.hh b/scribo/table/internal/all.hh
index e4600de..f632f27 100644
--- a/scribo/table/internal/all.hh
+++ b/scribo/table/internal/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_INTERNAL_ALL_HH
# define SCRIBO_TABLE_INTERNAL_ALL_HH
-/// \file scribo/table/internal/all.hh
+/// \file
///
/// Include all headers located in scribo/table/internal.
diff --git a/scribo/table/internal/connect_lines.hh b/scribo/table/internal/connect_lines.hh
index 5c01c0f..b2f9273 100644
--- a/scribo/table/internal/connect_lines.hh
+++ b/scribo/table/internal/connect_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_INTERNAL_CONNECT_LINES_HH
# define SCRIBO_TABLE_INTERNAL_CONNECT_LINES_HH
-/// \file scribo/table/connect_vertical_lines.hh
+/// \file
///
/// Connect vertical lines with aligned rows.
diff --git a/scribo/table/internal/repair_lines.hh b/scribo/table/internal/repair_lines.hh
index fa7138a..28a737f 100644
--- a/scribo/table/internal/repair_lines.hh
+++ b/scribo/table/internal/repair_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_INTERNAL_REPAIR_LINES_HH
# define SCRIBO_TABLE_INTERNAL_REPAIR_LINES_HH
-/// \file scribo/table/internal/repair_lines.hh
+/// \file
///
/// Repair lines which have small discontinuities.
diff --git a/scribo/table/rebuild.hh b/scribo/table/rebuild.hh
index 6bfefbf..c4029cf 100644
--- a/scribo/table/rebuild.hh
+++ b/scribo/table/rebuild.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_REBUILD_HH
# define SCRIBO_TABLE_REBUILD_HH
-/// \file scribo/table/rebuild.hh
+/// \file
///
/// Rebuild a table from its line bounding boxes.
diff --git a/scribo/table/repair_horizontal_lines.hh b/scribo/table/repair_horizontal_lines.hh
index 6fc3ba1..e6713a0 100644
--- a/scribo/table/repair_horizontal_lines.hh
+++ b/scribo/table/repair_horizontal_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_REPAIR_HORIZONTAL_LINES_HH
# define SCRIBO_TABLE_REPAIR_HORIZONTAL_LINES_HH
-/// \file scribo/table/repair_horizontal_lines.hh
+/// \file
///
/// Repair horizontal lines which have small discontinuities.
///
diff --git a/scribo/table/repair_vertical_lines.hh b/scribo/table/repair_vertical_lines.hh
index 38ba7f6..e9e8f4b 100644
--- a/scribo/table/repair_vertical_lines.hh
+++ b/scribo/table/repair_vertical_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TABLE_REPAIR_VERTICAL_LINES_HH
# define SCRIBO_TABLE_REPAIR_VERTICAL_LINES_HH
-/// \file scribo/table/repair_vertical_lines.hh
+/// \file
///
/// Repair vertical lines which have small discontinuities.
///
diff --git a/scribo/text/all.hh b/scribo/text/all.hh
index d269ebb..000d5b9 100644
--- a/scribo/text/all.hh
+++ b/scribo/text/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_ALL_HH
# define SCRIBO_TEXT_ALL_HH
-/// \file scribo/text/all.hh
+/// \file
///
/// Include all headers located in scribo/text.
diff --git a/scribo/text/clean.hh b/scribo/text/clean.hh
index 5a0b2e1..24973c5 100644
--- a/scribo/text/clean.hh
+++ b/scribo/text/clean.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_CLEAN_HH
# define SCRIBO_TEXT_CLEAN_HH
-/// \file scribo/text/clean.hh
+/// \file
///
/// Improve the quality of a text area.
diff --git a/scribo/text/extract_lines.hh b/scribo/text/extract_lines.hh
index a84d10f..9d21394 100644
--- a/scribo/text/extract_lines.hh
+++ b/scribo/text/extract_lines.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_EXTRACT_LINES_HH
# define SCRIBO_TEXT_EXTRACT_LINES_HH
-/// \file scribo/text/extract_lines.hh
+/// \file
///
/// Extract line of text bounding boxes.
diff --git a/scribo/text/grouping/all.hh b/scribo/text/grouping/all.hh
index ebeae8e..a4a664c 100644
--- a/scribo/text/grouping/all.hh
+++ b/scribo/text/grouping/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_ALL_HH
# define SCRIBO_TEXT_GROUPING_ALL_HH
-/// \file scribo/text/grouping/all.hh
+/// \file
///
/// Include all headers located in scribo/text/grouping.
diff --git a/scribo/text/grouping/group_from_double_link.hh b/scribo/text/grouping/group_from_double_link.hh
index 9c0cfa1..1530c50 100644
--- a/scribo/text/grouping/group_from_double_link.hh
+++ b/scribo/text/grouping/group_from_double_link.hh
@@ -27,7 +27,7 @@
# define SCRIBO_TEXT_GROUPING_GROUP_FROM_DOUBLE_LINK_HH
-/// \file scribo/text/grouping/group_from_double_link.hh
+/// \file
///
/// Group text bounding boxes from left and right links and validate
/// These links. A link must exist in both ways to be validated.
diff --git a/scribo/text/grouping/group_from_graph.hh b/scribo/text/grouping/group_from_graph.hh
index d6debd2..783da16 100644
--- a/scribo/text/grouping/group_from_graph.hh
+++ b/scribo/text/grouping/group_from_graph.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_FROM_GRAPH_HH
# define SCRIBO_TEXT_GROUPING_GROUP_FROM_GRAPH_HH
-/// \file scribo/text/grouping/group_from_graph.hh
+/// \file
///
/// Group lines of text according to a graph of links between
/// the lines of text.
diff --git a/scribo/text/grouping/group_from_single_link.hh b/scribo/text/grouping/group_from_single_link.hh
index 242cce9..0423c44 100644
--- a/scribo/text/grouping/group_from_single_link.hh
+++ b/scribo/text/grouping/group_from_single_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_FROM_SINGLE_LINK_HH
# define SCRIBO_TEXT_GROUPING_GROUP_FROM_SINGLE_LINK_HH
-/// \file scribo/text/grouping/group_from_single_link.hh
+/// \file
///
/// Link text objects with their neighbor line if they have one.
diff --git a/scribo/text/grouping/group_with_graph.hh b/scribo/text/grouping/group_with_graph.hh
index 7865a7b..c9af430 100644
--- a/scribo/text/grouping/group_with_graph.hh
+++ b/scribo/text/grouping/group_with_graph.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_WITH_GRAPH_HH
# define SCRIBO_TEXT_GROUPING_GROUP_WITH_GRAPH_HH
-/// \file scribo/text/grouping/group_with_graph.hh
+/// \file
///
/// Group character bounding boxes with a graph.
diff --git a/scribo/text/grouping/group_with_several_left_links.hh b/scribo/text/grouping/group_with_several_left_links.hh
index b7dc07b..8b9e9ff 100644
--- a/scribo/text/grouping/group_with_several_left_links.hh
+++ b/scribo/text/grouping/group_with_several_left_links.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_WITH_SEVERAL_LEFT_LINKS_HH
# define SCRIBO_TEXT_GROUPING_GROUP_WITH_SEVERAL_LEFT_LINKS_HH
-/// \file scribo/text/grouping/group_with_several_left_links.hh
+/// \file
///
/// Link text bounding boxes with their left neighbor.
///
diff --git a/scribo/text/grouping/group_with_several_right_links.hh b/scribo/text/grouping/group_with_several_right_links.hh
index c785b0e..d0a5400 100644
--- a/scribo/text/grouping/group_with_several_right_links.hh
+++ b/scribo/text/grouping/group_with_several_right_links.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_WITH_SEVERAL_RIGHT_LINKS_HH
# define SCRIBO_TEXT_GROUPING_GROUP_WITH_SEVERAL_RIGHT_LINKS_HH
-/// \file scribo/text/grouping/group_with_several_right_links.hh
+/// \file
///
/// Link text bounding boxes with their right neighbor.
///
diff --git a/scribo/text/grouping/group_with_single_left_link.hh b/scribo/text/grouping/group_with_single_left_link.hh
index 4701fdf..19593c6 100644
--- a/scribo/text/grouping/group_with_single_left_link.hh
+++ b/scribo/text/grouping/group_with_single_left_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_WITH_SINGLE_LEFT_LINK_HH
# define SCRIBO_TEXT_GROUPING_GROUP_WITH_SINGLE_LEFT_LINK_HH
-/// \file scribo/text/grouping/group_with_single_left_link.hh
+/// \file
///
/// Link text objects with their left neighbor.
///
diff --git a/scribo/text/grouping/group_with_single_right_link.hh b/scribo/text/grouping/group_with_single_right_link.hh
index a805e64..ae3fdf1 100644
--- a/scribo/text/grouping/group_with_single_right_link.hh
+++ b/scribo/text/grouping/group_with_single_right_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_GROUP_WITH_SINGLE_RIGHT_LINK_HH
# define SCRIBO_TEXT_GROUPING_GROUP_WITH_SINGLE_RIGHT_LINK_HH
-/// \file scribo/text/grouping/group_with_single_right_link.hh
+/// \file
///
/// Link text objects with their right neighbor.
///
diff --git a/scribo/text/grouping/internal/all.hh b/scribo/text/grouping/internal/all.hh
index af02dce..257d524 100644
--- a/scribo/text/grouping/internal/all.hh
+++ b/scribo/text/grouping/internal/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_ALL_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_ALL_HH
-/// \file scribo/text/grouping/internal/all.hh
+/// \file
///
/// Include all headers located in scribo/text/grouping/internal.
diff --git a/scribo/text/grouping/internal/find_graph_link.hh b/scribo/text/grouping/internal/find_graph_link.hh
index b6fa1ee..733b646 100644
--- a/scribo/text/grouping/internal/find_graph_link.hh
+++ b/scribo/text/grouping/internal/find_graph_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_FIND_GRAPH_LINK_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_FIND_GRAPH_LINK_HH
-/// \file scribo/text/grouping/internal/find_graph_link.hh
+/// \file
///
/// Find the right neighbor of a line of text if exists.
diff --git a/scribo/text/grouping/internal/find_left_link.hh b/scribo/text/grouping/internal/find_left_link.hh
index ddd92d8..71c9766 100644
--- a/scribo/text/grouping/internal/find_left_link.hh
+++ b/scribo/text/grouping/internal/find_left_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_FIND_LEFT_LINK_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_FIND_LEFT_LINK_HH
-/// \file scribo/text/grouping/internal/find_left_link.hh
+/// \file
///
/// Find the left neighbor of a line of text if exists.
diff --git a/scribo/text/grouping/internal/find_right_link.hh b/scribo/text/grouping/internal/find_right_link.hh
index bd3c863..e1a1498 100644
--- a/scribo/text/grouping/internal/find_right_link.hh
+++ b/scribo/text/grouping/internal/find_right_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_FIND_RIGHT_LINK_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_FIND_RIGHT_LINK_HH
-/// \file scribo/text/grouping/internal/find_right_link.hh
+/// \file
///
/// Find the right neighbor of a line of text if exists.
diff --git a/scribo/text/grouping/internal/find_root.hh b/scribo/text/grouping/internal/find_root.hh
index e36bf2d..c1da04f 100644
--- a/scribo/text/grouping/internal/find_root.hh
+++ b/scribo/text/grouping/internal/find_root.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_FIND_ROOT_LINK_ARRAY_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_FIND_ROOT_LINK_ARRAY_HH
-/// \file scribo/text/grouping/internal/find_root.hh
+/// \file
///
/// Find root in a parent array arrays.
diff --git a/scribo/text/grouping/internal/init_link_array.hh b/scribo/text/grouping/internal/init_link_array.hh
index 48e2cf2..522c221 100644
--- a/scribo/text/grouping/internal/init_link_array.hh
+++ b/scribo/text/grouping/internal/init_link_array.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_INIT_LINK_ARRAY_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_INIT_LINK_ARRAY_HH
-/// \file scribo/text/grouping/internal/init_link_array.hh
+/// \file
///
/// Initialize a link array.
diff --git a/scribo/text/grouping/internal/is_link_valid.hh b/scribo/text/grouping/internal/is_link_valid.hh
index afea058..4c54970 100644
--- a/scribo/text/grouping/internal/is_link_valid.hh
+++ b/scribo/text/grouping/internal/is_link_valid.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_IS_LINK_VALID_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_IS_LINK_VALID_HH
-/// \file scribo/text/grouping/internal/is_link_valid.hh
+/// \file
///
/// Validate a link from two different links.
diff --git a/scribo/text/grouping/internal/update_graph_link.hh b/scribo/text/grouping/internal/update_graph_link.hh
index 9fd3ede..3f5c199 100644
--- a/scribo/text/grouping/internal/update_graph_link.hh
+++ b/scribo/text/grouping/internal/update_graph_link.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_UPDATE_GRAPH_LINK_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_UPDATE_GRAPH_LINK_HH
-/// \file scribo/text/grouping/internal/update_link_array.hh
+/// \file
///
/// Update graph edges if a valid neighbor is found.
diff --git a/scribo/text/grouping/internal/update_link_array.hh b/scribo/text/grouping/internal/update_link_array.hh
index ef20dc9..0a82cc8 100644
--- a/scribo/text/grouping/internal/update_link_array.hh
+++ b/scribo/text/grouping/internal/update_link_array.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_GROUPING_INTERNAL_UPDATE_LINK_ARRAY_HH
# define SCRIBO_TEXT_GROUPING_INTERNAL_UPDATE_LINK_ARRAY_HH
-/// \file scribo/text/grouping/internal/update_link_array.hh
+/// \file
///
/// Update a lookup table if a neighbor is found on the right of
/// the current bbox.
diff --git a/scribo/text/recognition.hh b/scribo/text/recognition.hh
index 01d0986..75410e4 100644
--- a/scribo/text/recognition.hh
+++ b/scribo/text/recognition.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_TEXT_RECOGNITION_HH
# define SCRIBO_TEXT_RECOGNITION_HH
-/// \file scribo/text/recognition.hh
+/// \file
///
/// Passes the text bounding boxes to an OCR (Tesseract).
///
diff --git a/scribo/util/all.hh b/scribo/util/all.hh
index dd93b62..3eef9ff 100644
--- a/scribo/util/all.hh
+++ b/scribo/util/all.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_UTIL_ALL_HH
# define SCRIBO_UTIL_ALL_HH
-/// \file scribo/util/all.hh
+/// \file
///
/// Include all headers located in scribo/util.
diff --git a/scribo/util/text.hh b/scribo/util/text.hh
index 52e9a55..3cdd5c1 100644
--- a/scribo/util/text.hh
+++ b/scribo/util/text.hh
@@ -26,7 +26,7 @@
#ifndef SCRIBO_UTIL_TEXT_HH
# define SCRIBO_UTIL_TEXT_HH
-/// \file scribo/util/text.hh
+/// \file
///
/// A class representing text bounding boxes and their associated
/// labeled image.
--
1.5.6.5
1
0
* src/Makefile.am: compile new examples.
* filter/large_objects.hh: fix use of accu::math::count.
* src/extract/primitive/extract_discontinued_hlines.cc,
* src/extract/primitive/extract_discontinued_lines.cc,
* src/extract/primitive/extract_discontinued_vlines.cc,
* src/extract/primitive/extract_thick_hlines.cc,
* src/extract/primitive/extract_thick_vlines.cc,
* src/extract/primitive/find_discontinued_lines.cc,
* src/extract_text_double_several_links.cc,
* src/extract_text_several_graph.cc,
* src/extract_text_several_left_links.cc,
* src/filter/large_objects.cc,
* src/filter/small_objects.cc,
* src/filter/thick_objects.cc,
* src/filter/thin_objects.cc,
* src/morpho.cc,
* src/rectangularity.cc,
* src/thin_bboxes.cc:
- Do not use essential/2d.hh
- Specify the namespace of the usage() routine.
---
scribo/ChangeLog | 27 ++++++++++++++
scribo/filter/large_objects.hh | 4 +-
scribo/src/Makefile.am | 4 ++
.../primitive/extract_discontinued_hlines.cc | 7 +++-
.../primitive/extract_discontinued_lines.cc | 8 +++--
.../primitive/extract_discontinued_vlines.cc | 7 +++-
.../src/extract/primitive/extract_thick_hlines.cc | 7 +++-
.../src/extract/primitive/extract_thick_vlines.cc | 7 +++-
.../extract/primitive/find_discontinued_lines.cc | 8 +++--
scribo/src/extract_text_double_several_links.cc | 10 +++++-
scribo/src/extract_text_several_graph.cc | 18 ++++++++--
scribo/src/extract_text_several_left_links.cc | 15 +++++++-
scribo/src/filter/large_objects.cc | 11 ++++--
scribo/src/filter/small_objects.cc | 11 ++++--
scribo/src/filter/thick_objects.cc | 11 ++++--
scribo/src/filter/thin_objects.cc | 11 ++++--
scribo/src/morpho.cc | 23 +++++++++++-
scribo/src/rectangularity.cc | 39 ++++++++++++++------
scribo/src/thin_bboxes.cc | 11 +++++-
19 files changed, 188 insertions(+), 51 deletions(-)
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index bf302c2..3d9c37d 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,3 +1,30 @@
+2009-06-12 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
+
+ Compile more examples in Scribo.
+
+ * src/Makefile.am: compile new examples.
+
+ * filter/large_objects.hh: fix use of accu::math::count.
+
+ * src/extract/primitive/extract_discontinued_hlines.cc,
+ * src/extract/primitive/extract_discontinued_lines.cc,
+ * src/extract/primitive/extract_discontinued_vlines.cc,
+ * src/extract/primitive/extract_thick_hlines.cc,
+ * src/extract/primitive/extract_thick_vlines.cc,
+ * src/extract/primitive/find_discontinued_lines.cc,
+ * src/extract_text_double_several_links.cc,
+ * src/extract_text_several_graph.cc,
+ * src/extract_text_several_left_links.cc,
+ * src/filter/large_objects.cc,
+ * src/filter/small_objects.cc,
+ * src/filter/thick_objects.cc,
+ * src/filter/thin_objects.cc,
+ * src/morpho.cc,
+ * src/rectangularity.cc,
+ * src/thin_bboxes.cc:
+ - Do not use essential/2d.hh
+ - Specify the namespace of the usage() routine.
+
2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
Fix the generation of headers.mk in SCRIBO.
diff --git a/scribo/filter/large_objects.hh b/scribo/filter/large_objects.hh
index bf4facb..125cbf0 100644
--- a/scribo/filter/large_objects.hh
+++ b/scribo/filter/large_objects.hh
@@ -36,7 +36,7 @@
# include <mln/core/concept/function.hh>
# include <mln/labeling/compute.hh>
-# include <mln/accu/count.hh>
+# include <mln/accu/math/count.hh>
# include <mln/util/array.hh>
@@ -97,7 +97,7 @@ namespace scribo
: Function_v2b< large_objects_filter<L> >
{
- typedef accu::count<mln_psite(L)> card_t;
+ typedef accu::math::count<mln_psite(L)> card_t;
/// Constructor
///
diff --git a/scribo/src/Makefile.am b/scribo/src/Makefile.am
index 2f537f1..381c567 100644
--- a/scribo/src/Makefile.am
+++ b/scribo/src/Makefile.am
@@ -21,6 +21,8 @@ include $(top_srcdir)/scribo/scribo.mk
SUBDIRS = \
binarization \
+ extract \
+ filter \
preprocessing \
table
@@ -35,6 +37,7 @@ bin_PROGRAMS = \
morpho \
negate \
preprocess \
+ rectangularity \
superpose \
table_rebuild_opening \
table_rebuild_rank \
@@ -52,6 +55,7 @@ extract_text_single_link_SOURCES = extract_text_single_link.cc
morpho_SOURCES = morpho.cc
negate_SOURCES = negate.cc
preprocess_SOURCES = preprocess.cc
+rectangularity_SOURCES = rectangularity.cc
superpose_SOURCES = superpose.cc
table_rebuild_opening_SOURCES = table_rebuild_opening.cc
table_rebuild_rank_SOURCES = table_rebuild_rank.cc
diff --git a/scribo/src/extract/primitive/extract_discontinued_hlines.cc b/scribo/src/extract/primitive/extract_discontinued_hlines.cc
index df682a3..8d4c367 100644
--- a/scribo/src/extract/primitive/extract_discontinued_hlines.cc
+++ b/scribo/src/extract/primitive/extract_discontinued_hlines.cc
@@ -46,8 +46,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 5)
- return usage(argv, "Extract discontinued horizontal lines", "input.pbm length rank output.pbm",
- args_desc, "A binary image of horizontal lines.");
+ return scribo::debug::usage(argv,
+ "Extract discontinued horizontal lines",
+ "input.pbm length rank output.pbm",
+ args_desc,
+ "A binary image of horizontal lines.");
trace::entering("main");
diff --git a/scribo/src/extract/primitive/extract_discontinued_lines.cc b/scribo/src/extract/primitive/extract_discontinued_lines.cc
index a8388ca..6568928 100644
--- a/scribo/src/extract/primitive/extract_discontinued_lines.cc
+++ b/scribo/src/extract/primitive/extract_discontinued_lines.cc
@@ -47,9 +47,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 5)
- return usage(argv, "Extract discontinued horizontal and vertical lines",
- "input.pbm length rank output.pbm",
- args_desc, "A binary image of horizontal and vertical lines.");
+ return scribo::debug::usage(argv,
+ "Extract discontinued horizontal and vertical lines",
+ "input.pbm length rank output.pbm",
+ args_desc,
+ "A binary image of horizontal and vertical lines.");
trace::entering("main");
diff --git a/scribo/src/extract/primitive/extract_discontinued_vlines.cc b/scribo/src/extract/primitive/extract_discontinued_vlines.cc
index f39086b..af1f079 100644
--- a/scribo/src/extract/primitive/extract_discontinued_vlines.cc
+++ b/scribo/src/extract/primitive/extract_discontinued_vlines.cc
@@ -46,8 +46,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 5)
- return usage(argv, "Extract discontinued vertical lines", "input.pbm length rank output.pbm",
- args_desc, "A binary image of vertical lines.");
+ return scribo::debug::usage(argv,
+ "Extract discontinued vertical lines",
+ "input.pbm length rank output.pbm",
+ args_desc,
+ "A binary image of vertical lines.");
trace::entering("main");
diff --git a/scribo/src/extract/primitive/extract_thick_hlines.cc b/scribo/src/extract/primitive/extract_thick_hlines.cc
index ca6284d..ae8cbd6 100644
--- a/scribo/src/extract/primitive/extract_thick_hlines.cc
+++ b/scribo/src/extract/primitive/extract_thick_hlines.cc
@@ -45,8 +45,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Extract thick horizontal lines", "input.pbm length output.pbm",
- args_desc, "A binary image of horizontal lines.");
+ return scribo::debug::usage(argv,
+ "Extract thick horizontal lines",
+ "input.pbm length output.pbm",
+ args_desc,
+ "A binary image of horizontal lines.");
trace::entering("main");
diff --git a/scribo/src/extract/primitive/extract_thick_vlines.cc b/scribo/src/extract/primitive/extract_thick_vlines.cc
index 52ab1d4..49bec1e 100644
--- a/scribo/src/extract/primitive/extract_thick_vlines.cc
+++ b/scribo/src/extract/primitive/extract_thick_vlines.cc
@@ -45,8 +45,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Extract thick vertical lines", "input.pbm length output.pbm",
- args_desc, "A binary image of vertical lines.");
+ return scribo::debug::usage(argv,
+ "Extract thick vertical lines",
+ "input.pbm length output.pbm",
+ args_desc,
+ "A binary image of vertical lines.");
trace::entering("main");
diff --git a/scribo/src/extract/primitive/find_discontinued_lines.cc b/scribo/src/extract/primitive/find_discontinued_lines.cc
index 09f295b..8f81770 100644
--- a/scribo/src/extract/primitive/find_discontinued_lines.cc
+++ b/scribo/src/extract/primitive/find_discontinued_lines.cc
@@ -50,9 +50,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 5)
- return usage(argv, "Extract discontinued horizontal and vertical lines",
- "input.pbm length rank output.pbm",
- args_desc, "A binary image of horizontal and vertical lines.");
+ return scribo::debug::usage(argv,
+ "Extract discontinued horizontal and vertical lines",
+ "input.pbm length rank output.pbm",
+ args_desc,
+ "A binary image of horizontal and vertical lines.");
trace::entering("main");
diff --git a/scribo/src/extract_text_double_several_links.cc b/scribo/src/extract_text_double_several_links.cc
index 7dc1bac..c220e77 100644
--- a/scribo/src/extract_text_double_several_links.cc
+++ b/scribo/src/extract_text_double_several_links.cc
@@ -25,9 +25,17 @@
#include <iostream>
-#include <mln/essential/2d.hh>
+#include <mln/core/image/image2d.hh>
#include <mln/labeling/colorize.hh>
+#include <mln/value/label_16.hh>
+#include <mln/core/alias/neighb2d.hh>
+
+#include <mln/io/pbm/load.hh>
+#include <mln/io/ppm/save.hh>
+
+#include <mln/literal/colors.hh>
#include <mln/util/timer.hh>
+#include <mln/util/array.hh>
#include <scribo/extract/primitive/objects.hh>
#include <scribo/text/grouping/group_with_several_left_links.hh>
diff --git a/scribo/src/extract_text_several_graph.cc b/scribo/src/extract_text_several_graph.cc
index 198f325..bc0d3e0 100644
--- a/scribo/src/extract_text_several_graph.cc
+++ b/scribo/src/extract_text_several_graph.cc
@@ -25,7 +25,19 @@
#include <iostream>
-#include <mln/essential/2d.hh>
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
+
+#include <mln/literal/colors.hh>
+#include <mln/util/graph.hh>
+
+#include <mln/labeling/colorize.hh>
+
+#include <mln/value/rgb8.hh>
+#include <mln/value/label_16.hh>
+
+#include <mln/io/pbm/load.hh>
+#include <mln/io/ppm/save.hh>
#include <scribo/extract/primitive/objects.hh>
#include <scribo/text/grouping/group_with_several_graphes.hh>
@@ -74,8 +86,8 @@ int main(int argc, char* argv[])
literal::red,
scribo::make::debug_filename("grouped_text.ppm"));
io::ppm::save(mln::labeling::colorize(value::rgb8(),
- grouped_text,
- grouped_text.nlabels()),
+ grouped_text,
+ grouped_text.nlabels()),
scribo::make::debug_filename("label_color.ppm"));
}
diff --git a/scribo/src/extract_text_several_left_links.cc b/scribo/src/extract_text_several_left_links.cc
index f717a63..6e6f1fa 100644
--- a/scribo/src/extract_text_several_left_links.cc
+++ b/scribo/src/extract_text_several_left_links.cc
@@ -25,7 +25,20 @@
#include <iostream>
-#include <mln/essential/2d.hh>
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
+
+#include <mln/literal/colors.hh>
+#include <mln/util/graph.hh>
+
+#include <mln/labeling/colorize.hh>
+
+#include <mln/value/rgb8.hh>
+#include <mln/value/label_16.hh>
+
+#include <mln/io/pbm/load.hh>
+#include <mln/io/ppm/save.hh>
+
#include <scribo/extract/primitive/objects.hh>
#include <scribo/text/grouping/group_with_several_left_links.hh>
diff --git a/scribo/src/filter/large_objects.cc b/scribo/src/filter/large_objects.cc
index 5e63ba2..51ab029 100644
--- a/scribo/src/filter/large_objects.cc
+++ b/scribo/src/filter/large_objects.cc
@@ -25,7 +25,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/convert.hh>
+#include <mln/data/convert.hh>
#include <mln/io/pbm/all.hh>
#include <mln/value/label_16.hh>
@@ -47,8 +47,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Filter too large objects", "input.pbm max_area output.pbm",
- args_desc, "A binary image.");
+ return scribo::debug::usage(argv,
+ "Filter too large objects",
+ "input.pbm max_area output.pbm",
+ args_desc,
+ "A binary image.");
trace::entering("main");
@@ -62,7 +65,7 @@ int main(int argc, char *argv[])
= scribo::extract::primitive::objects(input, c8(), nobjects);
obj_ima_t filtered = scribo::filter::large_objects(objects, atoi(argv[2]));
- io::pbm::save(level::convert(bool(), filtered), argv[3]);
+ io::pbm::save(data::convert(bool(), filtered), argv[3]);
trace::exiting("main");
diff --git a/scribo/src/filter/small_objects.cc b/scribo/src/filter/small_objects.cc
index d84e21a..fed6252 100644
--- a/scribo/src/filter/small_objects.cc
+++ b/scribo/src/filter/small_objects.cc
@@ -25,7 +25,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/convert.hh>
+#include <mln/data/convert.hh>
#include <mln/io/pbm/all.hh>
#include <mln/value/label_16.hh>
@@ -46,8 +46,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Filter too small objects", "input.pbm min_area output.pbm",
- args_desc, "A binary image.");
+ return scribo::debug::usage(argv,
+ "Filter too small objects",
+ "input.pbm min_area output.pbm",
+ args_desc,
+ "A binary image.");
trace::entering("main");
@@ -61,7 +64,7 @@ int main(int argc, char *argv[])
= scribo::extract::primitive::objects(input, c8(), nobjects);
obj_ima_t filtered = scribo::filter::small_objects(objects, atoi(argv[2]));
- io::pbm::save(level::convert(bool(), filtered), argv[3]);
+ io::pbm::save(data::convert(bool(), filtered), argv[3]);
trace::exiting("main");
diff --git a/scribo/src/filter/thick_objects.cc b/scribo/src/filter/thick_objects.cc
index 76f9609..288402c 100644
--- a/scribo/src/filter/thick_objects.cc
+++ b/scribo/src/filter/thick_objects.cc
@@ -25,7 +25,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/convert.hh>
+#include <mln/data/convert.hh>
#include <mln/io/pbm/all.hh>
#include <mln/value/label_16.hh>
@@ -46,8 +46,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Filter too thick objects", "input.pbm max_thick output.pbm",
- args_desc, "A binary image.");
+ return scribo::debug::usage(argv,
+ "Filter too thick objects",
+ "input.pbm max_thick output.pbm",
+ args_desc,
+ "A binary image.");
trace::entering("main");
@@ -61,7 +64,7 @@ int main(int argc, char *argv[])
= scribo::extract::primitive::objects(input, c8(), nobjects);
obj_ima_t filtered = scribo::filter::thick_objects(objects, atoi(argv[2]));
- io::pbm::save(level::convert(bool(), filtered), argv[3]);
+ io::pbm::save(data::convert(bool(), filtered), argv[3]);
trace::exiting("main");
diff --git a/scribo/src/filter/thin_objects.cc b/scribo/src/filter/thin_objects.cc
index f1458bb..9129231 100644
--- a/scribo/src/filter/thin_objects.cc
+++ b/scribo/src/filter/thin_objects.cc
@@ -25,7 +25,7 @@
#include <mln/core/image/image2d.hh>
#include <mln/core/alias/neighb2d.hh>
-#include <mln/level/convert.hh>
+#include <mln/data/convert.hh>
#include <mln/io/pbm/all.hh>
#include <mln/value/label_16.hh>
@@ -46,8 +46,11 @@ int main(int argc, char *argv[])
using namespace mln;
if (argc != 4)
- return usage(argv, "Filter too thin objects", "input.pbm min_thin output.pbm",
- args_desc, "A binary image.");
+ return scribo::debug::usage(argv,
+ "Filter too thin objects",
+ "input.pbm min_thin output.pbm",
+ args_desc,
+ "A binary image.");
trace::entering("main");
@@ -61,7 +64,7 @@ int main(int argc, char *argv[])
= scribo::extract::primitive::objects(input, c8(), nobjects);
obj_ima_t filtered = scribo::filter::thin_objects(objects, atoi(argv[2]));
- io::pbm::save(level::convert(bool(), filtered), argv[3]);
+ io::pbm::save(data::convert(bool(), filtered), argv[3]);
trace::exiting("main");
diff --git a/scribo/src/morpho.cc b/scribo/src/morpho.cc
index 91a089a..cdab36e 100644
--- a/scribo/src/morpho.cc
+++ b/scribo/src/morpho.cc
@@ -23,16 +23,35 @@
// exception does not however invalidate any other reasons why the
// executable file might be covered by the GNU General Public License.
-#include <mln/essential/2d.hh>
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
+
+#include <mln/literal/colors.hh>
+
+#include <mln/value/label_16.hh>
+#include <mln/value/int_u16.hh>
+
+#include <mln/labeling/wrap.hh>
+#include <mln/labeling/colorize.hh>
+#include <mln/labeling/blobs.hh>
+
+#include <mln/io/pbm/load.hh>
+#include <mln/io/pgm/save.hh>
+#include <mln/io/ppm/save.hh>
+
#include <mln/transform/distance_and_influence_zone_geodesic.hh>
#include <mln/core/var.hh>
-#include <mln/labeling/wrap.hh>
+
#include <mln/win/hline2d.hh>
+#include <mln/win/disk2d.hh>
+
#include <mln/morpho/watershed/flooding.hh>
#include <mln/morpho/watershed/superpose.hh>
+#include <mln/morpho/closing/structural.hh>
#include <scribo/make/debug_filename.hh>
+
int main(int argc, char *argv[])
{
using namespace mln;
diff --git a/scribo/src/rectangularity.cc b/scribo/src/rectangularity.cc
index bb5fb42..41ffb6a 100644
--- a/scribo/src/rectangularity.cc
+++ b/scribo/src/rectangularity.cc
@@ -1,5 +1,4 @@
-// Copyright (C) 2009
- EPITA Research and Development Laboratory (LRDE)
+// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
//
// This file is part of Olena.
//
@@ -24,13 +23,31 @@
// exception does not however invalidate any other reasons why the
// executable file might be covered by the GNU General Public License.
-#include <mln/essential/2d.hh>
-#include <mln/transform/distance_geodesic.hh>
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
#include <mln/core/var.hh>
-#include <mln/fun/l2l/wrap.hh>
-#include <mln/win/hline2d.hh>
-#include <mln/morpho/watershed/flooding.hh>
-#include <mln/morpho/watershed/superpose.hh>
+
+#include <mln/literal/colors.hh>
+
+#include <mln/labeling/wrap.hh>
+
+#include <mln/value/label_16.hh>
+#include <mln/value/int_u16.hh>
+
+#include <mln/labeling/blobs.hh>
+
+#include <mln/io/pbm/load.hh>
+#include <mln/io/pgm/save.hh>
+
+#include <mln/transform/distance_geodesic.hh>
+
+#include <mln/morpho/closing/structural.hh>
+#include <mln/morpho/tree/compute_attribute_image.hh>
+#include <mln/morpho/tree/max.hh>
+
+#include <mln/accu/site_set/rectangularity.hh>
+
+#include <mln/win/disk2d.hh>
#include <scribo/make/debug_filename.hh>
@@ -53,12 +70,12 @@ int main(int argc, char *argv[])
mln_VAR(dmap, transform::distance_geodesic(lbl, c8(), mln_max(unsigned)));
- io::pgm::save(level::transform(dmap, fun::l2l::wrap<label_8>()), "dmap.pgm");
+ io::pgm::save(labeling::wrap(dmap), "dmap.pgm");
{
image2d<unsigned> clo = morpho::closing::structural(dmap, win::disk2d(51));
io::pgm::save(clo, scribo::make::debug_filename("clo_disk_51.pgm"));
- image2d<float> r = morpho::tree:compute_attribute_image(accu::site_set::rectangularity<point2d>(),clo);
- image2d<point2d> r = morpho::tree:max(r,c8());
+// image2d<float> r = morpho::tree::compute_attribute_image(accu::site_set::rectangularity<point2d>(), clo);
+// image2d<point2d> r_max = morpho::tree::max(r,c8());
}
}
diff --git a/scribo/src/thin_bboxes.cc b/scribo/src/thin_bboxes.cc
index 49e28bd..db4dfcf 100644
--- a/scribo/src/thin_bboxes.cc
+++ b/scribo/src/thin_bboxes.cc
@@ -23,7 +23,16 @@
// exception does not however invalidate any other reasons why the
// executable file might be covered by the GNU General Public License.
-#include <mln/essential/2d.hh>
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
+
+#include <mln/literal/colors.hh>
+
+#include <mln/value/label_16.hh>
+
+#include <mln/io/pbm/load.hh>
+
+
#include <scribo/text/extract_lines.hh>
#include <scribo/filter/thin_objects.hh>
--
1.5.6.5
1
0
* Makefile.am (regen-am, $(srcdir)/headers.mk): Execute
`./generate_dist_headers.sh' from the source dir, not the build
dir.
---
scribo/ChangeLog | 8 ++++++++
scribo/Makefile.am | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index ddebb31..bf302c2 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,5 +1,13 @@
2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+ Fix the generation of headers.mk in SCRIBO.
+
+ * Makefile.am (regen-am, $(srcdir)/headers.mk): Execute
+ `./generate_dist_headers.sh' from the source dir, not the build
+ dir.
+
+2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+
Add support for Vcs and svn-wrapper.
* vcs/scribo.rb: New.
diff --git a/scribo/Makefile.am b/scribo/Makefile.am
index 2285b6c..11aadf8 100644
--- a/scribo/Makefile.am
+++ b/scribo/Makefile.am
@@ -28,7 +28,7 @@ include $(top_srcdir)/build-aux/regen-recursive.mk
REGEN_SUBDIRS += tests
regen-am:
- ./generate_dist_headers.sh
+ cd $(srcdir) && ./generate_dist_headers.sh
EXTRA_DIST = generate_dist_headers.sh
# FIXME: Change generate_dist_headers.sh so that the action looks like this:
@@ -36,6 +36,6 @@ EXTRA_DIST = generate_dist_headers.sh
# $< $@.tmp && mv -f $@.tmp $@ && chmod -w $@
#
$(srcdir)/headers.mk: $(srcdir)/generate_dist_headers.sh
- ./generate_dist_headers.sh
+ cd $(srcdir) && ./generate_dist_headers.sh
include $(srcdir)/headers.mk
--
1.6.2.4
1
0
[PATCH 8/9] Help the compiler find mln::math::max in mln::accu::label_used.
by Roland Levillain 11 Jun '09
by Roland Levillain 11 Jun '09
11 Jun '09
* mln/accu/label_used.hh (take(const label_used<L>&)): Here.
---
milena/ChangeLog | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 02b81b8..e917609 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,11 @@
2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+ Help the compiler find mln::math::max in mln::accu::label_used.
+
+ * mln/accu/label_used.hh (take(const label_used<L>&)): Here.
+
+2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+
First step toward the overhauling of the documentation generation.
* doc/Doxyfile.in (OUTPUT_DIRECTORY): Set to ./devel/
--
1.6.2.4
1
0
[PATCH 7/9] First step toward the overhauling of the documentation generation.
by Roland Levillain 11 Jun '09
by Roland Levillain 11 Jun '09
11 Jun '09
* doc/Doxyfile.in (OUTPUT_DIRECTORY): Set to ./devel/
(IMAGE_PATH): Add @top_builddir@/milena/doc/figures.
* doc/doc.mk (DOC_SRCDIR, DOC_BUILDDIR): Strip trailing backslash.
* doc/Makefile.am (doc): Depend on..
(doc-user, doc-devel): ...these (new) phony targets.
Use them to factor...
(doc-dev-pdf, doc-dev-html): ...these rules.
Rename as...
(doc-devel-pdf, doc-devel-html): ...these rules.
(ref-doc-dev): Rename as...
(ref-doc-devel-pdf): ...this.
(EXTRA_DEPS, USER_REFMAN_PDF, USER_REFMAN_HTML)
(DEVEL_REFMAN_PDF, DEVEL_REFMAN_HTML):
New variables.
(ref-doc-pdf, ref-doc-pdf, ref-doc-devel-html, ref-doc-devel-pdf):
Turn targets into mere shortcuts for...
($(USER_REFMAN_PDF), $(USER_REFMAN_HTML))
($(DEVEL_REFMAN_PDF), $(DEVEL_REFMAN_HTML)):
...these targets.
(tutorial-pdf, tutorial-html, ref-guide-pdf, ref-guide-html):
Remove spurious dependencies.
($(FIGURES_BUILDDIR)/*.png): Rename target as...
($(srcdir)/figures.stamp): ...this.
Depend on $(FIGURES_SRCDIR)/*.p*m.
(EXTRA_DIST): Add ($(srcdir)/figures.stamp.
(fig-convert): Depend on $(srcdir)/figures.stamp.
(edit_user): s/complete/devel/.
(EXTRA_DIST): s,user/html,$(USER_REFMAN_HTML),
s/user/latex/refman.pdf,$(USER_REFMAN_PDF),.
(Doxyfile): Remove target.
(Doxyfile_user, Doxyfile_user_pdf)
(Doxyfile_devel, Doxyfile_devel_pdf):
New targets.
(CLEANFILES): Remove Doxyfile_complete.
Add Doxyfile_user_pdf, Doxyfile_devel and Doxyfile_devel_pdf,
devel and user.
* doc/examples/Makefile.am (all): Remove this target and merge its
actions with...
(run-examples): ...this target.
Do not depend on all.
* doc/ref_guide/Makefile.am (ref-guide): Do not depend on
$(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/*.
(REF_GUIDE_HH, REF_GUIDE_PDF): New variables.
(ref-guide-html, ref_guide.pdf): Rename rules as...
($(REF_GUIDE_HH), (REF_GUIDE_PDF)): New variables.
Adjust.
(EXTRA_DIST): Adjust.
Add $(REF_GUIDE_HH).
(clean-local): Replace this target by...
(CLEANFILES): ...this variable.
* doc/tutorial/Makefile.am (tutorial): Do not depend on
$(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/*.
(TUTORIAL_HH, TUTORIAL_PDF): New variables.
(tutorial-html, tutorial.pdf): Rename rules as...
($(TUTORIAL_HH), (TUTORIAL_PDF)): New variables.
Adjust.
(EXTRA_DIST): Adjust.
Add $(TUTORIAL_HH).
(clean-local): Replace this target by...
(CLEANFILES): ...this variable.
* doc/white_paper/Makefile.am (EPSS): New variable.
(WHITE_PAPER_HH, WHITE_PAPER_PDF): New variables.
(white-paper-html, white_paper.pdf): Rename rules as...
($(WHITE_PAPER_HH), (WHITE_PAPER_PDF)): New variables.
Adjust.
(EXTRA_DIST): Adjust.
Add $(WHITE_PAPER_HH) and $(EPSS).
(clean-local): Replace this target by...
(CLEANFILES): ...this variable.
---
milena/ChangeLog | 78 +++++++++++++++++++
milena/doc/Doxyfile.in | 5 +-
milena/doc/Makefile.am | 145 +++++++++++++++++++++---------------
milena/doc/doc.mk | 4 +-
milena/doc/examples/Makefile.am | 4 +-
milena/doc/ref_guide/Makefile.am | 45 +++++++----
milena/doc/tutorial/Makefile.am | 50 ++++++++-----
milena/doc/white_paper/Makefile.am | 31 +++++---
8 files changed, 245 insertions(+), 117 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 846caf9..02b81b8 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,83 @@
2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+ First step toward the overhauling of the documentation generation.
+
+ * doc/Doxyfile.in (OUTPUT_DIRECTORY): Set to ./devel/
+ (IMAGE_PATH): Add @top_builddir@/milena/doc/figures.
+ * doc/doc.mk (DOC_SRCDIR, DOC_BUILDDIR): Strip trailing backslash.
+ * doc/Makefile.am (doc): Depend on..
+ (doc-user, doc-devel): ...these (new) phony targets.
+ Use them to factor...
+ (doc-dev-pdf, doc-dev-html): ...these rules.
+ Rename as...
+ (doc-devel-pdf, doc-devel-html): ...these rules.
+ (ref-doc-dev): Rename as...
+ (ref-doc-devel-pdf): ...this.
+ (EXTRA_DEPS, USER_REFMAN_PDF, USER_REFMAN_HTML)
+ (DEVEL_REFMAN_PDF, DEVEL_REFMAN_HTML):
+ New variables.
+ (ref-doc-pdf, ref-doc-pdf, ref-doc-devel-html, ref-doc-devel-pdf):
+ Turn targets into mere shortcuts for...
+ ($(USER_REFMAN_PDF), $(USER_REFMAN_HTML))
+ ($(DEVEL_REFMAN_PDF), $(DEVEL_REFMAN_HTML)):
+ ...these targets.
+ (tutorial-pdf, tutorial-html, ref-guide-pdf, ref-guide-html):
+ Remove spurious dependencies.
+ ($(FIGURES_BUILDDIR)/*.png): Rename target as...
+ ($(srcdir)/figures.stamp): ...this.
+ Depend on $(FIGURES_SRCDIR)/*.p*m.
+ (EXTRA_DIST): Add ($(srcdir)/figures.stamp.
+ (fig-convert): Depend on $(srcdir)/figures.stamp.
+ (edit_user): s/complete/devel/.
+ (EXTRA_DIST): s,user/html,$(USER_REFMAN_HTML),
+ s/user/latex/refman.pdf,$(USER_REFMAN_PDF),.
+ (Doxyfile): Remove target.
+ (Doxyfile_user, Doxyfile_user_pdf)
+ (Doxyfile_devel, Doxyfile_devel_pdf):
+ New targets.
+ (CLEANFILES): Remove Doxyfile_complete.
+ Add Doxyfile_user_pdf, Doxyfile_devel and Doxyfile_devel_pdf,
+ devel and user.
+
+ * doc/examples/Makefile.am (all): Remove this target and merge its
+ actions with...
+ (run-examples): ...this target.
+ Do not depend on all.
+
+ * doc/ref_guide/Makefile.am (ref-guide): Do not depend on
+ $(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/*.
+ (REF_GUIDE_HH, REF_GUIDE_PDF): New variables.
+ (ref-guide-html, ref_guide.pdf): Rename rules as...
+ ($(REF_GUIDE_HH), (REF_GUIDE_PDF)): New variables.
+ Adjust.
+ (EXTRA_DIST): Adjust.
+ Add $(REF_GUIDE_HH).
+ (clean-local): Replace this target by...
+ (CLEANFILES): ...this variable.
+
+ * doc/tutorial/Makefile.am (tutorial): Do not depend on
+ $(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/*.
+ (TUTORIAL_HH, TUTORIAL_PDF): New variables.
+ (tutorial-html, tutorial.pdf): Rename rules as...
+ ($(TUTORIAL_HH), (TUTORIAL_PDF)): New variables.
+ Adjust.
+ (EXTRA_DIST): Adjust.
+ Add $(TUTORIAL_HH).
+ (clean-local): Replace this target by...
+ (CLEANFILES): ...this variable.
+
+ * doc/white_paper/Makefile.am (EPSS): New variable.
+ (WHITE_PAPER_HH, WHITE_PAPER_PDF): New variables.
+ (white-paper-html, white_paper.pdf): Rename rules as...
+ ($(WHITE_PAPER_HH), (WHITE_PAPER_PDF)): New variables.
+ Adjust.
+ (EXTRA_DIST): Adjust.
+ Add $(WHITE_PAPER_HH) and $(EPSS).
+ (clean-local): Replace this target by...
+ (CLEANFILES): ...this variable.
+
+2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+
Regen some reference images of the documentation (on Debian GNU/Linux).
* doc/figures/fill-subdomain-2.ppm,,
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index 4bde82f..32f8e42 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
PROJECT_NAME = "Milena (@PACKAGE_NAME@)"
PROJECT_NUMBER = "@PACKAGE_VERSION@ @ID@"
-OUTPUT_DIRECTORY = ./complete/
+OUTPUT_DIRECTORY = ./devel/
CREATE_SUBDIRS = YES
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
@@ -97,7 +97,8 @@ EXAMPLE_PATH = @top_srcdir@/milena/doc/examples \
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH = @top_srcdir@/milena/doc/img \
- @top_srcdir@/milena/doc/figures
+ @top_srcdir@/milena/doc/figures \
+ @top_builddir@/milena/doc/figures
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
diff --git a/milena/doc/Makefile.am b/milena/doc/Makefile.am
index ec89037..2f256f9 100644
--- a/milena/doc/Makefile.am
+++ b/milena/doc/Makefile.am
@@ -31,70 +31,79 @@ DOXYGEN = doxygen
-.PHONY: doc doc-pdf doc-html doc-dev-pdf doc-dev-html ref-doc-dev-pdf \
- ref-doc-dev-html ref-doc-pdf ref-doc-html tutorial-pdf tutorial-html \
- white-paper-pdf white-paper-html ref-guide-pdf ref-guide-html examples \
- data-regen fix-convert
+.PHONY: doc \
+ doc-user doc-devel \
+ doc-pdf doc-html doc-devel-pdf doc-devel-html \
+ ref-doc-pdf ref-doc-html \
+ ref-doc-devel-pdf ref-doc-devel-html \
+ tutorial-pdf tutorial-html \
+ white-paper-pdf white-paper-html \
+ ref-guide-pdf ref-guide-html \
+ examples data-regen fig-convert
+doc: doc-user doc-devel
-# Doxygen documentation output directory.
-user/html: ref-doc-html
-
-user/latex/refman.pdf: ref-doc
-
-
-doc: doc-pdf doc-html doc-dev-pdf doc-dev-html
-
+doc-user: doc-pdf doc-html
+doc-devel: doc-devel-pdf doc-devel-html
doc-pdf: tutorial-pdf white-paper-pdf ref-guide-pdf ref-doc-pdf
doc-html: tutorial-html white-paper-html ref-guide-html ref-doc-html
-doc-dev-pdf: tutorial-pdf ref-guide-pdf white-paper-pdf ref-doc-dev-pdf
-
-doc-dev-html: tutorial-html ref-guide-html white-paper-html ref-doc-dev-html
-
+doc-devel-pdf: tutorial-pdf ref-guide-pdf white-paper-pdf ref-doc-devel-pdf
+doc-devel-html: tutorial-html ref-guide-html white-paper-html ref-doc-devel-html
-ref-doc-dev: Doxyfile fig-convert
- $(DOXYGEN) Doxyfile_complete_pdf
- cd complete/latex && make $(AM_MAKEFLAGS)
+# Shared dependencies on the products of tutorial/ and ref_guide/.
+EXTRA_DEPS = tutorial/tutorial.hh ref_guide/ref_guide.hh
-ref-doc-dev-html: Doxyfil fig-converte
- $(DOXYGEN) Doxyfile_complete
-
-
-ref-doc-pdf: Doxyfile fig-convert
+# Doxygen PDF documentation outputs.
+USER_REFMAN_PDF = user/latex/refman.pdf
+ref-doc-pdf: $(USER_REFMAN_PDF)
+$(USER_REFMAN_PDF): Doxyfile_user_pdf $(FIGURES_BUILDDIR) $(EXTRA_DEPS)
$(DOXYGEN) Doxyfile_user_pdf
- cd user/latex && make ref-doc
+ cd user/latex && make pdf
-ref-doc-html: Doxyfile fig-convert
+USER_REFMAN_HTML = user/html
+ref-doc-html: $(USER_REFMAN_HTML)
+$(USER_REFMAN_HTML): Doxyfile_user $(FIGURES_BUILDDIR) $(EXTRA_DEPS)
$(DOXYGEN) Doxyfile_user
+# Doxygen HTML documentation output directories.
+DEVEL_REFMAN_PDF = devel/latex/refman.pdf
+ref-doc-devel-pdf: $(DEVEL_REFMAN_PDF)
+$(DEVEL_REFMAN_PDF): Doxyfile_devel_pdf $(FIGURES_BUILDDIR) $(EXTRA_DEPS)
+ $(DOXYGEN) Doxyfile_devel_pdf
+ cd devel/latex && make $(AM_MAKEFLAGS)
+DEVEL_REFMAN_HTML = devel/html
+ref-doc-devel-html: $(DEVEL_REFMAN_HTML)
+$(DEVEL_REFMAN_HTML): Doxyfile_devel $(FIGURES_BUILDDIR) $(EXTRA_DEPS)
+ $(DOXYGEN) Doxyfile_devel
-tutorial-pdf: fig-convert
+# Tutorial.
+tutorial-pdf:
cd tutorial && $(MAKE) $(AM_MAKEFLAGS) $@
-
-tutorial-html: fig-convert
+tutorial-html:
cd tutorial && $(MAKE) $(AM_MAKEFLAGS) $@
-
+# White Paper.
white-paper-pdf:
cd white_paper && $(MAKE) $(AM_MAKEFLAGS) $@
white-paper-html:
cd white_paper && $(MAKE) $(AM_MAKEFLAGS) $@
-
-ref-guide-pdf: fig-convert
+# Reference Guide.
+ref-guide-pdf:
cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) $@
-ref-guide-html: fig-convert
+ref-guide-html:
cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) $@
+# FIXME: Adresse the construction of examples (see examples/Makefile.am).
data-regen:
cd examples && $(MAKE) $(AM_MAKEFLAGS) $@
@@ -103,18 +112,23 @@ fix-refdata:
cd examples && $(MAKE) $(AM_MAKEFLAGS) $@
-fig-convert: $(FIGURES_BUILDDIR)/*.png
+fig-convert: $(srcdir)/figures.stamp
-$(FIGURES_BUILDDIR)/*.png:
- test -d $(FIGURES_BUILDDIR) || mkdir $(FIGURES_BUILDDIR) \
- @failcom='exit 1'; \
- list="$(FIGURES_SRCDIR)/*.p*m"; for img in $$list; do \
- echo "Converting $$img to png"; \
- name=`basename $$img` \
- ext=`echo $$name | cut -d '.' -f 2`; \
- convert -scale 250 $$img $(FIGURES_BUILDDIR)/`basename $$img $$ext`png\
- || eval $$failcom; \
- done;
+EXTRA_DIST = $(srcdir)/figures.stamp
+$(srcdir)/figures.stamp: $(FIGURES_SRCDIR)/*.p*m
+ rm -f $@.tmp
+ touch $@.tmp
+ test -d $(FIGURES_BUILDDIR) || mkdir $(FIGURES_BUILDDIR) && \
+ failcom='exit 1'; \
+ list="$(FIGURES_SRCDIR)/*.p*m"; for img in $$list; do \
+ echo "Converting $$img to PNG"; \
+ name=`basename $$img` \
+ ext=`echo $$name | cut -d '.' -f 2`; \
+ convert -scale 250 $$img \
+ $(FIGURES_BUILDDIR)/`basename $$img $$ext`png \
+ || eval $$failcom; \
+ done
+ mv -f $@.tmp $@
edit = sed -e "s|@ID@|$$Id|" \
@@ -127,10 +141,10 @@ edit_pdf = sed -e 's,GENERATE_LATEX = NO,GENERATE_LATEX = YES,g' \
-e 's,GENERATE_HTML = YES,GENERATE_HTML = NO,g'
# FIXME: This is not good. We should set these parameters for both
-# documentation (complete and user) using @VARIABLES@. Don't generate
-# Doxyfile_user from Doxyfile_complete! Both should be a product
+# documentation (devel and user) using @VARIABLES@. Don't generate
+# Doxyfile_user from Doxyfile_devel! Both should be a product
# derived from a single source, Doxyfile.in.
-edit_user = sed -e 's,OUTPUT_DIRECTORY = ./complete/,OUTPUT_DIRECTORY = ./user/,g' \
+edit_user = sed -e 's,OUTPUT_DIRECTORY = ./devel/,OUTPUT_DIRECTORY = ./user/,g' \
-e 's,EXTRACT_ALL = YES,EXTRACT_ALL = NO,g' \
-e 's,EXTRACT_PRIVATE = YES,EXTRACT_PRIVATE = NO,g' \
-e 's,EXTRACT_STATIC = YES,EXTRACT_STATIC = NO,g' \
@@ -146,7 +160,7 @@ edit_user = sed -e 's,OUTPUT_DIRECTORY = ./complete/,OUTPUT_DIRECTORY
# Regen files.
-EXTRA_DIST = generate_dist_files.sh headers.stamp
+EXTRA_DIST += generate_dist_files.sh headers.stamp
include $(top_srcdir)/build-aux/regen-recursive.mk
regen-am:
@rm -f $(srcdir)/headers.stamp.tmp
@@ -174,28 +188,37 @@ include $(srcdir)/outputs/outputs.mk
EXTRA_DIST += \
Doxyfile.in \
groups \
- user/html \
- user/latex/refman.pdf \
+ $(USER_REFMAN_HTML) \
+ $(USER_REFMAN_PDF) \
tools/clearbanner.sh \
tools/sample_utils.hh \
tools/split_sample.sh \
tools/todoxygen.sh
-CLEANFILES = \
-Doxyfile_complete \
-Doxyfile_user
+CLEANFILES = \
+ Doxyfile_user \
+ Doxyfile_user_pdf \
+ Doxyfile_devel \
+ Doxyfile_devel_pdf \
+ devel \
+ user
# Sed is used to generate Doxyfile from Doxyfile.in instead of
# configure, because the former is way faster than the latter.
# Moreover, this file is updated whenever ChangeLog is touched: using
# sed instead of configure saves us a lot of time.
-Doxyfile: $(top_srcdir)/milena/ChangeLog $(srcdir)/Doxyfile.in
- Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog`; \
- $(edit) $(srcdir)/Doxyfile.in >Doxyfile_complete && \
- $(edit_pdf) Doxyfile_complete > Doxyfile_complete_pdf && \
- $(edit_user) Doxyfile_complete >Doxyfile_user && \
- $(edit_pdf) Doxyfile_user > Doxyfile_user_pdf
+Doxyfile_user: Doxyfile_devel $(top_srcdir)/milena/ChangeLog
+ Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog`; \
+ $(edit) $< >$@
+
+Doxyfile_user_pdf: Doxyfile_user $(top_srcdir)/milena/ChangeLog
+ Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog`; \
+ $(edit_pdf) $< >$@
-clean-local:
- rm -rf complete user
+Doxyfile_devel: $(srcdir)/Doxyfile.in $(top_srcdir)/milena/ChangeLog
+ Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog`; \
+ $(edit) $< >$@
+Doxyfile_devel_pdf: $Doxyfile_devel $(top_srcdir)/milena/ChangeLog
+ Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog`; \
+ $(edit_pdf) $< >$@
diff --git a/milena/doc/doc.mk b/milena/doc/doc.mk
index 7fc7584..822717e 100644
--- a/milena/doc/doc.mk
+++ b/milena/doc/doc.mk
@@ -5,7 +5,7 @@ include $(top_srcdir)/milena/tests/tests.mk
AM_CPPFLAGS += -I$(top_srcdir)/milena/doc/tutorial/tools
-DOC_SRCDIR = $(top_srcdir)/milena/doc/
+DOC_SRCDIR = $(top_srcdir)/milena/doc
OUTPUTS_SRCDIR = $(DOC_SRCDIR)/outputs
SPLIT_OUTPUTS_SRCDIR = $(OUTPUTS_SRCDIR)/split
FIGURES_SRCDIR = $(DOC_SRCDIR)/figures
@@ -13,7 +13,7 @@ EXAMPLES_SRCDIR = $(DOC_SRCDIR)/examples
SPLIT_EXAMPLES_SRCDIR = $(EXAMPLES_SRCDIR)/split
IMG_SRCDIR = $(DOC_SRCDIR)/img
-DOC_BUILDDIR = $(top_builddir)/milena/doc/
+DOC_BUILDDIR = $(top_builddir)/milena/doc
OUTPUTS_BUILDDIR = $(DOC_BUILDDIR)/outputs
SPLIT_OUTPUTS_BUILDDIR = $(OUTPUTS_BUILDDIR)/split
FIGURES_BUILDDIR = $(DOC_BUILDDIR)/figures
diff --git a/milena/doc/examples/Makefile.am b/milena/doc/examples/Makefile.am
index 497be61..66468bd 100644
--- a/milena/doc/examples/Makefile.am
+++ b/milena/doc/examples/Makefile.am
@@ -138,11 +138,9 @@ tuto4_point2d_SOURCES = tuto4/point2d.cc
split-outputs
-all:
+run-examples:
mkdir -p $(OUTPUTS_BUILDDIR)
mkdir -p $(FIGURES_BUILDDIR)
-
-run-examples: all
@failcom='exit 1'; \
list='$(noinst_PROGRAMS)'; for bin in $$list; do \
echo "Running $$bin"; \
diff --git a/milena/doc/ref_guide/Makefile.am b/milena/doc/ref_guide/Makefile.am
index d77d1b2..e77300a 100644
--- a/milena/doc/ref_guide/Makefile.am
+++ b/milena/doc/ref_guide/Makefile.am
@@ -18,34 +18,47 @@
.PHONY: ref-guide ref-guide-html
include $(top_srcdir)/milena/doc/doc.mk
+
TEXINPUTS ="$(DOC_SRCDIR):$(DOC_BUILDDIR):$(OUTPUTS_SRCDIR):\
$(SPLIT_OUTPUTS_SRCDIR):$(IMG_SRCDIR):$(SPLIT_EXAMPLES_SRCDIR):"
-ref-guide: $(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/* ref-guide-pdf ref-guide-html
+ref-guide: ref-guide-html ref-guide-pdf
-ref-guide-pdf: ref_guide.pdf
+# Intermediate product for the various doc targets of the parent
+# directory.
+#
+# This is not a bug: REF_GUIDE_HH is meant to have a `.hh'
+# extension, since it is later parsed by Doxygen, which complains
+# about `.html' files.
+REF_GUIDE_HH = ref_guide.hh
+ref-guide-html: $(REF_GUIDE_HH)
+# FIXME: Missing dependencies on images from $(FIGURES_BUILDDIR).
+$(REF_GUIDE_HH):
+ $(DOC_SRCDIR)/tools/todoxygen.sh $(srcdir)/ref_guide.tex $(DOC_BUILDDIR)/ref_guide $(DOC_SRCDIR)
-ref_guide.pdf:
+# Final product.
+REF_GUIDE_PDF = ref_guide.pdf
+ref-guide-pdf: $(REF_GUIDE_PDF)
+# FIXME: Missing dependencies on images from $(FIGURES_BUILDDIR).
+$(REF_GUIDE_PDF):
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/ref_guide.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/ref_guide.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/ref_guide.tex
-ref-guide-html:
- chmod u+x $(DOC_SRCDIR)/tools/todoxygen.sh
- $(DOC_SRCDIR)/tools/todoxygen.sh $(srcdir)/ref_guide.tex $(DOC_BUILDDIR)/ref_guide $(DOC_SRCDIR)
-
-
-clean-local:
- rm -f ref_guide.aux ref_guide.toc ref_guide.log ref_guide.bbl ref_guide.out
- rm -f *~ *blg *.lot
- rm -f ref_guide.pdf
- rm -f *.haux *.hh *.html *.htoc
+CLEANFILES = \
+ ref_guide.aux ref_guide.toc ref_guide.log ref_guide.bbl ref_guide.out \
+ *~ *blg *.lot \
+ $(REF_GUIDE_PDF) \
+ *.haux *.hh *.html *.htoc \
+ ref_guide.html \
+ $(REF_GUIDE_HH)
-EXTRA_DIST = \
- ref_guide.tex \
- ref_guide.pdf
+EXTRA_DIST = \
+ ref_guide.tex \
+ $(REF_GUIDE_HH) \
+ $(REF_GUIDE_PDF)
diff --git a/milena/doc/tutorial/Makefile.am b/milena/doc/tutorial/Makefile.am
index eac50e9..8c81afe 100644
--- a/milena/doc/tutorial/Makefile.am
+++ b/milena/doc/tutorial/Makefile.am
@@ -1,3 +1,4 @@
+
# Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE).
#
# This file is part of Olena.
@@ -22,31 +23,40 @@ include $(top_srcdir)/milena/doc/doc.mk
TEXINPUTS = $(DOC_SRCDIR):$(DOC_BUILDDIR):$(OUTPUTS_SRCDIR):$(IMG_SRCDIR):
-tutorial: $(FIGURES_SRCDIR)/* $(OUTPUTS_SRCDIR)/* tutorial-html tutorial-pdf
-
+tutorial: tutorial-html tutorial-pdf
-tutorial-pdf: tutorial.pdf
-
-tutorial-html:
- chmod u+x $(DOC_SRCDIR)/tools/todoxygen.sh
+# Intermediate product for the various doc targets of the parent
+# directory.
+#
+# This is not a bug: TUTORIAL_HH is meant to have a `.hh' extension,
+# since it is later parsed by Doxygen, which complains about `.html'
+# files.
+TUTORIAL_HH = tutorial.hh
+tutorial-html: $(TUTORIAL_HH)
+# FIXME: Missing dependencies on images from $(FIGURES_BUILDDIR).
+$(TUTORIAL_HH):
$(DOC_SRCDIR)/tools/todoxygen.sh $(srcdir)/tutorial.tex $(DOC_BUILDDIR)/tutorial $(DOC_SRCDIR)
-tutorial.pdf:
+# Final product.
+TUTORIAL_PDF = tutorial.pdf
+tutorial-pdf: $(TUTORIAL_PDF)
+# FIXME: Missing dependencies on images from $(FIGURES_BUILDDIR).
+$(TUTORIAL_PDF): $(FIGURES_BUILDDIR)
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/tutorial.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/tutorial.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/tutorial.tex
-
-clean-local:
- rm -f tutorial.aux tutorial.toc tutorial.log tutorial.bbl tutorial.out
- rm -f *~ *blg *.lot
- rm -f tutorial.pdf
- rm -f *.haux *.hh *.html *.htoc
- rm -f tutorial.haux tutorial.hh tutorial.html
-
-
-EXTRA_DIST = \
- tutorial.tex \
- tutorial.pdf
-
+CLEANFILES = \
+ tutorial.aux tutorial.toc tutorial.log tutorial.bbl tutorial.out \
+ *~ *blg *.lot \
+ $(TUTORIAL_PDF) \
+ *.haux *.hh *.html *.htoc \
+ tutorial.haux \
+ tutorial.html \
+ $(TUTORIAL_HH)
+
+EXTRA_DIST = \
+ tutorial.tex \
+ $(TUTORIAL_HH) \
+ $(TUTORIAL_PDF)
diff --git a/milena/doc/white_paper/Makefile.am b/milena/doc/white_paper/Makefile.am
index 2dcf5bd..ab542a8 100644
--- a/milena/doc/white_paper/Makefile.am
+++ b/milena/doc/white_paper/Makefile.am
@@ -16,6 +16,7 @@
#
include $(top_srcdir)/milena/doc/doc.mk
+
TEXINPUTS=$(DOC_SRCDIR):$(srcdir):
PNGS = \
@@ -24,7 +25,9 @@ PNGS = \
figures/house_wshed.png \
figures/house_wshed_mean_colors.png
-#FIXME: we want to check if 'figures' exists only once!
+EPSS = $(PNGS:png=eps)
+
+# FIXME: we want to check if 'figures' exists only once!
.png.eps:
test -d figures || mkdir figures
convert $< $@
@@ -35,16 +38,17 @@ PNGS = \
white-paper: white-paper-pdf white-paper-html
-white-paper-pdf: white_paper.pdf
-
-white-paper-html: $(PNGS:png=eps)
+WHITE_PAPER_HTML = white_paper_html/index.html
+white-paper-html: $(WHITE_PAPER_HTML)
+$(WHITE_PAPER_HTML): $(srcdir)/white_paper.tex $(EPSS)
test -d white_paper_html || mkdir white_paper_html
- TEXINPUTS=$(TEXINPUTS) hevea -O -fix $(srcdir)/white_paper.tex -o white_paper_html/index.html
- chmod +x $(top_srcdir)/milena/doc/tools/clearbanner.sh
- $(top_srcdir)/milena/doc/tools/clearbanner.sh white_paper_html/index.html
+ TEXINPUTS=$(TEXINPUTS) hevea -O -fix $< -o $@
+ $(top_srcdir)/milena/doc/tools/clearbanner.sh $@
-white_paper.pdf:
+WHITE_PAPER_PDF = white_paper.pdf
+white-paper-pdf: $(WHITE_PAPER_PDF)
+$(WHITE_PAPER_PDF):
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/white_paper.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/white_paper.tex
TEXINPUTS=$(TEXINPUTS) pdflatex $(srcdir)/white_paper.tex
@@ -56,8 +60,9 @@ clean-local:
rm -f *.log *.idx *.out *.aux
rm -Rf figures
-EXTRA_DIST = \
- white_paper.tex \
- white_paper.pdf \
- $(PNGS)
-
+EXTRA_DIST = \
+ white_paper.tex \
+ $(WHITE_PAPER_HTML) \
+ $(WHITE_PAPER_PDF) \
+ $(PNGS) \
+ $(EPSS)
--
1.6.2.4
1
0
* vcs/scribo.rb: New.
---
scribo/ChangeLog | 6 ++++++
scribo/vcs/scribo.rb | 16 ++++++++++++++++
2 files changed, 22 insertions(+), 0 deletions(-)
create mode 100644 scribo/vcs/scribo.rb
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index fa89236..ddebb31 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,5 +1,11 @@
2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+ Add support for Vcs and svn-wrapper.
+
+ * vcs/scribo.rb: New.
+
+2009-06-11 Roland Levillain <roland(a)lrde.epita.fr>
+
Do not distribute executable binaries.
* src/Makefile.am (EXTRA_DIST): Rename as...
diff --git a/scribo/vcs/scribo.rb b/scribo/vcs/scribo.rb
new file mode 100644
index 0000000..0b849e6
--- /dev/null
+++ b/scribo/vcs/scribo.rb
@@ -0,0 +1,16 @@
+class Vcs
+
+ # See http://rubyforge.org/projects/vcs
+ # and http://vcs.rubyforge.org
+
+ protocol_version '0.1'
+
+ def scribo_commit! ( *args )
+ common_commit!("scribo <%= rev %>: <%= title %>", *args) do |subject|
+ mail!(:to => %w[olena-patches(a)lrde.epita.fr], :subject => subject)
+ end
+ end
+ alias_command :mlnci, :scribo_commit
+ default_commit :scribo_commit
+
+end # class Vcs
--
1.6.2.4
1
0