4#ifndef QFUTUREINTERFACE_P_H
5#define QFUTUREINTERFACE_P_H
18#include <QtCore/private/qglobal_p.h>
19#include <QtCore/qelapsedtimer.h>
20#include <QtCore/qcoreevent.h>
21#include <QtCore/qlist.h>
22#include <QtCore/qwaitcondition.h>
23#include <QtCore/qrunnable.h>
24#include <QtCore/qthreadpool.h>
25#include <QtCore/qfutureinterface.h>
26#include <QtCore/qexception.h>
56 :
QEvent(
QEvent::FutureCallOut), callOutType(callOutType), index1(index1), index2(-1)
59 :
QEvent(
QEvent::FutureCallOut), callOutType(callOutType), index1(index1), index2(index2)
64 callOutType(callOutType),
99 : m_refCount(
r), m_refCountT(rt) {}
101 inline bool ref() {
return m_refCount.
ref(); }
105 inline bool refT() {
return m_refCountT.
ref(); }
127#ifndef QT_NO_EXCEPTIONS
T loadRelaxed() const noexcept
QFutureCallOutEvent(CallOutType callOutType, int index1, const QString &text)
QFutureCallOutEvent(CallOutType callOutType, int index1, int index2)
QFutureCallOutEvent(CallOutType callOutType, int index1=-1)
virtual ~QFutureCallOutInterface()
virtual void callOutInterfaceDisconnected()=0
virtual void postCallOutEvent(const QFutureCallOutEvent &)=0
RefCount(int r=0, int rt=0)
std::atomic< ContinuationState > continuationState
bool internal_updateProgress(int progress, const QString &progressText=QString())
QElapsedTimer progressTime
int m_expectedResultCount
QBasicMutex continuationMutex
void sendCallOuts(const QFutureCallOutEvent &callOut1, const QFutureCallOutEvent &callOut2)
void sendCallOut(const QFutureCallOutEvent &callOut)
bool internal_waitForNextResult()
void setState(QFutureInterfaceBase::State state)
QList< QFutureCallOutInterface * > outputConnections
void disconnectOutputInterface(QFutureCallOutInterface *iface)
bool internal_updateProgressValue(int progress)
bool internal_isResultReadyAt(int index) const
QThreadPool * pool() const
void connectOutputInterface(QFutureCallOutInterface *iface)
std::function< void(const QFutureInterfaceBase &)> continuation
void internal_setThrottled(bool enable)
int internal_resultCount() const
QWaitCondition pausedWaitCondition
~QFutureInterfaceBasePrivate()
QWaitCondition waitCondition
QFutureInterfaceBasePrivate * continuationData
QScopedPointer< ProgressData > m_progress
\macro QT_RESTRICTED_CAST_FROM_ASCII
static QThreadPool * globalInstance()
Returns the global QThreadPool instance.
void setException(const QException &e)
virtual ~ResultStoreBase()
Combined button and popup list for selecting options.
#define Q_DECL_EVENT_COMMON(Class)
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage void
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
#define QT_REQUIRE_CONFIG(feature)
QFuture< void > future
[5]
QtPrivate::ExceptionStore m_exceptionStore
void setException(const std::exception_ptr &e)
QtPrivate::ResultStoreBase m_results