//Auto-generated by kalyptus. DO NOT EDIT.
namespace Soprano.Client {
    using Soprano;
    using System;
    using Qyoto;
    /// <remarks>
    ///  \class DBusQueryResultIterator dbusqueryresultiterator.h Soprano/Client/DBusQueryResultIterator
    ///  \brief Interface to a DBus server query result iterator.
    ///  The DBusQueryResultIterator provides a fully functional interface
    ///  to a QueryResultIterator provided through a %Soprano D-Bus server. It can thus,
    ///  be seen as the counterpart to Server.DBusExportIterator.
    ///  Given the DBus service name and the object path of the QueryResultIterator
    ///  in question it handles all DBus communication transparently.
    ///  Normally there is no need to use this class directly as 
    ///  DBusModel does create instances of it on request.
    ///  \author Sebastian Trueg <trueg@kde.org>
    ///  \sa \ref soprano_server_dbus
    ///  \since 2.1
    ///          </remarks>        <short>    \class DBusQueryResultIterator dbusqueryresultiterator.</short>
    [SmokeClass("Soprano::Client::DBusQueryResultIterator")]
    public class DBusQueryResultIterator : Soprano.QueryResultIterator, IDisposable {
        protected DBusQueryResultIterator(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(DBusQueryResultIterator), this);
        }
        /// <remarks>
        ///  Create a new DBus QueryResultIterator interface.
        ///  \param serviceName The name of the DBus service that provides the QueryResultIterator.
        ///  \param dbusObject The path to the QueryResultIterator object in the DBus service.
        ///              </remarks>        <short>    Create a new DBus QueryResultIterator interface.</short>
        public DBusQueryResultIterator(string serviceName, string dbusObject) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("DBusQueryResultIterator$$", "DBusQueryResultIterator(const QString&, const QString&)", typeof(void), typeof(string), serviceName, typeof(string), dbusObject);
        }
        ~DBusQueryResultIterator() {
            interceptor.Invoke("~DBusQueryResultIterator", "~DBusQueryResultIterator()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~DBusQueryResultIterator", "~DBusQueryResultIterator()", typeof(void));
        }
    }
}
