00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _SOPRANO_SERVER_CLIENT_H_
00023 #define _SOPRANO_SERVER_CLIENT_H_
00024
00025 #include <QtCore/QObject>
00026 #include <QtCore/QList>
00027 #include <QtNetwork/QHostAddress>
00028
00029 #include "error.h"
00030 #include "backend.h"
00031 #include "soprano_export.h"
00032
00033
00034
00035 namespace Soprano {
00036
00037 class Model;
00038
00039 namespace Client {
00057 class SOPRANO_CLIENT_EXPORT TcpClient : public QObject, public Error::ErrorCache
00058 {
00059 Q_OBJECT
00060
00061 public:
00065 TcpClient( QObject* parent = 0 );
00066
00070 virtual ~TcpClient();
00071
00075 static const quint16 DEFAULT_PORT;
00076
00083 bool connect( const QHostAddress& address = QHostAddress::LocalHost, int port = DEFAULT_PORT );
00084
00091 bool isConnected();
00092
00097 void disconnect();
00098
00112 Model* createModel( const QString& name, const QList<BackendSetting>& settings = QList<BackendSetting>() );
00113
00124 void removeModel( const QString& name );
00125
00134
00135
00136 private Q_SLOTS:
00137 void slotError( QAbstractSocket::SocketError error );
00138
00139 private:
00140 class Private;
00141 Private* const d;
00142 };
00143 }
00144 }
00145
00146 #endif