libcuspatial  24.02.00
All Classes Files Functions Variables Enumerations Friends Macros Modules Pages
Public Member Functions | Protected Attributes | List of all members
cuspatial::polygon_ref< RingIterator, VecIterator > Class Template Reference

Represent a reference to a polygon stored in a structure of arrays. More...

Public Member Functions

CUSPATIAL_HOST_DEVICE polygon_ref (RingIterator ring_begin, RingIterator ring_end, VecIterator point_begin, VecIterator point_end)
 
CUSPATIAL_HOST_DEVICE auto num_rings () const
 Return the number of rings in the polygon.
 
CUSPATIAL_HOST_DEVICE auto size () const
 Return the number of rings in the polygon.
 
CUSPATIAL_HOST_DEVICE auto ring_begin () const
 Return iterator to the first ring of the polygon.
 
CUSPATIAL_HOST_DEVICE auto ring_end () const
 Return iterator to one past the last ring.
 
CUSPATIAL_HOST_DEVICE auto point_begin () const
 Return iterator to the first point of the polygon.
 
CUSPATIAL_HOST_DEVICE auto point_end () const
 Return iterator to one past the last point.
 
CUSPATIAL_HOST_DEVICE auto begin () const
 Return iterator to the first ring of the polygon.
 
CUSPATIAL_HOST_DEVICE auto end () const
 Return iterator to one past the last ring.
 
template<typename IndexType >
CUSPATIAL_HOST_DEVICE auto ring (IndexType ring_idx) const
 Return the ring_idxth ring in the polygon.
 

Protected Attributes

RingIterator _ring_begin
 
RingIterator _ring_end
 
VecIterator _point_begin
 
VecIterator _point_end
 

Detailed Description

template<typename RingIterator, typename VecIterator>
class cuspatial::polygon_ref< RingIterator, VecIterator >

Represent a reference to a polygon stored in a structure of arrays.

Template Parameters
VecIteratortype of iterator to the underlying point array.

Definition at line 28 of file polygon_ref.cuh.

Member Function Documentation

◆ begin()

template<typename RingIterator , typename VecIterator >
CUSPATIAL_HOST_DEVICE auto cuspatial::polygon_ref< RingIterator, VecIterator >::begin ( ) const
inline

Return iterator to the first ring of the polygon.

Definition at line 52 of file polygon_ref.cuh.

◆ end()

template<typename RingIterator , typename VecIterator >
CUSPATIAL_HOST_DEVICE auto cuspatial::polygon_ref< RingIterator, VecIterator >::end ( ) const
inline

Return iterator to one past the last ring.

Definition at line 54 of file polygon_ref.cuh.

◆ size()

template<typename RingIterator , typename VecIterator >
CUSPATIAL_HOST_DEVICE auto cuspatial::polygon_ref< RingIterator, VecIterator >::size ( ) const
inline

Return the number of rings in the polygon.

Definition at line 39 of file polygon_ref.cuh.

Member Data Documentation

◆ _point_begin

template<typename RingIterator , typename VecIterator >
VecIterator cuspatial::polygon_ref< RingIterator, VecIterator >::_point_begin
protected

Definition at line 63 of file polygon_ref.cuh.

◆ _point_end

template<typename RingIterator , typename VecIterator >
VecIterator cuspatial::polygon_ref< RingIterator, VecIterator >::_point_end
protected

Definition at line 64 of file polygon_ref.cuh.

◆ _ring_begin

template<typename RingIterator , typename VecIterator >
RingIterator cuspatial::polygon_ref< RingIterator, VecIterator >::_ring_begin
protected

Definition at line 61 of file polygon_ref.cuh.

◆ _ring_end

template<typename RingIterator , typename VecIterator >
RingIterator cuspatial::polygon_ref< RingIterator, VecIterator >::_ring_end
protected

Definition at line 62 of file polygon_ref.cuh.


The documentation for this class was generated from the following file: