FatStreamBase Class Reference

Base class for C++ style streams. More...

`#include <fstream.h>`

Inheritance diagram for FatStreamBase:
[legend]
Collaboration diagram for FatStreamBase:
[legend]

## Public Types

typedef unsigned int | fmtflags
typedef unsigned char | iostate
typedef int32_t | off_type
typedef uint8_t | openmode
typedef uint32_t | pos_type
enum | seekdir { beg, cur, end }
typedef uint32_t | streamsize

## Public Member Functions

bool | bad () const
void | clear (iostate state=goodbit)
bool | eof () const
bool | fail () const
char | fill ()
char | fill (char c)
fmtflags | flags () const
fmtflags | flags (fmtflags fl)
bool | good () const
| operator const void * () const
bool | operator! () const
int | precision () const
int | precision (unsigned int n)
iostate | rdstate () const
fmtflags | setf (fmtflags fl)
fmtflags | setf (fmtflags fl, fmtflags mask)
void | setstate (iostate state)
void | unsetf (fmtflags fl)
unsigned | width ()
unsigned | width (unsigned n)

## Static Public Attributes

static const fmtflags | adjustfield = left | right | internal
static const openmode | app = 0X4
static const openmode | ate = 0X8
static const iostate | badbit = 0X01
static const fmtflags | basefield = dec | hex | oct
static const openmode | binary = 0X10
static const fmtflags | boolalpha = 0x0100
static const fmtflags | dec = 0x0008
static const iostate | eofbit = 0x02
static const iostate | failbit = 0X04
static const iostate | goodbit = 0x00
static const fmtflags | hex = 0x0010
static const openmode | in = 0X20
static const fmtflags | internal = 0x0004
static const fmtflags | left = 0x0001
static const fmtflags | oct = 0x0020
static const openmode | out = 0X40
static const fmtflags | right = 0x0002
static const fmtflags | showbase = 0x0200
static const fmtflags | showpoint = 0x0400
static const fmtflags | showpos = 0x0800
static const fmtflags | skipws = 0x1000
static const openmode | trunc = 0X80
static const fmtflags | uppercase = 0x4000

## Private Member Functions

uint32_t | available ()
void | clearError ()
void | clearWriteError ()
bool | close ()
bool | contiguousRange (uint32_t *bgnBlock, uint32_t *endBlock)
bool | createContiguous (FatFile *dirFile, const char *path, uint32_t size)
bool | createContiguous (const char *path, uint32_t size)
uint32_t | curCluster () const
uint32_t | curPosition () const
bool | dirEntry (dir_t *dir)
uint16_t | dirIndex ()
uint32_t | dirSize ()
void | dmpFile (print_t *pr, uint32_t pos, size_t n)
bool | exists (const char *path)
int16_t | fgets (char *str, int16_t num, char *delim=0)
uint8_t | fileAttr () const
uint32_t | fileSize () const
uint32_t | firstBlock ()
uint32_t | firstCluster () const
uint8_t | getError ()
bool | getName (char *name, size_t size)
void | getpos (FatPos_t *pos)
bool | getSFN (char *name)
bool | getWriteError ()
bool | isDir () const
bool | isFile () const
bool | isHidden () const
bool | isLFN () const
bool | isOpen () const
bool | isReadOnly () const
bool | isRoot () const
bool | isRoot32 () const
bool | isRootFixed () const
bool | isSubDir () const
bool | isSystem () const
void | ls (uint8_t flags=0)
void | ls (print_t *pr, uint8_t flags=0, uint8_t indent=0)
bool | mkdir (FatFile *dir, const char *path, bool pFlag=true)
bool | open (FatFileSystem *fs, const char *path, oflag_t oflag)
bool | open (FatFile *dirFile, uint16_t index, oflag_t oflag)
bool | open (FatFile *dirFile, const char *path, oflag_t oflag)
bool | open (const char *path, oflag_t oflag=O_RDONLY)
bool | openNext (FatFile *dirFile, oflag_t oflag=O_RDONLY)
bool | openRoot (FatVolume *vol)
int | peek ()
bool | printCreateDateTime (print_t *pr)
int | printField (float value, char term, uint8_t prec=2)
int | printField (int16_t value, char term)
int | printField (uint16_t value, char term)
int | printField (int32_t value, char term)
int | printField (uint32_t value, char term)
size_t | printFileSize (print_t *pr)
bool | printModifyDateTime (print_t *pr)
size_t | printName ()
size_t | printName (print_t *pr)
size_t | printSFN (print_t *pr)
int | read ()
int | read (void *buf, size_t nbyte)
int8_t | readDir (dir_t *dir)
bool | remove ()
bool | rename (FatFile *dirFile, const char *newPath)
void | rewind ()
bool | rmdir ()
bool | rmRfStar ()
bool | seekCur (int32_t offset)
bool | seekEnd (int32_t offset=0)
bool | seekSet (uint32_t pos)
void | setpos (FatPos_t *pos)
bool | sync ()
bool | timestamp (FatFile *file)
bool | timestamp (uint8_t flags, uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second)
bool | truncate (uint32_t length)
FatVolume * | volume () const
int | write (const char *str)
int | write (uint8_t b)
int | write (const void *buf, size_t nbyte)

## Static Private Member Functions

static FatFile * | cwd ()
static void | dateTimeCallback (void(*dateTime)(uint16_t *date, uint16_t *time))
static void | dateTimeCallbackCancel ()
static uint8_t | dirName (const dir_t *dir, char *name)
static bool | legal83Char (uint8_t c)
static void | printFatDate (uint16_t fatDate)
static void | printFatDate (print_t *pr, uint16_t fatDate)
static void | printFatTime (uint16_t fatTime)
static void | printFatTime (print_t *pr, uint16_t fatTime)
static bool | remove (FatFile *dirFile, const char *path)
static bool | setCwd (FatFile *dir)

## Detailed Description

Base class for C++ style streams.

## Member Typedef Documentation

## fmtflags

typedef unsigned int ios_base::fmtflags

inherited

type for format flags

## iostate

typedef unsigned char ios_base::iostate

inherited

typedef for iostate bitmask

## off_type

typedef int32_t ios_base::off_type

inherited

type for relative seek offset

## openmode

typedef uint8_t ios_base::openmode

inherited

typedef for iostream open mode

## pos_type

typedef uint32_t ios_base::pos_type

inherited

type for absolute seek position

## streamsize

typedef uint32_t ios_base::streamsize

inherited

unsigned size that can represent maximum file size. (violates spec - should be signed)

## Member Enumeration Documentation

## seekdir

enum ios_base::seekdir

inherited

enumerated type for the direction of relative seeks

Enumerator
beg | seek relative to the beginning of the stream
cur | seek relative to the current stream position
end | seek relative to the end of the stream

## Member Function Documentation

## bad()

bool ios::bad | ( |  | ) | const

inlineinherited

Returns
  true if bad bit is set else false.

## clear()

void ios::clear | ( | iostate | state = `goodbit` | ) |

inlineinherited

Clear iostate bits.

Parameters

  [in] | state | The flags you want to set after clearing all flags.

## eof()

bool ios::eof | ( |  | ) | const

inlineinherited

Returns
  true if end of file has been reached else false.

Warning: An empty file returns false before the first read.

Moral: eof() is only useful in combination with fail(), to find out whether EOF was the cause for failure

## fail()

bool ios::fail | ( |  | ) | const

inlineinherited

Returns
  true if any iostate bit other than eof are set else false.

## fill() [1/2]

char ios_base::fill | ( |  | ) |

inlineinherited

Returns
  fill character

## fill() [2/2]

char ios_base::fill | ( | char | c | ) |

inlineinherited

Set fill character

Parameters

  [in] | c | new fill character

Returns
  old fill character

## flags() [1/2]

fmtflags ios_base::flags | ( |  | ) | const

inlineinherited

Returns
  format flags

## flags() [2/2]

fmtflags ios_base::flags | ( | fmtflags | fl | ) |

inlineinherited

set format flags

Parameters

  [in] | fl | new flag

Returns
  old flags

## good()

bool ios::good | ( |  | ) | const

inlineinherited

Returns
  True if no iostate flags are set else false.

## operator const void *()

ios::operator const void * | ( |  | ) | const

inlineinherited

Returns
  null pointer if fail() is true.

## operator!()

bool ios::operator! | ( |  | ) | const

