cgal/Kernel_23
Sylvain Pion 2eb12d7441 - First part of introduction of Return_base_tag workaround for lack
of "forwarding constructors".
  Quoting some comment in the code:
  "
    This is a simple tag which is used as additional (first) argument in
    some kernel functors, to tell them to return the base (rep) class,
    instead of the main type (e.g. Kernel_base::Point_2 instead
    of Kernel::Point_2).  This is a minor optimization which prevents
    useless copies of the "reps".

    Those functors are only those used in the constructors of the kernel
    types like Point_2, so it's limited.

    The real solution will be to use "forwarding constructors", when they
    will be available in C++.
    In the mean time, this should be a mostly/hopefully internal hack.
  "
2006-08-16 14:56:11 +00:00
..
doc_tex fixed typo (thank's Sylvain) 2006-08-08 20:08:41 +00:00
examples/Kernel_23 changed .C to .cpp in examples 2006-07-09 19:56:22 +00:00
include/CGAL - First part of introduction of Return_base_tag workaround for lack 2006-08-16 14:56:11 +00:00
src/CGAL Use .cpp file extension instead of .C for src/*/* files. 2006-04-14 09:19:29 +00:00
test/Kernel_23 Ray_2.is_degenerate() was buggy. 2006-08-11 09:01:12 +00:00
README Move packages to trunk root 2006-02-14 08:58:16 +00:00
changes.txt removed specializations of Pairify for Comparison_result and 2006-07-21 11:21:56 +00:00
description.txt Move packages to trunk root 2006-02-14 08:58:16 +00:00
dont_submit Move packages to trunk root 2006-02-14 08:58:16 +00:00
maintainer Move packages to trunk root 2006-02-14 08:58:16 +00:00

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 CGALi::
  -- 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.