Commit Graph

530 Commits

Author SHA1 Message Date
Sylvain Pion 927b432b39 typo : mecanism -> mechanism. 2009-08-10 15:57:03 +00:00
Sylvain Pion 1948ac7df0 Add more information about make_array().
It's potentially removable, actually, apart from VC++ being too buggy as usual.
2009-08-04 15:03:23 +00:00
Laurent Rineau ac0017572a Fix a problem reported by a user and discussed on CGAL-develop:
Laurent Rineau (GeometryFactory) wrote:
> On Wednesday 29 July 2009 14:05:41 Sylvain Pion wrote:
>> Laurent Rineau (GeometryFactory) wrote:
>>> One GF customer reported the following issue:
>>>
>>> "For 64bit compilation, we get the disturbing warning
>>>
>>> ..\Third_Party_Libraries\CGAL\include\CGAL/Handle.h(90) : warning C4311:
>>> 'reinterpret_cast' : pointer truncation from 'CGAL::Rep *const ' to
>>> 'unsigned long'
>>>
>>> which looks like a real 64bit issue."
>>>
>>> and he is right. Here is the code:
>>>
>>> inline
>>> bool
>>> identical(const Handle &h1, const Handle &h2)
>>> { return reinterpret_cast<unsigned long>(h1.PTR) ==
>>>          reinterpret_cast<unsigned long>(h2.PTR); }
>>>
>>>
>>> "unsigned long" is not the right type! On 32 bits machine, that type is
>>> too long, and on x64 under Windows, that type is too short!
>> Indeed...
>>
>>> See http://en.wikipedia.org/wiki/LLP64#Specific_data_models
>>>
>>> We need uintptr_t from C99, because that type is defined as the fastest
>>> unsigned integral type that is convertible from void pointers and
>>> comvertible to void pointers, without truncation.
>>>
>>> However, that type is not yet in the C++ norm, and some platforms may not
>>> have it. We will probably need some macro stuff:
>>>   - use C++0x if possible,
>>>   - fallback to plain C99 headers,
>>>   - then fallback to platform specific typedefs.
>>>
>>> Is that the correct solution?
>> For the identical() function above, why don't we simply compare
>> the pointers without doing the casts to unsigned long at all ?
>>
>> Nevertheless, the problem exists in the id() function (and this
>> function is probably less useful...).
>> What about returning std::ptrdiff_t with {return h.PTR -
>> static_cast<Ref*>(0);} ?
> 
> Yes. That might be a good cross-platform solution for id(). I will commit that 
> in the trunk. And identical() will be a.id()==b.id().

Why not just h1.PTR == h2.PTR for identical() ?