inlineinherited

Returns
  true if fail() else false.

## precision() [1/2]

int ios_base::precision | ( |  | ) | const

inlineinherited

Returns
  precision

## precision() [2/2]

int ios_base::precision | ( | unsigned int | n | ) |

inlineinherited

set precision

Parameters

  [in] | n | new precision

Returns
  old precision

## rdstate()

iostate ios::rdstate | ( |  | ) | const

inlineinherited

Returns
  The iostate flags for this file.

## setf() [1/2]

fmtflags ios_base::setf | ( | fmtflags | fl | ) |

inlineinherited

set format flags

Parameters

  [in] | fl | new flags to be or'ed in

Returns
  old flags

## setf() [2/2]

fmtflags ios_base::setf | ( | fmtflags | fl,
|  | fmtflags | mask
| ) |  |

inlineinherited

modify format flags

Parameters

  [in] | mask | flags to be removed
  [in] | fl | flags to be set after mask bits have been cleared

Returns
  old flags

## setstate()

void ios::setstate | ( | iostate | state | ) |

inlineinherited

Set iostate bits.

Parameters

  [in] | state | Bitts to set.

## unsetf()

void ios_base::unsetf | ( | fmtflags | fl | ) |

inlineinherited

clear format flags

Parameters

  [in] | fl | flags to be cleared

Returns
  old flags

## width() [1/2]

unsigned ios_base::width | ( |  | ) |

inlineinherited

Returns
  width

## width() [2/2]

unsigned ios_base::width | ( | unsigned | n | ) |

inlineinherited

set width

Parameters

  [in] | n | new width

Returns
  old width

## Member Data Documentation

## adjustfield

const fmtflags ios_base::adjustfield = left | right | internal

staticinherited

mask for adjustfield

## app

const openmode ios_base::app = 0X4

staticinherited

seek to end before each write

## ate

const openmode ios_base::ate = 0X8

staticinherited

open and seek to end immediately after opening

## badbit

const iostate ios_base::badbit = 0X01

staticinherited

iostate bad bit for a nonrecoverable error.

## basefield

const fmtflags ios_base::basefield = dec | hex | oct

staticinherited

mask for basefield

## binary

const openmode ios_base::binary = 0X10

staticinherited

perform input and output in binary mode (as opposed to text mode)

## boolalpha

const fmtflags ios_base::boolalpha = 0x0100

staticinherited

use strings true/false for bool

## dec

const fmtflags ios_base::dec = 0x0008

staticinherited

base 10 flag

## eofbit

const iostate ios_base::eofbit = 0x02

staticinherited

iostate bit for end of file reached

## failbit

const iostate ios_base::failbit = 0X04

staticinherited

iostate fail bit for nonfatal error

## goodbit

const iostate ios_base::goodbit = 0x00

staticinherited

iostate for no flags

## hex

const fmtflags ios_base::hex = 0x0010

staticinherited

base 16 flag

## in

const openmode ios_base::in = 0X20

staticinherited

open for input

## internal

const fmtflags ios_base::internal = 0x0004

staticinherited

fill between sign/base prefix and number

## left

const fmtflags ios_base::left = 0x0001

staticinherited

left adjust fields

## oct

const fmtflags ios_base::oct = 0x0020

staticinherited

base 8 flag

## out

const openmode ios_base::out = 0X40

staticinherited

open for output

## right

const fmtflags ios_base::right = 0x0002

staticinherited

right adjust fields

## showbase

const fmtflags ios_base::showbase = 0x0200

staticinherited

use prefix 0X for hex and 0 for oct

## showpoint

const fmtflags ios_base::showpoint = 0x0400

staticinherited

always show '.' for floating numbers

## showpos

const fmtflags ios_base::showpos = 0x0800

staticinherited

show + sign for nonnegative numbers

## skipws

const fmtflags ios_base::skipws = 0x1000

staticinherited

skip initial white space

## trunc

const openmode ios_base::trunc = 0X80

staticinherited

truncate an existing stream when opening

## uppercase

const fmtflags ios_base::uppercase = 0x4000

staticinherited

use uppercase letters in number representations

The documentation for this class was generated from the following file:

- Arduino/libraries/SdFat/src/FatLib/fstream.h