00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __DBUSXX_PENDING_CALL_H
00026 #define __DBUSXX_PENDING_CALL_H
00027
00028 #include "api.h"
00029 #include "util.h"
00030 #include "message.h"
00031
00032 namespace DBus
00033 {
00034
00035 class Connection;
00036
00037 class DXXAPI PendingCall
00038 {
00039 public:
00040
00041 struct Private;
00042
00043 PendingCall(Private *);
00044
00045 PendingCall(const PendingCall &);
00046
00047 virtual ~PendingCall();
00048
00049 PendingCall &operator = (const PendingCall &);
00050
00056 bool completed();
00057
00072 void cancel();
00073
00083 void block();
00084
00095 void data(void *data);
00096
00104 void *data();
00105
00109 Slot<void, PendingCall &>& slot();
00110
00121 Message steal_reply();
00122
00123 private:
00124
00125 RefPtrI<Private> _pvt;
00126
00127 friend struct Private;
00128 friend class Connection;
00129 };
00130
00131 }
00132
00133 #endif//__DBUSXX_PENDING_CALL_H