tbb::blocked_range< Value > Class Template Reference
Algorithms

A range over which to iterate. More...

`#include <blocked_range.h>`

## Public Types

typedef Value | const_iterator
| Type of a value. More...
typedef std::size_t | size_type
| Type for size of a range.

## Public Member Functions

| blocked_range ()
| Construct range with default-constructed values for begin and end. More...
| blocked_range (Value begin_, Value end_, size_type grainsize_=1)
| Construct range over half-open interval [begin,end), with the given grainsize.
const_iterator | begin () const
| Beginning of range.
const_iterator | end () const
| One past last value in range.
size_type | size () const
| Size of the range. More...
size_type | grainsize () const
| The grain size for this range.
bool | empty () const
| True if range is empty.
bool | is_divisible () const
| True if range is divisible. More...
| blocked_range (blocked_range &r, split)
| Split range. More...
| blocked_range (blocked_range &r, proportional_split &proportion)
| Split range. More...

## Static Public Attributes

static const bool | is_splittable_in_proportion = true
| Static field to support proportional split.

## Friends

template<typename RowValue , typename ColValue >
class | blocked_range2d
template<typename RowValue , typename ColValue , typename PageValue >
class | blocked_range3d

## Detailed Description

### template<typename Value>
class tbb::blocked_range< Value >

A range over which to iterate.

## Member Typedef Documentation

template<typename Value>

typedef Value tbb::blocked_range< Value >::const_iterator

Type of a value.

Called a const_iterator for sake of algorithms that need to treat a blocked_range as an STL container.

## Constructor & Destructor Documentation

template<typename Value>

tbb::blocked_range< Value >::blocked_range | ( | ) |  |

inline

Construct range with default-constructed values for begin and end.

Requires that Value have a default constructor.

template<typename Value>

tbb::blocked_range< Value >::blocked_range | ( | blocked_range< Value > & | r,
|  | split |
| ) |  |

inline

Split range.

The new Range *this has the second part, the old range r has the first part. Unspecified if end()<begin() or !is_divisible().

template<typename Value>

tbb::blocked_range< Value >::blocked_range | ( | blocked_range< Value > & | r,
|  | proportional_split & | proportion
| ) |  |

inline

Split range.

The new Range *this has the second part split according to specified proportion, the old range r has the first part. Unspecified if end()<begin() or !is_divisible().

## Member Function Documentation

template<typename Value>

bool tbb::blocked_range< Value >::is_divisible | ( | ) |  | const

inline

True if range is divisible.

Unspecified if end()<begin().

Referenced by tbb::blocked_range2d< RowValue, ColValue >::is_divisible(), and tbb::blocked_range3d< PageValue, RowValue, ColValue >::is_divisible().

template<typename Value>

size_type tbb::blocked_range< Value >::size | ( | ) |  | const

inline

Size of the range.

Unspecified if end()<begin().

Referenced by tbb::blocked_range< I >::is_divisible().

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

- blocked_range.h

Copyright © 2005-2015 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.