Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
segment.hpp File Reference

Macros

#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS(Segment, Point, Index0, Index1)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_TEMPLATIZED(Segment, Index0, Index1)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_4VALUES(Segment, Point, Left, Bottom, Right, Top)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS(Segment, PointType)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS_TEMPLATIZED(Segment)
 
#define BOOST_GEOMETRY_REGISTER_SEGMENT(Segment, PointType, Index0, Index1)
 
#define BOOST_GEOMETRY_REGISTER_SEGMENT_TEMPLATIZED(Segment, Index0, Index1)
 
#define BOOST_GEOMETRY_REGISTER_SEGMENT_2D_4VALUES(Segment, PointType, Left, Bottom, Right, Top)
 

Macro Definition Documentation

#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS (   Segment,
  Point,
  Index0,
  Index1 
)
Value:
template <size_t D> \
struct indexed_access<Segment, min_corner, D> \
{ \
typedef typename coordinate_type<Point>::type ct; \
static inline ct get(Segment const& b) \
{ return geometry::get<D>(b. Index0); } \
static inline void set(Segment& b, ct const& value) \
{ geometry::set<D>(b. Index0, value); } \
}; \
template <size_t D> \
struct indexed_access<Segment, max_corner, D> \
{ \
typedef typename coordinate_type<Point>::type ct; \
static inline ct get(Segment const& b) \
{ return geometry::get<D>(b. Index1); } \
static inline void set(Segment& b, ct const& value) \
{ geometry::set<D>(b. Index1, value); } \
};
detail::set_initializer_type const set
Used to create character sets.
Definition: regex_primitives.hpp:513
typed_value< T > * value()
Creates a typed_value instance.
basic_streambuf< Allocator > & b
Definition: read.hpp:555
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_4VALUES (   Segment,
  Point,
  Left,
  Bottom,
  Right,
  Top 
)
Value:
template <> struct indexed_access<Segment, min_corner, 0> \
{ \
static inline ct get(Segment const& b) { return b. Left; } \
static inline void set(Segment& b, ct const& value) { b. Left = value; } \
}; \
template <> struct indexed_access<Segment, min_corner, 1> \
{ \
static inline ct get(Segment const& b) { return b. Bottom; } \
static inline void set(Segment& b, ct const& value) { b. Bottom = value; } \
}; \
template <> struct indexed_access<Segment, max_corner, 0> \
{ \
static inline ct get(Segment const& b) { return b. Right; } \
static inline void set(Segment& b, ct const& value) { b. Right = value; } \
}; \
template <> struct indexed_access<Segment, max_corner, 1> \
{ \
static inline ct get(Segment const& b) { return b. Top; } \
static inline void set(Segment& b, ct const& value) { b. Top = value; } \
};
int const max_corner
Index of maximum corner of the box.
Definition: access.hpp:37
detail::set_initializer_type const set
Used to create character sets.
Definition: regex_primitives.hpp:513
typed_value< T > * value()
Creates a typed_value instance.
int const min_corner
Index of minimum corner of the box.
Definition: access.hpp:34
basic_streambuf< Allocator > & b
Definition: read.hpp:555
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_TEMPLATIZED (   Segment,
  Index0,
  Index1 
)
Value:
template <typename P, size_t D> \
struct indexed_access<Segment<P>, min_corner, D> \
{ \
typedef typename coordinate_type<P>::type ct; \
static inline ct get(Segment<P> const& b) \
{ return geometry::get<D>(b. Index0); } \
static inline void set(Segment<P>& b, ct const& value) \
{ geometry::set<D>(b. Index0, value); } \
}; \
template <typename P, size_t D> \
struct indexed_access<Segment<P>, max_corner, D> \
{ \
typedef typename coordinate_type<P>::type ct; \
static inline ct get(Segment<P> const& b) \
{ return geometry::get<D>(b. Index1); } \
static inline void set(Segment<P>& b, ct const& value) \
{ geometry::set<D>(b. Index1, value); } \
};
int const max_corner
Index of maximum corner of the box.
Definition: access.hpp:37
detail::set_initializer_type const set
Used to create character sets.
Definition: regex_primitives.hpp:513
typed_value< T > * value()
Creates a typed_value instance.
int const min_corner
Index of minimum corner of the box.
Definition: access.hpp:34
basic_streambuf< Allocator > & b
Definition: read.hpp:555
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS (   Segment,
  PointType 
)
Value:
template<> struct tag<Segment > { typedef segment_tag type; }; \
template<> struct point_type<Segment > { typedef PointType type; };
boost_foreach_argument_dependent_lookup_hack tag
Definition: foreach_fwd.hpp:31
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS_TEMPLATIZED (   Segment)
Value:
template<typename P> struct tag<Segment<P> > { typedef segment_tag type; }; \
template<typename P> struct point_type<Segment<P> > { typedef P type; };
boost_foreach_argument_dependent_lookup_hack tag
Definition: foreach_fwd.hpp:31
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_REGISTER_SEGMENT (   Segment,
  PointType,
  Index0,
  Index1 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS(Segment, PointType, Index0, Index1) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS(Segment, PointType)
Definition: segment.hpp:93
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS(Segment, Point, Index0, Index1)
Definition: segment.hpp:22
#define BOOST_GEOMETRY_REGISTER_SEGMENT_2D_4VALUES (   Segment,
  PointType,
  Left,
  Bottom,
  Right,
  Top 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_4VALUES(Segment, PointType, Left, Bottom, Right, Top) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS(Segment, PointType)
Definition: segment.hpp:93
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_4VALUES(Segment, Point, Left, Bottom, Right, Top)
Definition: segment.hpp:64
#define BOOST_GEOMETRY_REGISTER_SEGMENT_TEMPLATIZED (   Segment,
  Index0,
  Index1 
)
Value:
namespace boost { namespace geometry { namespace traits { \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_TRAITS_TEMPLATIZED(Segment)
Definition: segment.hpp:97
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_SEGMENT_ACCESS_TEMPLATIZED(Segment, Index0, Index1)
Definition: segment.hpp:43