33class DebuggerStreamBuf :
public std::streambuf
36 std::streambuf* dest_;
37 unsigned linesPerScreen_;
41 unsigned charsPerLine_;
46 virtual int_type overflow(int_type c)
override;
47 virtual int sync()
override;
51 DebuggerStreamBuf(std::streambuf* dest,
unsigned linesPerScreen,
unsigned charsPerLine) :
53 linesPerScreen_(linesPerScreen),
57 charsPerLine_(charsPerLine),
72 void setConfirm(
bool c)
78 void setLineWidth(
const unsigned w) { charsPerLine_ = w; }
79 void setLineCount(
const unsigned c) { linesPerScreen_ = c; }
80 unsigned getLineWidth() {
return charsPerLine_; }
86class DebuggerStream :
public std::ostream
92 DebuggerStream(std::ostream& dest,
unsigned linesPerScreen,
unsigned charsPerLine) :
94 buf_(dest.rdbuf(), linesPerScreen, charsPerLine)
103 void setConfirm(
bool c) { buf_.setConfirm(c); }
106 void setLineWidth(
const unsigned w) { buf_.setLineWidth(w); }
107 void setLineCount(
const unsigned c) { buf_.setLineCount(c); }
108 unsigned getLineWidth() {
return buf_.getLineWidth(); }