ChimeraTK-cppext 01.05.02
Loading...
Searching...
No Matches
cppext::detail Namespace Reference

Implementation of shared_state_ptr. More...

Classes

struct  continuation_process_async
 
struct  continuation_process_async< T, FEATURES, void, CALLABLE >
 
struct  continuation_process_async< void, FEATURES, TOUT, CALLABLE >
 
struct  continuation_process_async< void, FEATURES, void, CALLABLE >
 
struct  continuation_process_deferred
 
struct  continuation_process_deferred< T, FEATURES, void, CALLABLE >
 
struct  continuation_process_deferred< void, FEATURES, TOUT, CALLABLE >
 
struct  continuation_process_deferred< void, FEATURES, void, CALLABLE >
 
struct  continuation_process_deferred_wait
 
struct  continuation_process_deferred_wait< T, FEATURES, void, CALLABLE >
 
struct  continuation_process_deferred_wait< void, FEATURES, TOUT, CALLABLE >
 
struct  continuation_process_deferred_wait< void, FEATURES, void, CALLABLE >
 
struct  shared_state
 Internal class for holding the data which is shared between multiple instances of the same queue. More...
 
struct  shared_state< void >
 Specialisation of the shared_state class for the type void. More...
 
struct  shared_state_base
 Internal base class for holding the data which is shared between multiple instances of the same queue. More...
 
struct  shared_state_ptr
 shared_ptr-like smart pointer type for referencing the shared_state. More...
 
class  TerminateInternalThread
 Exception to be pushed into the queue to signal a termination request for the internal thread of an async continuation. More...
 
struct  when_any_notification_info
 

Functions

template<typename T >
shared_state_ptr make_shared_state (size_t length)
 
template<typename T >
void data_assign (T &a, T &&b, MOVE_DATA)
 Helper function to realise the data assignment depending on the selected FEATURES tags.
 
template<typename T >
void data_assign (T &a, T &&b, SWAP_DATA)
 
template<typename T , typename FEATURES , typename TOUT , typename CALLABLE >
continuation_process_deferred< T, FEATURES, TOUT, CALLABLEmake_continuation_process_deferred (future_queue< T, FEATURES > q_input, future_queue< TOUT > q_output, CALLABLE callable)
 
template<typename T , typename FEATURES , typename TOUT , typename CALLABLE >
continuation_process_deferred_wait< T, FEATURES, TOUT, CALLABLEmake_continuation_process_deferred_wait (future_queue< T, FEATURES > q_input, future_queue< TOUT > q_output, CALLABLE callable)
 
template<typename T , typename FEATURES , typename TOUT , typename CALLABLE >
continuation_process_async< T, FEATURES, TOUT, CALLABLEmake_continuation_process_async (future_queue< T, FEATURES > q_input, future_queue< TOUT > q_output, CALLABLE callable)
 

Detailed Description

Implementation of shared_state_ptr.

Implementation of then() with helper classes.

They are implemented as classes since we need partial template specialisations.

Function Documentation

◆ data_assign() [1/2]

template<typename T >
void cppext::detail::data_assign ( T &  a,
T &&  b,
MOVE_DATA   
)

Helper function to realise the data assignment depending on the selected FEATURES tags.

The last dummy argument is just used to realise overloads for the different tags (as C++ does not know partial template specialisations for functions).

Definition at line 650 of file future_queue.hpp.

+ Here is the caller graph for this function:

◆ data_assign() [2/2]

template<typename T >
void cppext::detail::data_assign ( T &  a,
T &&  b,
SWAP_DATA   
)

Definition at line 659 of file future_queue.hpp.

◆ make_continuation_process_async()

continuation_process_async< T, FEATURES, TOUT, CALLABLE > cppext::detail::make_continuation_process_async ( future_queue< T, FEATURES q_input,
future_queue< TOUT q_output,
CALLABLE  callable 
)

Definition at line 1580 of file future_queue.hpp.

+ Here is the caller graph for this function:

◆ make_continuation_process_deferred()

continuation_process_deferred< T, FEATURES, TOUT, CALLABLE > cppext::detail::make_continuation_process_deferred ( future_queue< T, FEATURES q_input,
future_queue< TOUT q_output,
CALLABLE  callable 
)

Definition at line 1328 of file future_queue.hpp.

+ Here is the caller graph for this function:

◆ make_continuation_process_deferred_wait()

continuation_process_deferred_wait< T, FEATURES, TOUT, CALLABLE > cppext::detail::make_continuation_process_deferred_wait ( future_queue< T, FEATURES q_input,
future_queue< TOUT q_output,
CALLABLE  callable 
)

Definition at line 1437 of file future_queue.hpp.

+ Here is the caller graph for this function:

◆ make_shared_state()

template<typename T >
shared_state_ptr cppext::detail::make_shared_state ( size_t  length)

Definition at line 93 of file future_queue.hpp.