Commit Graph

250 Commits

Author SHA1 Message Date
Sylvain Pion 4252f94722 Remove various \ccTexHtml{\thispagestyle{empty}}{} . 2009-01-03 14:01:34 +00:00
Andreas Fabri 60bdf1c3eb Add illustration 2008-12-11 08:04:55 +00:00
Andreas Fabri f64b5e9e2c Undo of Rev 46756 and 46737 2008-11-25 17:17:06 +00:00
Sylvain Pion 6f5963131b Fix comment. 2008-11-21 16:47:39 +00:00
Sylvain Pion 8eab7e07dd Split <CGAL/assertions.h> in 2 files, by moving the assertion behaviour
changing functions to a separate header, not included by default
(<CGAL/assertions_behaviour.h>).  The motivation is to hide the enum
values with risky names (ABORT, EXIT, CONTINUE) to a header file which
is most probably not used by any user (or very few).
(breaks backward compatibility for an expected very few, for the sake
of erasing random surprises for "many" ?)
2008-11-21 16:42:02 +00:00
Laurent Rineau ec9f2e29e5 Update citations (s/07/08/).
Let us hope that CGAL-3.4 will be release before 2009!
2008-11-20 22:19:28 +00:00
Andreas Fabri 308b6ae9c0 Remove _noheader file suffix from examples 2008-11-17 14:59:59 +00:00
Andreas Fabri fe441c60d1 Remove _noheader file suffix from examples 2008-11-17 14:57:59 +00:00
Andreas Fabri 0f9ed11e99 Turn operator== into a member function 2008-11-08 11:35:40 +00:00
Andreas Fabri 06f25ea9e6 turn operator==(Filter_iterator, Filter_iterator) into a member function 2008-11-07 09:47:54 +00:00
Andreas Fabri 85bf7d2def Add PkgDescription 2008-11-06 13:17:37 +00:00
Andreas Fabri e354f7ce4d Include boost header file, as we use a boost macro 2008-10-13 14:18:24 +00:00
Andreas Fabri f4e89cf427 suppress VC++ warning 2008-10-13 13:11:05 +00:00
Sylvain Pion 4aa1cb057a Remove my email adress from header files. 2008-10-11 20:21:08 +00:00
Andreas Fabri 2b2edb51e4 Capitalized and changed CGAL to \cgal\ 2008-10-02 08:12:16 +00:00
Sylvain Pion 6aba449434 Replace Nef's custom Object_handle by CGAL::Object.
There were some differences :
- CGAL::Object has no template constructor, so using make_object() was required.
- CGAL::Object had no comparison with NULL to check emptyness.  I added
  such comparison operators to CGAL::Object as *deprecated*.
2008-09-09 16:03:25 +00:00
Sylvain Pion a565db4da9 Apply std::remove_reference *before* std::remove_cv... 2008-08-28 12:38:14 +00:00
Sylvain Pion d79048ab40 Add comment. 2008-08-27 17:31:06 +00:00
Sylvain Pion 7aa01562bd typo 2008-08-27 15:36:24 +00:00
Sylvain Pion 8865f7ea4f Use C++0x rvalue references in Object, Handle_for, MP_Float and Quotient. 2008-08-27 14:19:18 +00:00
Sylvain Pion 44c185f1f4 Rename boost::array to CGAL::array. 2008-08-26 13:15:21 +00:00
Sylvain Pion 53f5c9679b Add a using directive "using std::array" in namespace CGAL to import either:
- C++0x's std:array from <array>
- TR1's std::tr1::array from <tr1/array>
- boost::array from <boost/array.hpp>
Motivation : GCC's std::array is faster than boost::array.

Move CGALi:make_array to namespace CGAL.

Document CGAL::array.
2008-08-26 13:08:16 +00:00
Sylvain Pion f615d84fe0 Add new function CGAL::indeterminate() to help generate an indeterminate
in template context.
2008-08-22 16:06:53 +00:00
Sylvain Pion e829727e6a Add overloads of the handy functions:
bool are_sorted(const T & a, const T & b, const T & c)
  bool are_strictly_sorted(const T & a, const T & b, const T & c)
  bool are_ordered(const T & a, const T & b, const T & c)
  bool are_strictly_ordered(const T & a, const T & b, const T & c)
