libqi-api
2.8.7.4
|
#include <stdexcept>
#include <type_traits>
#include <vector>
#include <ka/functional.hpp>
#include <qi/api.hpp>
#include <qi/assert.hpp>
#include <qi/atomic.hpp>
#include <qi/config.hpp>
#include <qi/clock.hpp>
#include <qi/detail/mpl.hpp>
#include <qi/either.hpp>
#include <qi/log.hpp>
#include <qi/os.hpp>
#include <qi/tag.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/make_shared.hpp>
#include <boost/function.hpp>
#include <boost/bind.hpp>
#include <boost/thread/recursive_mutex.hpp>
#include <boost/exception/diagnostic_information.hpp>
#include <qi/trackable.hpp>
Go to the source code of this file.
Classes | |
struct | qi::detail::FutureType< T > |
struct | qi::detail::FutureHasNoValue |
struct | qi::detail::FutureType< void > |
class | qi::detail::AddUnwrap< T > |
class | qi::Future< T > |
class | qi::FutureSync< T > |
class | qi::Promise< T > |
class | qi::detail::FutureBaseTyped< T > |
struct | qi::detail::VisitTimeout |
class | qi::FutureException |
class | qi::FutureUserException |
class | qi::Future< T > |
class | qi::FutureSync< T > |
class | qi::Promise< T > |
class | qi::detail::FutureBase |
class | qi::detail::FutureBaseTyped< T > |
struct | qi::FutureValueConverter< FT, PT > |
Specialize this struct to provide conversion between future values. More... | |
struct | qi::UnitFuture |
struct | qi::SrcFuture |
Namespaces | |
qi | |
Deprecated in 2.5. Use int8_t from <cstdint>. | |
qi::detail | |
Macros | |
#define | _QI_FUTURE_HPP_ |
Typedefs | |
using | qi::FutureUniqueId = void * |
Enumerations | |
enum | qi::FutureState { qi::FutureState_None, qi::FutureState_Running, qi::FutureState_Canceled, qi::FutureState_FinishedWithError, qi::FutureState_FinishedWithValue } |
enum | qi::FutureCallbackType { qi::FutureCallbackType_Sync = 0, qi::FutureCallbackType_Async = 1, qi::FutureCallbackType_Auto = 2 } |
enum | qi::FutureTimeout { qi::FutureTimeout_Infinite = INT_MAX, qi::FutureTimeout_None = 0 } |
enum | qi::AdaptFutureOption { qi::AdaptFutureOption_None = 0, qi::AdaptFutureOption_ForwardCancel = 1 } |
Functions | |
template<typename FT > | |
void | qi::detail::futureCancelAdapter (boost::weak_ptr< detail::FutureBaseTyped< FT > > wf) |
std::ostream & | qi::operator<< (std::ostream &o, FutureState x) |
template<typename T > | |
qi::Future< T > | qi::makeFutureError (const std::string &error) |
Helper function to return a future with the error set. More... | |
template<typename T > | |
void | qi::PromiseNoop (qi::Promise< T > &) |
template<typename R > | |
void | qi::adaptFutureUnwrap (Future< AnyReference > &f, Promise< R > &p) |
Feed a promise from a generic future which may be unwrapped if it contains itself a future. More... | |
template<typename FT , typename PT > | |
void | qi::adaptFuture (const Future< FT > &f, Promise< PT > &p, AdaptFutureOption option=AdaptFutureOption_ForwardCancel) |
Feed a promise from a future of possibly different type. More... | |
template<typename FT , typename PT , typename CONV > | |
void | qi::adaptFuture (const Future< FT > &f, Promise< PT > &p, CONV converter, AdaptFutureOption option=AdaptFutureOption_ForwardCancel) |
Similar to adaptFuture(f, p) but with a custom converter. More... | |
template<typename T > | |
boost::function< void()> | qi::makeCanceler (Future< T > &future) |
template<typename T > | |
Future< AnyValue > | qi::toAnyValueFuture (Future< T > future) |
SrcFuture | qi::retract (UnitFuture) |
template<typename... T> | |
auto | qi::futurize (T &&...t) -> decltype(UnitFuture |
template<typename Proc > | |
auto | qi::futurizeOutput (Proc &&p) -> decltype(ka::semilift(std::forward< Proc >(p), UnitFuture |
#define _QI_FUTURE_HPP_ |
Definition at line 8 of file future_fwd.hpp.