mirror of https://github.com/CGAL/cgal
For that: - Split internal::Static_filters into two classes: one with only filtered functors, for Epeck, and one that use the filtered functors, but also use directory unfiltered functors of the Cartesian kernel (for predicates that only compare doubles). - Add a functor Get_approx in <CGAL/internal/Static_filters/tools.h>, that is the identity for all types but lazy types (in that case its returns "x.approx()"). - Use Get_approx in static-filters versions of predicates, so that they can be used with Lazy_kernel too. - Use Static_filters<K_base, false> as base class of Lazy_kernel. - Rewrite <CGAL/Exact_predicate_exact_constructions_kernel.h>, to use static filters for Epeck, but also to simplify that file by the use Exact_type_selector<double>::Type as number type. (The testsuite of Kernel_23 is OK on the platform x86-64_Linux-2.6_g++-4.4.4_F13). |
||
|---|---|---|
| .. | ||
| doc_tex | ||
| examples/Kernel_23 | ||
| include/CGAL | ||
| package_info/Kernel_23 | ||
| src/CGAL | ||
| test/Kernel_23 | ||
| README | ||
| dont_submit | ||
README
When adding a new function object to the kernel you must:
-- possibly change include/CGAL/Kernel/function_objects.h
to add a new function object "builder" in namespace internal::
-- change include/CGAL/Kernel/interface_macros.h
to add the actual function object class and its corresponding
member function that returns an object of this class
-- change test/Kernel/include/CGAL/_test_new_2.h and/or
test/Kernel/include/CGAL/_test_new_3.h to add the test
for this function object.
-- in the directory doc_tex/kernel/Ref add a file called
Kernel_<NewFunctionObject> that describes the requirements for
this function object type (see the other similarly named files in this
directory)
-- This functor should have a SeeAlso entry for the global function(s)
or class(es) that provide the same functionality in the imperative
interface
-- add <New_function_object> to the set of requirements for the Kernel
concept in the file doc_tex/kernel/Ref/Kernel.tex.
-- in the file doc_tex/kernel/Ref/ref_manual.tex add the command
\input{Ref/Kernel_<New function object>}
in the proper place
-- in the file doc_tex/kernel/kernel_toc add a ccRefConceptPage command
for the page in the proper place.