File indexing completed on 2024-04-21 04:54:18

0001 /*
0002     SPDX-FileCopyrightText: 2002 Rik Hemsley ( rikkus ) <rik@kde.org>
0003     SPDX-FileCopyrightText: 2002 Benjamin Meyer <ben-devel@meyerhome.net>
0004     SPDX-FileCopyrightText: 2002 Nadeem Hasan <nhasan@kde.org>
0005 
0006     SPDX-License-Identifier: LGPL-2.0-or-later
0007 */
0008 
0009 #ifndef KCDDB_CDDBP_LOOKUP_H
0010 #define KCDDB_CDDBP_LOOKUP_H
0011 
0012 #include "lookup.h"
0013 
0014 #include <QTcpSocket>
0015 
0016 namespace KCDDB
0017 {
0018   class CDDBPLookup : public Lookup
0019   {
0020     public:
0021       CDDBPLookup();
0022       virtual ~CDDBPLookup();
0023 
0024       void sendHandshake();
0025       void sendProto();
0026       void sendQuery();
0027       void sendRead( const CDDBMatch &  );
0028       void sendQuit();
0029 
0030       void close();
0031     protected:
0032       qint64 writeLine( const QString & );
0033 
0034       bool parseGreeting( const QString & );
0035       bool parseHandshake( const QString & );
0036 
0037       bool isConnected()
0038         { return QAbstractSocket::ConnectedState == socket_->state(); }
0039 
0040       QTcpSocket* socket_;
0041   };
0042 }
0043 
0044 #endif
0045 
0046 // vim:tabstop=2:shiftwidth=2:expandtab:cinoptions=(s,U1,m1