3#ifndef _MYTHSYSTEM_WINDOWS_H_
4#define _MYTHSYSTEM_WINDOWS_H_
9#include <QWaitCondition>
23using MSMap_t = QMap<HANDLE, MythSystemLegacyWindows *>;
24using PMap_t = QMap<HANDLE, QBuffer *>;
25using MSList_t = QList<MythSystemLegacyWindows *>;
32 void run(
void)
override;
34 void insert(HANDLE h, QBuffer *buff);
58 void run(
void)
override;
80 :
MThread(
"SystemSignalManager") {}
82 void run(
void)
override;
96 void Manage(
void)
override;
99 void Signal(
int sig)
override;
102 bool ParseShell(
const QString &cmd, QString &abscmd,
103 QStringList &
args)
override;
110 HANDLE m_child {
nullptr};
This is a wrapper around QThread that does several additional things.
bool wait(std::chrono::milliseconds time=std::chrono::milliseconds::max())
Wait for the MThread to exit, with a maximum timeout.
void HandleWrite(int fd, QBuffer *buff)
MythSystemLegacyIOHandler(bool read)
void insert(int fd, QBuffer *buff)
void HandleRead(int fd, QBuffer *buff)
std::array< char, 65536 > m_readbuf
~MythSystemLegacyIOHandler()
void run(void) override
Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead.
~MythSystemLegacyManager()
MythSystemLegacyManager()
void run(void) override
Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead.
void append(MythSystemLegacyUnix *ms)
virtual void Fork(std::chrono::seconds timeout)=0
virtual void Signal(int sig)=0
virtual void Term(bool force=false)=0
virtual bool ParseShell(const QString &cmd, QString &abscmd, QStringList &args)=0
virtual void JumpAbort(void)=0
virtual void Manage(void)=0
void run(void) override
Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead.
~MythSystemLegacySignalManager()
MythSystemLegacySignalManager()
~MythSystemLegacyWindows()=default
std::chrono::time_point< SystemClock > SystemTime
QList< QPointer< MythSystemLegacyUnix > > MSList_t
QMap< int, QBuffer * > PMap_t
QMap< pid_t, QPointer< MythSystemLegacyUnix > > MSMap_t
def read(device=None, features=[])