Commit Graph

463 Commits

Author SHA1 Message Date
Sylvain Pion c3db8f0191 - New predicate : side_of_oriented_lineC2. 2000-09-01 16:54:41 +00:00
Sylvain Pion f7e665d2ac - Added commented out to_interval() for long long and long double.
- Use CGAL_IA_ADD, SUB, MUL, DIV, SQUARE.
- Removed copy and assignment ctors.
2000-09-01 16:50:10 +00:00
Sylvain Pion 28ced821a4 - Don't use GCC's statement expressions anymore, use a portable asm() instead.
- CGAL_ms_sqrt() moved here, and uses an asm() for CygWin.
- New macros for basic operations taking care of constant propagation, and
  memory flush : CGAL_IA_ADD, SUB, MUL, DIV, SQUARE.
2000-09-01 16:48:46 +00:00
Sylvain Pion b03945413c - Constant propagation barriers are moved where needed.
So doesn't depend anymore on _FPU.h.
2000-09-01 16:44:16 +00:00
Sylvain Pion 4e75aa3f61 - Added a #if 0'd out preliminary version of to_interval(). 2000-09-01 16:43:23 +00:00
Sylvain Pion f5d12695c8 - "static" added when not template (M$VC++). 2000-09-01 16:40:49 +00:00
Sylvain Pion 71a53113c4 - Renamed overlap() to do_overlap(). 2000-08-23 14:32:29 +00:00
Sylvain Pion d06a8a4007 - Use the "IA" typedef to shorten the code a bit. 2000-08-20 15:40:18 +00:00
Sylvain Pion 716f878968 - Update to make static adaptative filters work again. 2000-08-03 15:23:10 +00:00
Sylvain Pion 8c11be0326 - CGAL_NTS. 2000-07-26 15:12:24 +00:00
Sylvain Pion 83b2b49344 - Namespace issues. 2000-07-26 14:52:37 +00:00
Sylvain Pion 12665df787 - Various updates. 2000-06-25 18:54:19 +00:00
Sylvain Pion dbb0048116 - Interval_base moved to Interval_base.h .
- Protect_FPU_rounding<> moved to Interval_arithmetic/_FPU.h .
- min and max std:: qualified for doubles.
- M$VC++ workaround for sign, compare, abs, square.
- Header cleanups.
2000-06-25 18:52:14 +00:00
Sylvain Pion c70a2e38bf - New file. Definition of the class Interval_base. 2000-06-25 18:48:55 +00:00
Sylvain Pion d107068fa0 - Headers cleanups. 2000-06-25 18:47:01 +00:00
Sylvain Pion 21bb7b381e - Protect_FPU_rounding<> moved to _FPU.h. 2000-06-25 18:45:23 +00:00
Sylvain Pion 1bb23ded7e - Big rewrite... 2000-06-21 15:12:20 +00:00
Sylvain Pion dfea45953c - Protect_FPU_rounding object who's ctor/dtor do the rounding stuff. 2000-06-15 13:29:11 +00:00
Sylvain Pion cfdc0d0db6 - Fixed obsolete and buggy references to
CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.
2000-06-14 14:40:11 +00:00
Sylvain Pion ba8b110094 - coordinator field re-added. 2000-06-13 15:07:38 +00:00
Sylvain Pion 31adf050ed - Bump for 4.47. 2000-06-13 15:02:54 +00:00
Sylvain Pion 1baf6fc4a9 - Fixed Copyrigth dates, and re-added coordinator fields. 2000-06-13 15:01:03 +00:00
Sylvain Pion d16aed673a - Removed useless "template <>". 2000-06-13 14:51:32 +00:00
Sylvain Pion ee54db404b - Bug fixes update. 2000-06-12 15:46:27 +00:00
Sylvain Pion d463fc543f - Various updates. 2000-06-12 14:14:27 +00:00
Sylvain Pion 19fbccda50 - Updated. Filtered predicates work. 2000-06-12 12:39:00 +00:00
Sylvain Pion 6aba0f76fc - Fix CGAL_NTS issues. 2000-06-11 14:48:50 +00:00
Sylvain Pion 1089a61201 - CGAL_NTS and namespace stuff. 2000-06-10 23:48:00 +00:00
Sylvain Pion ef15580c0d - Complete rewrite to use Handle_for<> and more. 2000-06-10 23:42:55 +00:00
Sylvain Pion 50113faa0b - Removed is_integral() since it's now in double.h. 2000-06-08 15:19:26 +00:00
Sylvain Pion df461d9f67 - Removed the coordinator field, and updated some Copyright years. 2000-05-19 15:28:42 +00:00
Sylvain Pion ce95b5ea17 - Use the relational operators provided by STL's <utility>.
- Removed coordinator field.
- Copyright 2000 added.
- Cleanup the CGAL_ms_sqrt workaround.
2000-05-19 15:15:44 +00:00
Sylvain Pion 621ec3e7a8 - Updated for CGAL-2.2-I-15. 2000-05-04 13:30:09 +00:00
Sylvain Pion a6210d12e1 - Updated to 2.2-I-8. 2000-03-13 10:03:33 +00:00
Sylvain Pion c80b4bfa94 - Updated to 2.2-I-8 2000-03-13 09:37:23 +00:00
Sylvain Pion b4e9daf75f - Added KCC/Sun support. 2000-02-17 10:02:05 +00:00
Sylvain Pion 0d7576a487 - Typos. 1999-11-07 17:59:42 +00:00
Sylvain Pion 332711b503 - Replaced enums FPU_cw_near... by macros CGAL_FE_TONEAREST... 1999-11-07 17:56:16 +00:00
Sylvain Pion 8d649f2559 - Added C9X compliant routines. 1999-11-07 16:32:43 +00:00
Sylvain Pion 6f91651165 - Replaced CGAL_IA_SMALLEST by Interval_nt_advanced::Smallest. 1999-11-07 16:00:35 +00:00
Sylvain Pion 3b546cf703 - Replaced the macros CGAL_IA_SMALLEST and CGAL_IA_LARGEST by static data
members Smallest and Largest.
- Some formatting.
1999-11-07 15:58:32 +00:00
Sylvain Pion e1c8bd2322 - Some predicates removed. 1999-11-03 12:57:06 +00:00
Sylvain Pion 135e1c5d4f - has_integral_value() renamed is_integral(). 1999-10-30 13:18:10 +00:00
Sylvain Pion b3571c1a80 - Lines too long splitted. 1999-10-29 15:16:56 +00:00
Sylvain Pion 2ce2172c7f - Added a converter from double to Quotient<Gmpz>. 1999-10-29 15:13:13 +00:00
Sylvain Pion 63c33038e7 - Updated to I-32: the degenerate power_testH3() are removed. 1999-10-28 11:02:40 +00:00
Sylvain Pion b553313dcd - Added CGAL_IA_CHECK_RESTRICT. When not defined, Restricted_double = double.
- Added to_double().
1999-10-27 09:28:26 +00:00
Sylvain Pion 69f1a3ae1d - Borland can't get IEEE comparisons working too... 1999-10-27 09:18:50 +00:00
Sylvain Pion 5b8f093aae - Various optimizations. 1999-10-26 16:24:31 +00:00
Sylvain Pion 3a65f3ac51 - New flag CGAL_IA_NO_INLINE which switches operator* and operator/
from inline to static.
1999-10-22 16:16:57 +00:00
Sylvain Pion 4886003473 - Enable the sqrt workaround for __CYGWIN__ too. 1999-10-21 14:41:38 +00:00
Sylvain Pion 4c92954c66 - Protect new filters with "#ifdef CGAL_IA_NEW_FILTERS". 1999-10-19 15:44:15 +00:00
Sylvain Pion 5d0622bd04 - Temporary hack for Lazy_exact_nt<>.
- Workaround for VC++ sqrt().
1999-10-19 11:34:23 +00:00
Sylvain Pion 1539848132 - .interval() -> .interval_advanced(). 1999-10-19 11:32:06 +00:00
Sylvain Pion fc0f803ec6 - Interval is now member of the base class. 1999-10-19 11:31:30 +00:00
Sylvain Pion 37bb6a4c73 - Initial version. 1999-10-16 15:53:33 +00:00
Sylvain Pion ac9204b197 - Some fixes. It actually seems to work now. 1999-10-16 13:39:58 +00:00
Sylvain Pion 816d013cd2 - Many changes.
- First version that is supposed to work.
1999-10-15 19:08:56 +00:00
Sylvain Pion 21f9e3686f - Comment updates. 1999-10-15 14:29:00 +00:00
Sylvain Pion 75ee25d7cf - Formatting issues (moved some code around). 1999-10-14 16:08:29 +00:00
Sylvain Pion 257d8bb73a - Finally, I think it's useless. 1999-10-14 15:57:45 +00:00
Sylvain Pion d500aa4702 - Got rid of bound_t. I finally think it's useless. 1999-10-14 15:57:00 +00:00
Sylvain Pion d221d636aa - Same thing with operator|| and operator&&.
- Added a special version of them for Interval_nt.
1999-10-14 15:52:07 +00:00
Sylvain Pion dcc5d3f8c2 - Same thing with the comparison operators. 1999-10-14 15:45:11 +00:00
Sylvain Pion badaaee857 - Put all operators as friends instead of members, this allows to get rid of
a particular version for (double, IA).
1999-10-14 15:36:30 +00:00
Sylvain Pion 000f868297 - New flag CGAL_IA_NO_X86_OVER_UNDER_FLOW_PROTECT which allows to stop the
workaround for Intel processor, when there's no underlow nor overflow risk.
- CGAL_IA_STOP_CONSTANT_PROPAGATION enabled by default, i.e. renamed
  CGAL_IA_DONT_STOP_CONSTANT_PROPAGATION.  New zero-cost implementation for
  GCC using __builtin_constant_p().
