initial
This commit is contained in:
41
meterBusServer.cpp
Normal file
41
meterBusServer.cpp
Normal 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user