libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
thread_dsel_types.hpp File Reference
#include "../../core/config.h"
#include <boost/bind/bind.hpp>
#include <numeric>
#include <type_traits>
Include dependency graph for thread_dsel_types.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::cliques
 A modifier that enables dividing the thread_pool into a number of equal-sized cliques of pool_threads. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)() const >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)()>
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)(Res &) const >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)(Res &)>
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)(Res &, CFGP const &) const >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority::work< TPB, Pri, void(__fastcall Wk::*)(Res &, CFGP const &)>
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::parallel_algorithm< Alg >
 The parallel algorithms inherits from this to assist with implementing the cliques_t language element in the DSEL. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::wrap_boost_bind_t< BindFn >
 A wrapper for converting a boost::bind() unspecified-object into an object suitable for transferring into a thread_pool. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::wrap_std_bind_t< BindFn >
 A wrapper for converting a boost::bind() unspecified-object into an object suitable for transferring into a thread_pool. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::priority_t< joinable_t, TPB, Pri >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::priority_t< nonjoinable_t, TPB, Pri >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::cliques_t< joinable_t< TPB > >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::cliques_t< nonjoinable_t< TPB > >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::joinable_t< TPB >
 A modifier to allow joinably transferring the work to the pool. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::nonjoinable_t< TPB >
 A modifier to allow non-joinably transferring the work to the pool. More...
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::nonjoinable_buff_t< TPB >
 

Namespaces

namespace  jmmcg
 Link with -lrt to include these functions.
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd
 Parallel Pixie Dust or PPD is the name of the thread library within libjmmcg.
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::kernel_priority