/* # 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 #include #include #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_ */