libjmmcg  build_2783
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr > Struct Template Referencefinal

Some classes used as short-hands. More...

#include <thread_pool_aspects.hpp>

Inheritance diagram for jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >:
[legend]
Collaboration diagram for jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >:
[legend]

Public Types

typedef private_::closure::algo_thread_wk< os_traits, ThrW, WFlg, Del, AtCtr, cfg_typebase_t
 
typedef base_t::closure_t closure_t
 
typedef base_t::work_complete_t work_complete_t
 
typedef base_t::cfg_details_type cfg_details_type
 
- Public Types inherited from jmmcg::ppd::private_::closure::algo_thread_wk< os_traits, ThrW, WFlg, Del, AtCtr, cfg_type >
typedef thread_wk_async_t< generic_traits::return_data::joinable, os_traits, Del, AtCtr, cfg_typebase_t
 
typedef base_t::os_traits os_traits
 
typedef base_t::lock_traits lock_traits
 
typedef base_t::cfg_type cfg_type
 
typedef base_t::cfg_details_type cfg_details_type
 
typedef WFlg work_complete_t
 This atomic object is the object that is used to signal to a waiting future that the work has been completed. More...
 
typedef ThrW closure_t
 This is the binding of the input data to the mutator, with a representation of the output type. i.e. a closure. More...
 

Public Member Functions

 algo_thread_wk (work_complete_t &w, typename closure_t::argument_type &&tw, typename cfg_details_type::params const &p) FORCE_INLINE
 
 ~algo_thread_wk () noexcept(true) FORCE_INLINE
 
- Public Member Functions inherited from jmmcg::ppd::private_::closure::algo_thread_wk< os_traits, ThrW, WFlg, Del, AtCtr, cfg_type >
__stdcall algo_thread_wk (work_complete_t &w, typename closure_t::argument_type &&tw, typename cfg_details_type::params const &p) FORCE_INLINE
 
 ~algo_thread_wk () noexcept(true) FORCE_INLINE
 
bool operator< (typename base_t::base_t const &cw) const noexcept(true) override FORCE_INLINE
 
bool __fastcall operator< (algo_thread_wk const &ctw) const noexcept(true) FORCE_INLINE
 
closure_t &__fastcall closure () noexcept(true) FORCE_INLINE
 
const closure_t &__fastcall closure () const noexcept(true) FORCE_INLINE
 
const os_traits::thread_exception &__fastcall exception_thrown_in_thread () const noexcept(true) override FORCE_INLINE
 
void throw_any_exception () const noexcept(false) override FORCE_INLINE
 
work_complete_t *__fastcall work_complete () noexcept(true) final override FORCE_INLINE
 
void update_edge (typename cfg_type::node_property_t::value_type const e_details) noexcept(false) override FORCE_INLINE
 
void __fastcall process_joinable (typename cfg_type::node_property_t::value_type const e_details) noexcept(false) override FORCE_INLINE
 
void __fastcall process_nonjoinable (typename cfg_type::node_property_t::value_type const e_details) noexcept(false) override FORCE_INLINE
 
void resize_output (typename work_complete_t::containers_type::size_type const out_colln_size) noexcept(false) FORCE_INLINE
 
tstring __fastcall to_string () const noexcept(false) override
 

Detailed Description

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl, template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW, class WFlg, template< class > class Del, template< class > class AtCtr>
struct jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >

Some classes used as short-hands.

Definition at line 734 of file thread_pool_aspects.hpp.

Member Typedef Documentation

◆ base_t

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
typedef private_::closure::algo_thread_wk<os_traits, ThrW, WFlg, Del, AtCtr, cfg_type> jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::base_t

Definition at line 735 of file thread_pool_aspects.hpp.

◆ cfg_details_type

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
typedef base_t::cfg_details_type jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::cfg_details_type

Definition at line 738 of file thread_pool_aspects.hpp.

◆ closure_t

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
typedef base_t::closure_t jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::closure_t

Definition at line 736 of file thread_pool_aspects.hpp.

◆ work_complete_t

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
typedef base_t::work_complete_t jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::work_complete_t

Definition at line 737 of file thread_pool_aspects.hpp.

Constructor & Destructor Documentation

◆ algo_thread_wk()

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::algo_thread_wk ( work_complete_t w,
typename closure_t::argument_type &&  tw,
typename cfg_details_type::params const &  p 
)
inline

Definition at line 740 of file thread_pool_aspects.hpp.

◆ ~algo_thread_wk()

template<generic_traits::return_data RD, generic_traits::api_type API, typename Mdl , template< class, template< class > class, class, unsigned long, template< class > class > class PM, template< class > class Comp = private_::no_op, unsigned long GSSkSz = 1, template< class > class Stats = no_statistics, template< class > class CFG = no_control_flow_graph>
template<class ThrW , class WFlg , template< class > class Del, template< class > class AtCtr>
jmmcg::ppd::pool_aspects< RD, API, Mdl, PM, Comp, GSSkSz, Stats, CFG >::algo_thread_wk< ThrW, WFlg, Del, AtCtr >::~algo_thread_wk ( )
inlinenoexcept

Definition at line 743 of file thread_pool_aspects.hpp.


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