| Home · All Classes · All Namespaces · Modules · Functions · Files

ready-object.h

    00001
    00023 #ifndef _TelepathyQt_ready_object_h_HEADER_GUARD_
    00024 #define _TelepathyQt_ready_object_h_HEADER_GUARD_
    00025
    00026 #ifndef IN_TP_QT_HEADER
    00027 #error IN_TP_QT_HEADER
    00028 #endif
    00029
    00030 #include <TelepathyQt/Feature>
    00031
    00032 #include <QObject>
    00033
    00034 namespace Tp
    00035 {
    00036
    00037 class DBusProxy;
    00038 class PendingReady;
    00039 class ReadinessHelper;
    00040 class RefCounted;
    00041
    00042 class TP_QT_EXPORT ReadyObject
    00043 {
    00044     Q_DISABLE_COPY(ReadyObject)
    00045
    00046 public:
    00047     ReadyObject(RefCounted *object, const Feature &featureCore);
    00048     ReadyObject(DBusProxy *proxy, const Feature &featureCore);
    00049     virtual ~ReadyObject();
    00050
    00051     virtual bool isReady(const Features &features = Features()) const;
    00052     virtual PendingReady *becomeReady(const Features &requestedFeatures = Features());
    00053
    00054     virtual Features requestedFeatures() const;
    00055     virtual Features actualFeatures() const;
    00056     virtual Features missingFeatures() const;
    00057
    00058 protected:
    00059     ReadinessHelper *readinessHelper() const;
    00060
    00061 private:
    00062     struct Private;
    00063     friend struct Private;
    00064     Private *mPriv;
    00065 };
    00066
    00067 } // Tp
    00068
    00069 #endif