//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;

    public interface IQDBusPendingCall {
        bool IsFinished();
        void WaitForFinished();
        bool IsError();
        bool IsValid();
        QDBusError Error();
        QDBusMessage Reply();
    }
    [SmokeClass("QDBusPendingCall")]
    public class QDBusPendingCall : Object, IQDBusPendingCall, IDisposable {
        protected SmokeInvocation interceptor = null;
        private IntPtr smokeObject;
        protected QDBusPendingCall(Type dummy) {}
        protected void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QDBusPendingCall), this);
        }
        // QDBusPendingCall* QDBusPendingCall(QDBusPendingCallPrivate* arg1); >>>> NOT CONVERTED
        public QDBusPendingCall(IQDBusPendingCall other) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QDBusPendingCall#", "QDBusPendingCall(const QDBusPendingCall&)", typeof(void), typeof(IQDBusPendingCall), other);
        }
        public bool IsFinished() {
            return (bool) interceptor.Invoke("isFinished", "isFinished() const", typeof(bool));
        }
        public void WaitForFinished() {
            interceptor.Invoke("waitForFinished", "waitForFinished()", typeof(void));
        }
        public bool IsError() {
            return (bool) interceptor.Invoke("isError", "isError() const", typeof(bool));
        }
        public bool IsValid() {
            return (bool) interceptor.Invoke("isValid", "isValid() const", typeof(bool));
        }
        public QDBusError Error() {
            return (QDBusError) interceptor.Invoke("error", "error() const", typeof(QDBusError));
        }
        public QDBusMessage Reply() {
            return (QDBusMessage) interceptor.Invoke("reply", "reply() const", typeof(QDBusMessage));
        }
        ~QDBusPendingCall() {
            interceptor.Invoke("~QDBusPendingCall", "~QDBusPendingCall()", typeof(void));
        }
        public void Dispose() {
            interceptor.Invoke("~QDBusPendingCall", "~QDBusPendingCall()", typeof(void));
        }
    }
}
