Jack Hansdampf / mbed-mqtt-GSOE1

Dependents:   ESP8266MQTT

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MQTTSNGWClientRecvTask.h Source File

MQTTSNGWClientRecvTask.h

00001 /**************************************************************************************
00002  * Copyright (c) 2016, Tomoaki Yamaguchi
00003  *
00004  * All rights reserved. This program and the accompanying materials
00005  * are made available under the terms of the Eclipse Public License v1.0
00006  * and Eclipse Distribution License v1.0 which accompany this distribution.
00007  *
00008  * The Eclipse Public License is available at
00009  *    http://www.eclipse.org/legal/epl-v10.html
00010  * and the Eclipse Distribution License is available at
00011  *   http://www.eclipse.org/org/documents/edl-v10.php.
00012  *
00013  * Contributors:
00014  *    Tomoaki Yamaguchi - initial API and implementation and/or initial documentation
00015  **************************************************************************************/
00016 #ifndef MQTTSNGWCLIENTRECVTASK_H_
00017 #define MQTTSNGWCLIENTRECVTASK_H_
00018 
00019 #include "SensorNetwork.h"
00020 #include "MQTTSNGateway.h"
00021 
00022 namespace MQTTSNGW
00023 {
00024 class AdapterManager;
00025 
00026 /*=====================================
00027      Class ClientRecvTask
00028  =====================================*/
00029 class ClientRecvTask:public Thread
00030 {
00031     MAGIC_WORD_FOR_THREAD;
00032     friend AdapterManager;
00033 public:
00034     ClientRecvTask(Gateway*);
00035     ~ClientRecvTask(void);
00036     virtual void initialize(int argc, char** argv);
00037     void run(void);
00038 
00039 private:
00040     void log(Client*, MQTTSNPacket*, MQTTSNString* id);
00041     void log(const char* clientId, MQTTSNPacket* packet);
00042 
00043     Gateway*       _gateway;
00044     SensorNetwork* _sensorNetwork;
00045 };
00046 
00047 }
00048 
00049 #endif /* MQTTSNGWCLIENTRECVTASK_H_ */