MCBooster  1.0.1
Tool to generate MC phase space samples in parallel.
strided_range< Iterator > Class Template Reference

Strided range iterator original code: https://github.com/thrust/thrust/blob/master/examples/strided_range.cu. More...

#include <strided_iterator.h>

+ Collaboration diagram for strided_range< Iterator >:

Classes

struct  stride_functor
 

Public Types

typedef thrust::iterator_difference< Iterator >::type difference_type
 
typedef thrust::counting_iterator< difference_typeCountingIterator
 
typedef thrust::transform_iterator< stride_functor, CountingIteratorTransformIterator
 
typedef thrust::permutation_iterator< Iterator, TransformIteratorPermutationIterator
 
typedef PermutationIterator iterator
 type of the strided_range iterator More...
 

Public Member Functions

 strided_range (Iterator first, Iterator last, difference_type stride)
 construct strided_range for the range [first,last) More...
 
iterator begin (void) const
 
iterator end (void) const
 

Protected Attributes

Iterator first
 
Iterator last
 
difference_type stride
 

Detailed Description

template<typename Iterator>
class strided_range< Iterator >

Definition at line 40 of file strided_iterator.h.

Member Typedef Documentation

template<typename Iterator>
typedef thrust::counting_iterator<difference_type> strided_range< Iterator >::CountingIterator

Definition at line 63 of file strided_iterator.h.

template<typename Iterator>
typedef thrust::iterator_difference<Iterator>::type strided_range< Iterator >::difference_type

Definition at line 44 of file strided_iterator.h.

template<typename Iterator>
typedef PermutationIterator strided_range< Iterator >::iterator

Definition at line 68 of file strided_iterator.h.

template<typename Iterator>
typedef thrust::permutation_iterator<Iterator, TransformIterator> strided_range< Iterator >::PermutationIterator

Definition at line 65 of file strided_iterator.h.

template<typename Iterator>
typedef thrust::transform_iterator<stride_functor, CountingIterator> strided_range< Iterator >::TransformIterator

Definition at line 64 of file strided_iterator.h.

Constructor & Destructor Documentation

template<typename Iterator>
strided_range< Iterator >::strided_range ( Iterator  first,
Iterator  last,
difference_type  stride 
)
inline

Definition at line 71 of file strided_iterator.h.

Member Function Documentation

template<typename Iterator>
iterator strided_range< Iterator >::begin ( void  ) const
inline

Definition at line 76 of file strided_iterator.h.

References strided_range< Iterator >::first, and strided_range< Iterator >::stride.

Referenced by strided_range< Iterator >::end().

+ Here is the caller graph for this function:

template<typename Iterator>
iterator strided_range< Iterator >::end ( void  ) const
inline

Definition at line 82 of file strided_iterator.h.

References strided_range< Iterator >::begin(), strided_range< Iterator >::first, strided_range< Iterator >::last, and strided_range< Iterator >::stride.

+ Here is the call graph for this function:

Member Data Documentation

template<typename Iterator>
Iterator strided_range< Iterator >::first
protected
template<typename Iterator>
Iterator strided_range< Iterator >::last
protected

Definition at line 89 of file strided_iterator.h.

Referenced by strided_range< Iterator >::end().

template<typename Iterator>
difference_type strided_range< Iterator >::stride
protected

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