blob: 015dfa187d23b15f2f8cf13c485c9eb9122c5e7f (
plain) (
tree)
|
|
/*
# Copyright (c) 2009 - OpenSLX Project, Computer Center University of Freiburg
#
# This program is free software distributed under the GPL version 2.
# See http://openslx.org/COPYING
#
# If you have any feedback please consult http://openslx.org/feedback and
# send your suggestions, praise, or complaints to feedback@openslx.org
#
# General information about OpenSLX can be found at http://openslx.org/
# --------------------------------------------------------------------------
# pvsPrivInputHandler.h
# - Handle privileged input connection requests - interface
# --------------------------------------------------------------------------
*/
#ifndef PVSPRIVINPUTHANDLER_H_
#define PVSPRIVINPUTHANDLER_H_
#include <QObject>
#include <QHash>
#include <QPointer>
#include "inputEventHandler.h"
class QSocketNotifier;
/**
* Handle socket communication with instances of the PVS Client Daemon.
*
* \note This runs in the context of a Qt main loop. It does not start
* a handler thread.
*/
class PVSPrivInputHandler : public QObject
{
Q_OBJECT
public:
/**
* Listen for InputEvents on file descriptor \c fd.
*/
PVSPrivInputHandler(int fd, QObject* parent = 0);
virtual ~PVSPrivInputHandler();
private slots:
void canRead();
private:
QSocketNotifier* _notifier;
QByteArray _messageAssembly;
int _bytes;
int _fd;
InputEventHandlerChain _handlerChain;
};
#endif /* PVSPRIVINPUTHANDLER_H_ */
|