libqi-api  2.0.6.8
Classes | Namespaces | Enumerations | Functions
/home/opennao/work/master/sdk/libqi/qi/future.hpp File Reference
#include <qi/api.hpp>
#include <vector>
#include <qi/atomic.hpp>
#include <qi/config.hpp>
#include <qi/trackable.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 <qi/details/future.hxx>

Go to the source code of this file.

Classes

struct  qi::FutureType< T >
struct  qi::FutureHasNoValue
struct  qi::FutureType< void >
class  qi::FutureException
class  qi::FutureUserException
class  qi::Future< T >
class  qi::FutureSync< T >
class  qi::Promise< T >
class  qi::FutureBarrier< T >
 This class helps waiting on multiple futures at the same point. More...
struct  qi::FutureValueConverter< FT, PT >
 Specialize this struct to provide conversion between future values. More...

Namespaces

namespace  qi
 

qi general namespace


namespace  qi::detail

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 }
enum  qi::FutureTimeout { qi::FutureTimeout_Infinite = ((int) 0x7fffffff), qi::FutureTimeout_None = 0 }

Functions

template<typename FT >
void qi::detail::futureCancelAdapter (boost::weak_ptr< detail::FutureBaseTyped< FT > > wf)
template<typename T >
qi::Future< T > qi::makeFutureError (const std::string &error, FutureCallbackType async)
template<typename T >
void qi::waitForAll (std::vector< Future< T > > &vect)
 Helper function to wait on a vector of futures.
template<typename T >
qi::FutureSync< qi::Future< T > > qi::waitForFirst (std::vector< Future< T > > &vect)
 Helper function to wait for the first valid future.
template<typename FT , typename PT >
void qi::adaptFuture (const Future< FT > &f, Promise< PT > &p)
template<typename FT , typename PT , typename CONV >
void qi::adaptFuture (const Future< FT > &f, Promise< PT > &p, CONV converter)
 Similar to adaptFuture(f, p) but with a custom converter.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines