arduino-emulator
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
arduino::StdioDevice Class Reference

Provides a Stream interface for standard input/output operations outside the Arduino environment. More...

#include <StdioDevice.h>

Inheritance diagram for arduino::StdioDevice:
arduino::Stream arduino::Print

Public Member Functions

 StdioDevice (bool autoFlush=true)
 
int available () override
 
virtual void begin (int speed)
 
void flush () override
 
 operator bool () const
 
int peek () override
 
virtual size_t print (const char *str)
 
virtual size_t print (int val, int radix=DEC)
 
virtual size_t print (Printable &p)
 
virtual size_t print (String &str)
 
virtual size_t println (const char *str="")
 
virtual size_t println (int val, int radix=DEC)
 
virtual size_t println (Printable &p)
 
virtual size_t println (String &str)
 
int read () override
 
virtual size_t write (const char *str, size_t len)
 
size_t write (const uint8_t *str, size_t len) override
 
virtual size_t write (int32_t value)
 
virtual size_t write (uint8_t *str, size_t len)
 
size_t write (uint8_t value) override
 
- Public Member Functions inherited from arduino::Stream
bool find (char target)
 
bool find (const char *target)
 
bool find (const char *target, size_t length)
 
bool find (const uint8_t *target)
 
bool find (const uint8_t *target, size_t length)
 
bool findUntil (const char *target, const char *terminator)
 
bool findUntil (const char *target, size_t targetLen, const char *terminate, size_t termLen)
 
bool findUntil (const uint8_t *target, const char *terminator)
 
bool findUntil (const uint8_t *target, size_t targetLen, const char *terminate, size_t termLen)
 
unsigned long getTimeout (void)
 
float parseFloat (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
long parseInt (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
size_t readBytes (char *buffer, size_t length)
 
size_t readBytes (uint8_t *buffer, size_t length)
 
size_t readBytesUntil (char terminator, char *buffer, size_t length)
 
size_t readBytesUntil (char terminator, uint8_t *buffer, size_t length)
 
String readString ()
 
String readStringUntil (char terminator)
 
void setTimeout (unsigned long timeout)
 
- Public Member Functions inherited from arduino::Print
virtual int availableForWrite ()
 
void clearWriteError ()
 
int getWriteError ()
 
size_t print (char)
 
size_t print (const __FlashStringHelper *)
 
size_t print (const char[])
 
size_t print (const Printable &)
 
size_t print (const String &)
 
size_t print (double, int=2)
 
size_t print (int, int=DEC)
 
size_t print (long long, int=DEC)
 
size_t print (long, int=DEC)
 
size_t print (unsigned char, int=DEC)
 
size_t print (unsigned int, int=DEC)
 
size_t print (unsigned long long, int=DEC)
 
size_t print (unsigned long, int=DEC)
 
size_t println (char)
 
size_t println (const __FlashStringHelper *)
 
size_t println (const char[])
 
size_t println (const Printable &)
 
size_t println (const String &s)
 
size_t println (double, int=2)
 
size_t println (int, int=DEC)
 
size_t println (long long, int=DEC)
 
size_t println (long, int=DEC)
 
size_t println (unsigned char, int=DEC)
 
size_t println (unsigned int, int=DEC)
 
size_t println (unsigned long long, int=DEC)
 
size_t println (unsigned long, int=DEC)
 
size_t println (void)
 
size_t write (const char *buffer, size_t size)
 
size_t write (const char *str)
 

Protected Attributes

bool auto_flush = true
 
- Protected Attributes inherited from arduino::Stream
unsigned long _startMillis
 
unsigned long _timeout
 

Additional Inherited Members

- Protected Member Functions inherited from arduino::Stream
int findMulti (struct MultiTarget *targets, int tCount)
 
float parseFloat (char ignore)
 
long parseInt (char ignore)
 
int peekNextDigit (LookaheadMode lookahead, bool detectDecimal)
 
int timedPeek ()
 
int timedRead ()
 
- Protected Member Functions inherited from arduino::Print
void setWriteError (int err=1)
 

Detailed Description

Provides a Stream interface for standard input/output operations outside the Arduino environment.

This class implements the Arduino Stream interface using standard C++ streams (std::cout and std::cin), allowing code that expects Arduino Serial-like objects to work in non-Arduino environments. It supports printing, reading, and flushing, and can be used to provide Serial, Serial1, and Serial2 objects for desktop or emulated environments. The class supports auto-flushing after each print/write operation.

Key features:

Member Function Documentation

◆ available()

int arduino::StdioDevice::available ( void  )
inlineoverridevirtual

Implements arduino::Stream.

◆ flush()

void arduino::StdioDevice::flush ( void  )
inlineoverridevirtual

Reimplemented from arduino::Print.

◆ peek()

int arduino::StdioDevice::peek ( void  )
inlineoverridevirtual

Implements arduino::Stream.

◆ read()

int arduino::StdioDevice::read ( void  )
inlineoverridevirtual

Implements arduino::Stream.

◆ write() [1/2]

size_t arduino::StdioDevice::write ( const uint8_t str,
size_t  len 
)
inlineoverridevirtual

Reimplemented from arduino::Print.

◆ write() [2/2]

size_t arduino::StdioDevice::write ( uint8_t  value)
inlineoverridevirtual

Implements arduino::Print.


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