2018-04-09 22:30:23 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <stdint.h>
|
2018-08-08 00:34:15 +02:00
|
|
|
#include <stddef.h>
|
2018-04-09 22:30:23 +02:00
|
|
|
#include "save_restore.h"
|
|
|
|
|
|
|
|
class Platform
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual uint32_t currentIpAddress() = 0;
|
|
|
|
virtual uint32_t currentSubnetMask() = 0;
|
|
|
|
virtual uint32_t currentDefaultGateway() = 0;
|
|
|
|
virtual void macAddress(uint8_t* data) = 0;
|
|
|
|
|
|
|
|
virtual uint32_t millis() = 0;
|
|
|
|
virtual void restart() = 0;
|
|
|
|
virtual void fatalError() = 0;
|
|
|
|
virtual void mdelay(uint32_t millis) = 0;
|
|
|
|
|
|
|
|
virtual void setupMultiCast(uint32_t addr, uint16_t port) = 0;
|
|
|
|
virtual void closeMultiCast() = 0;
|
|
|
|
virtual bool sendBytes(uint8_t* buffer, uint16_t len) = 0;
|
|
|
|
virtual int readBytes(uint8_t* buffer, uint16_t maxLen) = 0;
|
|
|
|
|
2018-08-16 22:56:51 +02:00
|
|
|
virtual void setupUart() = 0;
|
|
|
|
virtual void closeUart() = 0;
|
|
|
|
virtual int uartAvailable() = 0;
|
|
|
|
virtual size_t writeUart(const uint8_t data) = 0;
|
|
|
|
virtual size_t writeUart(const uint8_t *buffer, size_t size) = 0;
|
|
|
|
virtual int readUart() = 0;
|
|
|
|
virtual size_t readBytesUart(uint8_t *buffer, size_t length) = 0;
|
2018-08-08 00:34:15 +02:00
|
|
|
|
2018-04-09 22:30:23 +02:00
|
|
|
virtual uint8_t* getEepromBuffer(uint16_t size) = 0;
|
|
|
|
virtual void commitToEeprom() = 0;
|
|
|
|
};
|