libcsdbg
1.28
C++ exception (and generic) stack trace debug library
|
A buffered output stream for serial interfaces. More...
#include <sttybuf.hpp>
Public Member Functions | |
sttybuf (const i8 *, u32=9600) | |
Object constructor. More... | |
sttybuf (const sttybuf &) | |
Object copy constructor. More... | |
virtual | ~sttybuf () |
Object destructor. More... | |
virtual sttybuf * | clone () const |
Object virtual copy constructor. More... | |
virtual const i8 * | devnode () const |
Get the path of the serial interface device node. More... | |
virtual u32 | baud () const |
Get the baud rate. More... | |
virtual sttybuf & | set_baud (u32) |
Set the baud rate. More... | |
virtual sttybuf & | operator= (const sttybuf &) |
Assignment operator. More... | |
virtual bool | is_tty () const |
Check if the device node is a terminal. More... | |
virtual sttybuf & | open () |
Open the serial interface for output. More... | |
virtual sttybuf & | open (bool) |
Open the serial interface for output. More... | |
virtual sttybuf & | flush () |
Flush the buffered data to the serial interface. More... | |
virtual sttybuf & | sync () const |
Commit cached data to the serial interface line. More... | |
virtual sttybuf & | discard () const |
Discard the data cached in the serial interface (in-kernel) buffers. More... | |
Public Member Functions inherited from csdbg::streambuf | |
streambuf () | |
Object default constructor. More... | |
streambuf (const streambuf &) | |
Object copy constructor. More... | |
virtual | ~streambuf ()=0 |
To be implemented. More... | |
virtual i32 | handle () const |
Get the handle. More... | |
virtual bool | is_opened () const |
Check if the stream is opened for output. More... | |
virtual streambuf & | operator= (const streambuf &) |
Assignment operator. More... | |
virtual streambuf & | close () |
Close the stream. More... | |
virtual streambuf & | lock () const |
Lock the stream (exclusively) More... | |
virtual streambuf & | unlock () const |
Unlock the stream. More... | |
virtual streambuf & | header () |
Append LDP headers to the buffer. More... | |
Public Member Functions inherited from csdbg::string | |
string (u32=0) | |
Object constructor. More... | |
string (const i8 *,...) | |
Object constructor. More... | |
string (const string &) | |
Object copy constructor. More... | |
virtual | ~string () |
Object destructor. More... | |
virtual const i8 * | cstr () const |
Get the C-string equivalent. More... | |
virtual u32 | length () const |
Get the character count. More... | |
virtual u32 | bufsize () const |
Get the buffer size. More... | |
virtual i8 & | at (u32) |
Get/set the character at an offset. More... | |
virtual string & | set (const i8 *,...) |
Fill with a printf-style format C-string expanded with the values of a variable argument list. More... | |
virtual string & | set (const string &) |
Copy a string. More... | |
virtual string & | operator= (const string &) |
Assignment operator. More... | |
virtual string & | operator+= (const string &) |
Compound addition-assignment operator (append) More... | |
virtual i8 & | operator[] (u32) |
Subscript operator. More... | |
virtual u32 | available () const |
Get the available buffer size, the number of characters that can be appended without reallocation. More... | |
virtual string & | shred (u8=0) |
Fill the whole buffer with a constant byte. More... | |
virtual string & | clear () |
Clear contents. More... | |
virtual string & | append (const string &) |
Append a string. More... | |
virtual string & | append (const i8 *,...) |
Append a printf-style format C-string expanded with the values of a variable argument list. More... | |
virtual string & | append (i8) |
Append a character. More... | |
virtual i32 | cmp (const string &, bool=false) const |
Compare to another string. More... | |
virtual bool | match (const string &, bool=false) const |
Match against a POSIX extended regular expression. More... | |
virtual string & | trim (i32=0) |
Remove leading and/or trailing whitespace characters. More... | |
virtual string & | insert (u32, const string &) |
Insert a string at a specified position. More... | |
virtual string & | insert (u32, const i8 *,...) |
Insert a printf-style format C-string expanded with the values of a variable argument list, at a specified position. More... | |
virtual chain< string > * | split (const string &, bool=true, bool=false) const |
Tokenize using a POSIX extended regular expression. More... | |
Public Member Functions inherited from csdbg::object | |
virtual | ~object ()=0 |
To be implemented. More... | |
virtual const i8 * | class_name () const |
Query the class name of an object descending from csdbg::object. More... | |
Static Public Member Functions | |
static u32 | translate_baud (u32) |
Translate a number to a baud rate as defined in termios.h. More... | |
Protected Member Functions | |
virtual sttybuf & | config () const |
Configure the serial interface. More... | |
Protected Member Functions inherited from csdbg::string | |
virtual string & | memalign (u32, bool=false) |
Allocate aligned memory, mandate a minimum buffer size. More... | |
virtual string & | format (const i8 *, va_list) |
Fill with a printf-style format C-string expanded with the values of a variable argument list. More... | |
Protected Attributes | |
i8 * | m_devnode |
Device node file (devfs) More... | |
u32 | m_baud |
Baud rate. More... | |
Protected Attributes inherited from csdbg::streambuf | |
i32 | m_handle |
Stream handle (descriptor) More... | |
Protected Attributes inherited from csdbg::string | |
i8 * | m_data |
String data. More... | |
u32 | m_length |
Character count. More... | |
u32 | m_size |
Buffer size. More... | |
A buffered output stream for serial interfaces.
An sttybuf object is a buffered output stream used to output LDP or generic data to any type of serial interface. The interfaces are configured for 8N1 transmition, the baud rate is configurable (throughout a session). The class is not thread safe, the caller must implement thread synchronization. Basic stream locking methods are inherited from csdbg::streambuf
Definition at line 28 of file sttybuf.hpp.