- 26 Sep, 2006 2 commits
-
-
Roland Levillain authored
* oln/automatic/image_having_neighborhood.hh (impl_neighborhood) * oln/core/abstract/image/neighborhood/hierarchy.hh (image_having_neighborhood::neighborhood): Return a const reference instead of a copy. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@576 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* oln/automatic/image_having_neighborhood.hh (impl<abstract::image_having_neighborhood, morpher::tag::identity, E>): Inherit from stc::any__simple<E> instead of abstract::image<E>. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@568 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 25 Sep, 2006 1 commit
-
-
Thierry Geraud authored
Add morpher capabilities to topology classes. * oln/automatic/topology_having_bbox.hh: New. * oln/automatic/topology_being_random_accessible.hh: New. * oln/automatic/topology_having_neighborhood.hh: New. * oln/core/abstract/topology_having_neighborhood.hh: New. * oln/core/gen/topo_add_nbh.hh: New. * oln/core/internal/topology_morpher.hh: New. * oln/automatic/image_having_neighborhood.hh: Fix typo in guards. Fix comment. Fix delegation code. * oln/core/topology_entry.hh (neighborhood_type, morpher_type): New. * oln/core/abstract/topology_hierarchies.hh (topology_hierarchy_wrt_neighborhood): New. Update include. * oln/core/abstract/topology_having_bbox.hh: Inherit from automatic::impl. * oln/core/abstract/topology_being_random_accessible.hh: Likewise. * oln/core/abstract/topology.hh (neighborhood): New vtype. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@564 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 20 Sep, 2006 1 commit
-
-
Roland Levillain authored
* oln/automatic/image_having_neighborhood.hh: Add a forward declaration of oln::abstract::image_having_neighborhood. (impl<abstract::image_having_neighborhood, morpher::tag::identity, E>): Inherit from abstract::image<E>. (impl_neighborhood): Make it const. Get the exact type before calling delegate(). * oln/core/abstract/image_having_neighborhood.hh (oln/automatic/image_having_neighborhood.hh): Include it. (oln::abstract::image_having_neighborhood::neighborhood): New. (case_<image_hierarchy_wrt_neighborhood, E, 1>): Only inherit from oln::abstract::image_having_neighborhood if neighborhood is different from mlc::not_found. (oln::ext_vtype<image_entry<E>, typedef_::neighborhood_type>): Remove. * oln/core/image_entry.hh (single_vtype<image_entry<E>, typedef_::morpher_type>): Remove. Instead, defined the `morpher' virtual type... (vtypes< image_entry<E> >): ...here. * oln/morpher/internal/image_extension.hh (image_extension): Fix the inheritance: derive from `oln::image_entry<Exact>' instead of `oln::image_entry< image_extension<Image, Exact> >'. * oln/morpher/identity.hh (oln/morpher/tags.hh): Include it. (oln::single_vtype<morpher::identity<Image>, typedef_::morpher_type>): Remove. Instead, defined the `morpher' virtual type... (oln::vtypes< morpher::identity<Image> >): ...here (oln::morpher::tag::identity): Move... * oln/morpher/tags.hh: ...here (new file). * oln/morpher/add_neighborhood.hh (oln/morpher/tags.hh) (oln/core/2d/aliases.hh): Include them. (oln::single_vtype<morpher::add_neighborhood<Image>, typedef_::morpher_type>): Remove. Instead, defined the `morpher' virtual type... (oln::vtypes< morpher::add_neighborhood<Image> >): ...here (oln::morpher::add_neighborhood::neighborhood_t): Fix the virtual type retrieval: get it from `self_t', not from `Image'. (ext_vtype<morpher::add_neighborhood< oln::image2d<T> >, typedef_::neighborhood_type>): Remove. Remove corresponding forward declarations as well. (oln::morpher::tag::add_neighborhood): Move... * oln/morpher/tags.hh: ...here. * tests/identity_morpher.cc, tests/morphers.cc: Fix the test. Add more static assertions. * oln/Makefile.am (nobase_oln_HEADERS): Add core/2d/neighb2d.hh, core/abstract/neighborhood.hh, core/gen/neighb.hh and core/neighborhood_entry.hh. * oln/core/2d/image2d.hh: Fix copyright header. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@555 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 18 Sep, 2006 1 commit
-
-
Roland Levillain authored
* oln/core/typedefs.hh (morpher_type, neighborhood_type): New typedef declarations. (neighb_type, image_neighbness_type, image_constness_type) (image_dimension_type, image_typeness_type) (image_valuedness_type, image_rawness_type): Remove typedef declarations. * oln/core/image_entry.hh (single_vtype<image_entry<E>, typedef_::morpher_type>): New virtual type. * oln/core/abstract/image.hh: Check it. * oln/core/abstract/image_hierarchies.hh (image_dimension_hierarchy, image_type_hierarchy): Rename as... (image_hierarchy_wrt_dimension, image_hierarchy_wrt_type): ...this. (image_neighborhood_hierarchy): Make it the third image hierarchy. Rename as... (image_hierarchy_wrt_neighborhood). (image_value_hierarchy, image_rawness_hierarchy): Adjust and rename as... (image_hierarchy_wrt_value, image_hierarchy_wrt_data_retrieval): ...this. (oln/core/abstract/image_having_neighborhood.hh): Include it. * oln/core/abstract/image_dimension.hh: s/image_dimension_hierarchy/image_hierarchy_wrt_dimension/. (oln::abstract::image1d, oln::abstract::image2d) (oln::abstract::image3d): Inherit from automatic::impl. * oln/core/abstract/image_type.hh, * oln/core/abstract/image_type_integre.hh: s/image_type_hierarchy/image_hierarchy_wrt_type/. * oln/core/abstract/image_having_neighborhood.hh: New abstraction. * oln/automatic/image_having_neighborhood.hh: New automatic implementation. * oln/morpher/internal/image_extension.hh: New abstract class. * oln/morpher/identity.hh, * oln/morpher/add_neighborhood.hh: New morphers. * tests/morphers.cc, tests/identity_morpher.cc: New tests. * oln/Makefile.am (nobase_oln_HEADERS): Catch up with renamings from the previous patches. Add automatic/image_having_neighborhood.hh, core/abstract/image_having_neighborhood.hh, morpher/internal/image_extension.hh, morpher/add_neighborhood.hh and morpher/identity.hh. * tests/Makefile.am (check_PROGRAMS): Add identity_morpher and morphers. (identity_morpher_SOURCES, morphers_SOURCES): New. * oln/core/abstract/topology_hierarchies.hh: Aesthetic changes. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@552 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 14 Sep, 2006 1 commit
-
-
Roland Levillain authored
* oln/core/abstract/image_entry.hh: Remove. * oln/core/abstract/image_hierarchies.hh: New. * oln/core/abstract/image.hh (oln/core/abstract/image_hierarchies.hh): Include it. * oln/core/image_entry.hh: Aesthetic change. * oln/core/abstract/image_dimension.hh: Update the documentation. (oln::ERROR::UNKNOWN_GRID_TYPE): Remove error message. (oln::grid_dim_tag): Remove tag. (stc::set_entry_node<I, oln::abstract::dimension_tag>): Remove switch. (case_<grid_dim_tag, grid_type, 1>) (case_<grid_dim_tag, grid_type, 2>) (case_<grid_dim_tag, grid_type, 3>): Update and rename as... (case_<image_dimension_hierarchy, E, 1>) (case_<image_dimension_hierarchy, E, 2>) (case_<image_dimension_hierarchy, E, 3>): ...this. (default_case_<grid_dim_tag, grid_type>): Remove. (oln::ext_vtype<abstract::image<I>, typedef_::image_dimension_type>): Remove external vtype. * oln/core/abstract/image_typeness.hh: Rename as... * oln/core/abstract/image_type.hh: ...this. Adjust header guards. Update the documentation. (oln::value_type_tag): Remove tag. (stc::set_entry_node<I, oln::abstract::typeness_tag>): Remove switch. (case_<value_type_tag, value_type, 1>) (case_<value_type_tag, value_type, 2>) (default_case_<value_type_tag, value_type>): Update and rename as... (case_<image_type_hierarchy, E, 1>) (case_<image_type_hierarchy, E, 2>) (default_case_<image_type_hierarchy, E>): ...this. No longer provide an `image_typeness_type' typedef. (oln::ext_vtype<abstract::image<I>, typedef_::image_typeness_type>): Remove external vtype. * oln/core/abstract/image_typeness_integre.hh: Rename as... * oln/core/abstract/image_type_integre.hh: ...this. Adjust header guards. (case_<value_type_tag, value_type, 3>) (case_<value_type_tag, value_type, 4>) (case_<value_type_tag, value_type, 5>) (case_<value_type_tag, value_type, 6>): Update and rename as... (case_<image_type_hierarchy, E, 3>) (case_<image_type_hierarchy, E, 4>) (case_<image_type_hierarchy, E, 5>) (case_<image_type_hierarchy, E, 6>): ...this. No longer provide an `image_typeness_type' typedef. * tests/image_entry.cc (my::image): Set oln::image_entry<my::image> as super type. (oln::vtypes<my::image>::psite_type) (oln::vtypes<my::image>::rvalue_type) (oln::vtypes<my::image>::piter_type): Remove these typedefs, as they are already defined as single typedefs in oln/core/image_entry.hh. (my::image::grid_type, my::image::value_type): Rename as... (my::image::grid_t, my::image::value_t): ...this. (my::image::image_dimension_type, my::image::image_typeness_type): Remove. (main): Adjust, and remove irrelevant assertions. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@536 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 07 Sep, 2006 2 commits
-
-
Thierry Geraud authored
Add image2d and fix topo-related classes. * olena/tests/npoints.cc: New. * olena/tests/Makefile.am: Update. * olena/oln/core/image_entry.hh: New. * olena/oln/core/2d/image2d.hh: New. * olena/oln/basics2d.hh: Force instantiation and include oln/core/2d/image2d.hh. * olena/oln/core/typedefs.hh: Include mlc/assert.hh and mlc/to_string.hh. (piter_type): Uncomment. (rvalue_type): New. (psite_type): New. (concrete_type): Uncomment. (size_type): Add comment. (topo_type): New. * olena/oln/core/abstract/topo.hh (bbox): Remove this method which is redundant with the one of topo_with_bbox. * olena/oln/core/abstract/topo_with_bbox.hh (bbox): Fix typo. * olena/oln/core/abstract/entry.hh (next_entry_node): New specialization to handle the specific and rare case of having no sub-hierarchy. * olena/oln/core/abstract/topo_ra.hh: Fix cut n paste errors. * olena/oln/core/abstract/pset.hh (piter): New vtype decl. * olena/oln/core/gen/fwd_piter.hh (fwd_piter_): Add commented forthcoming ctors. * olena/oln/core/gen/bbox_topo.hh: Cosmetics. * olena/oln/core/pset_entry.hh (piter_type): New. * olena/oln/core/abstract/image.hh: Update. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@527 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Thierry Geraud authored
Start the topology hierarchy. * oln/core/topo_entry.hh: New. * oln/core/abstract/topo.hh: New. * oln/core/abstract/topo_hierarchies.hh: New. * oln/core/abstract/topo_with_bbox.hh: New. * oln/core/abstract/topo_ra.hh: New. * oln/core/gen/bbox_topo.hh: New. * oln/core/2d/aliases.hh (topo2d): New. Add a new sub-hierarchy to abstract::pset. * oln/core/abstract/pset_cnx.hh: New. * oln/core/typedefs.hh (cnx_type): New. * oln/core/abstract/pset_hierarchies.hh (pset_cnx_hierarchy): New. * oln/core/abstract/bbox.hh (cnx_type): New. * oln/core/abstract/pset_bboxed.hh (is_valid): Move this method into... * oln/core/abstract/pset.hh (pset): ...this class. (dim): New vtype. * oln/core/pset_entry.hh (single_vtype): Add vtype dim. * oln/basics2d.hh: Include oln/core/gen/bbox_topo.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@526 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 06 Sep, 2006 1 commit
-
-
Thierry Geraud authored
Update abstract::pset hierarchy to final SCOOP-2 design. * oln/core/pset_entry.hh: New. * oln/core/typedefs.hh: Include oln/core/abstract/entry.hh. * oln/core/abstract/bbox.hh: Clean includes. (set_super_type): Change from abstract::pset<E> to pset_entry<E>. (bbox): Update. * oln/core/abstract/entry.hh (set_super_type): New specialization. * oln/core/abstract/pset.hh (Copyright): Fix years. (vtypes, ext_vtype): Remove. (fixed_pset, ra_pset, bboxed_pset): Move and dispatch to... * oln/core/abstract/pset_fixed.hh: ...this new file. * oln/core/abstract/pset_ra.hh: ...this new file. * oln/core/abstract/pset_bboxed.hh: ...this new file. * oln/core/abstract/pset.hh (pset_fixed_hierarchy, pset_ra_hierarchy, pset_bboxed_hierarchy) (case_): Move to... * oln/core/abstract/pset_hierarchies.hh: ...this new file. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@524 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 27 Apr, 2006 1 commit
-
-
Roland Levillain authored
* tests/image_entry.cc (my): Check image_typeness_type vtype and inheritance. * oln/core/typedefs.hh (value_type, image_typeness_type): Enable typedef. * oln/core/abstract/image.hh (vtypes::value_type): Enable typedef. (packed_vtypes::value_type): New typedef. (packed_vtypes::echo): Print value_type and image_typeness_type. (packed_vtypes::ensure): Check value_type and image_typeness_type. (image::value_type): Enable typedef. * oln/core/abstract/image_entry.hh: Include images abstractions headers. Don't include mlc/case.hh nor oln/core/abstract/image.hh. (mlc_case_equipment_for_namespace(oln)) (abstraction_tags): Move... * oln/core/abstract/image_abstractions.hh: ...here (new file). * oln/core/abstract/image_dimension.hh: Include it. Include stc/entry.hh. Aesthetic changes. * oln/core/abstract/image_typeness.hh: New file (imported from Olena proto-1.0, and modified). * oln/core/abstract/image_typeness_integre.hh: New file * oln/Makefile.am (nobase_oln_HEADERS): Add core/abstract/image_abstractions.hh, core/abstract/image_typeness.hh and core/abstract/image_typeness_integre.hh. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@480 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 21 Apr, 2006 1 commit
-
-
Roland Levillain authored
* extended/xtd/res.hh, * extended/xtd/math.hh, * extended/xtd/cast.hh, * extended/xtd/cfun.hh, * extended/xtd/mexpr.hh, * extended/xtd/math/log.hh, * extended/xtd/math/floor.hh, * extended/xtd/math/tan.hh, * extended/xtd/math/log10.hh, * extended/xtd/math/atan.hh, * extended/xtd/math/cos.hh, * extended/xtd/math/acos.hh, * extended/xtd/math/sqrt.hh, * extended/xtd/math/sin.hh, * extended/xtd/math/tanh.hh, * extended/xtd/math/asin.hh, * extended/xtd/math/cosh.hh, * extended/xtd/math/id.hh, * extended/xtd/math/exp.hh, * extended/xtd/math/logic.hh, * extended/xtd/math/sinh.hh, * extended/xtd/math/abs.hh, * extended/xtd/math/pow.hh, * extended/xtd/math/atan2.hh, * extended/xtd/math/includes.hh, * extended/xtd/math/arith.hh, * extended/xtd/math/constraints.hh, * extended/xtd/math/ceil.hh, * extended/xtd/math/cmp.hh, * extended/xtd/literal.hh, * extended/xtd/args.hh, * extended/xtd/mfun.hh, * extended/xtd/abstract/nary_fun.hh, * extended/xtd/abstract/open_nary_fun.hh, * extended/xtd/abstract/plain_nary_fun.hh, * extended/xtd/abstract/fun_expr.hh, * extended/xtd/abstract/meta_nary_fun.hh, * extended/xtd/abstract/fun.hh, * extended/xtd/abstract/open_fun.hh, * extended/xtd/abstract/plain_fun.hh, * extended/xtd/abstract/meta_fun.hh, * extended/xtd/abstract/fun_nary_expr.hh, * extended/xtd/optraits.hh, * extended/xtd/traits.hh, * extended/xtd/builtin/traits.hh, * extended/xtd/arg.hh, * extended/xtd/bind.hh, * extended/xtd/internal/opmacros.hh, * extended/xtd/internal/mlc.hh, * metalic/mlc/elt.hh, * metalic/mlc/ret.hh, * metalic/mlc/int.hh, * metalic/mlc/pair.hh, * metalic/mlc/bool.hh, * metalic/mlc/flags.hh, * metalic/mlc/comma.hh, * metalic/mlc/logic.hh, * metalic/mlc/if.hh, * metalic/mlc/values.hh, * metalic/mlc/typedef.hh, * metalic/mlc/assert.hh, * metalic/mlc/switch.hh, * metalic/mlc/valist.hh, * metalic/mlc/implies.hh, * metalic/mlc/abstract/type.hh, * metalic/mlc/abstract/bexpr.hh, * metalic/mlc/abort.hh, * metalic/mlc/to_string.hh, * metalic/mlc/wrap.hh, * metalic/mlc/is_a.hh, * metalic/mlc/case.hh, * metalic/mlc/value.hh, * metalic/mlc/char.hh, * metalic/mlc/contract.hh, * metalic/mlc/uint.hh, * metalic/mlc/cmp.hh, * metalic/mlc/bexpr.hh, * static/tests/properties.cc, * static/tests/entry.cc, * static/tests/any.cc: Update the FSF postal address. * extended/tests/cfun.cc, * extended/tests/id.cc, * extended/tests/bind.cc, * extended/tests/bi_traits/bool.cc, * extended/tests/bi_traits/char.cc, * extended/tests/bi_traits/sint.cc, * extended/tests/bi_traits/uint.cc, * extended/tests/bi_traits/schar.cc, * extended/tests/bi_traits/slong.cc, * extended/tests/bi_traits/sshort.cc, * extended/tests/bi_traits/uchar.cc, * extended/tests/bi_traits/ushort.cc, * extended/tests/bi_traits/ulong.cc, * extended/tests/bi_traits/float.cc, * extended/tests/bi_traits/ldouble.cc, * extended/tests/bi_traits/double.cc, * extended/tests/cos.cc, * extended/tests/abs.cc, * extended/tests/optraits.cc, * extended/tests/lit.cc, * extended/tests/math.cc, * extended/tests/cast.cc, * metalic/tests/is_a.cc, * metalic/tests/case.cc, * metalic/tests/if.cc, * metalic/tests/typedef.cc, * metalic/tests/or.cc, * metalic/tests/switch.cc, * metalic/tests/gcase.cc, * metalic/tests/protected.cc, * metalic/tests/ret.cc, * static/stc/entry.hh, * static/stc/any.hh, * static/stc/properties.hh: Add missing copyright notices. * olena/oln/core/typedefs.hh, * olena/oln/core/abstract/image.hh, * olena/oln/core/abstract/image_entry.hh, * olena/oln/core/abstract/macros.hh, * olena/oln/core/abstract/image_dimension.hh, * olena/oln/core/abstract/any.hh, * olena/oln/core/abstract/internal/image_impl.hh: . * olena/tests/image_entry.cc: Fix the FSF postal address. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@465 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 11 Apr, 2006 1 commit
-
-
Thierry Geraud authored
- tests (svn:ignore): Add '.deps'. - tests/case.cc: Fix warning with icpc. - tests/gcase.cc: New file. - mlc/abstract: New directory. - mlc/type.hh: Rename as... - mlc/abstract/type.hh: ...this. - mlc/bexpr.hh (abstract::bexpr): Move to... - mlc/abstract/bexpr.hh: ...this new file. - mlc/flags.hh: Update include. - mlc/value.hh: Update include. - mlc/ret.hh: Add separators in macros to fix error with icpc. - mlc/assert.hh: Add dtor to fix warning with icpc. - mlc/case.hh (internal::a_get_case): New flag. (get_case_): New class; it differs from case_ in remaining silent when no case matches. - mlc/cmp.hh (is_builtin_): New class with its specializations. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@453 4aad255d-cdde-0310-9447-f3009e2ae8c0
-