So, let's go and break the trunk! ;-)
I have a least compiled and run test/Kernel_23/Lazy_kernel.cpp
2009-07-29 13:27:47 +00:00
Sylvain Pion 6335879bb6 Properties. 2009-07-20 08:52:20 +00:00
Sylvain Pion 33d29c586d Update properties. 2009-07-20 08:51:01 +00:00
Andreas Fabri 1fcaf88533 Suppress warning 2009-07-07 15:56:20 +00:00
Andreas Fabri ffe2933f8c fix warning number 2009-07-06 09:30:22 +00:00
Andreas Fabri 8292c85884 Suppress warning 547 for VC++ 2009-07-05 18:56:20 +00:00
Sébastien Loriot 4104106c84 Work around for intel compiler 11 EDG and Dispatch_or_drop_output_iterator non-variadic case 2009-07-02 13:53:52 +00:00
Laurent Rineau bc6974d68d A probably temporarily fix for Intel Compiler (EDG frontend). 2009-07-01 15:42:50 +00:00
Sébastien Loriot ac1b06a265 add 1 parameter version of Dispatch_*_iterator in non-variadic case 2009-05-05 21:05:58 +00:00
Sylvain Pion 916ba2c342 Consistent naming :
Iterators_tuple   -> Iterator_tuple
Value_types_tuple -> Value_type_tuple
2009-05-05 07:38:27 +00:00
Sylvain Pion 64ed32dc80 Add missing CGALi:: . 2009-05-03 18:30:27 +00:00
Sylvain Pion b75a57f5b8 g++ 4.3 has variadics but not deleted functions. 2009-04-30 21:18:13 +00:00
Sébastien Loriot 8ea30fa091 Expand the non-variadic version of Dispatch_*_output_iterator and Is_in_tuple for up to 7 parameters 2009-04-30 17:28:55 +00:00
Sylvain Pion f0ed774e37 Move CGAL::array to namespace CGAL::cpp0x, like tuple. 2009-04-30 14:03:52 +00:00
Sylvain Pion 6792be2fa7 Move tuple & co under the sub-namespace CGAL::cpp0x, to avoid name clashes
(e.g. for make_tuple() already used for Triple/Quadruple).
2009-04-30 13:32:03 +00:00
Sylvain Pion 697721a5b6 Minor renaming to avoid possible confusion. 2009-04-30 09:30:39 +00:00
Sylvain Pion 12374d6cef Dispatch_*_output_iterator : document the derivation from the tuple. 2009-04-30 09:26:12 +00:00
Sylvain Pion eebefbbee6 Add test program for Dispatch_output_iterator. 2009-04-29 22:07:03 +00:00
Sylvain Pion 4ba60d051f Document CGAL::tuple. 2009-04-29 21:57:38 +00:00
Sylvain Pion ba6d615d05 Document Dispatch_output_iterator and Dispatch_or_drop_output_iterator. 2009-04-29 21:42:13 +00:00
Sylvain Pion a4c173d9dd Add Is_in_tuple<>, Dispatch_or_drop_output_iterator<> and Dispatch_output_iterator<>. 2009-04-29 20:48:45 +00:00
Sylvain Pion 2eb44d3596 tuple compatibility layer. 2009-04-29 19:45:41 +00:00
Sylvain Pion a29850cb8d Add comment 2009-04-21 18:00:27 +00:00
Sylvain Pion 9aff782550 doc+example for CGAL::Default. 2009-04-12 10:58:10 +00:00
Sylvain Pion f55c8e9a2f Renaming before documenting: Default_argument -> Default. 2009-04-10 21:55:24 +00:00
Sylvain Pion 560452cf04 I'm told this fixes the test-suite.
-- 
Sylvain, aka mail2svncommitconverter
2009-03-05 20:41:46 +00:00
Sylvain Pion da0da4cbc6 Add functions iterator_to and s_iterator_to that construct an iterator from
a reference to an object supposedly stored in a Compact_container.
This is inspired from Boost.Intrusive:
http://www.boost.org/doc/libs/1_38_0/doc/html/intrusive/obtaining_iterators_from_values.html
2009-03-03 02:47:23 +00:00
Sylvain Pion 7cb67c5d20 Document that the Compact_container::iterator's default constructed value
is not singular, but is usable like NULL.
2009-03-03 00:05:25 +00:00
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
Andreas Meyer 6623d525eb * replaced assert in */test/*/*.{cpp,h} with CGAL_test_assertion
* replaced #include <assert.h> with the according CGAL/Testsuite/assert.h
2007-11-07 21:35:42 +00:00
Andreas Meyer fdeedcf8b0 some low level code cleanup. renamed
* CGAL_error to CGAL_error_msg
* introduced a macro CGAL_error()
* added some words about CGAL_error to the developers manual
* renamed most of assert(x) into CGAL_assertion(x)
* renamed exit(x) with x != 0 , CGAL_assertion(false) and assert(false) into CGAL_error
* CORE left untouched, OpenNL changed
2007-11-07 16:51:18 +00:00
Sylvain Pion 80f14be579 Using an anonymous namespace is much more funky than static funcitons/variables. 2007-11-07 15:50:25 +00:00
Sylvain Pion 84719ab22f Mention bug-report URL in the assertion failure error message. 2007-11-07 15:38:48 +00:00
Sylvain Pion 848b455cc6 Use default arguments... 2007-11-05 17:13:21 +00:00
Sylvain Pion 9d7c8b949d Variadic template syntax is not supported by the manual tools
(and hopefully will never).
2007-11-02 22:23:46 +00:00
Sylvain Pion 2c25427164 - New class Default_argument that helps shrink error messages
and mangled names.
- Use it in Compact_container in place of Default_allocator
  which was playing the same role, but less generally.
2007-11-02 16:16:02 +00:00
Sylvain Pion ef264999b3 Renaming of Compact_container's construct_insert() to emplace() to match C++0x.
It breaks backward compat, but I doubt many people use Compact_container directly.
Make it use variadic templates, while at it.
2007-10-20 20:51:59 +00:00
Sylvain Pion 4da7713aa8 Remove obsolete config flag CGAL_CFG_NO_STDC_NAMESPACE and rename
its dependant macro CGAL_CLIB_STD to "std".
2007-08-08 15:59:25 +00:00
Andreas Meyer ba23c28c2b * added #include <CGAL/basic>
* moved some support functions/classes from EXACUS to STL_Extensions/iostream:
  - Benchmark_rep (similar to Output_rep)
  - a functor Pair_lexicographical_less_than 
    (previously called Product_order in EXACUS)
  - a functor Handle_id_less_than
2007-07-04 16:25:33 +00:00
Sylvain Pion 54b01bd44f Speed up the clear() function (and therefore the destructor), by allowing
the compiler to optimize away a complete walk over the container for
types with trivial destructors.
2007-06-08 22:35:58 +00:00
Sylvain Pion bea63ec2f6 formatting 2007-06-08 21:22:45 +00:00
Andreas Fabri 01e763217b 3.3 branch -> trunk 2007-06-04 14:27:09 +00:00
Andreas Meyer 7c09dc370a * removed unused "old_alloc_strategy", based on LEDA
* some leda stuff remains : added version-dependent include for leda/memory.h
2007-04-20 12:16:17 +00:00
Andreas Meyer c1e9765ff4 manual fix: moved labels inside sectioning command 2007-04-18 14:20:12 +00:00
Sylvain Pion 8cb773f976 Rename variable to avoid shadowing warning. 2007-04-18 09:01:37 +00:00
Sylvain Pion 0d4a66304b Spell check. 2007-04-17 15:32:22 +00:00
Sylvain Pion 1fd9eeaeef Fix Quadruple's operator!=. 2007-04-16 16:26:57 +00:00
Laurent Rineau f9538d6cb8 Same think: missing operator!= for Quadruple.
Warning: I have not tested that one.
2007-04-14 18:10:44 +00:00
Laurent Rineau ec055e953b Triple had an operator==. The operator!= was missing. 2007-04-14 17:58:29 +00:00
Andreas Meyer 116d4b6570 * EXACUS -> CGAL cleanups
* license header 
* cosmetic changes
2007-04-03 16:07:32 +00:00
Sylvain Pion 57730e837e Fix headers. 2007-04-03 15:13:47 +00:00
Andreas Meyer f575392469 fixed test-program license statement, by removing it:
now it only says, that it's part of the internal release and
should not be distributed (similar to other packages)
2007-04-03 12:51:51 +00:00
Andreas Fabri 85c59538a7 Added link to Null_tag and Null_functor 2007-03-19 14:43:29 +00:00
Andreas Fabri 4b8a772dee replacement new instead of allocator::construct 2007-03-19 14:42:00 +00:00
Andreas Fabri 42c4ecdf0b it is illegal to have a singular iterator on the rhs of an assignment 2007-03-16 11:49:47 +00:00
Sylvain Pion 847c23a15e Removing leading and trailing empty lines from all example files.
Using the following Perl script:
-----------------------------------------------------
#!/usr/bin/perl

local($/) = undef;
my $text = <>;

$text =~ s/\A\n+//mg;
$text =~ s/\n+\Z/\n/mg;

print "$text";
-----------------------------------------------------
2007-03-10 16:17:17 +00:00
Sylvain Pion 6fb5cb906b Remove trailing white spaces and end of lines.
(using : perl -pi.bak -e 's/\s+$/\n/' */examples/*/*.cpp )
2007-03-10 14:59:41 +00:00
Sylvain Pion b8b87ab5a5 Actually, the "// file: example_bla.cpp" lines are not needed anymore,
since the manual tools know it.  So let's just remove them (many were
not uptodate with the filemane anyway).
2007-03-10 14:48:00 +00:00
Sylvain Pion 01d46bfa15 Some examples escapede my previous pass due to trailing white space at end of line. 2007-03-10 14:39:37 +00:00
Sylvain Pion 23edc11d3b Fix all first lines of examples "// file : example_file.C" to .cpp suffix.
Using :

for i in * ; do  cd $i ; for f in examples/*/*.cpp ; do ( head -1 $f | grep file | grep -v '\.cpp' ) && echo $f && perl -pi.bak -e 's/\.C$/.cpp/' $f ; done ; cd .. ; done
2007-03-10 14:34:05 +00:00
Sylvain Pion 09c71b26f9 warning-- 2007-03-08 09:48:21 +00:00
Andreas Fabri 12682ecb4b moved doc from Algebraic Foundations to STL Extensions 2007-03-07 14:15:14 +00:00
Andreas Fabri 42934cc135 moved doc from Algebraic Foundations to STL Extensions 2007-03-07 14:11:34 +00:00
Andreas Fabri ea8ba1d3f0 moved doc from Algebraic Foundations to STL Extensions 2007-03-07 12:57:07 +00:00
Andreas Fabri f569184122 moved doc from Algebraic Foundations to STL Extensions 2007-03-07 12:48:16 +00:00
Sylvain Pion 675f5c6104 add parenthesis to remove g++ 4.3 warning 2007-03-05 16:27:54 +00:00
Sylvain Pion c3d608beb5 remove unused arguments to prevent warnings 2007-03-02 11:06:40 +00:00
Sylvain Pion 62fc224512 comment unused argument to prevent warning 2007-03-02 11:05:53 +00:00
Fernando Cacciola 63442a954a License headers fixed. 2007-02-28 18:06:42 +00:00
Fernando Cacciola 8a3dee2292 C2vcproj fixed to look for master_71.vcproj instead of master_VC71.vcproj.
Missing svn properties added
2007-02-27 16:50:16 +00:00
Bernd Gärtner 34dd0eae83 - unused ariable warning fix 2007-02-23 08:35:43 +00:00
Andreas Meyer 50b32ff044 updated changes.txt 2007-02-22 11:23:09 +00:00
Andreas Meyer 9cfb43e09f added header 2007-02-22 11:10:53 +00:00
Laurent Rineau 65d7908377 commit an old patch I had for STL_Extension/doc_tex/STL_Extension_ref/stl_extension.tex: explain differences between Boost filter iterator and CGAL one. 2007-02-21 10:11:52 +00:00
Andreas Meyer 1996f8c159 added a mpl struct is_same_or_equal, similar to
boost::is_same / boost::is_base_and_derived
2007-02-17 21:25:09 +00:00
Sylvain Pion 7dcfe00529 - Move documentation of Boolean_tag<bool>, Tag_true and Tag_false
to STL_Extension.
2007-02-09 17:13:47 +00:00
Sylvain Pion 25e0f2349f Try replacing custom int_to_string by boost::lexical_cast 2007-02-05 15:53:32 +00:00
Michael Hemmer 95d26f6787 the function check_tag is deprecated since CGAL 3.3 2007-02-02 08:37:35 +00:00
Fernando Cacciola 7afd2f1bbf Fixes for VC7.1/8 bug 2007-01-30 18:47:57 +00:00
Sylvain Pion 3c27e07382 rename .C to .cpp 2007-01-27 20:14:24 +00:00
Sylvain Pion 2eafe93364 These cgal_test/makefile do not bring anything compared to the default generated. 2007-01-27 20:13:55 +00:00
Sylvain Pion 1ae3c091b0 These cgal_test/makefile do not seem to bring anything compared to the default generated. 2007-01-27 17:29:04 +00:00
Fernando Cacciola c211eb0aa9 Fixed incorrect 'typename' 2007-01-19 19:05:10 +00:00
Fernando Cacciola 278e0bbc77 VC8 STL iterator fixes 2007-01-18 13:46:53 +00:00
Sylvain Pion 0530a7d920 min_n() and max_n() functions similar to std::min() and std::max(),
but which allow more than 2 arguments.
2006-12-02 21:50:30 +00:00
Andreas Fabri dd978791ea Workaround for VC++ -- reintroduced 2006-11-10 11:51:35 +00:00
Michael Hemmer 6e8bfad68a new design for Tag_true/Tag_false
get tag via Boolean_tag<bool>
has public member: bool value
2006-11-08 14:36:53 +00:00
Michael Hemmer 7936604249 restored original version of Null_functor 2006-11-08 10:11:49 +00:00
Andreas Fabri 412c009679 Give Null_functor some nested types 2006-10-27 17:55:23 +00:00
Andreas Meyer f8c89d0986 * included EXACUS test programs in STL_Extension test (hardcoded in makefile and cgal_test)
* removed some leftover #include <CGAL/LiS/basic.h>
2006-10-26 11:24:40 +00:00
Andreas Meyer e9e8387260 merged changes from CGAL_with_EXACUS branch into trunk.
revisions used: 
(1) 32995:34537 
(2) 34538:34906
2006-10-24 15:21:25 +00:00
Sylvain Pion 5aba55173f Introduce CGAL_NDEBUG. 2006-08-11 13:01:36 +00:00
Andreas Meyer c51efe2626 replaced ccIncludeVerbatim by ccIncludeExampleCode, where appropriate 2006-08-09 14:19:50 +00:00
Andreas Meyer b454b3febd manual cleanup:
* .C ---> .cpp
* removed ../examples from paths
* moved some demo/example files out of doc_tex into their respective place
* now it should build properly, again
2006-08-07 16:43:09 +00:00
Andreas Fabri 2fb18f532d Fixed min max problem 2006-07-31 22:31:49 +00:00
Sylvain Pion e4f5e2a1ef - Introduce exception throwing as assertion behavior.
- Make it the default.

