/*
 * This file was generated by qdbusxml2cpp version 0.7
 * Command line was: qdbusxml2cpp interfaces/org.ktorrent.core.xml -c KTorrentCoreInterface -p ktorrentcoreinterface
 *
 * qdbusxml2cpp is Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef KTORRENTCOREINTERFACE_H_1283376249
#define KTORRENTCOREINTERFACE_H_1283376249

#include <QtCore/QObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QtDBus/QtDBus>

/*
 * Proxy class for interface org.ktorrent.core
 */
class KTorrentCoreInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.ktorrent.core"; }

public:
    KTorrentCoreInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = 0);

    ~KTorrentCoreInterface();

public Q_SLOTS: // METHODS
    inline QDBusPendingReply<bool> addGroup(const QString &group)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(group);
        return asyncCallWithArgumentList(QLatin1String("addGroup"), argumentList);
    }

    inline QDBusPendingReply<QString> dataDir()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("dataDir"), argumentList);
    }

    inline QDBusPendingReply<QStringList> groups()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("groups"), argumentList);
    }

    inline QDBusPendingReply<> load(const QString &url, const QString &group)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(url) << qVariantFromValue(group);
        return asyncCallWithArgumentList(QLatin1String("load"), argumentList);
    }

    inline QDBusPendingReply<> loadSilently(const QString &url, const QString &group)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(url) << qVariantFromValue(group);
        return asyncCallWithArgumentList(QLatin1String("loadSilently"), argumentList);
    }

    inline QDBusPendingReply<> log(const QString &line)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(line);
        return asyncCallWithArgumentList(QLatin1String("log"), argumentList);
    }

    inline QDBusPendingReply<uint> numTorrentsNotRunning()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("numTorrentsNotRunning"), argumentList);
    }

    inline QDBusPendingReply<uint> numTorrentsRunning()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("numTorrentsRunning"), argumentList);
    }

    inline QDBusPendingReply<> orderQueue()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("orderQueue"), argumentList);
    }

    inline QDBusPendingReply<> reindexQueue()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("reindexQueue"), argumentList);
    }

    inline QDBusPendingReply<> remove(const QString &info_hash, bool data_to)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(info_hash) << qVariantFromValue(data_to);
        return asyncCallWithArgumentList(QLatin1String("remove"), argumentList);
    }

    inline QDBusPendingReply<> removeDelayed(const QString &info_hash, bool data_to)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(info_hash) << qVariantFromValue(data_to);
        return asyncCallWithArgumentList(QLatin1String("removeDelayed"), argumentList);
    }

    inline QDBusPendingReply<bool> removeGroup(const QString &group)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(group);
        return asyncCallWithArgumentList(QLatin1String("removeGroup"), argumentList);
    }

    inline QDBusPendingReply<> setSuspended(bool suspend)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(suspend);
        return asyncCallWithArgumentList(QLatin1String("setSuspended"), argumentList);
    }

    inline QDBusPendingReply<> start(const QString &info_hash)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(info_hash);
        return asyncCallWithArgumentList(QLatin1String("start"), argumentList);
    }

    inline QDBusPendingReply<> startAll()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("startAll"), argumentList);
    }

    inline QDBusPendingReply<> stop(const QString &info_hash)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(info_hash);
        return asyncCallWithArgumentList(QLatin1String("stop"), argumentList);
    }

    inline QDBusPendingReply<> stopAll()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("stopAll"), argumentList);
    }

    inline QDBusPendingReply<bool> suspended()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("suspended"), argumentList);
    }

    inline QDBusPendingReply<QStringList> torrents()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QLatin1String("torrents"), argumentList);
    }

Q_SIGNALS: // SIGNALS
    void finished(const QString &tor);
    void settingsChanged();
    void suspendStateChanged(bool suspended);
    void torrentAdded(const QString &tor);
    void torrentRemoved(const QString &tor);
    void torrentStoppedByError(const QString &tor, const QString &msg);
};

namespace org {
  namespace ktorrent {
    typedef ::KTorrentCoreInterface core;
  }
}
#endif
