An API for using MQTT over multiple transports
Dependencies: FP MQTTPacket
Dependents: Cellular_HelloMQTT IoTStarterKit GSwifiInterface_HelloMQTT IBMIoTClientEthernetExample ... more
This library is part of the EclipseTM Paho project; specifically the embedded client.
The goals of this API are:
- to be independent of any system library: hence templates parameters for networking, timer and threading classes
- not to rely on heap storage, only automatic (I think this is a good thing)
- to limit memory use, for instance by defining the size of the buffers and arrays used at object creation time
MQTTClient.cpp
- Committer:
- icraggs
- Date:
- 2014-04-10
- Revision:
- 10:68a4ada53367
- Parent:
- 9:01b8cc7d94cc
- Child:
- 11:db15da110a37
- Child:
- 12:cc7f2d62a393
File content as of revision 10:68a4ada53367:
/******************************************************************************* * Copyright (c) 2014 IBM Corp. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Eclipse Distribution License v1.0 which accompany this distribution. * * The Eclipse Public License is available at * http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Ian Craggs - initial API and implementation and/or initial documentation *******************************************************************************/ #include "MQTTClient.h" #include "MQTTPacket.h" void MQTT::threadfn(void* arg) { ((Client<Network, Timer, Thread>*) arg)->run(NULL); } MQTT::PacketId::PacketId() { next = 0; } int MQTT::PacketId::getNext() { return next = (next == MAX_PACKET_ID) ? 1 : ++next; }