Multi-Hackers / SocketModem

Dependents:   M2X_dev axeda_wrapper_dev MTS_M2x_Example1 MTS_Cellular_Connect_Example ... more

Committer:
jengbrecht
Date:
Thu Dec 19 16:47:26 2013 +0000
Revision:
36:bb6b293c7495
Parent:
17:2d7c4ea7491b
Child:
40:14342c4de476
Added a ton more documentation to most of the headers files. Also removed the capacity and available functions from MTSBufferedIO in favor of readable and writeable. Removed the single available method call from the cellular class.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jengbrecht 0:563b70517320 1 #ifndef MTSBUFFEREDIO_CPP
jengbrecht 0:563b70517320 2 #define MTSBUFFEREDIO_CPP
jengbrecht 0:563b70517320 3
jengbrecht 0:563b70517320 4 #include "MTSBufferedIO.h"
jengbrecht 0:563b70517320 5
jengbrecht 0:563b70517320 6 MTSBufferedIO::MTSBufferedIO(int txBufferSize, int rxBufferSize)
jengbrecht 0:563b70517320 7 {
jengbrecht 0:563b70517320 8 txBuffer = new MTSCircularBuffer(txBufferSize);
jengbrecht 0:563b70517320 9 rxBuffer = new MTSCircularBuffer(rxBufferSize);
jengbrecht 0:563b70517320 10 }
jengbrecht 0:563b70517320 11
jengbrecht 0:563b70517320 12 MTSBufferedIO::~MTSBufferedIO()
jengbrecht 0:563b70517320 13 {
jengbrecht 0:563b70517320 14 delete txBuffer;
jengbrecht 0:563b70517320 15 delete rxBuffer;
jengbrecht 0:563b70517320 16 }
jengbrecht 0:563b70517320 17
jengbrecht 0:563b70517320 18 int MTSBufferedIO::write(char* data, int length)
jengbrecht 0:563b70517320 19 {
jengbrecht 0:563b70517320 20 int tmp = txBuffer->write(data, length);
jengbrecht 0:563b70517320 21 handleWrite();
jengbrecht 0:563b70517320 22 return tmp;
jengbrecht 0:563b70517320 23 }
jengbrecht 0:563b70517320 24
jengbrecht 0:563b70517320 25 int MTSBufferedIO::write(char data)
jengbrecht 0:563b70517320 26 {
jengbrecht 0:563b70517320 27 int tmp = txBuffer->write(data);
jengbrecht 0:563b70517320 28 handleWrite();
jengbrecht 0:563b70517320 29 return tmp;
jengbrecht 0:563b70517320 30 }
jengbrecht 0:563b70517320 31
sgodinez 17:2d7c4ea7491b 32 int MTSBufferedIO::writeable() {
sgodinez 17:2d7c4ea7491b 33 return txBuffer->capacity();
sgodinez 17:2d7c4ea7491b 34 }
sgodinez 17:2d7c4ea7491b 35
jengbrecht 0:563b70517320 36 int MTSBufferedIO::read(char* data, int length)
jengbrecht 0:563b70517320 37 {
jengbrecht 0:563b70517320 38 return rxBuffer->read(data, length);
jengbrecht 0:563b70517320 39 }
jengbrecht 0:563b70517320 40
sgodinez 17:2d7c4ea7491b 41 int MTSBufferedIO::read(char& data)
jengbrecht 0:563b70517320 42 {
sgodinez 17:2d7c4ea7491b 43 return rxBuffer->read(data);
sgodinez 17:2d7c4ea7491b 44 }
sgodinez 17:2d7c4ea7491b 45
sgodinez 17:2d7c4ea7491b 46 int MTSBufferedIO::readable() {
sgodinez 17:2d7c4ea7491b 47 return rxBuffer->available();
jengbrecht 0:563b70517320 48 }
jengbrecht 0:563b70517320 49
jengbrecht 0:563b70517320 50 bool MTSBufferedIO::txEmpty()
jengbrecht 0:563b70517320 51 {
jengbrecht 0:563b70517320 52 return txBuffer->isEmpty();
jengbrecht 0:563b70517320 53 }
jengbrecht 0:563b70517320 54
jengbrecht 0:563b70517320 55 bool MTSBufferedIO::rxEmpty()
jengbrecht 0:563b70517320 56 {
jengbrecht 0:563b70517320 57 return rxBuffer->isEmpty();
jengbrecht 0:563b70517320 58 }
jengbrecht 0:563b70517320 59
jengbrecht 0:563b70517320 60 bool MTSBufferedIO::txFull()
jengbrecht 0:563b70517320 61 {
jengbrecht 0:563b70517320 62 return txBuffer->isFull();
jengbrecht 0:563b70517320 63 }
jengbrecht 0:563b70517320 64
jengbrecht 0:563b70517320 65 bool MTSBufferedIO::rxFull()
jengbrecht 0:563b70517320 66 {
jengbrecht 0:563b70517320 67 return rxBuffer->isFull();
jengbrecht 0:563b70517320 68 }
jengbrecht 0:563b70517320 69
jengbrecht 0:563b70517320 70 void MTSBufferedIO::txClear()
jengbrecht 0:563b70517320 71 {
jengbrecht 0:563b70517320 72 txBuffer->clear();
jengbrecht 0:563b70517320 73 }
jengbrecht 0:563b70517320 74
jengbrecht 0:563b70517320 75 void MTSBufferedIO::rxClear()
jengbrecht 0:563b70517320 76 {
jengbrecht 0:563b70517320 77 rxBuffer->clear();
jengbrecht 0:563b70517320 78 }
jengbrecht 0:563b70517320 79
jengbrecht 0:563b70517320 80 #endif /* MTSBUFFEREDSERIAL_CPP */