- 30 Jan, 2007 2 commits
-
-
Roland Levillain authored
Encapsulate the contents of SCOOPED_NAMESPACE in stc_scoop_equipment_for_namespace. * stc/scoop2.hh: Rename as... * stc/scoop-alt.hh: ...this. Adjust header guards. (ERROR::IN_find__VIRTUAL_TYPE_IS_ABSTRACT) (ERROR::IN_find_local__VIRTUAL_TYPE_MULTIPLY_DEFINED) (ERROR::IN_merge2__FINAL_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge2__FINAL_VIRTUAL_TYPE_REDEFINED_FINAL) (ERROR::IN_merge2__FINAL_VIRTUAL_TYPE_REDEFINED) (ERROR::IN_merge2__VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3__FINAL_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3__VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3__LOCAL_DECLARATION_OF_NOT_DELEGATED_AND_ABSTRACT) (ERROR::IN_merge3__FINAL_VIRTUAL_TYPE_REDEFINED_FINAL) (ERROR::IN_merge3__FINAL_VIRTUAL_TYPE_REDEFINED): Rename as... (ERROR::IN_find_VIRTUAL_TYPE_IS_ABSTRACT) (ERROR::IN_find_local_VIRTUAL_TYPE_MULTIPLY_DEFINED) (ERROR::IN_merge2_FINAL_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge2_FINAL_VIRTUAL_TYPE_REDEFINED_FINAL) (ERROR::IN_merge2_FINAL_VIRTUAL_TYPE_REDEFINED) (ERROR::IN_merge2_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3_FINAL_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3_VIRTUAL_TYPE_REDEFINED_ABSTRACT) (ERROR::IN_merge3_LOCAL_DECLARATION_OF_NOT_DELEGATED_AND_ABSTRACT) (ERROR::IN_merge3_FINAL_VIRTUAL_TYPE_REDEFINED_FINAL) (ERROR::IN_merge3_FINAL_VIRTUAL_TYPE_REDEFINED): ...these. (SCOOPED_NAMESPACE): Remove macro. (stc_scoop_equipment_for_namespace): New macro. Encapsulate the contents of SCOOPED_NAMESPACE within this macro. (stc_match_pair_0p_with, stc_match_pair_1p_with) (stc_match_pair_2p_with, stc_match_pair_1p_with_error) (stc_match_pair_2p_with_error) (stc_match_triple_0p_with, stc_match_triple_1p_with) (stc_match_triple_2p_with, stc_match_triple_3p_with) (stc_match_triple_2p_with_error, stc_match_triple_3p_with_error): Move and rename these macros as.. * stc/internal/match-with.hh (stc_internal_match_pair_0p_with) (stc_internal_match_pair_1p_with, stc_internal_match_pair_2p_with) (stc_internal_match_pair_1p_with_error) (stc_internal_match_pair_2p_with_error) (stc_internal_match_triple_0p_with) (stc_internal_match_triple_1p_with) (stc_internal_match_triple_2p_with) (stc_internal_match_triple_3p_with) (stc_internal_match_triple_2p_with_error) (stc_internal_match_triple_3p_with_error): ...these (new file). * stc/Makefile (nobase_stc_HEADERS): Remove scoop2.hh. Add scoop-alt.hh and internal/match-with.hh. * tests/scoop2.cc: Rename as... * tests/scoop-alt.cc: ...this. Adjust. (stc_scoop_equipment_for_namespace): Invoke it. * tests/super.cc (my::set_pseudosuper_type<C>): Remove. (my::vtypes<C>::delegatee_type): New. * tests/Makefile.am (nobase_stc_HEADERS): Add internal/match-with.hh. (scoop2_SOURCES): Remove. (scoop_alt_SOURCES): New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@726 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
Add mini-std. * samples/mini-std: New. * samples/mini-oln/design.hh: New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@725 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 26 Jan, 2007 4 commits
-
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@724 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
The macro OLENA_USE_NEW_SCOOP2 is used to tag the places where support code is introduced. * oln/core/typedefs.hh (stc/scoop2.hh) [OLENA_USE_NEW_SCOOP2]: Include it. (stc/scoop.hh) [!OLENA_USE_NEW_SCOOP2]: Include it. Invoke stc_scoop_equipment_for_namespace(oln). Temporary hack: define deferred virtual types as single_vtypes when using new SCOOP 2 implementation. * oln/core/image_entry.hh (vtypes< image_entry<E> >::rvalue_type) [!OLENA_USE_NEW_SCOOP2]: Define it. (single_vtype<image_entry<E>, typedef_::rvalue_type> [!OLENA_USE_NEW_SCOOP2]: Define it. * oln/core/abstract/iterator_on_points.hh (vtypes< abstract::iterator_on_points<E> >) [!OLENA_USE_NEW_SCOOP2]: Define it. (single_vtype<abstract::iterator_on_points<E>, typedef_::coord_type>) [OLENA_USE_NEW_SCOOP2]: Define it. * oln/core/abstract/point.hh (oln, oln): (vtypes< abstract::point<E> >::coord_type) (vtypes< abstract::point<E> >::vec_type) [!OLENA_USE_NEW_SCOOP2]: Define them. (single_vtype< abstract::point<E>, typedef_::coord_type>) (single_vtype< abstract::point<E>, typedef_::vec_type>) [OLENA_USE_NEW_SCOOP2]: Define them. * oln/core/internal/point_nd.hh (vtypes< internal::point_nd<E> >): Disable it (duplicate with vtypes< abstract::point<E> >). * oln/core/internal/dpoint_nd.hh (vtypes< internal::dpoint_nd<E> >::vec_type) [!OLENA_USE_NEW_SCOOP2]: Define it. (single_vtype< internal::dpoint_nd<E>, typedef_::vec_type >) [OLENA_USE_NEW_SCOOP2]: Define it. Fix the usage of stc::not_found and stc::is_found_. * oln/core/abstract/image/dimension/hierarchy.hh (case_<image_hierarchy_wrt_dimension, E, 1>) (case_<image_hierarchy_wrt_dimension, E, 3>) (case_<image_hierarchy_wrt_dimension, E, 5>) [OLENA_USE_NEW_SCOOP2]: Use stc::is_found_ to check for the existence of an lvalue. [!OLENA_USE_NEW_SCOOP2]: Use mlc::is_found_ to check for the existence of an lvalue. * oln/core/abstract/image/mutability/hierarchy.hh (case_<image_hierarchy_wrt_mutability, E, 1>) [OLENA_USE_NEW_SCOOP2]: Use stc::is_found_ to check for the existence of an lvalue. [!OLENA_USE_NEW_SCOOP2]: Use mlc::is_found_ to check for the existence of an lvalue. * oln/core/abstract/image/bbox/hierarchy.hh (case_<image_hierarchy_wrt_bbox, E, 1>) [OLENA_USE_NEW_SCOOP2]: Use stc::is_found_ to check for the existence of a bounding box. [!OLENA_USE_NEW_SCOOP2]: Use mlc::is_found_ to check for the existence of a bounding box. * oln/core/abstract/image/hybrid/classical.hh (case_<image_hybrid_hierarchy_wrt_classical, E, 1>) (case_<image_hybrid_hierarchy_wrt_classical, E, 2>) (case_<image_hybrid_hierarchy_wrt_classical, E, 3>) (case_<image_hybrid_hierarchy_wrt_classical, E, 4>) [OLENA_USE_NEW_SCOOP2]: Use stc::not_found to check for the existence of a bounding box. (case_<image_hybrid_hierarchy_wrt_classical, E, 1>) (case_<image_hybrid_hierarchy_wrt_classical, E, 2>) (case_<image_hybrid_hierarchy_wrt_classical, E, 3>) (case_<image_hybrid_hierarchy_wrt_classical, E, 4>) [!OLENA_USE_NEW_SCOOP2]: Use mlc::not_found to check for the existence of a bounding box. * oln/core/abstract/image/value_wise_accessibility/hierarchy.hh (case_<image_hierarchy_wrt_value_wise_accessibility, E, 1>): (case_<image_hierarchy_wrt_value_wise_accessibility, E, 2>): [OLENA_USE_NEW_SCOOP2]: Use stc::is_found_ to check for the existence of a value iterator (and a value proxy). [!OLENA_USE_NEW_SCOOP2]: Use mlc::is_found_ to check for the existence of a value iterator (and a value proxy). * oln/core/abstract/image/neighborhood/hierarchy.hh (case_<image_hierarchy_wrt_neighborhood, E, 1>) [OLENA_USE_NEW_SCOOP2]: Use stc::is_found_ to check for the existence of a neighborhood. [!OLENA_USE_NEW_SCOOP2]: Use mlc::is_found_ to check for the existence of a neighborhood. * oln/core/abstract/grid.hh (set_super_type<abstract::grid<E>>): New. Fix abstract::grid not having a super type. * oln/morpher/thru_mfun.hxx: Move all implementations of methods into... (oln::morpher): ...this namespace. * oln/core/gen/fwd_viter_lut.hh, oln/core/gen/bkd_viter_lut.hh, * oln/core/gen/topo_bbox.hh, oln/core/gen/topo_lbbox.hh, * oln/core/gen/topo_add_isubset.hh, oln/core/gen/topo_add_nbh.hh, * oln/core/internal/bbox_fwd_piter.hh: Fix comments. * oln/core/2d/point2d.hh (oln): Aesthetic changes. * tests/core/point2d.cc: Fix inter-dependent headers. * tests/core/dpoint2d.cc: Add a static assertion. * tests/algorithms/fill.cc: s/oln_type_of_(image_t, piter)/oln_piter_(image_t)/ git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@723 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
The work is far from beeing finished; we still have to address the problem of deferred virtual types. * doc/algorithms.ml: Add a new (non working) example. Typos. * stc/scoop.hh (stc_find_deduce_vtype): Add a missing argument. * stc/scoop2.hh (stc::none): New. (stc::is_found_, stc::is_not_found_): New. (SCOOPED_NAMESPACE): Set to oln. (stc_match_pair_0p_with, stc_match_pair_1p_with (stc_match_pair_2p_with, stc_match_pair_1p_with_error) (stc_match_pair_2p_with_error): New macros. (merge2_): Use them to simplify this struct. (stc_match_triple_0p_with, stc_match_triple_1p_with) (stc_match_triple_2p_with, stc_match_triple_3p_with) (stc_match_triple_2p_with_error, stc_match_triple_3p_with_error): New macros. (merge3_): Use them to simplify this struct. (find): Rename struct as... (find_vtype): ...this. (vtype): New struct. (stc_deferred_vtype, stc_vtype_, stc_vtype) (stc_find_deduce_vtype_, stc_find_deduce_vtype) (stc_deduce_deferred_vtype, stc_deduce_vtype_, stc_deduce_vtype): New macros. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@722 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thomas Moulard authored
* samples/mini-oln/README: Add mini-oln. New. * samples/mini-oln/mini-oln.cc: Idem. New. * samples/mini-oln: Idem. New. * samples: Idem. New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@721 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 19 Jan, 2007 1 commit
-
-
Thomas Moulard authored
* oln/morpher/add_isubset.hh: Split into... * oln/morpher/add_isubset.hxx: ...this new file. * oln/morpher/add_neighborhood.hh: Split into... * oln/morpher/add_neighborhood.hxx: : ...this new file. * oln/morpher/count_rw.hh: Split into... * oln/morpher/count_rw.hxx: : ...this new file. * oln/morpher/identity.hh: Split into... * oln/morpher/identity.hxx: : ...this new file. * oln/morpher/stack.hh: Split into... * oln/morpher/stack.hxx: : ...this new file. * oln/morpher/stack_rw.hh: Split into... * oln/morpher/stack_rw.hxx: : ...this new file. * oln/morpher/thru_fun.hh: Split into... * oln/morpher/thru_mfun.hh: Split into... * oln/morpher/thru_mfun.hxx: : ...this new file. * oln/morpher/two_way.hh: Split into... * oln/morpher/two_way.hxx: : ...this new file. * oln/morpher/two_way_rw.hh: Split into... * oln/morpher/two_way_rw.hxx: : ...this new file. * oln/morpher/value_cast.hh: Split into... * oln/morpher/value_cast.hxx: : ...this new file. * oln/morpher/with_lut.hh: Split into... * oln/morpher/with_lut.hxx: : ...this new file. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@720 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 11 Jan, 2007 1 commit
-
-
Thomas Moulard authored
* tests/vtypes-and-exact.cc: Fix macro. * tests/vtypes.cc: Fix macro. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@719 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 14 Dec, 2006 2 commits
-
-
Roland Levillain authored
* stc/scoop2.hh: New (prototype). * tests/scoop2.cc: New test. * stc/Makefile.am (nobase_stc_HEADERS): Add scoop2.hh * tests/Makefile.am (check_PROGRAMS): Add scoop2. (scoop2_SOURCES): New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@718 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* doc/algorithms.ml (merge2): Reorder patterns as in merge3. Aesthetic changes. (merge3): Aesthetic changes. * doc/algorithms.txt: Adjust. * doc/rules.txt: Typos. Improve the last two examples. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@717 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 12 Dec, 2006 1 commit
-
-
Roland Levillain authored
* doc/algorithms.ml (find_rec): Handle abstract delegatee. Add Olena-like examples. Aesthetic changes. * doc/algorithms.txt (Top-down approach): Document `find'. (Bottom-up approach): Move section at the end of the file. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@716 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 11 Dec, 2006 1 commit
-
-
Roland Levillain authored
* doc/README, doc/intro.txt, doc/rules.txt, doc/scool.txt, * doc/algorithms.txt: New. * doc/algorithms.ml: New (prototype of Static's type-checking rules, written in Objective Caml). * stc/scoop.hh: Typos, FIXMEs. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@715 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 04 Dec, 2006 1 commit
-
-
Thierry Geraud authored
Propagate scoop update to oln. * oln/core/macros.hh (oln_type_of_, oln_type_of, oln_deduce_type_of): Update and rename as... (oln_vtype_, oln_vtype, oln_deduce_vtype): ...these. (oln_deferred_vtype, oln_deduce_deferred_vtype): New. (oln_find_vtype, oln_find_deferred_vtype): New. * tests/morphers/add_neighborhood_morpher.cc: Update. * tests/morphers/morphers.cc: Likewise. * tests/core/image_entry.cc: Likewise. * tests/core/grid.cc: Likewise. * tests/core/image1d.cc: Likewise. * tests/core/image2d.cc: Likewise. * tests/core/image3d.cc: Likewise. * tests/core/npoints.cc: Likewise. * oln/debug/print.hh: Likewise. * oln/core/typedefs.hh: Likewise. * oln/core/automatic/impl.hh: Likewise. * oln/core/automatic/image/image.hh: Likewise. * oln/core/automatic/image/image_being_point_wise_random_accessible.hh: Likewise. * oln/core/automatic/image/image_having_neighborhood.hh: Likewise. * oln/core/automatic/image/image_being_value_wise_random_accessible.hh: Likewise. * oln/core/automatic/topology/topology_having_bbox.hh: Likewise. * oln/core/automatic/topology/topology_having_subset.hh: Likewise. * oln/core/automatic/topology/topology_being_random_accessible.hh: Likewise. * oln/core/automatic/topology/topology_having_neighborhood.hh: Likewise. * oln/core/spe/row.hh: Likewise. * oln/core/spe/col.hh: Likewise. * oln/core/spe/slice.hh: Likewise. * oln/core/iterator_vtypes.hh: Likewise. * oln/core/abstract/iterator_on_points.hh: Likewise. * oln/core/abstract/image/hybrid/classical.hh: Likewise. * oln/core/abstract/image/type/integre.hh: Likewise. * oln/core/abstract/image/type/hierarchy.hh: Likewise. * oln/core/abstract/image/computability/hierarchy.hh: Likewise. * oln/core/abstract/image/dimension/1d.hh: Likewise. * oln/core/abstract/image/dimension/2d.hh: Likewise. * oln/core/abstract/image/dimension/3d.hh: Likewise. * oln/core/abstract/image/point_wise_accessibility/hierarchy.hh: Likewise. * oln/core/abstract/point_set/point_set_being_random_accessible.hh: Likewise. * oln/core/abstract/point_set/point_set_having_known_size.hh: Likewise. * oln/core/abstract/point_set/point_set_being_connected.hh: Likewise. * oln/core/abstract/point_set/point_set_having_bbox.hh: Likewise. * oln/core/abstract/topology/topology_having_bbox.hh: Likewise. * oln/core/abstract/topology/topology_being_random_accessible.hh: Likewise. * oln/core/abstract/topology/topology_having_subset.hh: Likewise. * oln/core/abstract/topology/topology_having_neighborhood.hh: Likewise. * oln/core/abstract/internal/image_impl.hh: Likewise. * oln/core/gen/piter_isubset.hh: Likewise. * oln/core/gen/topo_add_isubset.hh: Likewise. * oln/core/gen/bbox.hh: Likewise. * oln/core/gen/topo_bbox.hh: Likewise. * oln/core/gen/neighb.hh: Likewise. * oln/core/gen/bkd_viter_lut.hh: Likewise. * oln/core/gen/pset_list.hh: Likewise. * oln/core/gen/window.hh: Likewise. * oln/core/gen/topo_lbbox.hh: Likewise. * oln/core/gen/pset_vec.hh: Likewise. * oln/core/gen/pset_.hh: Likewise. * oln/core/gen/fwd_viter_lut.hh: Likewise. * oln/core/gen/mapimage.hh: Likewise. * oln/core/gen/topo_add_nbh.hh: Likewise. * oln/core/internal/topology_morpher.hh: Likewise. * oln/core/internal/point_nd.hh: Likewise. * oln/core/internal/bbox_bkd_piter.hh: Likewise. * oln/core/internal/bbox_fwd_piter.hh: Likewise. * oln/core/internal/dpoint_nd.hh: Likewise. * oln/morpher/add_isubset.hh: Likewise. * oln/morpher/value_cast.hh: Likewise. * oln/morpher/thru_fun.hh: Likewise. * oln/morpher/slice.hh: Likewise. * oln/morpher/with_lut.hh: Likewise. * oln/morpher/thru_mfun.hh: Likewise. * oln/morpher/internal/image_value_morpher.hh: Likewise. * oln/morpher/internal/image_extension.hh: Likewise. * oln/morpher/add_neighborhood.hh: Likewise. Entry classes now use: - stc::abstract instead of mlc::undefined; - stc::final when possible; - 'deferred' versions of vtype access when required. * oln/core/point_set_entry.hh: Update. (set_super_type): New. (vtypes): Update. * oln/core/neighborhood_entry.hh: Likewise. * oln/core/topology_entry.hh: Likewise. * oln/core/image_entry.hh: Likewise. * oln/core/abstract/grid.hh: Likewise. * oln/core/abstract/image.hh: Likewise. (decl): Re-activate static checks. * oln/core/abstract/iterator.hh: Likewise. * oln/core/abstract/point.hh: Likewise. * oln/core/abstract/dpoint.hh: Likewise. * oln/core/abstract/iterator_on_values.hh: Likewise. * oln/core/abstract/window.hh: Likewise. Remove obsolete definitions of now final vtypes. * tests/core/image_entry.cc: Update. * oln/core/1d/image1d.hh: Likewise. * oln/core/2d/image2d.hh: Likewise. * oln/core/3d/image3d.hh: Likewise. Update tests with the 'find' version of vtype access. * oln/core/abstract/image/mutability/hierarchy.hh: Update. * oln/core/abstract/image/dimension/hierarchy.hh: Likewise. * oln/core/abstract/image/neighborhood/hierarchy.hh: Likewise. * oln/core/abstract/image/bbox/hierarchy.hh: Likewise. * oln/core/abstract/image/value_wise_accessibility/hierarchy.hh: Likewise. Update from 'delegated' to 'delegatee'. * oln/core/abstract/internal/image_impl.hh: Update. * oln/core/gen/topo_add_nbh.hh: Likewise. * oln/core/internal/topology_morpher.hh: Likewise. * oln/morpher/internal/image_value_morpher.hh: Likewise. * oln/morpher/internal/image_extension.hh: Likewise. * oln/core/typedefs.hh (delegated_type): Add commentary. Misc. * tests/core/at.cc: Cosmetic change. * oln/core/gen/bbox.hh (vtypes): Fix typo. * oln/core/gen/pset_list.hh: Likewise. * oln/core/gen/pset_vec.hh: Likewise. * oln/core/gen/pset_.hh: Likewise. * tests/core/image_entry.cc (is_computed_type): Fix missing. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@714 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 01 Dec, 2006 1 commit
-
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@713 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 30 Nov, 2006 2 commits
-
-
Thierry Geraud authored
* stc/scoop.hh (stc_scoop_equipment_for_namespace): Rewrite. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@712 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
* mlc/uint.hh: Fix inheritance. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@711 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 17 Nov, 2006 1 commit
-
-
Roland Levillain authored
* tests/super.cc, tests/vtypes.cc * tests/vtypes-and-exact.cc: Adjust tests to catch up with the new stc/scoop.hh. * stc/Makefile.am (EXTRA_DIST): Add was.scoop.hh. * tests/Makefile.am (check_PROGRAMS): Remove multiple-supers and vtypes-multiple-supers. (multiple_supers_SOURCES, vtypes_multiple_supers_SOURCES): Remove. (EXTRA_DIST): New. Add multiple-supers.cc and vtypes-multiple-supers.cc. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@710 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 15 Nov, 2006 2 commits
-
-
Roland Levillain authored
images. * tests/morphers/with_lut.cc (main): More static checking of the interface of an image with LUT. Test oln::level::fill on an image with LUT. * oln/level/fill.hh (level::fill(abstract:: mutable_image_being_value_wise_random_accessible<I>&)) (level::impl:: fill(abstract::mutable_image_being_value_wise_random_accessible<I>&)): New. * oln/core/typedefs.hh (oln_fwd_viter, oln_fwd_viter_) (oln_bkd_viter, oln_bkd_viter_, oln_viter, oln_viter_): New macros. * oln/core/gen/bkd_viter_lut.hh (bkd_viter_lut::bkd_viter_lut(const morpher::with_lut<Image, Lut>&)) * oln/core/gen/fwd_viter_lut.hh (fwd_viter_lut::fwd_viter_lut(const morpher::with_lut<Image, Lut>&)) New ctors. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@709 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
oln::internal::dpoint_nd. * oln/core/internal/point_nd.hh (oln::vtypes< internal::point_nd<E> >::vec_t) (oln::vtypes< internal::point_nd<E> >::psite_type): Remove typedefs. (oln::vtypes< internal::point_nd<E> >::vec_type): Fix typedef. * oln/core/internal/point_nd.hh (oln::vtypes< internal::point_nd<E> >::vec_t): Remove typedef. (oln::vtypes< internal::point_nd<E> >::vec_type): Fix typedef. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@708 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 14 Nov, 2006 2 commits
-
-
Thierry Geraud authored
Now call simplified scoop macros. * oln/core/macros.hh (oln_deduce_direct_type_of_, oln_deduce_direct_type_of): Remove. (oln_check_type_of, oln_check_type_of_): Remove. (oln_check_direct_type_of, oln_check_direct_type_of_): Remove. (oln_deduce): New; shortcut to oln_deduce_type_of. Add missing shortcuts. * oln/core/typedefs.hh (oln_dim, oln_dim_): New. (oln_vec, oln_vec_): New. (oln_bbox, oln_bbox_): New. (include): Fix and add fwd decls. Move single_vtype definitions into vtypes structures. * oln/core/point_set_entry.hh: Update. (single_vtype): Move into... (vtypes): ...this. * oln/core/neighborhood_entry.hh: Likewise. * oln/core/topology_entry.hh: Likewise. * oln/core/image_entry.hh: Likewise. * oln/core/abstract/iterator_on_points.hh: Likewise. * oln/core/abstract/point.hh: Likewise. * oln/core/gen/topo_add_nbh.hh: Likewise. * oln/core/internal/topology_morpher.hh: Likewise. * oln/morpher/value_cast.hh: Likewise. * oln/morpher/two_way.hh: Likewise. * oln/morpher/thru_fun.hh: Likewise. * oln/morpher/slice.hh: Likewise. * oln/morpher/with_lut.hh: Likewise. * oln/morpher/count_rw.hh: Likewise. * oln/morpher/two_way_rw.hh: Likewise. * oln/morpher/stack.hh: Likewise. * oln/morpher/thru_mfun.hh: Likewise. * oln/morpher/stack_rw.hh: Likewise. * oln/morpher/internal/image_value_morpher.hh: Likewise. Prevent problems due to mutual recursion (thru inheritance and dependent types). * oln/core/abstract/image.hh (decl): Disable static checks. * oln/core/abstract/image/bbox/hierarchy.hh: Update. (decl): Disable static check. * oln/core/abstract/point_set.hh (~point_set): Fix code. (decl): Disable static check. * oln/core/gen/fwd_piter_bbox.hh: Update. Disable static check. * oln/core/gen/bkd_piter_bbox.hh: Update. Disable static check. For safety purpose. * oln/basics2d.hh (include): Move iterator_vtypes up. Decouple some files from specific code. * oln/core/automatic/image/mutable_image1d.hh (include): Remove dependency to specific point header. (tmp): Update. * oln/core/automatic/image/mutable_image2d.hh: Likewise. * oln/core/automatic/image/mutable_image3d.hh: Likewise. * oln/core/automatic/image/image1d.hh: Likewise. * oln/core/automatic/image/image2d.hh: Likewise. * oln/core/automatic/image/image3d.hh: Likewise. * oln/core/1d/dpoint1d.hh: Add fwd decls and/or aliases. (include): Remove aliases header. * oln/core/2d/dpoint2d.hh: Likewise. * oln/core/3d/dpoint3d.hh: Likewise. * oln/core/1d/point1d.hh: Add fwd decls and/or aliases. (include): Remove aliases header. * oln/core/2d/point2d.hh: Likewise. * oln/core/3d/point3d.hh: Likewise. * oln/core/1d/neighb1d.hh: Add alias. * oln/core/2d/neighb2d.hh: Likewise. * oln/core/3d/neighb3d.hh: Likewise. * tests/core/point2d.cc (include): Solve FIXME. (main): Change test. * tests/core/dpoint2d.cc: Likewise. Update. * tests/morphers/with_lut.cc: Cosmetics. * tests/core/image_entry.cc: Update. * oln/io/pnm.hh: Use shortcuts. (include): Update. * oln/core/abstract/point_set/point_set_having_bbox.hh: Update. * oln/core/gen/bkd_qiter_win.hh: Update. * oln/core/gen/grid.hh: Update. * oln/core/gen/bkd_viter_lut.hh: Update. * oln/core/gen/bbox_fwd_piter.hh: Update. * oln/core/gen/fwd_niter_neighb.hh: Update. * oln/core/gen/fwd_qiter_win.hh: Update. * oln/core/gen/bbox_bkd_piter.hh: Update. * oln/core/gen/bkd_niter_neighb.hh: Update. * oln/core/gen/fwd_viter_lut.hh: Update. * oln/core/internal/point_nd.hh: Update. (vtypes): New. * oln/core/internal/dpoint_nd.hh: Update. (vtypes): New. * oln/morpher/add_isubset.hh: Update. Remove dead code. * oln/morpher/identity.hh: Update. * oln/morpher/add_neighborhood.hh: Update. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@707 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
Simplify scoop facilities. * stc/scoop.hh: Rename as... * stc/was.scoop.hh: ...this new file. * stc/scoop.hh: New version. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@706 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 13 Nov, 2006 4 commits
-
-
Roland Levillain authored
* oln/core/lookup_table.hh (oln::lookup_table::reverse_iterator) (oln::lookup_table::const_reverse_iterator): New typedefs. (oln::lookup_table::rbegin, oln::lookup_table::rend): New methods. * oln/core/typedefs.hh (bkd_viter_type): New virtual type declaration. * oln/core/gen/bkd_viter_lut.hh: New. * oln/core/gen/fwd_viter_lut.hh: Typos. * oln/morpher/with_lut.hh (single_vtype<morpher::with_lut<Image,Lut>, typedef_::bkd_viter_type>): New. * tests/morphers/with_lut.cc (main): Test backward value iterator on look-up table. * oln/Makefile.am (nobase_oln_HEADERS): Add core/gen/bkd_viter_lut.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@705 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/core/internal/fwd_viter_lut.hh: Remove this file, and merge... (oln::internal::fwd_viter_lut): ...this class with... * oln/core/gen/fwd_viter_lut.hh (oln::fwd_viter_lut): ...this one. * oln/Makefile.am (nobase_oln_HEADERS): Remove core/internal/fwd_viter_lut.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@704 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@703 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/core/typedefs.hh (is_value_wise_mutable): Remove virtual type declaration. * oln/core/abstract/image/value_wise_accessibility/hierarchy.hh: (case_<image_hierarchy_wrt_value_wise_accessibility, E, 1>): No longer use the virtual type `is_value_wise_mutable' in the static switch condition; query `mutable_value_proxy' instead. * olena/oln/morpher/with_lut.hh (vtypes< morpher::with_lut<Image, Lut> >::is_value_wise_mutable_type): Remove typedef. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@702 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 10 Nov, 2006 1 commit
-
-
Roland Levillain authored
* olena/oln/value/lut_value_proxy.hh: New. * oln/core/typedefs.hh (mutable_fwd_viter_type): Remove virtual type declaration. (value_proxy_type, mutable_value_proxy_type): New virtual types declarations. Aesthetic changes. * oln/core/abstract/image/value_wise_accessibility/hierarchy.hh (image_being_value_wise_random_accessible::fwd_viter_t): Remove typedef. (image_being_value_wise_random_accessible::value_proxy_t): New typedef. (image_being_value_wise_random_accessible::value): Return a value proxy instead of a value iterator. (mutable_image_being_value_wise_random_accessible::fwd_viter_t): Remove typedef. (mutable_image_being_value_wise_random_accessible::value_proxy_t): New typedef. (mutable_image_being_value_wise_random_accessible::value)): Return a value proxy instead of a value iterator. * oln/morpher/with_lut.hh (oln/value/lut_value_proxy.hh): Include it. (vtypes< morpher::with_lut<Image, Lut> >::value_proxy_type) (vtypes< morpher::with_lut<Image, Lut> >::mutable_value_proxy_type): New typedefs. (single_vtype<morpher::with_lut<Image, Lut>, typedef_::mutable_fwd_viter_type>): Remove single virtual type. (oln::morpher::with_lut::fwd_viter_type) (oln::morpher::with_lut::mutable_fwd_viter_type): Remove. (oln::morpher::with_lut::value_proxy_type) (oln::morpher::with_lut::mutable_value_proxy_type): New typedefs. (oln::morpher::with_lut::impl_value): Have these methods return value proxies instead of value iterators. * oln/Makefile.am (nobase_oln_HEADERS): Add value/lut_value_proxy.hh. Remove oln::mutable_fwd_viter_lut and clean up oln::fwd_viter_lut. * olena/oln/core/abstract/iterator_on_values.hh: New. * oln/core/internal/fwd_viter_lut.hh: (oln::internal::fwd_viter_lut<Exact>): Inherit from oln::abstract::iterator_on_values<Exact>. s/rvalue_type/value_type/g. (oln::internal::fwd_viter_lut(lut_type&, const value_type&)): Remove ctor. (oln::internal::fwd_viter_lut::start) (oln::internal::fwd_viter_lut::next) (oln::internal::fwd_viter_lut::invalidate) (oln::internal::fwd_viter_lut::is_valid): Rename methods as... (oln::internal::fwd_viter_lut::impl_start) (oln::internal::fwd_viter_lut::impl_next) (oln::internal::fwd_viter_lut::impl_invalidate) (oln::internal::fwd_viter_lut::impl_is_valid): ...these. * oln/core/gen/fwd_viter_lut.hh (oln::fwd_viter_lut<Lut>): s/rvalue_type/value_type/g. (oln::fwd_viter_lut::fwd_viter_lut(const Lut&, const rvalue_type&)): Remove ctor. (oln::fwd_viter_lut::operator rvalue_type): Turn this operator into... (oln::fwd_viter_lut::impl_to_value): ...this method. (oln::mutable_fwd_viter_lut): Remove this class and it virtual types. (operator<<(std::ostream&, const mutable_fwd_viter_lut<Lut>&)): Remove. * oln/Makefile.am (nobase_oln_HEADERS): Add core/abstract/iterator_on_values.hh git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@701 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 08 Nov, 2006 1 commit
-
-
Roland Levillain authored
* oln/value/color/rgb.hh (rgb_<T>::operator==): Make it const. * oln/core/gen/fwd_viter_lut.hh (operator rvalue_type, print): Fix these methods. * tests/morphers/with_lut.cc: Test oln::fwd_viter_lut. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@700 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 07 Nov, 2006 3 commits
-
-
Thierry Geraud authored
* xtd/vec.hh (L2_norm): New. (include): Add cmath header. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@699 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
Add point-set types based on std containers. * oln/core/gen/piter_on_std_based_pset.hh: New. * oln/core/gen/pset_list.hh: New. * oln/core/gen/pset_vec.hh: New. * oln/core/gen/pset_.hh: New. * oln/Makefile.am: Update. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@698 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
* TODO: Add description of primary image types. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@697 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 06 Nov, 2006 2 commits
-
-
Thierry Geraud authored
Add oln::morpher::two_way_rw. * ChangeLog: Fix file dir in previous entry. * tests/morphers/two_way_rw_morpher.cc: New. * tests/morphers/Makefile.am: Update. * oln/morpher/two_way_rw.hh: New. * oln/Makefile.am: Update. * oln/morpher/two_way.hh (value::two_way): Move impl into... * oln/value/two_way.hxx: ...this new file. * oln/core/abstract/functions.hh (fun_rw): Update. * oln/morpher/count_rw.hh (count_rw): Move impl into guards. * oln/morpher/stack_rw.hh (include): Update. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@696 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
Add morpher::stack_rw. * olena/tests/morphers/stack_rw_morpher.cc: New. * olena/tests/morphers/Makefile.am: Update. * olena/oln/morpher/stack_rw.hh: New. * olena/oln/Makefile.am: Update. * olena/oln/debug/print.hh (print): Store loop 2D bounds. * olena/oln/core/abstract/functions.hh (fun_rw): New. * olena/oln/morpher/two_way.hh (ima_): Change type to pointer. (two_way): New ctor for class value::two_way. (read_, write_): New methods. (operator, value): Call read_. (operator=): Call write_. * olena/oln/morpher/stack.hh (N): New. * olena/oln/value/two_way.hh (two_way): New ctor decl. (ima_): Change type to pointer. (read_, write_): New method decls. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@695 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 03 Nov, 2006 1 commit
-
-
Roland Levillain authored
* mlc/is_a.hh, mlc/case.hh: Add spaces in macros to please icpc. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@694 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 31 Oct, 2006 4 commits
-
-
Roland Levillain authored
* oln/core/typedefs.hh (size_type): Remove virtual type declaration. Clean up. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@693 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/core/abstract/image/accessibility/hierarchy.hh: Rename as... * oln/core/abstract/image/point_wise_accessibility/hierarchy.hh: ...this. Adjust header guards. (oln::abstract::image_being_random_accessible): Rename as... (oln::abstract::image_being_point_wise_random_accessible): ...this. Adjust. (oln::case_<image_hierarchy_wrt_accessibility, E, 1>): Rename as... (oln::case_<image_hierarchy_wrt_point_wise_accessibility, E, 1>): ...this. Adjust. * oln/core/abstract/image/hierarchies.hh, * oln/core/abstract/image/all.hh, * oln/core/abstract/image/hybrid/classical.hh: Adjust. * oln/core/automatic/image/image_being_random_accessible.hh: Adjust. Rename as... * oln/core/automatic/image/image_being_point_wise_random_accessible.hh: ...this. Adjust header guards. * oln/Makefile.am (nobase_oln_HEADERS): Remove core/abstract/image/accessibility/hierarchy.hh and core/automatic/image/image_being_random_accessible.hh. Add core/abstract/image/point_wise_accessibility/hierarchy.hh and core/automatic/image/image_being_point_wise_random_accessible.hh. Remove duplicate core/automatic/image/image_having_neighborhood.hh git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@692 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/core/typedefs.hh (is_value_wise_mutable_type): New virtual type declaration. * oln/core/abstract/image/value_wise_accessibility/hierarchy.hh (struct case_<image_hierarchy_wrt_value_wise_accessibility, E, 2>): Re-enable. Swap with... (struct case_<image_hierarchy_wrt_value_wise_accessibility, E, 1>): ...this case. * oln/morpher/with_lut.hh (vtypes< morpher::with_lut<Image, Lut> >::is_value_wise_mutable_type): New virtual type. Set to mlc::true_. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@691 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* configure.ac: Erase CXXFLAGS if the user doesn't set it. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@690 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 27 Oct, 2006 3 commits
-
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@689 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/core/automatic/image/mutable_image1d.hh: Fix header guards, (were the same as oln/core/automatic/image/image1d.hh's). (oln::abstract::mutable_image1d): Forward-declare it. s/abstract::image1d/abstract::mutable_image1d/g. * oln/core/abstract/image/dimension/1d.hh (mutable_image1d) * oln/core/abstract/image/dimension/2d.hh (mutable_image2d) * oln/core/abstract/image/dimension/3d.hh (mutable_image3d): Fix the lookup of impl_at(). * oln/core/type_fun/slice.hh: Remove unnecessary headers. * oln/core/abstract/array.hh, oln/core/abstract/functions.hh, * oln/core/internal/point_nd.hh, oln/morpher/thru_mfun.hh: Add missing headers. * oln/morpher/thru_fun.hh (xtd/mexpr.hh): Include it. (struct case_<tag::fun_operator_1, mlc::pair_<Fun, A>, 1>): Turn into... (struct case_<tag::fun_operator_1, mlc::pair_<Fun, A>, 2>): ...this. * oln/value/proxy.hh: Fix header guards. (oln/core/typedefs.hh): Include it. * oln/Makefile.am (nobase_oln_HEADERS): Add core/abstract/image/computability/hierarchy.hh, core/abstract/image/value_wise_accessibility/hierarchy.hh, core/automatic/image/image_being_value_wise_random_accessible.hh, core/gen/topo_add_isubset.hh, core/gen/fwd_viter_lut.hh, core/internal/fwd_viter_lut.hh and value/two_way.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@688 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mlc/basic.hh: Fix dates in copyright notice. * mlc/Makefile.am (nobase_mlc_HEADERS): Add basic.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@687 4aad255d-cdde-0310-9447-f3009e2ae8c0
-