- FIXME : the exception classes are not yet documented.
2006-07-13 17:46:18 +00:00
Andreas Fabri 0b9ab2594b changed .C to .cpp in examples 2006-07-09 19:41:43 +00:00
Andreas Fabri 4aa722c47c empty circulator ranges must not be encoded with default constructed iterators 2006-06-15 13:39:06 +00:00
Ron Wein 623b747d42 Changed the header such that the copyright is only for TAU. 2006-05-16 10:11:35 +00:00
Ron Wein 9b870e03c8 Added a test case for swapping two siblings. 2006-05-14 07:48:13 +00:00
Ron Wein 68d5ab3e0c Fixed a bug in the swap(pos1, pos2) function. 2006-05-14 07:40:30 +00:00
Andreas Meyer b9ef01ba52 \chapter --> \ccUserChapter 2006-05-03 16:11:09 +00:00
Marc Glisse b13e3b5ec0 Last round of missing std:: before 3.2 (Andreas permission) 2006-04-19 16:56:12 +00:00
Sylvain Pion d2740513aa Use .cpp file extension instead of .C for src/*/* files. 2006-04-14 09:19:29 +00:00
Sylvain Pion 22ad725de1 Move src/*.C to src/CGAL/*.C 2006-04-13 22:24:18 +00:00
Andreas Fabri cf23c9a828 Moved text to the user manual 2006-04-08 20:36:16 +00:00
Andreas Meyer 5b5a60cecf rewritten the whole manual
ok. seriously:

renamed \chapter into \ccUserChapter and \ccRefChapter
2006-04-06 17:03:37 +00:00
Andreas Fabri 936733ce81 Added \section{Classified Reference Pages} 2006-04-05 20:54:55 +00:00
Sylvain Pion 23d1b2e70d - Renaming to avoid potential confusion 2006-03-25 12:21:56 +00:00
Joachim Reichel f582718758 rename create_makefile to cgal_create_makefile to avoid name clashes,
adjust all occurences of create_makefile and create\_makefile in the entire
repository (well, trunk only)
2006-03-15 22:10:02 +00:00
Marc Glisse 0756f34663 Work around yet another sunpro bug, where it complains about an ambiguity
between A and A.
2006-02-28 16:03:31 +00:00
Marc Glisse f9e7d81429 Clean sunpro rwstd workaround by using reverse_iterator macro. 2006-02-25 23:25:27 +00:00
Marc Glisse 733a96b81c Try new version of sunpro reverse_iterator workaround. 2006-02-25 00:14:28 +00:00
Sylvain Pion c1223ad0b5 Add note that CGAL::Filter_iterator and boost::filter_iterator have opposite semantics 2006-02-24 12:20:47 +00:00
Monique Teillaud 6c595610ca revert my previous change (in fact Sylvain had already fixed the bug in svn
after the internal release)
2006-02-24 10:02:04 +00:00
Monique Teillaud 30712bb7ba commenting Sylvain's recent addition, which should give a chance to
tomorrow's test suite to get more green boxes...
2006-02-24 09:45:18 +00:00
Sylvain Pion 7efa173f71 - Fix last change. 2006-02-23 22:32:10 +00:00
Sylvain Pion acd8cdf25a - Add a Transform_output_iterator. 2006-02-23 14:21:30 +00:00
Ron Wein fdd566b269 Trying to fix the compilation warning we get from gcc 4.1 2006-02-23 13:08:30 +00:00
Ron Wein 2b89c8dc1e Fixed the header. 2006-02-23 12:00:57 +00:00
Marc Glisse 725dd1ff24 workaround for sunpro old stl, copied from vector.h 2006-02-22 16:44:00 +00:00
Marc Glisse 936522e422 workaround for sunpro old stl, copied from vector.h 2006-02-22 16:36:03 +00:00
Marc Glisse 1b05f9442d workaround for sunpro old stl, copied from vector.h. 2006-02-22 16:00:53 +00:00
Marc Glisse 6480cf43ca Fix check for broken sunpro stl. 2006-02-22 15:57:20 +00:00
Marc Glisse 13380ebe5e Add some missing std:: and #include <c*> 2006-02-22 15:22:27 +00:00
Sylvain Pion 216c62b83e Remove empty files 2006-02-19 22:23:06 +00:00
Laurent Saboret db6a8f948c Change CVS keywords to SVN style 2006-02-16 14:30:13 +00:00
Laurent Saboret 1aad55d4cb Change CVS keywords to SVN style 2006-02-14 10:08:15 +00:00
Laurent Saboret 76603aad2b Move packages to trunk root 2006-02-14 08:58:19 +00:00