//
//     Copyright 2008 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2007 Jim Bublitz also apply

//                 Generated by twine

// This file is part of PyKDE4.

// PyKDE4 is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as
// published by the Free Software Foundation; either version 2.1 of
// the License, or (at your option) any later version.

// PyKDE4 is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

namespace KIO
{

class Scheduler : QObject
{
%TypeHeaderCode
#include <scheduler.h>
%End


public:
    static void             doJob (KIO::SimpleJob* job);
    static void             scheduleJob (KIO::SimpleJob* job);
    static void             cancelJob (KIO::SimpleJob* job);
    static void             jobFinished (KIO::SimpleJob* job, KIO::Slave* slave);
    static void             putSlaveOnHold (KIO::SimpleJob* job, const KUrl& url);
    static void             removeSlaveOnHold ();
    static void             publishSlaveOnHold ();
    static KIO::Slave*      getConnectedSlave (const KUrl& url, const KIO::MetaData& config = KIO::MetaData());
    static bool             assignJobToSlave (KIO::Slave* slave, KIO::SimpleJob* job);
    static bool             disconnectSlave (KIO::Slave* slave);
    static void             registerWindow (QWidget* wid);
    static void             unregisterWindow (QObject* wid);
    static bool             connect (const char* signal, const QObject* receiver, const char* member);
    static bool             connect (const QObject* sender, const char* signal, const QObject* receiver, const char* member);
    static bool             disconnect (const QObject* sender, const char* signal, const QObject* receiver, const char* member);
    bool                    connect (const QObject* sender, const char* signal, const char* member);
    static void             checkSlaveOnHold (bool b);
    static void             emitReparseSlaveConfiguration ();

signals:
    void                    slaveConnected (KIO::Slave* slave);
    void                    slaveError (KIO::Slave* slave, int error, const QString& errorMsg);
    void                    reparseSlaveConfiguration (const QString&);

private:
                            Scheduler (const KIO::Scheduler&);
                            Scheduler ();
                            ~Scheduler ();
};   // Scheduler

};   // KIO