1999-10-14 13:13:07 +00:00
Sylvain Pion 2e44d20d7c - Fixed header. 1999-10-14 08:50:39 +00:00
Sylvain Pion 0ab1e765fe - Add header. 1999-10-13 17:54:13 +00:00
Sylvain Pion b0c7521f60 - Add headers. 1999-10-13 17:46:08 +00:00
Sylvain Pion aef4205441 - Change the name of the script. 1999-10-13 17:43:18 +00:00
Sylvain Pion ea189bdcdb - Define CGAL_IA_STOP_COMPILER_OPT() for all compilers. 1999-10-13 17:30:18 +00:00
Sylvain Pion 3ecc8807d3 - Removed qualifier "throw(...)" of overlap_action().
It speeds things up on GCC.
1999-10-13 15:20:32 +00:00
Sylvain Pion 3bd062ef7f - is_valid() workaround for MipsPro. 1999-10-13 13:16:19 +00:00
Sylvain Pion 0a7b894180 - Removed convert_to<Interval_nt>(). This was useless, and it broke MipsPro. 1999-10-13 13:07:31 +00:00
Sylvain Pion 77d7716255 - Added parenthesis around double computation to prevent MipsPro from changing
expression computation order...
1999-10-13 12:13:10 +00:00
Sylvain Pion 1f82112c11 - Added #include<float.h> for Borland. 1999-10-12 21:33:48 +00:00
Sylvain Pion ca9404e8cb - Moved definition of an inline function before its call. 1999-10-12 18:06:42 +00:00
Sylvain Pion 97fd0cf338 - Compactify line > 80 chars. 1999-10-12 17:53:21 +00:00
Sylvain Pion 215145a0ee - break line > 80 chars. 1999-10-12 17:51:32 +00:00
Sylvain Pion 8fd9efdc92 - Declare the friends inline, as they are (VC++ crashes at link). 1999-10-12 16:37:34 +00:00
Sylvain Pion 4684c82ac0 - M$ also uses the "volatile" trick to flush to memory. 1999-10-12 16:11:46 +00:00
Sylvain Pion e3f9f6d62d - Special version of is_vali() for M$, because this "compiler" is not able to
produce correct fp comparisons.
1999-10-12 16:10:50 +00:00
Sylvain Pion 0e4c84e04a - Put overlap_action() private. 1999-10-11 18:29:09 +00:00
Sylvain Pion 904d142715 - Added sqrt().
- Put function friend, and removed member .d() -> ._d.
1999-10-11 18:23:38 +00:00
Sylvain Pion 8ec0009198 - CGAL_IA_SMALLEST and CGAL_IA_LARGEST are now macros to static consts.
It's cleaner.  Macros will be definitely replaced once it's tested.
1999-10-11 18:21:28 +00:00
Sylvain Pion fab9eca9d9 - Removed operator*(IA, double) and operator/(IA, double). They made a lot of
code for something not really worth it, IMHO.
1999-10-11 17:55:49 +00:00
Sylvain Pion 2071706d22 - Introduce typedef bound_t, and use it instead of double where appropriate. 1999-10-11 17:33:15 +00:00
Sylvain Pion e852335b70 - Made lots of functions friend, so that we don't have to call .inf() and
.sup(), but instead directly access ._inf and ._sup.
- Changed all "0" to "0.0".
1999-10-11 17:28:17 +00:00
Sylvain Pion 9d3d2d3720 - Removed passing by reference.
- Adding IO operators.
- Fixed operator==().
- Some formatting cleanups.
- Removed the copy constructors/assignment, they are indeed slower...
1999-10-11 15:11:10 +00:00
Sylvain Pion b4380ae7e3 - Use an internal typedef "Self".
- Rename "de" to "d".
1999-10-11 11:19:02 +00:00
Sylvain Pion 8f162d8784 - Wrapper around a double, with appropriate workarounds so that it's IEEE 754
compliant.
1999-10-11 11:11:34 +00:00
Sylvain Pion bbad316a7d - Removed useless parenthesis. 1999-10-10 16:33:50 +00:00
Sylvain Pion 4409028854 - Borland version of the rounding mode macros. 1999-10-10 14:58:06 +00:00
Sylvain Pion c5370e41ec - In case of crappy compiler, the workaround needs to specify with
"template <>" that it's a (total) specialization.
1999-10-10 13:49:02 +00:00
Sylvain Pion 233e4771a9 - Revert last change. 1999-10-10 13:47:45 +00:00
Sylvain Pion 2f06b32d55 - Define convert_to<> only if
CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION is also defined.
1999-10-10 13:47:34 +00:00
Sylvain Pion ba13d30c97 - Revert last change.
- Use convert_to if CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION is not
  defined either.
1999-10-10 13:46:44 +00:00
Sylvain Pion 96d1bac173 - Back out last change. 1999-10-10 13:45:48 +00:00
Sylvain Pion 74f9494032 - Replaced CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION
by       CGAL_CFG_MATCHING_BUG_2.
1999-10-10 12:28:21 +00:00
Sylvain Pion df5f80f4e9 - Comments added. 1999-10-10 11:51:36 +00:00