Commit 22980a32 authored by Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz

Initial PRCS checkin from my CVS tree.

    prcs2git-id: 0_2.1
parents
;; This file is automatically generated, editing may cause PRCS to do
;; REALLY bad things.
(Created-By-Prcs-Version 1 3 3)
(src/core/regular_image.hh 2110 1009823825 c/23_regular_im 1.1)
(src/value/color.hh 7084 1009823825 b/31_color.hh 1.1)
(src/convert/nrgbhsv.hh 4060 1009823825 11_nrgbhsv.hh 1.1)
(src/convol/fast_gaussian.hh 2963 1009823825 26_fast_gauss 1.1)
(src/core/point1d.hxx 2645 1009823825 c/31_point1d.hx 1.1)
(src/core/border1d.hh 2896 1009823825 d/34_border1d.h 1.1)
(src/morpho/extrema.hh 5331 1009823825 38_extrema.hh 1.1)
(src/core/internal/iter2d.hh 4251 1009823825 d/9_iter2d.hh 1.1)
(src/core/internal/iter1d.hh 4044 1009823825 d/10_iter1d.hh 1.1)
(src/basics3d.hh 1770 1009823825 28_basics3d.h 1.1)
(src/value/cplx.hh 6113 1009823825 b/46_cplx.hh 1.1)
(src/core/iter.hh 2312 1009823825 c/40_iter.hh 1.1)
(src/value/float_p.hh 7183 1009823825 b/44_float_p.hh 1.1)
(src/core/internal/image2d_data.hh 5161 1009823825 d/13_image2d_da 1.1)
(src/meta/basics.hh 2255 1009823825 c/4_basics.hh 1.1)
(src/core/dpointnd.hh 3261 1009823825 c/9_dpointnd.h 1.1)
(THANKS 488 1009823825 4_THANKS 1.1)
(src/core/internal/real_image2d.hh 4137 1009823825 d/4_real_image 1.1)
(src/meta/ufuncs.hh 2738 1009823825 b/51_ufuncs.hh 1.1)
(src/core/bkd_iter1d.hh 2198 1009823825 d/38_bkd_iter1d 1.1)
(src/value/hsv.hh 1913 1009823825 b/25_hsv.hh 1.1)
(src/io/pnm_write3d.hxx 7526 1009823825 b/9_pnm_write3 1.1)
(src/config/system.hh 1612 1009823825 7_system.hh 1.1)
(src/convert/conversion.hh 8477 1009823825 21_conversion 1.1)
(src/morpho/splitse.hh 3132 1009823825 34_splitse.hh 1.1)
(src/core/internal/image1d_data.hh 4290 1009823825 d/15_image1d_da 1.1)
(src/core/internal/real_image1d.hh 4015 1009823825 d/5_real_image 1.1)
(README 4213 1009823825 1_README 1.1)
(src/core/w_window3d.hh 3230 1009823825 c/17_w_window3d 1.1)
(src/core/point3d.hxx 3199 1009823825 c/27_point3d.hx 1.1)
(src/value/rec_int.hh 3500 1009823825 b/37_rec_int.hh 1.1)
(ChangeLog 42430 1009823825 6_ChangeLog 1.1)
(src/core/dpoint1d.hh 2470 1009823825 d/27_dpoint1d.h 1.1)
(src/math/macros.hh 3503 1009823825 b/21_macros.hh 1.1)
(src/core/internal/image1d.hh 3887 1009823825 d/16_image1d.hh 1.1)
(src/core/old/image2d_bin.hh 3428 1009823825 c/50_image2d_bi 1.1)
(src/value/rec_value.hh 6904 1009823825 b/36_rec_value. 1.1)
(src/core/point3d.hh 2627 1009823825 c/28_point3d.hh 1.1)
(src/morpho/laplacian.inc 1882 1009823825 41_laplacian. 1.1)
(src/core/objs.hh 1863 1009823825 c/34_objs.hh 1.1)
(src/core/w_window.hh 1786 1009823825 c/20_w_window.h 1.1)
(src/morpho/geodesic_erosion.hh 2710 1009823825 36_geodesic_e 1.1)
(src/core/fwd_iter1d.hh 2197 1009823825 d/21_fwd_iter1d 1.1)
(src/core/dpoint2d.hxx 2781 1009823825 d/24_dpoint2d.h 1.1)
(src/convert/nrgbhsi.hh 3577 1009823825 15_nrgbhsi.hh 1.1)
(src/core/image1d.hh 4138 1009823825 c/47_image1d.hh 1.1)
(src/morpho/top_hat.inc 3605 1009823825 39_top_hat.in 1.1)
(src/core/border2d.hh 3844 1009823825 d/33_border2d.h 1.1)
(src/core/pred.hh 3264 1009823825 c/26_pred.hh 1.1)
(src/core/neighborhood.hh 1780 1009823825 c/38_neighborho 1.1)
(demo/image.cc 2779 1009823825 d/46_image.cc 1.1)
(demo/morpholena.cc 3528 1009823825 d/43_morpholena 1.1)
(src/morpho/stat.hh 3260 1009823825 50_stat.hh 1.1)
(src/io/pnm_read_common.hxx 2814 1009823825 b/10_pnm_read_c 1.1)
(src/morpho/watershed.hxx 10774 1009823825 47_watershed. 1.1)
(src/convol/fast_gaussian_coefficient.hh 7584 1009823825 24_fast_gauss 1.1)
(src/convert/colorconv.hh 2822 1009823825 18_colorconv. 1.1)
(src/core/internal/rec_operable.hh 3905 1009823825 d/2_rec_operab 1.1)
(src/morpho/watershed.hh 5781 1009823825 48_watershed. 1.1)
(src/core/window3d.hh 7573 1009823825 c/13_window3d.h 1.1)
(src/meta/array.hxx 6346 1009823825 c/5_array.hxx 1.1)
(src/core/macros.hh 1879 1009823825 c/39_macros.hh 1.1)
(src/utils/stat.hh 2962 1009823825 9_stat.hh 1.1)
(src/core/bkd_iter2d.hh 2312 1009823825 d/37_bkd_iter2d 1.1)
(src/core/neighborhood3d.hh 5559 1009823825 c/35_neighborho 1.1)
(src/value/bin.hh 3325 1009823825 b/49_bin.hh 1.1)
(src/morpho/reconstruction.hh 8983 1009823825 35_reconstruc 1.1)
(src/morpho/hit_or_miss.inc 3633 1009823825 42_hit_or_mis 1.1)
(src/core/dpoint2d.hh 2470 1009823825 d/25_dpoint2d.h 1.1)
(src/core/compose.hh 3722 1009823825 c/22_compose.hh 1.1)
(src/core/internal/image2d.hh 4129 1009823825 d/14_image2d.hh 1.1)
(src/morpho/erosion.hh 4637 1009823825 b/4_erosion.hh 1.1)
(src/morpho/minmax.hh 2436 1009823825 b/0_minmax.hh 1.1)
(src/morpho/opening.hh 1626 1009823825 51_opening.hh 1.1)
(src/core/image2d.hh 4622 1009823825 c/45_image2d.hh 1.1)
(src/core/pointnd.hh 2960 1009823825 c/10_pointnd.hh 1.1)
(src/value/ops.hh 5913 1009823825 b/40_ops.hh 1.1)
(src/Makefile.am 4827 1009823825 27_Makefile.a 1.1)
(src/basics1d.hh 1720 1009823825 d/41_basics1d.h 1.1)
(src/meta/ucmp.hh 3334 1009823825 c/0_ucmp.hh 1.1)
(src/core/fwd_iter2d.hh 2289 1009823825 d/20_fwd_iter2d 1.1)
(src/morpho/laplacian.hh 1691 1009823825 b/1_laplacian. 1.1)
(src/convert/nrgbhsl.hh 4260 1009823825 12_nrgbhsl.hh 1.1)
(src/core/old/image2d.hxx 5883 1009823825 c/51_image2d.hx 1.1)
(src/basics2d.hh 1768 1009823825 b/7_basics2d.h 1.1)
(src/io/file.hh 2841 1009823825 b/17_file.hh 1.1)
(src/utils/timer.hh 2554 1009823825 8_timer.hh 1.1)
(src/core/apply.hh 6967 1009823825 d/39_apply.hh 1.1)
(src/io/pnm_read.hxx 5963 1009823825 b/16_pnm_read.h 1.1)
(src/convert/bound.hh 2063 1009823825 22_bound.hh 1.1)
(src/core/internal/real_image3d.hh 4299 1009823825 d/3_real_image 1.1)
(src/morpho/opening.inc 2624 1009823825 40_opening.in 1.1)
(src/morpho/hit_or_miss.hh 1729 1009823825 b/2_hit_or_mis 1.1)
(src/value/predefs.hh 2717 1009823825 b/39_predefs.hh 1.1)
(src/arith/ops.hh 2584 1009823825 b/23_ops.hh 1.1)
(src/value/to_oln.hh 2466 1009823825 b/35_to_oln.hh 1.1)
(src/utils/histogram.hh 7865 1009823825 10_histogram. 1.1)
(src/meta/logic.hh 2164 1009823825 c/1_logic.hh 1.1)
(src/convert/nrgbxyz.hh 3183 1009823825 16_nrgbxyz.hh 1.1)
(src/core/point.hh 1998 1009823825 c/33_point.hh 1.1)
(src/core/old/image2d_bin.hxx 4736 1009823825 c/49_image2d_bi 1.1)
(src/core/internal/w_window.hh 3591 1009823825 d/1_w_window.h 1.1)
(src/core/accum.hh 1645 1009823825 d/40_accum.hh 1.1)
(img/lena.pgm 262159 1009823825 5_lena.pgm 1.1)
(src/core/w_window2d.hh 3554 1009823825 c/18_w_window2d 1.1)
(src/io/pnm_read3d.hxx 6922 1009823825 b/11_pnm_read3d 1.1)
(src/core/image2d_size.hh 2025 1009823825 c/44_image2d_si 1.1)
(src/value/yuv.hh 1913 1009823825 b/27_yuv.hh 1.1)
(src/core/dpoint.hh 2006 1009823825 d/28_dpoint.hh 1.1)
(src/arith/internal/opdecls.hh 11837 1009823825 b/22_opdecls.hh 1.1)
(src/value/debug.hh 3338 1009823825 b/45_debug.hh 1.1)
(src/core/point2d.hh 2485 1009823825 c/30_point2d.hh 1.1)
(src/io/basics.hh 1474 1009823825 b/12_basics.hh 1.1)
(src/core/point2d.hxx 2908 1009823825 c/29_point2d.hx 1.1)
(src/value/rgb.hh 1928 1009823825 b/33_rgb.hh 1.1)
(src/convert/force.hh 2068 1009823825 20_force.hh 1.1)
(src/value/nrgb.hh 1949 1009823825 b/28_nrgb.hh 1.1)
(src/morpho/closing.hh 1626 1009823825 b/6_closing.hh 1.1)
(src/morpho/geodesic_dilation.hh 2747 1009823825 37_geodesic_d 1.1)
(src/value/int_s.hh 7753 1009823825 b/43_int_s.hh 1.1)
(src/core/border.hh 3080 1009823825 d/35_border.hh 1.1)
(src/level/connected.hh 3667 1009823825 30_connected. 1.1)
(src/value/built_in.hh 6575 1009823825 b/48_built_in.h 1.1)
(configure.ac 312 1009823825 3_configure. 1.1)
(src/core/internal/iter3d.hh 4425 1009823825 d/8_iter3d.hh 1.1)
(src/core/internal/image3d_data.hh 6022 1009823825 d/11_image3d_da 1.1)
(src/morpho/dilation.hh 4655 1009823825 b/5_dilation.h 1.1)
(src/io/pnm.hh 1522 1009823825 b/19_pnm.hh 1.1)
(src/convert/nrgbyuv.hh 3138 1009823825 13_nrgbyuv.hh 1.1)
(src/io/pnm_write_common.hxx 2898 1009823825 b/8_pnm_write_ 1.1)
(src/convol/fast_gaussian.hxx 8527 1009823825 25_fast_gauss 1.1)
(src/level/invert.hh 2707 1009823825 33_invert.hh 1.1)
(src/core/internal/neighborhood.hh 2683 1009823825 d/7_neighborho 1.1)
(src/level/lut.hh 2787 1009823825 29_lut.hh 1.1)
(src/morpho/top_hat.hh 1680 1009823825 49_top_hat.hh 1.1)
(src/core/window1d.hh 3779 1009823825 c/15_window1d.h 1.1)
(src/core/pred_image.hh 1781 1009823825 c/24_pred_image 1.1)
(src/io/base.hxx 8003 1009823825 b/18_base.hxx 1.1)
(src/core/w_window1d.hh 3148 1009823825 c/19_w_window1d 1.1)
(src/level/compare.hh 3341 1009823825 31_compare.hh 1.1)
(src/value/xyz.hh 1911 1009823825 b/32_xyz.hh 1.1)
(src/core/fold.hh 2496 1009823825 c/7_fold.hh 1.1)
(src/value/hsi.hh 1913 1009823825 b/30_hsi.hh 1.1)
(src/core/window2d.hh 5194 1009823825 c/14_window2d.h 1.1)
(src/core/image.hh 2199 1009823825 d/18_image.hh 1.1)
(src/morpho/gradient.hh 1686 1009823825 b/3_gradient.h 1.1)
(src/basics.hh 1943 1009823825 d/42_basics.hh 1.1)
(demo/Makefile.am 265 1009823825 d/44_Makefile.a 1.1)
(src/core/bkd_iter3d.hh 2417 1009823825 d/36_bkd_iter3d 1.1)
(src/convert/nrgbyiq.hh 3156 1009823825 14_nrgbyiq.hh 1.1)
(src/core/dpoint3d.hxx 3042 1009823825 d/22_dpoint3d.h 1.1)
(src/core/winiter.hh 2673 1009823825 c/12_winiter.hh 1.1)
(src/io/pnm_write.hxx 6051 1009823825 b/15_pnm_write. 1.1)
(src/value/vec.hh 6555 1009823825 b/34_vec.hh 1.1)
(src/io/base.hh 3734 1009823825 b/20_base.hh 1.1)
(src/core/structelt.hh 1792 1009823825 c/25_structelt. 1.1)
(src/core/internal/fake.hh 1888 1009823825 d/17_fake.hh 1.1)
(src/value/yiq.hh 1911 1009823825 b/29_yiq.hh 1.1)
(src/value/int_u.hh 6745 1009823825 b/42_int_u.hh 1.1)
(Makefile.am 162 1009823825 2_Makefile.a 1.1)
(src/value/hsl.hh 1913 1009823825 b/26_hsl.hh 1.1)
(src/value/all.hh 1717 1009823825 b/50_all.hh 1.1)
(src/core/image3d.hh 4697 1009823825 c/43_image3d.hh 1.1)
(src/core/window.hh 1772 1009823825 c/16_window.hh 1.1)
(src/core/type.hh 4641 1009823825 c/21_type.hh 1.1)
(src/meta/control.hh 2656 1009823825 c/2_control.hh 1.1)
(src/value/op_traits.hh 6764 1009823825 b/41_op_traits. 1.1)
(src/meta/cmp.hh 2582 1009823825 c/3_cmp.hh 1.1)
(demo/tour.cc 14465 1009823825 d/45_tour.cc 1.1)
(src/core/image1d_size.hh 1900 1009823825 c/46_image1d_si 1.1)
(src/core/fwd_iter3d.hh 2388 1009823825 d/19_fwd_iter3d 1.1)
(src/convert/rgbnrgb.hh 3207 1009823825 17_rgbnrgb.hh 1.1)
(src/morpho/closing.inc 2624 1009823825 44_closing.in 1.1)
(src/core/border3d.hh 5008 1009823825 d/32_border3d.h 1.1)
(src/core/coord.hh 1742 1009823825 d/29_coord.hh 1.1)
(src/core/dpoint1d.hxx 2540 1009823825 d/26_dpoint1d.h 1.1)
(NEWS 4653 1009823825 0_NEWS 1.1)
(src/morpho/gradient.inc 2838 1009823825 43_gradient.i 1.1)
(src/core/old/rec_window.hh 4094 1009823825 c/48_rec_window 1.1)
(src/io/readable.hh 1912 1009823825 b/13_readable.h 1.1)
(src/morpho/fast_morpho.hh 1793 1009823825 46_fast_morph 1.1)
(src/value/cast.hh 4903 1009823825 b/47_cast.hh 1.1)
(src/core/winneighb.hh 3055 1009823825 c/11_winneighb. 1.1)
(src/convert/rgbxyz.hh 3148 1009823825 19_rgbxyz.hh 1.1)
(src/core/internal/objs.hxx 1822 1009823825 d/6_objs.hxx 1.1)
(src/morpho/fast_morpho.hxx 8044 1009823825 45_fast_morph 1.1)
(src/level/fill.hh 1700 1009823825 32_fill.hh 1.1)
(src/convert/basics.hh 1532 1009823825 23_basics.hh 1.1)
(src/core/image_size.hh 2043 1009823825 c/41_image_size 1.1)
(src/core/neighborhood2d.hh 4426 1009823825 c/36_neighborho 1.1)
(src/core/internal/window.hh 3418 1009823825 d/0_window.hh 1.1)
(src/core/contract.hh 2989 1009823825 d/31_contract.h 1.1)
(src/io/pnm3d.hh 1530 1009823825 b/14_pnm3d.hh 1.1)
(src/value/rec_float.hh 1862 1009823825 b/38_rec_float. 1.1)
(src/core/image3d_size.hh 2161 1009823825 c/42_image3d_si 1.1)
(src/core/dpoint3d.hh 2535 1009823825 d/23_dpoint3d.h 1.1)
(src/arith/logic.hh 2276 1009823825 b/24_logic.hh 1.1)
(src/core/internal/image3d.hh 4396 1009823825 d/12_image3d.hh 1.1)
(src/core/neighborhood1d.hh 3853 1009823825 c/37_neighborho 1.1)
(src/core/point1d.hh 2479 1009823825 c/32_point1d.hh 1.1)
(src/meta/array.hh 6151 1009823825 c/6_array.hh 1.1)
(src/core/traverse.hh 3312 1009823825 d/30_traverse.h 1.1)
(src/core/imagend_size.hh 2544 1009823825 c/8_imagend_si 1.1)
2001-12-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/cast.hh (_round): Cast the rounded value to
Tdest::value_t before returning it as Tdest. Otherwise g++-3.0
complains there is no Tdest constructor taking a float argument.
2001-12-26 Alexandre Duret-Lutz <duret_g@epita.fr>
Speed up the fast_morpho() function in two ways:
1) reorganize the code using a recursive template (this lowers
the run-time of a simple example from 13.1sec to 10.8sec)
2) specialize the histogram class as histogram_min and
histogram_max. These new classes can compute min() and max()
in a more efficient way. This second change results in a speed
up of more than 10x in our color segmentation algorithm.
* src/morpho/dilation.hh (fast::dilation): Adjust call to fast_morpho.
* src/morpho/erosion.hh (fast::erosion): Likewise.
* src/morpho/fast_morpho.hxx (hist_update, find_struct_elts): Move...
(internal::hist_update, internal::find_struct_elts): ... here.
(internal::fast_morpho_inner): New.
(fast_morpho): Adjust to call fast_morpho_inner. Take the
histogram type as a parameter.
* src/utils/histogram.hh (histogram): Store values in an array
instead of a vector.
(histogram_minmax, histogram_min,
histogram_max): New classes.
(min, max): Define for these new classes too.
2001-12-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/vec.hh (internal::default_less<vec<N,T>>): Typo.
* src/core/pointnd.hh
(internal::default_less<pointnd<Dim,Inferior>>): Likewise.
2001-12-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.2c.
2001-12-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.2b.
* NEWS: Update.
* demo/tour.cc: Include system headers after Olena headers.
2001-12-11 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/io/pnm_write3d.hxx: Include io/pnm_write_common.hxx.
* src/core/w_window3d.hh: Include internal/w_window.hh.
* src/core/image3d.hh: Include io/readable.hh.
* src/core/window3d.hh (mk_win_ellipsoid, mk_win_ball): New functions.
* src/core/window2d.hh (mk_win_ellipse, mk_win_disc): New functions.
2001-12-10 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/io/pnm_read3d.hxx
(reader<ReadPnmPlain, image3d<int_u<N> > >): Rename as ...
(reader<ReadPnmPlain, image3d<int_u<8> > >): ... this.
2001-12-06 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/vec.hh (internal::default_less<vec<N,T>>): New.
2001-12-06 Heru Xue <xue@lrde.epita.fr>
* src/convert/nrgbhsl.hh, src/convert/nrgbhsv.hh,
src/value/hsl.hh, src/value/hsv.hh: New files.
* src/Makefile.am (nobase_oln_HEADERS): Add them.
2001-12-06 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/morpho/closing.inc, src/morpho/dilation.hh,
src/morpho/erosion.hh, src/morpho/opening.inc,
src/morpho/watershed.hh: Add getdefs blocks for documentation.
* src/morpho/dilation.hh: Include morpho/stat.hh.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.2a.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.2.
* src/Makefile.am (nobase_oln_HEADERS): Typo.
2001-11-28 Heru Xue <xue@lrde.epita.fr>
* src/convert/nrgbxyz.hh, src/convert/nrgbyuv.hh: New files.
* src/value/yuv.hh: New file.
* src/Makefile.am (nobase_oln_HEADERS): Add them.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/convert/rgbnrgb.hh: New file.
* src/Makefile.am (nobase_oln_HEADERS): Add it.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/nrgb.hh: New file (that's NTSC RGB; the other, rgb.hh,
is CIE RGB).
* src/convert/rgbyiq.hh, src/convert/rgbhsi.hh: Rename to ...
* src/convert/nrgbyiq.hh, src/convert/nrgbhsi.hh: ... these, and
use nrgb.hh.
* src/Makefile.am (nobase_oln_HEADERS): Adjust.
2001-11-27 Jerome Darbon <darbon_j@epita.fr>
* src/level/connected.hh: Typo.
2001-11-27 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/convol/fast_gaussian_coefficient.hh
(case DericheGaussianFirstDerivative): Remove unused variable.
* src/convol/fast_gaussian.hxx: Instanciate _recursivefilter and
internal::_RecursiveFilterCoef for float instead of sfloat; this
shorten the compile time a lot.
2001-11-27 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/internal/image1d_data.hh,
src/core/internal/image2d_data.hh,
src/core/internal/image3d_data.hh: Remove FIXMEs and comments
about _fake.
* src/core/internal/fake.hh: Document it here.
* src/convert/colorconv.hh: More comments.
2001-11-27 Alexandre Duret-Lutz <duret_g@epita.fr>
* NEWS, README: Prepare for 0.2.
2001-11-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/io/pnm_write3d.hxx, src/io/pnm_read3d.hxx: Add untested
support for pnm/P1, pnm/P3, pnm/P6.
2001-11-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/cplx.hh (transp): Rename as ...
(conj): ... this.
(operator<, min, max): Remove (meaningless)
* src/value/int_s.hh (operator==): Uncomment.
* src/value/int_u.hh: Remove dead code and FIXMEs.
2001-11-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/ops.hh (operator++, operator+, operator--, operator-):
Returns same type as input.
2001-11-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/convert/rgbhsi.hh (inv_sqrt2): New. Use instead of M_SQRT1_2.
* src/io/pnm_write_common.hxx (writemany_raw): Remove debugging code.
* src/Makefile.am (nobase_oln_HEADERS): Add config/system.h.
* src/config/system.h: New file.
* src/basics.hh: Include it.
2001-11-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/border3d.hh (_replicate_borders, _mirror_borders): Simplify.
* src/core/border2d.hh (_replicate_borders, _mirror_borders): Simplify.
* src/convert/colorconv.hh, src/convert/rgbhsi.hh,
src/convert/rgbxyz.hh, src/convert/rgbyiq.hh: Typos.
2001-11-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.1g.
2001-11-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.1f.
* NEWS: Update for 0.1f.
* src/core/dpoint1d.hxx: Add back constructors (mistakenly deleted).
2001-11-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/border3d.hh (_mirror_borders, _replicate_borders):
Typos in indices.
2001-11-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/morpho/fast_morpho.hxx (hist_update): Inline.
(fast_morpho): Exit both loops with a goto.
* src/level/connected.hh: Typo.
* src/convol/fast_gaussian_coefficient.hh
(_RecursiveFilterCoef::_RecursiveFilterCoef): Declare out of the
struct to prevent any inline attempt.
* src/core/dpoint1d.hh, src/core/dpoint2d.hh,
src/core/dpoint3d.hh, src/core/point1d.hh, src/core/point2d.hh,
src/core/point3d.hh, src/core/window1d.hh, src/core/window2d.hh,
src/core/window3d.hh, src/core/w_window1d.hh,
src/core/w_window2d.hh, src/core/w_window3d.hh,
src/core/neighborhood1d.hh, src/core/neighborhood2d.hh,
src/core/neighborhood3d.hh: Reorganize to help the compiler
inlining methods (i.e. define used-functions before
user-functions.)
* src/utils/histogram.hh (min, max): Declare inline.
* src/core/internal/image3d_data.hh (precondition_hold_large): New
member.
(at) Use it.
* src/core/internal/image2d_data.hh,
src/core/internal/image1d_data.hh: Likewise.
* src/io/pnm_read3d.hxx: Add support for P2 images.
* src/io/pnm_write3d.hxx: Add support P2 images.
2001-11-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (nobase_oln_HEADERS): Add convert/rgbhsi.hh,
convert/rgbyiq.hh, value/hsi.hh, value/yiq.hh.
2001-11-21 Alexandre Duret-Lutz <duret_g@epita.fr>
Now it's possible to I/O image3d<int_u<N> > as "mosaic" PNM
images.
* src/io/pnm_read3d.hxx, src/io/pnm_read_common.hxx,
src/io/pnm_write3d.hxx, src/io/pnm_write_common.hxx,
src/io/pnm3d.hh: New files.
* src/Makefile.am (nobase_oln_HEADERS): Add them.
* src/basics2d.hh: Inlude io/pnm.hh
* src/basics3d.hh: Inlude io/pnm3d.hh
* src/io/basics.hh: Don't include io/pnm.hh.
* src/core/image2d.hh (image2d<bin>): Define io ctor and op=.
* src/core/image3d.hh (image3d<T>, image3d<bin>): Likewise.
* src/io/pnm_read.hxx: Revamp to use the function from
pm_read_common.hxx
* src/io/pnm_write.hxx: Revamp to use the function from
pm_write_common.hxx
2001-11-21 Jerome Darbon <darbon_j@epita.fr>
* src/morpho/extrema.hh, src/morpho/geodesic_erosion.hh,
src/morpho/reconstruction.hh: Adjust to always pass exact
references (e.g. `marker' instead of `_marker') to
subroutines. This suppress `unused variable' warnings.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/color.hh (internal::_from_float): Use cast::rbound.
* src/value/cast.hh (round, rbound): New casts.
* src/basics.hh: Define __USE_ISOC99.
* src/value/rec_int.hh (cast::any_int): Lookup any_int in
oln::internal, not internal.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/rgb.hh (Red, Green, Blue): Rename as ...
(rgb_R, rgb_G, rgb_B): ... these.
* src/value/xyz.hh (X, Y, Z): Rename as ...
(xyz_X, xyz_Y, xyz_Z): ... these.
* src/convert/rgbhsi.hh, src/convert/rgbyiq.hh: New files.
* src/value/hsi.hh, src/value/yiq.hh: New files.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/morpho/extrema.hh: Adjust to use the new min.
* src/value/ops.h (min, max): Cast result values to result_type in ?:.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/math/macros.hh (min, max): Remove.
* src/arith/ops.hh (min, max): s/math::min/min/; s/math::max/max/;
* src/morpho/geodesic_dilation.hh,
src/morpho/geodesic_erosion.hh,
src/morpho/reconstruction.hh: Likeiwse.
* src/value/float_p.hh, src/value/int_u.hh, src/value/int_s.hh:
Define operator_min_traits and operator_max_traits.
* src/value/op_tailts (operator_min_traits, operator_max_traits)
Remove.
(properties_of_operator): Specialise for min and max.
* src/value/ops.hh (plus_helper, minus_helper, times_helper,
div_helper): Remove these unused traits.
(DEC_OPERATOR_SIMPLE): New.
(min, max): Define using DEC_OPERATOR_SIMPLE.
2001-11-20 Jerome Darbon <darbon_j@epita.fr>
* src/level/lut.hh, src/level/compare.hh, src/utils/timer.hh,
src/morpho/splitse.hh, src/morpho/geodesic_dilation.hh,
src/morpho/geodesic_erosion.hh,src/morpho/reconstruction.hh,
src/extrema.hh, src/level/connected.hh: New files.
* src/Makefile.am (nobase_oln_HEADERS): Add them.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/morpho/fast_morpho.hxx (fast_morpho): Iterate in
slice/row/col order instead of col/row/slice.
2001-11-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/internal/image3d_data.hh (_allocate_3d_data): Thinko in
array initialization.
2001-11-19 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/window3d.hh (win_c26_only, win_c26p): Add missing coma
in array definition.
* src/core/internal/image1d_data.hh (_buffer): Shift by border()
before return.
* src/morpho/dilation.hh: Include morpho/fast_morpho.hh.
* src/core/neighborhood3d.hh: Remove wrong assertion.
* src/core/window3d.hh: Likewise.
2001-11-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.1e.
2001-11-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.1d.
* NEWS: Update.
2001-11-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/color.hh: New file.
* src/value/predef.hh: Predeclare color.
* src/value/rgb.hh, src/value/xyz.hh: Rewrite using color.hh.
* src/io/pnm_read.hxx: Adjust to read any kind of color<3,8,*>.
* src/io/pnm_write.hxx: Likewise for write.
* src/value/rec_value.hh (real_value_traits): Specialize for
builtin types.
(zero_value_traits): New.
* src/value/vec.hh: Arrange to support builtin types.
* src/convert/colorconv.hh: New file.
* src/convert/rgbxyz.hh: Simplify using colorconv and color.
* src/Makefile.am (nobase_oln_HEADERS): value/color.hh and
convert/colorconv.hh.
* src/core/compose.hh, src/utils/stat.hh: Use std:: where appropriate.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/compose.hh: Typos.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/compose.hh (f_identity): New functor.
* src/convert/conversion.hh (convert::apply): New function.
* src/value/cast.hh (bound): Cast max() and min() in comparisons.
* src/value/rgb.hh (rgb<T>::value): New typedef.
* src/value/predefs.hh: Predeclare xyz<T>.
* src/convert/rgbxyz.hh: New file.
* src/value/xyz.hh: New file.
* src/value/all.hh: Include it.
* src/Makefile.am (nobase_oln_HEADERS): Adjust.
* src/io/pnm_read.hxx: Allow loading ppm files as xyz<int_u8> images.
* src/io/pnm_write.hxx: Allow saveing xyz<int_u8> images in ppm files.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/cast.hh (bound): New function.
* src/convert/bound.hh: Use it.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/compose.hh: New file.
* src/basics.hh: Include it.
* src/Makefile.am (nobase_oln_HEADERS): Add it.
* src/convert/conversion.hh (internal::_compconv1,
internal::_compconv2): Copy _conv and _func, don't reference them.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/int_u.hh (operator<<): Cast to unsigned before
printing values.
* demo/tour.cc (main): Document high level operators.
Show a use of utils::f_moment, traverse, convert::bound, and apply.
* src/core/traverse.hh (traverse, traverse2): Take the functor
argument before any image, for similarity with apply and apply2.
* src/utils/stat.hh: New file.
* src/Makefile.am (nobase_oln_HEADERS): Add it.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/conversion.hh: Delete and replace by ...
* src/convert/basics.hh, src/convert/bound.hh,
src/convert/conversion.hh, src/convert/force.hh: Those files.
* src/Makefile.am (nobase_oln_HEADERS): Adjust.
* src/morpho/top_hat.hh, ../src/morpho/gradient.hh,
../src/morpho/gradient.hh: Adjust includes.
2001-11-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/value/vec.hh: Use a bare array (static) instead of an
std::vector to store the values.
2001-11-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/convol/fast_gaussian.hxx (_gaussian<3>): Typos.
2001-11-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/fold.hh: New file.
* src/basics.hh: Include it.
* src/Makefile.am (nobase_oln_HEADERS): Add it.
* src/core/macros.hh (for_all_remaining): Rewrite to not use
the result of ++p.
2001-11-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/core/border3d.hh: Typos.
* src/core/dpoint3d.hh: Typo.
* src/core/point3d.hh: Typo.
2001-11-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/fill.hh: New file. (Called assign.hh in Milena.)