2018-04-09 22:30:23 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "table_object.h"
|
|
|
|
|
|
|
|
class ApplicationProgramObject: public TableObject
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ApplicationProgramObject(uint8_t* memoryReference);
|
2018-04-13 22:08:10 +02:00
|
|
|
#pragma GCC diagnostic push
|
|
|
|
#pragma GCC diagnostic ignored "-Woverloaded-virtual"
|
2018-04-11 22:52:15 +02:00
|
|
|
void readProperty(PropertyID id, uint32_t start, uint32_t& count, uint8_t* data);
|
2018-04-13 22:08:10 +02:00
|
|
|
#pragma GCC diagnostic pop
|
2018-04-09 22:30:23 +02:00
|
|
|
void writeProperty(PropertyID id, uint8_t start, uint8_t* data, uint8_t count);
|
|
|
|
uint8_t propertySize(PropertyID id);
|
|
|
|
uint8_t* data(uint32_t addr);
|
|
|
|
uint8_t getByte(uint32_t addr);
|
|
|
|
uint16_t getWord(uint32_t addr);
|
|
|
|
uint32_t getInt(uint32_t addr);
|
|
|
|
uint8_t* save(uint8_t* buffer);
|
|
|
|
uint8_t* restore(uint8_t* buffer);
|
2018-04-13 22:08:10 +02:00
|
|
|
protected:
|
|
|
|
uint8_t propertyCount();
|
|
|
|
PropertyDescription* propertyDescriptions();
|
2018-04-09 22:30:23 +02:00
|
|
|
private:
|
|
|
|
uint8_t _programVersion[5];
|
|
|
|
};
|