Add some different xPL implementations done by Telldus
This commit is contained in:
parent
deebf2045e
commit
d4b46c71ec
21 changed files with 2285 additions and 0 deletions
55
xpl/qtxpl/xplinstance.h
Normal file
55
xpl/qtxpl/xplinstance.h
Normal file
|
@ -0,0 +1,55 @@
|
|||
#ifndef XPLINSTANCE_H
|
||||
#define XPLINSTANCE_H
|
||||
|
||||
#include <QObject>
|
||||
#include "xpldevice.h"
|
||||
#include "xplmessage.h"
|
||||
|
||||
const int XPL_PORT = 3865;
|
||||
|
||||
class QTimer;
|
||||
class xPLInstancePrivate;
|
||||
|
||||
class QTXPL_EXPORT xPLInstance : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
Q_ENUMS( OperationMode );
|
||||
|
||||
Q_PROPERTY( OperationMode operationMode READ operationMode );
|
||||
public:
|
||||
enum OperationMode { Client, Disconnected, Hub };
|
||||
|
||||
xPLInstance( const xPLDevice &device, QObject *parent = 0 );
|
||||
xPLInstance( const QString &vendor, const QString &device, QObject *parent = 0 );
|
||||
~xPLInstance();
|
||||
|
||||
public slots:
|
||||
bool attatched() const;
|
||||
|
||||
OperationMode operationMode() const;
|
||||
|
||||
void sendMessage( const xPLMessage &message ) const;
|
||||
void sendMessage( xPLMessage * message ) const;
|
||||
void sendMessage( const xPLMessage &message, const xPLDevice &device ) const;
|
||||
|
||||
signals:
|
||||
void messageReceived(xPLMessage *message);
|
||||
void attachedToNetwork();
|
||||
|
||||
private slots:
|
||||
void processPendingDatagrams();
|
||||
void sendHeartbeat();
|
||||
void poll();
|
||||
|
||||
private:
|
||||
void processHeartBeat( const xPLMessage &message );
|
||||
void processMessage( const xPLMessage &message );
|
||||
void init();
|
||||
int bindToPort();
|
||||
void setAttatched( bool attatched );
|
||||
|
||||
xPLInstancePrivate *d;
|
||||
};
|
||||
|
||||
#endif // XPLINSTANCE_H
|
Loading…
Add table
Add a link
Reference in a new issue