Program for mbed with MQTT music

Dependencies:   C12832 MQTT

Committer:
donovanbaillieu
Date:
Mon Jan 08 15:02:58 2018 +0000
Revision:
0:5e04051a59b9
initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
donovanbaillieu 0:5e04051a59b9 1 #ifndef _MQTTNETWORK_H_
donovanbaillieu 0:5e04051a59b9 2 #define _MQTTNETWORK_H_
donovanbaillieu 0:5e04051a59b9 3
donovanbaillieu 0:5e04051a59b9 4 #include "NetworkInterface.h"
donovanbaillieu 0:5e04051a59b9 5
donovanbaillieu 0:5e04051a59b9 6 class MQTTNetwork {
donovanbaillieu 0:5e04051a59b9 7 public:
donovanbaillieu 0:5e04051a59b9 8 MQTTNetwork(NetworkInterface* aNetwork) : network(aNetwork) {
donovanbaillieu 0:5e04051a59b9 9 socket = new TCPSocket();
donovanbaillieu 0:5e04051a59b9 10 }
donovanbaillieu 0:5e04051a59b9 11
donovanbaillieu 0:5e04051a59b9 12 ~MQTTNetwork() {
donovanbaillieu 0:5e04051a59b9 13 delete socket;
donovanbaillieu 0:5e04051a59b9 14 }
donovanbaillieu 0:5e04051a59b9 15
donovanbaillieu 0:5e04051a59b9 16 int read(unsigned char* buffer, int len, int timeout) {
donovanbaillieu 0:5e04051a59b9 17 return socket->recv(buffer, len);
donovanbaillieu 0:5e04051a59b9 18 }
donovanbaillieu 0:5e04051a59b9 19
donovanbaillieu 0:5e04051a59b9 20 int write(unsigned char* buffer, int len, int timeout) {
donovanbaillieu 0:5e04051a59b9 21 return socket->send(buffer, len);
donovanbaillieu 0:5e04051a59b9 22 }
donovanbaillieu 0:5e04051a59b9 23
donovanbaillieu 0:5e04051a59b9 24 int connect(const char* hostname, int port) {
donovanbaillieu 0:5e04051a59b9 25 socket->open(network);
donovanbaillieu 0:5e04051a59b9 26 return socket->connect(hostname, port);
donovanbaillieu 0:5e04051a59b9 27 }
donovanbaillieu 0:5e04051a59b9 28
donovanbaillieu 0:5e04051a59b9 29 int disconnect() {
donovanbaillieu 0:5e04051a59b9 30 return socket->close();
donovanbaillieu 0:5e04051a59b9 31 }
donovanbaillieu 0:5e04051a59b9 32
donovanbaillieu 0:5e04051a59b9 33 private:
donovanbaillieu 0:5e04051a59b9 34 NetworkInterface* network;
donovanbaillieu 0:5e04051a59b9 35 TCPSocket* socket;
donovanbaillieu 0:5e04051a59b9 36 };
donovanbaillieu 0:5e04051a59b9 37
donovanbaillieu 0:5e04051a59b9 38 #endif // _MQTTNETWORK_H_