Use CGAL_STATIC_THREAD_LOCAL_VARIABLE

This commit is contained in:
Andreas Fabri 2018-02-19 17:32:21 +00:00
parent 47d1840b29
commit d5523f80c0
3 changed files with 11 additions and 7 deletions

View File

@ -102,7 +102,7 @@ protected:
*/
inline static const Direction_3& neg_pole()
{
static const Direction_3 d(0, 0, -1);
CGAL_STATIC_THREAD_LOCAL_VARIABLE_3(Direction_3, d, 0, 0, -1);
return d;
}
@ -114,11 +114,13 @@ protected:
inline static const Direction_2& identification_xy()
{
#if (CGAL_IDENTIFICATION_XY == CGAL_X_MINUS_1_Y_0)
static const Direction_2 d(-1, 0);
CGAL_STATIC_THREAD_LOCAL_VARIABLE_2(Direction_2, d, -1, 0);
#elif (CGAL_IDENTIFICATION_XY == CGAL_X_MINUS_8_Y_6)
static const Direction_2 d(-8, 6);
CGAL_STATIC_THREAD_LOCAL_VARIABLE_2(Direction_2, d, -8, 6);
#elif (CGAL_IDENTIFICATION_XY == CGAL_X_MINUS_11_Y_7)
static const Direction_2 d(-11, 7);
CGAL_STATIC_THREAD_LOCAL_VARIABLE_2(Direction_2, d, -11, 7);
#else
#error CGAL_IDENTIFICATION_XY is not defined
#endif

View File

@ -38,6 +38,7 @@
#include <CGAL/Cone_spanners_2/Less_by_direction_2.h>
#include <CGAL/Cone_spanners_2/Plane_scan_tree.h>
#include <CGAL/Cone_spanners_enum_2.h>
#include <CGAL/tss.h>
#include <boost/config.hpp>
#include <boost/graph/adjacency_list.hpp>
@ -192,8 +193,8 @@ protected:
Direction_2 bisector_direction = bisector(cwLine, ccwLine).direction();
// Rotational transformation of cw 90 degree
static const Transformation cw90( 0, 1, -1, 0);
CGAL_STATIC_THREAD_LOCAL_VARIABLE_4(Transformation, cw90, 0, 1, -1, 0);
// Ordering
// here D1 is the reverse of D1 in the book, we find this is easier to implement
const Less_by_direction orderD1 (g, ccwBound);

View File

@ -46,6 +46,7 @@
#include <CGAL/Polynomial/sturm_habicht_sequence.h>
#include <CGAL/boost/iterator/transform_iterator.hpp>
#include <CGAL/tss.h>
#define CGAL_POLYNOMIAL_TRAITS_D_BASE_TYPEDEFS \
@ -703,7 +704,7 @@ public:
: public CGAL::binary_function<Polynomial_d, int, Coefficient_type > {
const Coefficient_type& operator()( const Polynomial_d& p, int i) const {
static const Coefficient_type zero = Coefficient_type(0);
CGAL_STATIC_THREAD_LOCAL_VARIABLE(Coefficient_type, zero, 0);
CGAL_precondition( i >= 0 );
typename PT::Degree degree;
if( i > degree(p) )