From 381f4fed30fe4e5408cddf7e540ce2deca1b3baf Mon Sep 17 00:00:00 2001 From: vovanec Date: Thu, 27 Sep 2007 21:24:44 +0000 Subject: redesigned command line interface git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@162 90c681e8-e032-0410-971d-27865f9a5e38 --- src/unixdomainsocket.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/unixdomainsocket.h (limited to 'src/unixdomainsocket.h') diff --git a/src/unixdomainsocket.h b/src/unixdomainsocket.h new file mode 100644 index 000000000..7538e685a --- /dev/null +++ b/src/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 _binded; +}; + + +#endif + -- cgit v1.2.3-13-gbd6f