megan gimple / SDFileSystem

Dependents:   gimple_A4_3_Temp_Light

Committer:
mgimple
Date:
Sat Nov 13 20:10:05 2021 +0000
Revision:
0:07ff9ae5339f
SD

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mgimple 0:07ff9ae5339f 1 /* mbed Microcontroller Library
mgimple 0:07ff9ae5339f 2 * Copyright (c) 2006-2012 ARM Limited
mgimple 0:07ff9ae5339f 3 *
mgimple 0:07ff9ae5339f 4 * Permission is hereby granted, free of charge, to any person obtaining a copy
mgimple 0:07ff9ae5339f 5 * of this software and associated documentation files (the "Software"), to deal
mgimple 0:07ff9ae5339f 6 * in the Software without restriction, including without limitation the rights
mgimple 0:07ff9ae5339f 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
mgimple 0:07ff9ae5339f 8 * copies of the Software, and to permit persons to whom the Software is
mgimple 0:07ff9ae5339f 9 * furnished to do so, subject to the following conditions:
mgimple 0:07ff9ae5339f 10 *
mgimple 0:07ff9ae5339f 11 * The above copyright notice and this permission notice shall be included in
mgimple 0:07ff9ae5339f 12 * all copies or substantial portions of the Software.
mgimple 0:07ff9ae5339f 13 *
mgimple 0:07ff9ae5339f 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
mgimple 0:07ff9ae5339f 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
mgimple 0:07ff9ae5339f 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
mgimple 0:07ff9ae5339f 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
mgimple 0:07ff9ae5339f 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
mgimple 0:07ff9ae5339f 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
mgimple 0:07ff9ae5339f 20 * SOFTWARE.
mgimple 0:07ff9ae5339f 21 */
mgimple 0:07ff9ae5339f 22 #ifndef MBED_FATDIRHANDLE_H
mgimple 0:07ff9ae5339f 23 #define MBED_FATDIRHANDLE_H
mgimple 0:07ff9ae5339f 24
mgimple 0:07ff9ae5339f 25 #include "DirHandle.h"
mgimple 0:07ff9ae5339f 26
mgimple 0:07ff9ae5339f 27 using namespace mbed;
mgimple 0:07ff9ae5339f 28
mgimple 0:07ff9ae5339f 29 class FATDirHandle : public DirHandle {
mgimple 0:07ff9ae5339f 30
mgimple 0:07ff9ae5339f 31 public:
mgimple 0:07ff9ae5339f 32 FATDirHandle(const FATFS_DIR &the_dir);
mgimple 0:07ff9ae5339f 33 virtual int closedir();
mgimple 0:07ff9ae5339f 34 virtual struct dirent *readdir();
mgimple 0:07ff9ae5339f 35 virtual void rewinddir();
mgimple 0:07ff9ae5339f 36 virtual off_t telldir();
mgimple 0:07ff9ae5339f 37 virtual void seekdir(off_t location);
mgimple 0:07ff9ae5339f 38
mgimple 0:07ff9ae5339f 39 virtual ssize_t read(struct dirent *ent);
mgimple 0:07ff9ae5339f 40 virtual int close() { return closedir(); };
mgimple 0:07ff9ae5339f 41 virtual void seek(off_t offset) { seekdir(offset); };
mgimple 0:07ff9ae5339f 42 virtual off_t tell() { return telldir(); };
mgimple 0:07ff9ae5339f 43 virtual void rewind() { rewinddir(); };
mgimple 0:07ff9ae5339f 44
mgimple 0:07ff9ae5339f 45 private:
mgimple 0:07ff9ae5339f 46 FATFS_DIR dir;
mgimple 0:07ff9ae5339f 47 struct dirent cur_entry;
mgimple 0:07ff9ae5339f 48
mgimple 0:07ff9ae5339f 49 };
mgimple 0:07ff9ae5339f 50
mgimple 0:07ff9ae5339f 51 #endif