Public Types | Public Member Functions | Static Public Attributes

ArduinoInStream Class Reference

Input stream for Arduino Stream objects. More...

#include <ArduinoStream.h>

Inheritance diagram for ArduinoInStream:
Inheritance graph
[legend]
Collaboration diagram for ArduinoInStream:
Collaboration graph
[legend]

List of all members.

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

 ArduinoInStream (Stream &hws, char *buf, uint16_t size)
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)
uint8_t flagsToBase ()
streamsize gcount () const
int get ()
istreamget (char &ch)
istreamget (char *str, streamsize n, char delim= '\n')
istreamgetline (char *str, streamsize count, char delim= '\n')
bool good () const
istreamignore (streamsize n=1, int delim=-1)
void init (const char *str)
 operator const void * () const
bool operator! () const
istreamoperator>> (int32_t &arg)
istreamoperator>> (uint16_t &arg)
istreamoperator>> (uint32_t &arg)
istreamoperator>> (char &ch)
istreamoperator>> (double &arg)
istreamoperator>> (signed char *str)
istreamoperator>> (ios &(*pf)(ios &str))
istreamoperator>> (void *&arg)
istreamoperator>> (ios_base &(*pf)(ios_base &str))
istreamoperator>> (signed char &ch)
istreamoperator>> (unsigned char *str)
istreamoperator>> (istream &(*pf)(istream &str))
istreamoperator>> (float &arg)
istreamoperator>> (unsigned char &ch)
istreamoperator>> (bool &arg)
istreamoperator>> (int16_t &arg)
istreamoperator>> (char *str)
int peek ()
int precision (unsigned int n)
int precision () const
iostate rdstate () const
void readline ()
istreamseekg (pos_type pos)
fmtflags setf (fmtflags fl)
fmtflags setf (fmtflags fl, fmtflags mask)
void setstate (iostate state)
void skipWhite ()
pos_type tellg ()
void unsetf (fmtflags fl)
int width ()
int width (unsigned int n)

Static Public Attributes

static const fmtflags adjustfield = left | right | internal
static const openmode app = 0x04
static const openmode ate = 0x08
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

Detailed Description

Input stream for Arduino Stream objects.


Member Typedef Documentation

typedef unsigned int ios_base::fmtflags [inherited]

type for format flags

typedef unsigned char ios_base::iostate [inherited]

typedef for iostate bitmask

typedef int32_t ios_base::off_type [inherited]

type for relative seek offset

typedef uint8_t ios_base::openmode [inherited]

typedef for iostream open mode

typedef uint32_t ios_base::pos_type [inherited]

type for absolute seek position

typedef uint32_t ios_base::streamsize [inherited]

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


Member Enumeration Documentation

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


Constructor & Destructor Documentation

ArduinoInStream::ArduinoInStream ( Stream &  hws,
char *  buf,
uint16_t  size 
) [inline]

Constructor

Parameters:
[in]hwshardware stream
[in]bufbuffer for input line
[in]sizesize of input buffer

Member Function Documentation

bool ios::bad (  ) const [inline, inherited]
Returns:
true if bad bit is set else false.
void ios::clear ( iostate  state = goodbit ) [inline, inherited]

Clear iostate bits.

Parameters:
[in]stateThe flags you want to set after clearing all flags.

Reimplemented in fstream, and ofstream.

bool ios::eof (  ) const [inline, inherited]
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

bool ios::fail (  ) const [inline, inherited]
Returns:
true if any iostate bit other than eof are set else false.
char ios_base::fill (  ) [inline, inherited]
Returns:
fill character
char ios_base::fill ( char  c ) [inline, inherited]

Set fill character

Parameters:
[in]cnew fill character
Returns:
old fill character
fmtflags ios_base::flags (  ) const [inline, inherited]
Returns:
format flags
fmtflags ios_base::flags ( fmtflags  fl ) [inline, inherited]

set format flags

Parameters:
[in]flnew flag
Returns:
old flags
uint8_t ios_base::flagsToBase (  ) [inline, inherited]
Returns:
current number base
streamsize istream::gcount (  ) const [inline, inherited]
Returns:
The number of characters extracted by the last unformatted input function.
int istream::get (  ) [inherited]

Extract a character if one is available.

Returns:
The character or -1 if a faliure occures. A failure is indicated by the stream state.
istream & istream::get ( char &  c ) [inherited]

Extract a character if one is available.

Parameters:
[out]clocation to recieve the extracted character.
Returns:
always returns *this. A failure is indicated by the stream state.
istream & istream::get ( char *  str,
streamsize  n,
char  delim = '\n' 
) [inherited]

Extract characters.

Parameters:
[out]strLocation to recieve extracted characters.
[in]nSize of str.
[in]delimDelimiter

Characters are extracted until extraction fails, n is less than 1, n-1 characters are extracted, or the next character equals delim (delim is not extracted). If no characters are extracted failbit is set. If end-of-file occurs the eofbit is set.

Returns:
always returns *this. A failure is indicated by the stream state.
istream & istream::getline ( char *  str,
streamsize  n,
char  delim = '\n' 
) [inherited]

Extract characters

Parameters:
[out]strLocation to recieve extracted characters.
[in]nSize of str.
[in]delimDelimiter

Characters are extracted until extraction fails, the next character equals delim (delim is extracted), or n-1 characters are extracted.

The failbit is set if no characters are extracted or n-1 characters are extracted. If end-of-file occurs the eofbit is set.

Returns:
always returns *this. A failure is indicated by the stream state.
bool ios::good (  ) const [inline, inherited]
Returns:
True if no iostate flags are set else false.
istream & istream::ignore ( streamsize  n = 1,
int  delim = -1 
) [inherited]

Extract characters and discard them.

Parameters:
[in]nmaximum number of characters to ignore.
[in]delimDelimiter.

Characters are extracted until extraction fails, n characters are extracted, or the next input character equals delim (the delimiter is extracted). If end-of-file occurs the eofbit is set.

Failures are indicated by the state of the stream.

Returns:
*this
void ibufstream::init ( const char *  str ) [inline, inherited]

Initialize an ibufstream

Parameters:
[in]strpointer to string to be parsed Warning: The string will not be copied so must stay in scope.
ios::operator const void * (  ) const [inline, inherited]
Returns:
null pointer if fail() is true.
bool ios::operator! (  ) const [inline, inherited]
Returns:
true if fail() else false.
istream& istream::operator>> ( signed char *  str ) [inline, inherited]

Extract a character string

Parameters:
[out]strlocation to store the string.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( char &  ch ) [inline, inherited]

Extract a character

Parameters:
[out]chlocation to store the character.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( void *&  arg ) [inline, inherited]

Extract a value of type void

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( uint32_t &  arg ) [inline, inherited]

Extract a value of type uint32_t

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( double &  arg ) [inline, inherited]

Extract a value of type float

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( float &  arg ) [inline, inherited]

Extract a value of type float

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( signed char &  ch ) [inline, inherited]

Extract a character

Parameters:
[out]chlocation to store the character.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( char *  str ) [inline, inherited]

Extract a character string

Parameters:
[out]strlocation to store the string.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( unsigned char *  str ) [inline, inherited]

Extract a character string

Parameters:
[out]strlocation to store the string.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( ios_base &(*)(ios_base &str)  pf ) [inline, inherited]

call manipulator

Parameters:
[in]pffunction to call
Returns:
the stream
istream& istream::operator>> ( ios &(*)(ios &str)  pf ) [inline, inherited]

call manipulator

Parameters:
[in]pffunction to call
Returns:
the stream
istream& istream::operator>> ( unsigned char &  ch ) [inline, inherited]

Extract a character

Parameters:
[out]chlocation to store the character.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( bool &  arg ) [inline, inherited]

Extract a value of type bool

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( istream &(*)(istream &str)  pf ) [inline, inherited]

call manipulator

Parameters:
[in]pffunction to call
Returns:
the stream
istream& istream::operator>> ( int16_t &  arg ) [inline, inherited]

Extract a value of type int16_t

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( uint16_t &  arg ) [inline, inherited]

Extract a value of type uint16_t

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
istream& istream::operator>> ( int32_t &  arg ) [inline, inherited]

Extract a value of type int32_t

Parameters:
[out]arglocation to store the value.
Returns:
Is always *this. Failure is indicated by the state of *this.
int istream::peek (  ) [inherited]

Return the next available character without consuming it.

Returns:
The character if the stream state is good else -1;
int ios_base::precision (  ) const [inline, inherited]
Returns:
precision
int ios_base::precision ( unsigned int  n ) [inline, inherited]

set precision

Parameters:
[in]nnew precision
Returns:
old precision
iostate ios::rdstate (  ) const [inline, inherited]
Returns:
The iostate flags for this SdFile.
void ArduinoInStream::readline (  ) [inline]

read a line.

istream& istream::seekg ( pos_type  pos ) [inline, inherited]

Set the stream position

Parameters:
[in]posThe absolute position in which to move the read pointer.
Returns:
Is always *this. Failure is indicated by the state of *this.
fmtflags ios_base::setf ( fmtflags  fl ) [inline, inherited]

set format flags

Parameters:
[in]flnew flags to be or'ed in
Returns:
old flags
fmtflags ios_base::setf ( fmtflags  fl,
fmtflags  mask 
) [inline, inherited]

modify format flags

Parameters:
[in]maskflags to be removed
[in]flflags to be set after mask bits have been cleared
Returns:
old flags
void ios::setstate ( iostate  state ) [inline, inherited]

Set iostate bits.

Parameters:
[in]stateBitts to set.
void istream::skipWhite (  ) [inherited]

used to implement ws()

pos_type istream::tellg (  ) [inline, inherited]
Returns:
the stream position
void ios_base::unsetf ( fmtflags  fl ) [inline, inherited]

clear format flags

Parameters:
[in]flflags to be cleared
Returns:
old flags
int ios_base::width ( unsigned int  n ) [inline, inherited]

set width

Parameters:
[in]nnew width
Returns:
old width
int ios_base::width (  ) [inline, inherited]
Returns:
width

Member Data Documentation

const fmtflags ios_base::adjustfield = left | right | internal [static, inherited]

mask for adjustfield

const openmode ios_base::app = 0x04 [static, inherited]

seek to end before each write

const openmode ios_base::ate = 0x08 [static, inherited]

open and seek to end immediately after opening

const iostate ios_base::badbit = 0X01 [static, inherited]

iostate bad bit for a non-recoverable error.

const fmtflags ios_base::basefield = dec | hex | oct [static, inherited]

mask for basefield

const openmode ios_base::binary = 0x10 [static, inherited]

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

const fmtflags ios_base::boolalpha = 0x0100 [static, inherited]

use strings true/false for bool

const fmtflags ios_base::dec = 0x0008 [static, inherited]

base 10 flag

const iostate ios_base::eofbit = 0x02 [static, inherited]

iostate bit for end of file reached

const iostate ios_base::failbit = 0X04 [static, inherited]

iostate fail bit for non-fatal error

const iostate ios_base::goodbit = 0x00 [static, inherited]

iostate for no flags

const fmtflags ios_base::hex = 0x0010 [static, inherited]

base 16 flag

const openmode ios_base::in = 0x20 [static, inherited]

open for input

const fmtflags ios_base::internal = 0x0004 [static, inherited]

fill between sign/base prefix and number

const fmtflags ios_base::left = 0x0001 [static, inherited]

left adjust fields

const fmtflags ios_base::oct = 0x0020 [static, inherited]

base 8 flag

const openmode ios_base::out = 0x40 [static, inherited]

open for output

const fmtflags ios_base::right = 0x0002 [static, inherited]

right adjust fields

const fmtflags ios_base::showbase = 0x0200 [static, inherited]

use prefix 0X for hex and 0 for oct

const fmtflags ios_base::showpoint = 0x0400 [static, inherited]

always show '.' for floating numbes

const fmtflags ios_base::showpos = 0x0800 [static, inherited]

show + sign for non-negative numbers

const fmtflags ios_base::skipws = 0x1000 [static, inherited]

skip initial white space

const openmode ios_base::trunc = 0x80 [static, inherited]

truncate an existing stream when opening

const fmtflags ios_base::uppercase = 0x4000 [static, inherited]

use uppercase letters in number representations


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