summaryrefslogtreecommitdiffstats
path: root/lib/util/blockingkprocess.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/util/blockingkprocess.h')
-rw-r--r--lib/util/blockingkprocess.h93
1 files changed, 0 insertions, 93 deletions
diff --git a/lib/util/blockingkprocess.h b/lib/util/blockingkprocess.h
deleted file mode 100644
index b5a7e71e..00000000
--- a/lib/util/blockingkprocess.h
+++ /dev/null
@@ -1,93 +0,0 @@
-
-/***************************************************************************
-* Copyright (C) 2006 by Andras Mantia *
-* amantia@kde.org *
-* *
-* This program is free software; you can redistribute it and/or modify *
-* it under the terms of the GNU General Public License as published by *
-* the Free Software Foundation; either version 2 of the License, or *
-* (at your option) any later version. *
-* *
-***************************************************************************/
-
-
-#ifndef BLOCKINGKPROCESS_H
-#define BLOCKINGKPROCESS_H
-
-#include <kprocess.h>
-
-/**
- * Blocking version of TDEProcess, which stores the stdout.
- * Differences between start(TDEProcess::Block, TDEProcess::StdOut) and this
- * class are:
- * - the GUI update is not blocked why the external process is running
- * - in case of problems there is a timeout (defaults to 60 seconds), after which the
- * process is terminated.
- * - the stdout is caught - it the caller request it - and can be read by the caller
- * @author Andras Mantia <amantia@kde.org>
-*/
-
-class TQTimer;
-class BlockingTDEProcess : public TDEProcess
-{
- TQ_OBJECT
-
-
-public:
- BlockingTDEProcess(TQObject *parent, const char *name=0);
- BlockingTDEProcess();
-
- virtual ~BlockingTDEProcess();
-
- /**
- * Start the process. It waits until the process exits or the timeout is hit.
- * @param runmode @see TDEProcess, use TDEProcess::NotifyOnExit to get proper behaviour,
- * not TDEProcess::Block
- * @param comm if Stdout is passed, it catches the output. For the rest @see TDEProcess
- * @return true in case of success, false if there are problems to start the process
- * or it was killed because of the timeout.
- */
- virtual bool start(RunMode runmode=NotifyOnExit, Communication comm=NoCommunication);
-
- /**
- * Get the output of the run process
- * @return the output
- */
- TQString stdOut() { return m_stdOut;}
- /**
- * Clear the internal stdout buffer. Useful in case the class is reused.
- */
- void clearStdOut() { m_stdOut = "";}
- /**
- * Get the error output of the run process
- * @return the output
- */
- TQString stdErr() { return m_stdErr;}
- /**
- * Clear the internal stderr buffer. Useful in case the class is reused.
- */
- void clearStdErr() { m_stdErr = "";}
-
- /**
- * Sets the timeout
- * @param timeout seconds after which the process is considered hung and killed. 0 disables the timeout.
- */
- void setTimeOut(int timeout) { m_timeoutValue = timeout; }
-
-private slots:
- void slotReceivedStdOut(TDEProcess *proc, char *buffer, int buflen);
- void slotReceivedStdErr(TDEProcess *proc, char *buffer, int buflen);
- void slotProcessExited(TDEProcess *proc);
- void slotTimeOut();
-
-private:
- void enter_loop();
-
- TQString m_stdOut;
- TQString m_stdErr;
- bool m_timeout;
- int m_timeoutValue;
- TQTimer *m_timer;
-};
-
-#endif