C++ Library Extensions 2022.12.09
To help learn modern C++ programming
tpf_split_ranges.hpp File Reference
#include <tpf_types.hpp>
#include <iostream>
#include <iomanip>
#include <locale>
#include <sstream>
#include <thread>
#include <functional>
#include <future>
#include <utility>
Include dependency graph for tpf_split_ranges.hpp:

Go to the source code of this file.

Namespaces

namespace  tpf
 Includes subnamespace conversion.
 
namespace  tpf::split_range
 

Macros

#define NOMINMAX
 

Typedefs

template<typename T >
using tpf::split_range::range = std::pair< T, T >
 
typedef range< size_t > tpf::split_range::range_t
 
template<typename T >
using tpf::split_range::rngvctr = std::deque< range< T > >
 
typedef rngvctr< size_t > tpf::split_range::range_vctr_t
 

Functions

template<typename T >
std::string tpf::split_range::display_range (const range< T > &rg, bool thousands=true)
 
template<typename T >
rngvctr< T > tpf::split_range::split_range_count (T st, T ed, T count=(T)(-1))
 
template<typename T >
rngvctr< T > tpf::split_range::split_range_span (T st, T ed, T min_span=(T)(-1))
 
template<typename T >
std::string tpf::split_range::display_ranges (const rngvctr< T > &rngs, int width=9, bool thousands=true)
 
size_t tpf::split_range::cpu_thread_count () noexcept
 
template<typename T >
rngvctr< T > tpf::split_range::split_range_half (T st, T ed)
 
template<typename RangeType , typename BinOperation , typename SumupOperation , typename = std::enable_if_t<tpf::types::is_integer_v<RangeType>>>
auto tpf::split_range::parallel_reduce (RangeType start, RangeType end, BinOperation &&bin_opr, SumupOperation &&sumup, size_t use_thread_count=tpf::InvalidIndex)
 
template<typename ContainerType , typename BinOperation , typename SumupOperation , typename = tpf::types::enable_if_container_type_t<ContainerType>>
auto tpf::split_range::parallel_reduce (ContainerType &&container, BinOperation &&bin_opr, SumupOperation &&sumup, size_t use_thread_count=tpf::InvalidIndex)
 

Macro Definition Documentation

◆ NOMINMAX

#define NOMINMAX

Definition at line 11 of file tpf_split_ranges.hpp.