with a Compare functor as last argument.
2008-08-12 15:22:47 +00:00
Sylvain Pion 25051d8809 Move CGAL::copy_n() from the obsolete <CGAL/copy_n.h> to <CGAL/algorithm.h>. 2008-08-12 12:51:15 +00:00
Sylvain Pion c1389c006d Add a couple of handy functions:
bool are_sorted(const T & a, const T & b, const T & c)
  bool are_strictly_sorted(const T & a, const T & b, const T & c)
  bool are_ordered(const T & a, const T & b, const T & c)
  bool are_strictly_ordered(const T & a, const T & b, const T & c)
2008-08-12 12:43:20 +00:00
Sylvain Pion 0c34dc2525 - Refine CGAL_AND or CGAL_OR to make sure they work when the second argument is a bool.
- Add CGAL_AND_3 and CGAL_OR_3 for 3-arguments boolean operations.
2008-08-12 11:23:34 +00:00
Sylvain Pion 449195eb9d Add CGAL_AND() and CGAL_OR() macros, which do the same as && and || but propagate Uncertain-ty.
(for compilers that support statement expressions, like GCC).

Add Uncertain::is_same() to help in the test-suite.
2008-08-12 10:50:39 +00:00
Sylvain Pion c2d8057e2e Use certainly_not in the examples 2008-08-12 08:38:26 +00:00
Sylvain Pion 0b58aac0d4 Add certainly_not() and possibly_not() (more expressive and maybe faster), and
simplify the implementation of certainly() and possibly().
2008-08-12 08:26:00 +00:00
Sylvain Pion 34be1f4a81 Introduce a macro CGAL_NO_UNCERTAIN_CONVERSION_OPERATOR to restrict the automatic
conversion operator.
Update the test-suite to work in this setting on Leopard (assert macro restrictions).
2008-08-11 08:24:31 +00:00
Sylvain Pion fea8090201 Fix the example code (make_uncertain() added otherwise the ?: operator is ambiguous). 2008-08-11 08:10:11 +00:00
Sylvain Pion aff1bf74aa Replace CGAL::Interval_nt<>::number_of_failures() by a CGAL_PROFILER() counter. 2008-08-06 13:16:04 +00:00
Sylvain Pion 5641a7fe20 Fix the FIXME : improved operator== 2008-08-04 15:42:10 +00:00
Sylvain Pion 8828ebec1c - The default constructor of Uncertain now initializes to T(),
not indeterminate.
- Add some examples in the manual.
2008-08-04 15:12:59 +00:00
Sylvain Pion 3e6ab45543 Make it pass in -DCGAL_NDEBUG mode as well 2008-07-31 11:49:52 +00:00
Sylvain Pion 0c65a5a092 - It is not possible to use the CONTINUE mode in set_error_behaviour().
- Various formatting fixes.
- Mark the assertion_fail and similar functions as CGAL_NORETURN.
2008-07-31 09:50:28 +00:00
Sylvain Pion 9ae3ea91b7 Add documentation and test-suite for CGAL::Uncertain.
Some other fixes.
2008-07-30 16:34:14 +00:00
Sylvain Pion 2da32b8ba8 Replace && by & and || by | inside the definition of the overloaded operators & and |. 2008-07-30 14:23:36 +00:00
Sylvain Pion 5c11fa3a56 Add assignment operator from T.
Add fixme comment.
2008-07-30 12:46:56 +00:00
Sylvain Pion 265ce473b4 Rename extract_singleton(Uncertain<T>) to get_certain() 2008-07-30 12:03:07 +00:00
Sylvain Pion f70c3779c7 Rename Uncertain::is_singleton() to is_certain() 2008-07-30 08:29:37 +00:00
Sylvain Pion 2f0abc4b6f Move CGAL::Object from Kernel_23 to STL_Extension. 2008-07-29 15:26:38 +00:00
Sylvain Pion da4a9f4fd4 Undo previous change in utility.h : I can't mark Triple/Quadruple as CGAL_NO_DEPRECATE_CODE,
since they are still used (so they can't be disabled).

However: mark Twotuple, Threetuple, Fourtuple, Sixtuple as CGAL_NO_DEPRECATE_CODE.
2008-07-28 16:49:46 +00:00
Sylvain Pion 0cca1762e4 Mark Triple/Quadruple with CGAL_NO_DEPRECATED_CODE. 2008-07-28 16:45:00 +00:00
Sylvain Pion 6bffa76272 Phase out Triple and Quadruple:
- add get<i>() member function
- add make_tuple() function.
2008-07-28 15:29:54 +00:00
Sylvain Pion b4aaa1bbd1 Mark Twotuple, Threetuple, Fourtuple, Sixtuple with CGAL_DEPRECATED.
(marke the constructors as such, as marking the classes does not work
with templates with GCC right now).
2008-07-25 17:57:22 +00:00
Sylvain Pion c36fe88397 Mark Triple and Quadruple "not-recommended anymore". 2008-07-25 15:21:06 +00:00
Sylvain Pion 65dde8e7cc Mark Twotuple, Threetuple, Fourtuple and Sixtuple as deprecated. 2008-07-25 11:25:36 +00:00
Sylvain Pion dc3bf72707 Remove changes.txt files. 2008-07-24 17:47:16 +00:00
Michael Hoffmann ee574c68c6 Removed include of functional_base. 2008-07-23 13:57:55 +00:00
Michael Hoffmann ff118c1e63 Remove bind/compose/swap adaptors. 2008-07-23 13:19:15 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion ea17d27c87 Define is_singleton() and extract_singleton() for non-Uncertain types,
so that Filtered_predicate still works with predicates returning non-Uncertain types.
2008-07-17 09:31:44 +00:00
Sylvain Pion 91d2d7478b Move Uncertain.h from Filtered_kernel to STL_Extension 2008-07-16 16:07:27 +00:00
Sylvain Pion 2eb0d8f9e9 certainly() -> possibly(). 2008-07-14 11:16:41 +00:00
Sylvain Pion eff6efd3af CGAL_NULL and CGAL_NULL_TYPE are now constant macros, so replace them by:
- CGAL_NULL -> NULL
- CGAL_NULL_TYPE -> CGAL::Nullptr_t (typedef to const void *)
2008-07-12 21:58:52 +00:00
Sylvain Pion 9d7a609ff2 Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion 2b4ebf01f7 Undo r44002 as it's buggy 2008-07-06 20:47:29 +00:00
Sylvain Pion 514a17ad4f Improve the interaction of assertions and interval computations.
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
  ((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
  (CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Michael Hoffmann d92021ba08 Remove bind/compose/swap functor adaptors.
We use boost::bind instead now.
2008-06-19 11:03:40 +00:00
Michael Hoffmann f0eefae126 Remove section about functor adaptors. 2008-06-19 10:59:11 +00:00
Michael Hoffmann a156bad385 Remove bind/compose adaptors and change the AdaptableFunctor concept
accordingly.
2008-06-19 10:57:52 +00:00
Michael Hoffmann 9a1eea3563 Outdated -> removed. 2008-06-19 10:53:16 +00:00
Sylvain Pion 7a6b5546f0 Remove white space at end of line to ease merge 2008-06-03 12:03:58 +00:00
Sylvain Pion 575edb7499 Added 2008 as copyright year, and make it INRIA only owner (this is post-GALIA code). 2008-06-03 11:56:43 +00:00
Sylvain Pion dfce30f55c Finish the rewrite of the "bit squatting". 2008-06-03 11:43:25 +00:00
Sylvain Pion 3901116641 Replace the union used for the bit manipulation of pointers, by casting
to (char *), substraction with NULL, and then changing bits on the integer.
(draft patch for now to synchronize with the parallel-branch, cleanup to follow)

The previous approach failed on sparc/linux as the bit representations
of pointers and integers are different.
2008-06-03 09:22:06 +00:00
Sylvain Pion 110a5db8be Rename all C++0x related config macros to consistently have CPP0X in their name,
as in CGAL_CFG_NO_CPP0X_VARIADIC_TEMPLATES.
2008-05-21 15:34:36 +00:00
Andreas Fabri 54ad19e4db handle struct mixup 2008-05-11 18:14:25 +00:00
Sylvain Pion ef30aa5ffe Add a variadic template version of make_array() (by Samuel Hornus). 2008-05-07 16:46:15 +00:00
Fernando Cacciola f93437ca22 Removed *unmodified* auto-generated CMakeLists.txt (now created by create_internal_release) 2008-05-05 14:01:55 +00:00
Laurent Rineau 4bf21e39ed Revert r42877:
"Use boost::iterator_facade for the Compact_container's iterators."
That modification triggers compilation errors with Visual C++.
2008-04-24 13:08:49 +00:00
Samuel Hornus 8f902841c6 adding operator->() with a proxy-trick 2008-04-17 09:03:06 +00:00
Sylvain Pion 5699aa2aca Add back the comparisons with NULL... they are needed. 2008-04-12 21:23:08 +00:00
Sylvain Pion 57904f1e25 Use boost::iterator_facade for the Compact_container's iterators. 2008-04-12 18:19:43 +00:00
Sylvain Pion 4416bee3de Move all Handle* classes to STL_Extension. There's no geometry in them,
so the kernel is not the most appropriate place for them.
2008-04-12 10:38:07 +00:00
Sylvain Pion cab843595b Replace {Two|Three|Four}tuple<FT> or <RT> by boost::array.
It makes more code parameterized by the dimension as template argument.
It provides iterators and a few basic functions already such as operator==...
I added CGALi::make_array() to easily and efficiently construct them.
2008-04-09 11:44:28 +00:00
Andreas Meyer 20315de571 * replaced CGAL_test_assert with ::assert, instead of CGAL_assertion
* removed include/Testsuite/assert.h
2008-03-19 13:45:36 +00:00
Fernando Cacciola b704509dcf Examples/Demos/Test CMake scripts updated 2008-03-05 21:14:02 +00:00
Fernando Cacciola a659cd852a Added project() and conditional test for CGAL_DIR 2008-02-14 15:42:36 +00:00
Fernando Cacciola 14043c43a0 Replaced CGALROOT by CGAL_DIR (the latters is used by CMake automatically) 2008-02-08 17:47:21 +00:00
Fernando Cacciola afddfc4fca CMake scripts for demos/examples/test added 2008-02-06 19:06:24 +00:00
Sylvain Pion 29d15d7eb1 Remove obsolete SunPRO workarounds 2008-01-20 21:51:12 +00:00
Sylvain Pion 0f587ba0b5 This SUNPRO workaround is not needed anymore 2008-01-20 20:34:39 +00:00
Sylvain Pion 4d1b8d63e3 Remove workarounds and support for the BORLAND compiler. 2008-01-20 20:24:20 +00:00
Sylvain Pion b24108f5fd Remove #include <cassert> from everywhere under include/CGAL/.
CGAL code has to use CGAL assertions instead.
2008-01-20 18:47:19 +00:00
Sylvain Pion 1d2b1f3b6a Make CGAL_NDEBUG depend on NDEBUG, and simplify code. 2008-01-20 18:07:46 +00:00
Sylvain Pion 3eb3e168e8 The main (non package-specific) macros like CGAL_assertion() should not depend on
kernel specific knobs like CGAL_KERNEL_NO_ASSERTIONS.
2008-01-20 17:39:27 +00:00
Sylvain Pion 5c551050a5 Remove obsolete VC++ 6 specific code. 2008-01-20 15:27:47 +00:00
Sylvain Pion 2b46416907 Remove more SUNPRO + RW's STL obsolete workarounds:
CGAL_CFG_SUNPRO_RWSTD (partially)
CGAL_reverse_iterator()
2008-01-03 15:04:30 +00:00
Sylvain Pion 83b76e21e9 Remove obsolete .C example files (there are uptodate .cpp files under examples/). 2007-12-28 16:07:38 +00:00
Sylvain Pion 360d29f72a Rename CGAL_CIRC_NULL to CGAL_NULL. 2007-12-28 15:40:36 +00:00
Sylvain Pion e8591b3b32 Change Counting_output_iterator to store a pointer to the counter, instead of
the counter itself.  It fixes a problem with g++ 4.3 since std::copy now
performs the assignments on *copies* of the output iterator.
See : http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34595
2007-12-26 17:34:36 +00:00
Sylvain Pion be95afcd9b Fix const-correctness issue. 2007-12-25 11:22:48 +00:00
Sylvain Pion ef3ba8a5ec variadic template fix 2007-12-24 13:30:24 +00:00
Sylvain Pion d49e006c53 Remove default argument "0" to calls to assertion_fail() et al,
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what():  basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Sylvain Pion a46b55bf71 The files "changes.txt", "description.txt", "long_description.txt" and "maintainer"
are now under /trunk/$Package/package_info/$Package/ .
2007-12-02 15:06:42 +00:00
Sylvain Pion dddf37f5cc Avoid duplicating error messages with g++. 2007-11-21 16:44:44 +00:00
Sylvain Pion 1f492aa1e8 Remove unused, undocumented, and superceeded by boost::function_output_iterator (more or less)
class Transform_output_iterator.
2007-11-20 14:05:31 +00:00