![]() |
Repetier-Firmware 0.2
|
Access FAT16 and FAT32 files on SD and SDHC cards. More...
#include <SdFat.h>
Public Member Functions | |
SdFile (void) | |
void | clearUnbufferedRead (void) |
uint8_t | close (void) |
uint8_t | contiguousRange (uint32_t *bgnBlock, uint32_t *endBlock) |
uint8_t | createContiguous (SdFile *dirFile, const char *fileName, uint32_t size) |
uint32_t | curCluster (void) const |
uint32_t | curPosition (void) const |
uint32_t | dirBlock (void) const |
uint8_t | dirEntry (dir_t *dir) |
uint8_t | dirIndex (void) const |
uint32_t | fileSize (void) const |
uint32_t | firstCluster (void) const |
uint8_t | isDir (void) const |
uint8_t | isFile (void) const |
uint8_t | isOpen (void) const |
uint8_t | isSubDir (void) const |
uint8_t | isRoot (void) const |
void | ls (uint8_t flags=0, uint8_t indent=0) |
uint8_t | makeDir (SdFile *dir, const char *dirName) |
uint8_t | open (SdFile *dirFile, uint16_t index, uint8_t oflag) |
uint8_t | open (SdFile *dirFile, const char *fileName, uint8_t oflag) |
uint8_t | openRoot (SdVolume *vol) |
int16_t | read (void) |
int16_t | read (void *buf, uint16_t nbyte) |
int8_t | readDir (dir_t *dir) |
uint8_t | remove (void) |
void | rewind (void) |
uint8_t | rmDir (void) |
uint8_t | rmRfStar (void) |
uint8_t | seekCur (uint32_t pos) |
uint8_t | seekEnd (void) |
uint8_t | seekSet (uint32_t pos) |
void | setUnbufferedRead (void) |
uint8_t | timestamp (uint8_t flag, uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) |
uint8_t | sync (void) |
uint8_t | type (void) const |
uint8_t | truncate (uint32_t size) |
uint8_t | unbufferedRead (void) const |
SdVolume * | volume (void) const |
void | write (uint8_t b) |
int16_t | write (const void *buf, uint16_t nbyte) |
void | write (const char *str) |
void | write_P (PGM_P str) |
void | writeln_P (PGM_P str) |
uint8_t | contiguousRange (uint32_t &bgnBlock, uint32_t &endBlock) |
uint8_t | createContiguous (SdFile &dirFile, const char *fileName, uint32_t size) |
uint8_t | dirEntry (dir_t &dir) |
uint8_t | makeDir (SdFile &dir, const char *dirName) |
uint8_t | open (SdFile &dirFile, const char *fileName, uint8_t oflag) |
uint8_t | open (SdFile &dirFile, const char *fileName) |
uint8_t | open (SdFile &dirFile, uint16_t index, uint8_t oflag) |
uint8_t | openRoot (SdVolume &vol) |
int8_t | readDir (dir_t &dir) |
Static Public Member Functions | |
static void | dateTimeCallback (void(*dateTime)(uint16_t *date, uint16_t *time)) |
static void | dateTimeCallbackCancel (void) |
static void | dirName (const dir_t &dir, char *name) |
static void | printDirName (const dir_t &dir, uint8_t width) |
static void | printFatDate (uint16_t fatDate) |
static void | printFatTime (uint16_t fatTime) |
static void | printTwoDigits (uint8_t v) |
static uint8_t | remove (SdFile *dirFile, const char *fileName) |
static void | dateTimeCallback (void(*dateTime)(uint16_t &date, uint16_t &time)) |
static uint8_t | remove (SdFile &dirFile, const char *fileName) |
Data Fields | |
bool | writeError |
Private Member Functions | |
uint8_t | addCluster (void) |
uint8_t | addDirCluster (void) |
dir_t * | cacheDirEntry (uint8_t action) |
uint8_t | openCachedEntry (uint8_t cacheIndex, uint8_t oflags) |
dir_t * | readDirCache (void) |
Static Private Member Functions | |
static void | oldToNew (uint16_t *date, uint16_t *time) |
static uint8_t | make83Name (const char *str, uint8_t *name) |
Private Attributes | |
uint8_t | flags_ |
uint8_t | type_ |
uint32_t | curCluster_ |
uint32_t | curPosition_ |
uint32_t | dirBlock_ |
uint8_t | dirIndex_ |
uint32_t | fileSize_ |
uint32_t | firstCluster_ |
SdVolume * | vol_ |
Static Private Attributes | |
static void(* | oldDateTime_ )(uint16_t &date, uint16_t &time) |
static uint8_t const | F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC) |
static uint8_t const | F_UNUSED = 0X30 |
static uint8_t const | F_FILE_UNBUFFERED_READ = 0X40 |
static uint8_t const | F_FILE_DIR_DIRTY = 0X80 |
static void(* | dateTime_ )(uint16_t *date, uint16_t *time) |
Access FAT16 and FAT32 files on SD and SDHC cards.
uint8_t addCluster | ( | void | ) | [private] |
uint8_t addDirCluster | ( | void | ) | [private] |
dir_t* cacheDirEntry | ( | uint8_t | action | ) | [private] |
void clearUnbufferedRead | ( | void | ) | [inline] |
Cancel unbuffered reads for this file. See setUnbufferedRead()
uint8_t close | ( | void | ) |
uint8_t contiguousRange | ( | uint32_t * | bgnBlock, |
uint32_t * | endBlock | ||
) |
uint8_t contiguousRange | ( | uint32_t & | bgnBlock, |
uint32_t & | endBlock | ||
) | [inline] |
uint8_t createContiguous | ( | SdFile * | dirFile, |
const char * | fileName, | ||
uint32_t | size | ||
) |
uint8_t createContiguous | ( | SdFile & | dirFile, |
const char * | fileName, | ||
uint32_t | size | ||
) | [inline] |
uint32_t curCluster | ( | void | ) | const [inline] |
uint32_t curPosition | ( | void | ) | const [inline] |
static void dateTimeCallback | ( | void(*)(uint16_t &date, uint16_t &time) | dateTime | ) | [inline, static] |
static void dateTimeCallback | ( | void(*)(uint16_t *date, uint16_t *time) | dateTime | ) | [inline, static] |
Set the date/time callback function
[in] | dateTime | The user's call back function. The callback function is of the form: |
void dateTime(uint16_t* date, uint16_t* time) { uint16_t year; uint8_t month, day, hour, minute, second; // User gets date and time from GPS or real-time clock here // return date using FAT_DATE macro to format fields *date = FAT_DATE(year, month, day); // return time using FAT_TIME macro to format fields *time = FAT_TIME(hour, minute, second); }
Sets the function that is called when a file is created or when a file's directory entry is modified by sync(). All timestamps, access, creation, and modify, are set when a file is created. sync() maintains the last access date and last modify date/time.
See the timestamp() function.
static void dateTimeCallbackCancel | ( | void | ) | [inline, static] |
Cancel the date/time callback function.
uint32_t dirBlock | ( | void | ) | const [inline] |
uint8_t dirEntry | ( | dir_t * | dir | ) |
uint8_t dirEntry | ( | dir_t & | dir | ) | [inline] |
uint8_t dirIndex | ( | void | ) | const [inline] |
static void dirName | ( | const dir_t & | dir, |
char * | name | ||
) | [static] |
uint32_t fileSize | ( | void | ) | const [inline] |
uint32_t firstCluster | ( | void | ) | const [inline] |
uint8_t isDir | ( | void | ) | const [inline] |
uint8_t isFile | ( | void | ) | const [inline] |
uint8_t isOpen | ( | void | ) | const [inline] |
uint8_t isRoot | ( | void | ) | const [inline] |
uint8_t isSubDir | ( | void | ) | const [inline] |
void ls | ( | uint8_t | flags = 0 , |
uint8_t | indent = 0 |
||
) |
static uint8_t make83Name | ( | const char * | str, |
uint8_t * | name | ||
) | [static, private] |
uint8_t makeDir | ( | SdFile * | dir, |
const char * | dirName | ||
) |
uint8_t makeDir | ( | SdFile & | dir, |
const char * | dirName | ||
) | [inline] |
static void oldToNew | ( | uint16_t * | date, |
uint16_t * | time | ||
) | [inline, static, private] |
uint8_t open | ( | SdFile & | dirFile, |
const char * | fileName, | ||
uint8_t | oflag | ||
) | [inline] |
uint8_t open | ( | SdFile * | dirFile, |
uint16_t | index, | ||
uint8_t | oflag | ||
) |
uint8_t open | ( | SdFile * | dirFile, |
const char * | fileName, | ||
uint8_t | oflag | ||
) |
uint8_t open | ( | SdFile & | dirFile, |
uint16_t | index, | ||
uint8_t | oflag | ||
) | [inline] |
uint8_t open | ( | SdFile & | dirFile, |
const char * | fileName | ||
) | [inline] |
uint8_t openCachedEntry | ( | uint8_t | cacheIndex, |
uint8_t | oflags | ||
) | [private] |
uint8_t openRoot | ( | SdVolume * | vol | ) |
uint8_t openRoot | ( | SdVolume & | vol | ) | [inline] |
static void printDirName | ( | const dir_t & | dir, |
uint8_t | width | ||
) | [static] |
static void printFatDate | ( | uint16_t | fatDate | ) | [static] |
static void printFatTime | ( | uint16_t | fatTime | ) | [static] |
static void printTwoDigits | ( | uint8_t | v | ) | [static] |
int16_t read | ( | void | ) | [inline] |
Read the next byte from a file.
int16_t read | ( | void * | buf, |
uint16_t | nbyte | ||
) |
int8_t readDir | ( | dir_t & | dir | ) | [inline] |
int8_t readDir | ( | dir_t * | dir | ) |
dir_t* readDirCache | ( | void | ) | [private] |
uint8_t remove | ( | void | ) |
static uint8_t remove | ( | SdFile * | dirFile, |
const char * | fileName | ||
) | [static] |
static uint8_t remove | ( | SdFile & | dirFile, |
const char * | fileName | ||
) | [inline, static] |
void rewind | ( | void | ) | [inline] |
Set the file's current position to zero.
uint8_t rmDir | ( | void | ) |
uint8_t rmRfStar | ( | void | ) |
uint8_t seekCur | ( | uint32_t | pos | ) | [inline] |
Set the files position to current position + pos. See seekSet().
uint8_t seekEnd | ( | void | ) | [inline] |
Set the files current position to end of file. Useful to position a file for append. See seekSet().
uint8_t seekSet | ( | uint32_t | pos | ) |
void setUnbufferedRead | ( | void | ) | [inline] |
Use unbuffered reads to access this file. Used with Wave Shield ISR. Used with Sd2Card::partialBlockRead() in WaveRP.
Not recommended for normal applications.
uint8_t sync | ( | void | ) |
uint8_t timestamp | ( | uint8_t | flag, |
uint16_t | year, | ||
uint8_t | month, | ||
uint8_t | day, | ||
uint8_t | hour, | ||
uint8_t | minute, | ||
uint8_t | second | ||
) |
uint8_t truncate | ( | uint32_t | size | ) |
uint8_t type | ( | void | ) | const [inline] |
uint8_t unbufferedRead | ( | void | ) | const [inline] |
void write | ( | const char * | str | ) |
int16_t write | ( | const void * | buf, |
uint16_t | nbyte | ||
) |
void write | ( | uint8_t | b | ) |
void write_P | ( | PGM_P | str | ) |
void writeln_P | ( | PGM_P | str | ) |
uint32_t curCluster_ [private] |
uint32_t curPosition_ [private] |
void(* dateTime_)(uint16_t *date, uint16_t *time) [static, private] |
uint32_t dirBlock_ [private] |
uint8_t dirIndex_ [private] |
uint8_t const F_FILE_DIR_DIRTY = 0X80 [static, private] |
uint8_t const F_FILE_UNBUFFERED_READ = 0X40 [static, private] |
uint8_t const F_UNUSED = 0X30 [static, private] |
uint32_t fileSize_ [private] |
uint32_t firstCluster_ [private] |
uint8_t flags_ [private] |
void(* oldDateTime_)(uint16_t &date, uint16_t &time) [static, private] |
uint8_t type_ [private] |
bool writeError |