/*
 * This file was generated by dbusxml2cpp version 0.6
 * Command line was: dbusxml2cpp -i QtTelepathy/BaseTypes -p streamengine.h: ../xml/tp-stream-engine.xml
 *
 * dbusxml2cpp is Copyright (C) 2006 Trolltech AS. All rights reserved.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef STREAMENGINE_H_1172258029
#define STREAMENGINE_H_1172258029

#include <QtCore/QObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QtDBus/QtDBus>
#include "QtTelepathy/Common/BaseTypes"

/*
 * Proxy class for interface org.freedesktop.Telepathy.StreamEngine
 */
class OrgFreedesktopTelepathyStreamEngineInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.freedesktop.Telepathy.StreamEngine"; }

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

    ~OrgFreedesktopTelepathyStreamEngineInterface();

public Q_SLOTS: // METHODS
    inline QDBusReply<void> AddPreviewWindow(uint window)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(window);
        return callWithArgumentList(QDBus::Block, QLatin1String("AddPreviewWindow"), argumentList);
    }

    inline QDBusReply<void> MuteInput(const QDBusObjectPath &channel_path, uint stream_id, bool mute_state)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(channel_path) << qVariantFromValue(stream_id) << qVariantFromValue(mute_state);
        return callWithArgumentList(QDBus::Block, QLatin1String("MuteInput"), argumentList);
    }

    inline QDBusReply<void> MuteOutput(const QDBusObjectPath &channel_path, uint stream_id, bool mute_state)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(channel_path) << qVariantFromValue(stream_id) << qVariantFromValue(mute_state);
        return callWithArgumentList(QDBus::Block, QLatin1String("MuteOutput"), argumentList);
    }

    inline QDBusReply<void> RemovePreviewWindow(uint window)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(window);
        return callWithArgumentList(QDBus::Block, QLatin1String("RemovePreviewWindow"), argumentList);
    }

    inline QDBusReply<void> SetOutputVolume(const QDBusObjectPath &channel_path, uint stream_id, uint volume)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(channel_path) << qVariantFromValue(stream_id) << qVariantFromValue(volume);
        return callWithArgumentList(QDBus::Block, QLatin1String("SetOutputVolume"), argumentList);
    }

    inline QDBusReply<void> SetOutputWindow(const QDBusObjectPath &channel_path, uint stream_id, uint window)
    {
        QList<QVariant> argumentList;
        argumentList << qVariantFromValue(channel_path) << qVariantFromValue(stream_id) << qVariantFromValue(window);
        return callWithArgumentList(QDBus::Block, QLatin1String("SetOutputWindow"), argumentList);
    }

    inline QDBusReply<void> Shutdown()
    {
        QList<QVariant> argumentList;
        return callWithArgumentList(QDBus::Block, QLatin1String("Shutdown"), argumentList);
    }

Q_SIGNALS: // SIGNALS
    void Receiving(const QDBusObjectPath &channel_path, uint stream_id, bool state);
};

namespace org {
  namespace freedesktop {
    namespace Telepathy {
      typedef ::OrgFreedesktopTelepathyStreamEngineInterface StreamEngine;
    }
  }
}
#endif
