Sylvain Pion
1a25f67f07
- Use CGAL_IA_STOP_CPROP() in the ctors.
1999-07-13 13:35:33 +00:00
Sylvain Pion
e21bb0d4fd
- Removed obsolete member functions {lower|upper}_bound().
1999-06-27 15:55:24 +00:00
Sylvain Pion
ad2a5f5bc4
- Make number_type_tag() take a const & as argument.
1999-06-23 14:48:20 +00:00
Sylvain Pion
b3a2ef6ed9
- Moved operator<< and operator>> to libCGAL, no inline anymore.
1999-06-23 11:22:11 +00:00
Sylvain Pion
bed589241e
- sqrt(): moved CGAL_IA_FORCE_TO_DOUBLE() deeper.
1999-05-07 11:15:39 +00:00
Sylvain Pion
60588365dc
- Moved operator/ (double, Interval_nt), because could not be inlined.
1999-05-04 16:03:55 +00:00
Sylvain Pion
308e05b1ec
- Added (currently disabled) code to stop constant propagation inside the
...
constructors.
1999-05-04 15:51:33 +00:00
Sylvain Pion
b08fa90fda
- Removed operator+ (double) and operator- (double).
...
- Added some rounding mode check (when CGAL_IA_DEBUG) where needed.
- Added some operator?? (double, Interval_nt) so that the rounding mode is ok.
1999-05-04 12:08:33 +00:00
Sylvain Pion
947f394b1c
- Fixed a bug in the division code !!!???!!!
...
- Added operator/ (const double d, const Interval_nt & t).
- Removed useless () around boolean tests.
1999-05-04 09:38:11 +00:00
Sylvain Pion
7edafed41a
- Introduced the macro CGAL_IA_FORCE_TO_DOUBLE() to work around a Intel
...
processor "feature" that breaks the interval computation when there is
underflow or overflow (the exponent of the FP registers a larger than those
of doubles).
1999-05-03 16:07:14 +00:00
Sylvain Pion
815ee80905
- unsafe_comparison is a type, not an object.
1999-04-20 13:07:51 +00:00
Sylvain Pion
09829b6da4
- Tried workaround for MipsPro based on convert_from_to() and
...
CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.
1999-04-13 15:49:17 +00:00
Sylvain Pion
a7cd3afe15
- Removed commented include headers.
...
- Made overlap_action return void, and modify the calling functions
accordingly.
- Removed all friend functions, and replaced them using .inf() and .sup(), so
that they don't need to be friend anymore (this should even make SunPro 5.0
happy).
1999-04-01 14:10:22 +00:00
Sylvain Pion
21b93bb834
- to_double, is_valid, is_finite, sign, compare do not need to be friend
...
functions anymore, and they are not defined twice for the 2 classes.
- they use .inf() and .sup() to access the data members.
- overlap_action is now public.
1999-04-01 10:15:12 +00:00
Sylvain Pion
fec6af0b1c
- Changed .inf to ._inf, same for sup.
...
- Added .inf() and .sup().
1999-04-01 08:58:51 +00:00
Sylvain Pion
e036bf3979
- Include files changes.
1999-04-01 08:43:16 +00:00
Sylvain Pion
f7eb5d551c
- Added std:: for the iostrem functions.
1999-03-26 17:32:36 +00:00
Sylvain Pion
496f9e4b57
- Replaced call of max<double>() to std::max.
1999-03-19 20:00:31 +00:00
Sylvain Pion
2aa2e5c7ae
- Added a static data member "number_of_failures".
1999-03-12 16:52:58 +00:00
Sylvain Pion
0bd1826da5
- Moved a few #define in _FPU.h.
...
- Introduced the new FPU_get_cw() and FPU_set_cw().
1999-03-12 14:54:37 +00:00
Sylvain Pion
5e9d7ec2e4
- Comments.
1999-03-11 15:19:05 +00:00
Sylvain Pion
29ee98b567
- STORAGE CHANGED: "inf" now stores the lower bound, not the opposite anymore.
...
- => lots of "-" removals around the code. Things are a LOT cleaner now,
though probably slightly (<5%) slower. Optimizing the compiler might be a
good idea now.
- Added #include <CGAL/config.h> for CGAL_BEGIN_NAMESPACE.
- Replaced the static member constants by #defines, because the link fails
otherwise (multiply defined symbols), and I _want_ constant propagation.
CGAL_IA_MIN_DOUBLE, CGAL_IA_MAX_DOUBLE, CGAL_IA_SMALLEST, CGAL_IA_LARGEST
1999-03-04 17:42:06 +00:00
Sylvain Pion
48e0e74899
- Replaced sqrt (double) by std::sqrt.
1999-03-04 17:32:59 +00:00
Sylvain Pion
374430045a
- Reformating.
1999-03-04 14:50:21 +00:00
Sylvain Pion
d24e34bf46
- New member function .is_point() {return (inf == sup);}.
1999-03-03 09:46:43 +00:00
Sylvain Pion
f69b19e8ea
- Some reformating
...
- Added operators || (union) and && (intersection).
1999-03-03 09:43:34 +00:00
Sylvain Pion
6601da2073
- Introduced namespace CGAL.
1999-02-19 17:17:07 +00:00
Sylvain Pion
20f1a15273
- Standard header <iostream>.
...
- Added operators (double, IA) for +,-,*,/,<,>...
- Changed PRECONDITION to ASSERTION.
- Default constructor is the buggy interval [1;-1] to detect use before
definition in the user's code.
- Fine-tuned the multiplication (once again :).
- Same for division.
- Various code looking clean up.
- Removed a useless test in CGAL_sign()'s equality case.
- About the same for CGAL_compare().
1999-02-19 15:04:17 +00:00
Sylvain Pion
eb271e36dd
- += and -= rely on + and -, no redefinition (it was for speed, but...).
...
- Added conditional include for Quotient<>.
1999-02-04 13:25:13 +00:00
Sylvain Pion
f4213551e7
- moved conditionnal include lines at the beginning.
1999-01-19 16:17:36 +00:00
Sylvain Pion
8ac8cdf045
- Use CGAL_square<double>(), it's here now.
1999-01-05 19:14:32 +00:00
Sylvain Pion
5464c1b10d
- Fixed bug in CGAL_square(): -a*a -> a*-a.
1998-12-23 12:18:50 +00:00
Sylvain Pion
6f0cf1d2f7
- CGAL_square(double) doesn't exist yet.
1998-12-22 12:51:17 +00:00
Sylvain Pion
34f5af32c1
- Replace the expensive checks by the flag CGAL_IA_DEBUG.
1998-12-22 12:40:01 +00:00
Sylvain Pion
8924234ce8
- Added CGAL_square() for both types.
...
- Rewrote the header of each function in a new style.
1998-12-17 17:37:54 +00:00
Sylvain Pion
3443c802fa
- Added lots of preconditions on the rounding mode.
1998-12-13 17:38:37 +00:00
Sylvain Pion
632645e683
- line too long fixed.
1998-12-11 11:47:01 +00:00
Sylvain Pion
f82270de10
- #include <CGAL/misc.h> for CGAL_convert_to<>().
1998-12-10 16:06:12 +00:00
Sylvain Pion
d1bb64cb4a
- Moved the CGAL_convert_to<>() general template here.
...
(will be in kernel_basic.h normally).
1998-12-08 17:16:34 +00:00
Sylvain Pion
6e8540613c
- Renamed CGAL_to_Interval_nt*() to CGAL_convert_to<CGAL_Interval_nt*>().
1998-12-08 13:13:42 +00:00
Sylvain Pion
2ba0dea489
- Added member function bool overlap(const IA &d).
...
- Added flag CGAL_IA_NO_EXCEPTION, which prevents throwing.
1998-12-05 16:28:17 +00:00
Sylvain Pion
65df7a8b81
- Added forgottent definition of CGAL_to_double(IA_nt).
...
- Added istream operator>>(IA) (via a double).
1998-12-01 16:39:56 +00:00
Sylvain Pion
10afe69c95
Added conditionnal #include directive for IA/IA_Fixed.h.
1998-12-01 12:54:55 +00:00
Sylvain Pion
ffc2b7df51
Added CGAL_number_type_tag()
1998-12-01 12:51:38 +00:00
Sylvain Pion
4913337b50
CGAL_io_tag() added.
1998-11-30 16:03:59 +00:00
Sylvain Pion
a4c088ca00
- Changed again the semantic of sqrt() when negative.
...
- Made static const members for largest and smallest.
- Declared the values of {min,max}_double outside => CC accepts it now.
1998-11-25 16:38:40 +00:00
Sylvain Pion
e4b1b35ce4
- Added double member constants "min_double" and "max_double".
...
- Added global constants CGAL_Interval_smallest and CGAL_Interval_largest.
- Added a template for CGAL_to_Interval_nt() and a specialisation for doubles.
1998-11-23 15:19:19 +00:00
Sylvain Pion
1c9b971740
Use more "typedef CGAL_Interval_nt IA".
1998-11-18 16:39:59 +00:00
Sylvain Pion
d5273396c5
sqrt() semantic has changed.
1998-11-18 16:30:30 +00:00
Sylvain Pion
2d75f4a70f
- Passing "double" instead of "double &" seems faster, so I changed all
...
concerned function prototypes.
- Moved ctor def CGAL_Interval_nt(const CGAL_Interval_nt_advanced &d) at the
beginning of the class body so that it can be inlined.
- Redefined (grrr) friends CGAL_{abs,sign, compare, min...} for
CGAL_Interval_nt.
- overlap_action() should maybe be redefined for CGAL_Interval_nt, but this
should use a virtual function, so the code is ready, but I need the first
benchmarks to activate it.
- New (undocumented for the moment) member function is_same() that does a
"deep compare" (test equality of both bounds of 2 intervals).
- commented out the friendlyness of operator* (const double, const IA &).
1998-11-12 16:10:42 +00:00
Sylvain Pion
04810e2dc4
- Added "typedef CGAL_Interval_nt IA;", and done some substitutions.
1998-11-05 15:22:10 +00:00
Sylvain Pion
b1b92487d7
- Added specializations for the functions CGAL_{sign,compare,abs,min,max}.
...
- overlap_action() returns an int(0), to shut up compiler, and provide
a default answer, when we don't want the exception.
- The test operators now "return overlap_action();".
- One test less in operator==().
1998-11-05 14:28:18 +00:00
Sylvain Pion
872c4c7fe1
Changed member functions is_valid() and is_finite() to be non member functions
...
CGAL_is_valid(IA) and CGAL_is_finite(IA).
1998-10-30 12:22:37 +00:00
Sylvain Pion
fd6727c9a8
CGAL_to_interval_nt(double) now returns an IA_advanced.
1998-10-28 17:20:41 +00:00
Sylvain Pion
6256a74fa0
New empty member class unsafe_comparison.
...
New private function overlap_action(), that throws the above exception, when
comparing unsafely. CGAL_IA_DONT_THROW_EXCEPTION defines the behaviour at
compile time.
1998-10-26 13:41:00 +00:00
Sylvain Pion
f979f9578a
Bump for 2.3: small cleanup.
1998-10-23 08:53:48 +00:00
Sylvain Pion
5a2090bde6
Changed "class" to "struct".
...
Put the cast "IA_advanved -> IA" private.
Put the 2 doubles at the top of the definition.
1998-10-22 13:23:12 +00:00
Sylvain Pion
7fa30708d0
Added for the 2 classes, the 2 operators: *(IA, double) and *(double, IA).
1998-10-21 16:51:40 +00:00
Sylvain Pion
814447927d
- operator<< doesn't need to be a friend function anymore.
...
- using the GNU extension optimization "Named return value".
- new protected function verify_overlap() (to clean up the comparison
functions codes).
- operator*() and operator/() are outside the class body, so they can be made
not inlined.
1998-10-20 13:42:32 +00:00
Sylvain Pion
4f8701d25b
2 small comments added.
1998-10-16 14:30:50 +00:00
Sylvain Pion
60476ef3cf
CGAL_Interval_nt operator-() needed to be defined...
1998-10-15 15:59:55 +00:00
Sylvain Pion
4fd875f2c2
Fixed (duplicate code...) the CGAL_interval_nt operator?=().
1998-10-15 15:36:31 +00:00
Sylvain Pion
bfc9ee9ef3
Put the operators' code outside the class body.
...
Made operator<<() a friend function, with const argument.
1998-10-15 11:58:32 +00:00
Sylvain Pion
7bd25e7203
- Changed the default constructor to empty, instead of initializing to 0.
...
- Corrected is_valid() when inf = sup.
1998-10-02 11:14:06 +00:00
Sylvain Pion
f798ba6488
Fixed sqrt() so that it passes the test-suite (it was correct though).
1998-10-02 11:06:25 +00:00
Sylvain Pion
3618f393e7
Speeded up a bit CGAL_Interval_nt, by removing spurious constructors.
1998-09-25 11:52:28 +00:00
Sylvain Pion
566b72d63e
Removed useless "inline"s in the class definition.
...
Removed old commented code.
1998-09-23 15:42:32 +00:00
Sylvain Pion
c8b319f9aa
Removed useless and time consuming copy constructors.
1998-09-11 17:55:48 +00:00
Sylvain Pion
d3189c9f27
"lines over 80 characters" problem fixed.
1998-08-18 07:20:47 +00:00
Sylvain Pion
efc75b318b
Updated to 2.0.
1998-08-17 15:33:36 +00:00
Sylvain Pion
ef69b25cc3
Use keyword substitution in the headers.
1998-08-17 13:57:58 +00:00
Sylvain Pion
243f7f40fc
Changed subdirectory name IA -> Interval_arithmetic
1998-08-14 13:54:04 +00:00
Sylvain Pion
911bf9f945
The e-mail of the coordinator changed from Herve to Mariette.
1998-08-14 13:29:37 +00:00
Sylvain Pion
abf8645805
This commit was generated by cvs2svn to compensate for changes in r425,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:46:12 +00:00
Sylvain Pion
b77af23941
This commit was generated by cvs2svn to compensate for changes in r423,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:33:46 +00:00
Sylvain Pion
f6e708c35f
This commit was generated by cvs2svn to compensate for changes in r421,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:33:29 +00:00
Sylvain Pion
ff2e669c3e
This commit was generated by cvs2svn to compensate for changes in r419,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:33:02 +00:00
Sylvain Pion
d76b1fdd02
This commit was generated by cvs2svn to compensate for changes in r417,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:32:48 +00:00
Sylvain Pion
fc9c84c747
This commit was generated by cvs2svn to compensate for changes in r415,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:32:31 +00:00
Sylvain Pion
929ec3f994
This commit was generated by cvs2svn to compensate for changes in r413,
...
which included commits to RCS files with non-trunk default branches.
1998-08-14 11:31:56 +00:00
Sylvain Pion
e761721edd
Initial revision
1998-08-14 11:31:15 +00:00