ARM mbed M2X API Client: The ARM mbed client library is used to send/receive data to/from AT&T's M2X service from mbed LPC1768 microcontrollers.

Dependents:   m2x-demo-all M2X_MTS_ACCEL_DEMO M2X_MTS_Accel M2X_K64F_ACCEL ... more

Committer:
citrusbyte
Date:
Fri Sep 26 09:35:10 2014 +0000
Revision:
12:debf4b2f7960
Parent:
0:f479e4f4db0e
Use new buffered client implementation

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jb8414 0:f479e4f4db0e 1 #ifndef Client_h
jb8414 0:f479e4f4db0e 2 #define Client_h
jb8414 0:f479e4f4db0e 3
jb8414 0:f479e4f4db0e 4 #include "TCPSocketConnection.h"
jb8414 0:f479e4f4db0e 5
jb8414 0:f479e4f4db0e 6 #include "Print.h"
jb8414 0:f479e4f4db0e 7 #include "Utility.h"
jb8414 0:f479e4f4db0e 8
jb8414 0:f479e4f4db0e 9 /*
jb8414 0:f479e4f4db0e 10 * TCP Client
jb8414 0:f479e4f4db0e 11 */
jb8414 0:f479e4f4db0e 12 class Client : public Print {
jb8414 0:f479e4f4db0e 13 public:
jb8414 0:f479e4f4db0e 14 Client();
jb8414 0:f479e4f4db0e 15 ~Client();
jb8414 0:f479e4f4db0e 16
jb8414 0:f479e4f4db0e 17 virtual int connect(const char *host, uint16_t port);
jb8414 0:f479e4f4db0e 18 virtual size_t write(uint8_t);
jb8414 0:f479e4f4db0e 19 virtual size_t write(const uint8_t *buf, size_t size);
jb8414 0:f479e4f4db0e 20 virtual int available();
jb8414 0:f479e4f4db0e 21 virtual int read();
jb8414 0:f479e4f4db0e 22 virtual void flush();
jb8414 0:f479e4f4db0e 23 virtual void stop();
jb8414 0:f479e4f4db0e 24 virtual uint8_t connected();
jb8414 0:f479e4f4db0e 25 private:
jb8414 0:f479e4f4db0e 26 virtual int read(uint8_t *buf, size_t size);
citrusbyte 12:debf4b2f7960 27 void _fillin(void);
citrusbyte 12:debf4b2f7960 28 uint8_t _inbuf[128];
citrusbyte 12:debf4b2f7960 29 uint8_t _incnt;
citrusbyte 12:debf4b2f7960 30 void _flushout(void);
citrusbyte 12:debf4b2f7960 31 uint8_t _outbuf[128];
citrusbyte 12:debf4b2f7960 32 uint8_t _outcnt;
jb8414 0:f479e4f4db0e 33 TCPSocketConnection _sock;
jb8414 0:f479e4f4db0e 34 };
jb8414 0:f479e4f4db0e 35
jb8414 0:f479e4f4db0e 36 #endif