![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
USB composite device example program, drag-and-drop flash writer.
Dependencies: SWD USBDevice mbed BaseDAP
Diff: tests/USBMSD2/DiskInterface.h
- Revision:
- 1:ea8e179320d7
diff -r 2385683c867a -r ea8e179320d7 tests/USBMSD2/DiskInterface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/USBMSD2/DiskInterface.h Sat Sep 28 03:21:14 2013 +0000 @@ -0,0 +1,49 @@ +// DiskInterface.h 2013/9/21 +#pragma once + +class DiskInterface { +public: + /* + * read a block on a storage chip + * + * @param data pointer where will be stored read data + * @param block block number + * @returns 0 if successful + */ + virtual int disk_read(uint8_t * data, uint64_t block) = 0; + + /* + * write a block on a storage chip + * + * @param data data to write + * @param block block number + * @returns 0 if successful + */ + virtual int disk_write(const uint8_t * data, uint64_t block) = 0; + + /* + * Disk initilization + */ + virtual int disk_initialize() = 0; + + /* + * Return the number of blocks + * + * @returns number of blocks + */ + virtual uint64_t disk_sectors() = 0; + + /* + * Return memory size + * + * @returns memory size + */ + virtual uint64_t disk_size() = 0; + + /* + * To check the status of the storage chip + * + * @returns status: 0: OK, 1: disk not initialized, 2: no medium in the drive, 4: write protected + */ + virtual int disk_status() = 0; +};