RxCpp
The Reactive Extensions for Native (RxCpp) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators in both C and C++.
Classes | Typedefs | Functions
rxcpp::schedulers Namespace Reference

Classes

class  action
 action provides type-forgetting for a potentially recursive set of calls to a function that takes a schedulable More...
 
struct  action_base
 
struct  current_thread
 
struct  event_loop
 
struct  immediate
 
struct  new_thread
 
class  recurse
 
class  recursed
 
class  recursion
 recursion is used by the scheduler to signal to each action whether tail recursion is allowed. More...
 
class  run_loop
 
struct  run_loop_scheduler
 
struct  same_worker
 
class  schedulable
 
struct  schedulable_base
 
class  scheduler
 allows functions to be called at specified times and possibly in other contexts. More...
 
struct  scheduler_base
 
class  scheduler_interface
 
class  test
 
struct  virtual_time
 
class  weak_worker
 
class  worker
 
struct  worker_base
 
class  worker_interface
 

Typedefs

typedef std::function< std::thread(std::function< void()>)> thread_factory
 

Functions

bool operator== (const worker &lhs, const worker &rhs)
 
bool operator!= (const worker &lhs, const worker &rhs)
 
template<class Scheduler , class... ArgN>
scheduler make_scheduler (ArgN &&...an)
 
scheduler make_scheduler (std::shared_ptr< scheduler_interface > si)
 
action make_action_empty ()
 
template<class F >
action make_action (F &&f)
 
auto make_schedulable (const schedulable &scbl) -> schedulable
 
auto make_schedulable (schedulable &&scbl) -> schedulable
 
schedulable make_schedulable (worker sc, action a)
 
schedulable make_schedulable (worker sc, composite_subscription cs, action a)
 
template<class F >
auto make_schedulable (worker sc, F &&f) -> typename std::enable_if< detail::is_action_function< F >::value, schedulable >::type
 
template<class F >
auto make_schedulable (worker sc, composite_subscription cs, F &&f) -> typename std::enable_if< detail::is_action_function< F >::value, schedulable >::type
 
template<class F >
auto make_schedulable (schedulable scbl, composite_subscription cs, F &&f) -> typename std::enable_if< detail::is_action_function< F >::value, schedulable >::type
 
template<class F >
auto make_schedulable (schedulable scbl, worker sc, F &&f) -> typename std::enable_if< detail::is_action_function< F >::value, schedulable >::type
 
template<class F >
auto make_schedulable (schedulable scbl, F &&f) -> typename std::enable_if< detail::is_action_function< F >::value, schedulable >::type
 
auto make_schedulable (schedulable scbl, composite_subscription cs) -> schedulable
 
auto make_schedulable (schedulable scbl, worker sc, composite_subscription cs) -> schedulable
 
auto make_schedulable (schedulable scbl, worker sc) -> schedulable
 
const schedulermake_current_thread ()
 
scheduler make_event_loop ()
 
scheduler make_event_loop (thread_factory tf)
 
const schedulermake_immediate ()
 
scheduler make_new_thread ()
 
scheduler make_new_thread (thread_factory tf)
 
scheduler make_run_loop (const run_loop &r)
 
scheduler make_same_worker (rxsc::worker w)
 
test make_test ()
 

Typedef Documentation

typedef std::function<std::thread(std::function<void()>)> rxcpp::schedulers::thread_factory

Function Documentation

template<class F >
action rxcpp::schedulers::make_action ( F &&  f)
inline
action rxcpp::schedulers::make_action_empty ( )
inline
const scheduler& rxcpp::schedulers::make_current_thread ( )
inline
scheduler rxcpp::schedulers::make_event_loop ( )
inline
scheduler rxcpp::schedulers::make_event_loop ( thread_factory  tf)
inline
const scheduler& rxcpp::schedulers::make_immediate ( )
inline
scheduler rxcpp::schedulers::make_new_thread ( )
inline
scheduler rxcpp::schedulers::make_new_thread ( thread_factory  tf)
inline
scheduler rxcpp::schedulers::make_run_loop ( const run_loop r)
inline
scheduler rxcpp::schedulers::make_same_worker ( rxsc::worker  w)
inline
auto rxcpp::schedulers::make_schedulable ( const schedulable scbl) -> schedulable
inline
auto rxcpp::schedulers::make_schedulable ( schedulable &&  scbl) -> schedulable
inline
schedulable rxcpp::schedulers::make_schedulable ( worker  sc,
action  a 
)
inline
schedulable rxcpp::schedulers::make_schedulable ( worker  sc,
composite_subscription  cs,
action  a 
)
inline
template<class F >
auto rxcpp::schedulers::make_schedulable ( worker  sc,
F &&  f 
) -> typename std::enable_if<detail::is_action_function<F>::value, schedulable>::type
template<class F >
auto rxcpp::schedulers::make_schedulable ( worker  sc,
composite_subscription  cs,
F &&  f 
) -> typename std::enable_if<detail::is_action_function<F>::value, schedulable>::type
template<class F >
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
composite_subscription  cs,
F &&  f 
) -> typename std::enable_if<detail::is_action_function<F>::value, schedulable>::type
template<class F >
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
worker  sc,
F &&  f 
) -> typename std::enable_if<detail::is_action_function<F>::value, schedulable>::type
template<class F >
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
F &&  f 
) -> typename std::enable_if<detail::is_action_function<F>::value, schedulable>::type
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
composite_subscription  cs 
) -> schedulable
inline
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
worker  sc,
composite_subscription  cs 
) -> schedulable
inline
auto rxcpp::schedulers::make_schedulable ( schedulable  scbl,
worker  sc 
) -> schedulable
inline
template<class Scheduler , class... ArgN>
scheduler rxcpp::schedulers::make_scheduler ( ArgN &&...  an)
inline
scheduler rxcpp::schedulers::make_scheduler ( std::shared_ptr< scheduler_interface si)
inline
test rxcpp::schedulers::make_test ( )
inline
bool rxcpp::schedulers::operator!= ( const worker lhs,
const worker rhs 
)
inline
bool rxcpp::schedulers::operator== ( const worker lhs,
const worker rhs 
)
inline