2012-08-20 15:37:46 -03:00
|
|
|
|
|
|
|
#ifndef __AP_HAL_STORAGE_H__
|
|
|
|
#define __AP_HAL_STORAGE_H__
|
|
|
|
|
2012-08-30 21:18:20 -03:00
|
|
|
#include <stdint.h>
|
2012-08-20 15:37:46 -03:00
|
|
|
#include "AP_HAL_Namespace.h"
|
|
|
|
|
|
|
|
class AP_HAL::Storage {
|
|
|
|
public:
|
2012-08-30 21:18:20 -03:00
|
|
|
virtual void init(void *) = 0;
|
2012-11-12 15:05:01 -04:00
|
|
|
virtual uint8_t read_byte(uint16_t loc) = 0;
|
|
|
|
virtual uint16_t read_word(uint16_t loc) = 0;
|
|
|
|
virtual uint32_t read_dword(uint16_t loc) = 0;
|
|
|
|
virtual void read_block(void *dst, uint16_t src, size_t n) = 0;
|
2012-08-30 21:18:20 -03:00
|
|
|
|
2012-11-12 15:05:01 -04:00
|
|
|
virtual void write_byte(uint16_t loc, uint8_t value) = 0;
|
|
|
|
virtual void write_word(uint16_t loc, uint16_t value) = 0;
|
|
|
|
virtual void write_dword(uint16_t loc, uint32_t value) = 0;
|
2013-06-04 01:02:13 -03:00
|
|
|
virtual void write_block(uint16_t dst, const void* src, size_t n) = 0;
|
2012-08-20 15:37:46 -03:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // __AP_HAL_STORAGE_H__
|
|
|
|
|