This commit is contained in:
Wolfgang Hottgenroth
2014-05-14 19:37:04 +02:00
commit ca8ed709b8
22 changed files with 1468 additions and 0 deletions

41
meterBusServer.cpp Normal file
View File

@ -0,0 +1,41 @@
#include "mBusDialog.h"
#include "meterBusServer.h"
#include <Streaming.h>
MeterBusServer::MeterBusServer(uint16_t port, RequestSender *meterBusMaster) :
m_server(port), m_client(255), m_meterBusMaster(meterBusMaster) {
}
void MeterBusServer::sendResponse(uint8_t *responseBuffer, uint16_t responseBufferLength) {
m_server.write(responseBuffer, responseBufferLength);
}
void MeterBusServer::sendError(uint8_t code) {
}
void MeterBusServer::begin() {
m_server.begin();
}
void MeterBusServer::exec() {
m_client = m_server.available();
if (m_client) {
uint16_t sendBufLen = 0;
uint8_t *sendBuffer = m_meterBusMaster->getSendBuffer();
if (sendBuffer != 0) {
int chi;
while ((chi = m_client.read()) != -1) {
char ch = (char) chi;
*(sendBuffer + sendBufLen) = ch;
sendBufLen++;
}
m_meterBusMaster->sendBufferReady(sendBufLen, this);
}
}
}