From 06d1877811fa6aa97dddc0e03bcde4e766928c87 Mon Sep 17 00:00:00 2001 From: vovanec Date: Thu, 7 Feb 2008 13:36:34 +0000 Subject: new directory structure git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@232 90c681e8-e032-0410-971d-27865f9a5e38 --- src/ui/unixdomainsocket.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/ui/unixdomainsocket.h (limited to 'src/ui/unixdomainsocket.h') diff --git a/src/ui/unixdomainsocket.h b/src/ui/unixdomainsocket.h new file mode 100644 index 000000000..37e5a364b --- /dev/null +++ b/src/ui/unixdomainsocket.h @@ -0,0 +1,46 @@ +#ifndef UNIXDOMAINSOCKET_H +#define UNIXDOMAINSOCKET_H + +#include +#include +#include +#include +#include + + +/*! + * UnixDomainSocket class is a wrapper around the unix domain sockets implementation. + * Used for QMMP interprocess communications. + * @author Vladimir Kuznetsov + */ +class UnixDomainSocket : public QUdpSocket +{ +Q_OBJECT +public: + UnixDomainSocket(QObject * parent = 0 ); + + /*! + * Try to bind socket to \b path. Returns \b true on success, otherwise \b false + */ + bool bind(const QString& file); + + /*! + * Checks if socket at \b path path is alive( i.e. connectable). + */ + bool alive(const QString& path); + ~UnixDomainSocket(); + +public slots: + /*! + * Sends the datagram \b command to the socket at \b path path. + */ + void writeDatagram(const char* command,const QString& path); +private: + unsigned int _s; + struct sockaddr_un _local; + bool _bound; +}; + + +#endif + -- cgit v1.2.3-13-gbd6f