25 #ifndef ACE_ROUTINE_STREAM_LINE_READER_H
26 #define ACE_ROUTINE_STREAM_LINE_READER_H
29 #include <AceRoutine.h>
30 #include "InputLine.h"
32 namespace ace_routine {
53 char* buffer,
int bufferSize):
65 while (mStream.available() > 0) {
69 if (mIndex >= mBufSize - 1) {
70 input.status = InputLine::kStatusOverflow;
74 COROUTINE_CHANNEL_WRITE(mChannel, input);
75 }
else if (c ==
'\n' || c ==
'\r') {
77 mFlushLine ? InputLine::kStatusOverflow : InputLine::kStatusOk;
81 COROUTINE_CHANNEL_WRITE(mChannel, input);
108 bool mFlushLine =
false;