hpx/lcos_local/and_gate.hpp
hpx/lcos_local/and_gate.hpp#
See Public API for a list of names and headers that are part of the public HPX API.
- 
namespace hpx
- 
namespace lcos
- 
namespace local#
- 
struct and_gate : public hpx::lcos::local::base_and_gate<hpx::no_mutex>#
- Public Functions - 
template<typename Lock>
 inline hpx::future<void> get_future(Lock &l, std::size_t count = std::size_t(-1), std::size_t *generation_value = nullptr, error_code &ec = hpx::throws)#
 - 
template<typename Lock>
 inline bool set(std::size_t which, Lock l, error_code &ec = throws)#
 - 
template<typename Lock>
 inline void synchronize(std::size_t generation_value, Lock &l, char const *function_name = "and_gate::synchronize", error_code &ec = throws)#
 - Private Types - 
typedef base_and_gate<hpx::no_mutex> base_type#
 
- 
template<typename Lock>
 - 
template<typename Mutex = hpx::spinlock>
 struct base_and_gate#
- Public Functions - 
inline explicit base_and_gate(std::size_t count = 0)#
- This constructor initializes the base_and_gate object from the the number of participants to synchronize the control flow with. 
 - 
inline base_and_gate(base_and_gate &&rhs) noexcept#
 - 
inline base_and_gate &operator=(base_and_gate &&rhs) noexcept#
 - 
inline hpx::future<void> get_future(std::size_t count = std::size_t(-1), std::size_t *generation_value = nullptr, error_code &ec = hpx::throws)#
 - 
inline bool set(std::size_t which, error_code &ec = throws)#
 - 
inline void synchronize(std::size_t generation_value, char const *function_name = "base_and_gate<>::synchronize", error_code &ec = throws)#
- Wait for the generational counter to reach the requested stage. 
 - Protected Functions - 
inline bool trigger_conditions(error_code &ec = throws)#
 - 
template<typename OuterLock>
 inline hpx::future<void> get_future(OuterLock &outer_lock, std::size_t count = std::size_t(-1), std::size_t *generation_value = nullptr, error_code &ec = hpx::throws)#
- get a future allowing to wait for the gate to fire 
 - get a shared future allowing to wait for the gate to fire 
 - 
template<typename OuterLock>
 inline bool set(std::size_t which, OuterLock outer_lock, error_code &ec = throws)#
- Set the data which has to go into the segment which. 
 - 
template<typename Lock>
 inline void synchronize(std::size_t generation_value, Lock &l, char const *function_name = "base_and_gate<>::synchronize", error_code &ec = throws)#
 - Private Types - 
typedef std::list<conditional_trigger*> condition_list_type#
 - 
struct manage_condition#
- Public Functions - 
inline manage_condition(base_and_gate &gate, conditional_trigger &cond)#
 - 
inline ~manage_condition()#
 
- 
inline manage_condition(base_and_gate &gate, conditional_trigger &cond)#
 
- 
inline explicit base_and_gate(std::size_t count = 0)#
 
- 
struct and_gate : public hpx::lcos::local::base_and_gate<hpx::no_mutex>#
 
- 
namespace local#
 
- 
namespace lcos
