47 #define NO_IGNORE_CHAR '\x01' // a char not found in a valid ASCII numeric field 52 unsigned long _timeout;
53 unsigned long _startMillis;
56 int peekNextDigit(LookaheadMode lookahead,
bool detectDecimal);
59 virtual int available() = 0;
60 virtual int read() = 0;
61 virtual int peek() = 0;
67 void setTimeout(
unsigned long timeout);
68 unsigned long getTimeout(
void) {
return _timeout; }
70 bool find(
char *target);
71 bool find(uint8_t *target) {
return find ((
char *)target); }
74 bool find(
char *target,
size_t length);
75 bool find(uint8_t *target,
size_t length) {
return find ((
char *)target, length); }
78 bool find(
char target) {
return find (&target, 1); }
80 bool findUntil(
char *target,
char *terminator);
81 bool findUntil(uint8_t *target,
char *terminator) {
return findUntil((
char *)target, terminator); }
83 bool findUntil(
char *target,
size_t targetLen,
char *terminate,
size_t termLen);
84 bool findUntil(uint8_t *target,
size_t targetLen,
char *terminate,
size_t termLen) {
return findUntil((
char *)target, targetLen, terminate, termLen); }
86 long parseInt(LookaheadMode lookahead = SKIP_ALL,
char ignore = NO_IGNORE_CHAR);
93 float parseFloat(LookaheadMode lookahead = SKIP_ALL,
char ignore = NO_IGNORE_CHAR);
96 size_t readBytes(
char *buffer,
size_t length);
97 size_t readBytes( uint8_t *buffer,
size_t length) {
return readBytes((
char *)buffer, length); }
101 size_t readBytesUntil(
char terminator,
char *buffer,
size_t length);
102 size_t readBytesUntil(
char terminator, uint8_t *buffer,
size_t length) {
return readBytesUntil(terminator, (
char *)buffer, length); }
108 String readStringUntil(
char terminator);
111 long parseInt(
char ignore) {
return parseInt(SKIP_ALL, ignore); }
112 float parseFloat(
char ignore) {
return parseFloat(SKIP_ALL, ignore); }
125 int findMulti(
struct MultiTarget *targets,
int tCount);
128 #undef NO_IGNORE_CHAR