A helper class to divide a range into blocks. Used by parallelize_loop() and push_loop().  
 More...
#include <BS_thread_pool.hpp>
|  | 
|  | blocks (const T1 first_index_, const T2 index_after_last_, const size_t num_blocks_) | 
|  | Construct a blocks object with the given specifications.  More... 
 | 
|  | 
| T | start (const size_t i) const | 
|  | Get the first index of a block.  More... 
 | 
|  | 
| T | end (const size_t i) const | 
|  | Get the index after the last index of a block.  More... 
 | 
|  | 
| size_t | get_num_blocks () const | 
|  | Get the number of blocks. Note that this may be different than the desired number of blocks that was passed to the constructor.  More... 
 | 
|  | 
| size_t | get_total_size () const | 
|  | Get the total number of indices in the range.  More... 
 | 
|  | 
template<typename T1, typename T2, typename T = std::common_type_t<T1, T2>>
class BS::blocks< T1, T2, T >
A helper class to divide a range into blocks. Used by parallelize_loop() and push_loop(). 
- Template Parameters
- 
  
    | T1 | The type of the first index in the range. Should be a signed or unsigned integer. |  | T2 | The type of the index after the last index in the range. Should be a signed or unsigned integer. If T1 is not the same as T2, a common type will be automatically inferred. |  | T | The common type of T1 and T2. |  
 
◆ blocks()
  
  | 
        
          | blocks | ( | const T1 | first_index_, |  
          |  |  | const T2 | index_after_last_, |  
          |  |  | const size_t | num_blocks_ |  
          |  | ) |  |  |  | inline | 
 
Construct a blocks object with the given specifications. 
- Parameters
- 
  
    | first_index_ | The first index in the range. |  | index_after_last_ | The index after the last index in the range. |  | num_blocks_ | The desired number of blocks to divide the range into. |  
 
 
 
◆ end()
  
  | 
        
          | T end | ( | const size_t | i | ) | const |  | inline | 
 
Get the index after the last index of a block. 
- Parameters
- 
  
  
- Returns
- The index after the last index. 
 
 
◆ get_num_blocks()
  
  | 
        
          | size_t get_num_blocks | ( |  | ) | const |  | inline | 
 
Get the number of blocks. Note that this may be different than the desired number of blocks that was passed to the constructor. 
- Returns
- The number of blocks. 
 
 
◆ get_total_size()
  
  | 
        
          | size_t get_total_size | ( |  | ) | const |  | inline | 
 
Get the total number of indices in the range. 
- Returns
- The total number of indices. 
 
 
◆ start()
  
  | 
        
          | T start | ( | const size_t | i | ) | const |  | inline | 
 
Get the first index of a block. 
- Parameters
- 
  
  
- Returns
- The first index. 
 
 
The documentation for this class was generated from the following file: