From ba9d416862f599f343bbd152570b39bffa56009a Mon Sep 17 00:00:00 2001 From: Matthijs Kooijman Date: Fri, 24 Oct 2014 15:26:38 +0200 Subject: Move the flush method from Stream to Print This method originally flushed pending input bytes, which makes sense in Stream. At some point it was changed to flush output bytes instead, but it was never moved to Print to reflect this. Since Stream inherits from Print, this should not really affect any users of the Stream or Print classes. However to prevent problems with existing implementations of the Print class that do not provide a flush() implementation, a default implementation is provided. We should probably remove this at some point in the future, though. --- cores/arduino/Print.h | 2 ++ cores/arduino/Stream.h | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'cores/arduino') diff --git a/cores/arduino/Print.h b/cores/arduino/Print.h index 4d8a2f5..2b5aafd 100644 --- a/cores/arduino/Print.h +++ b/cores/arduino/Print.h @@ -87,6 +87,8 @@ class Print size_t println(double, int = 2); size_t println(const Printable&); size_t println(void); + + virtual void flush() { /* Empty implementation for backward compatibility */ } }; #endif diff --git a/cores/arduino/Stream.h b/cores/arduino/Stream.h index e4fd433..78a1c07 100644 --- a/cores/arduino/Stream.h +++ b/cores/arduino/Stream.h @@ -59,7 +59,6 @@ class Stream : public Print virtual int available() = 0; virtual int read() = 0; virtual int peek() = 0; - virtual void flush() = 0; Stream() {_timeout=1000;} -- cgit v1.2.3-18-g5258