Panda3D
Public Member Functions | List of all members
LineStream Class Reference

This is a special ostream that writes to a memory buffer, like ostrstream. More...

Inheritance diagram for LineStream:
Ostream BasicIosChar IosBase

Public Member Functions

 __init__ ()
 
str getLine ()
 Extracts and returns the next line (or partial line) of text available in the LineStream object. More...
 
bool hasNewline ()
 Returns true if the line of text most recently returned by get_line() was written out with a terminating newline, or false if a newline character has not yet been written to the LineStream. More...
 
bool isTextAvailable ()
 Returns true if there is at least one line of text (or even a partial line) available in the LineStream object. More...
 
- Public Member Functions inherited from Ostream
 flush ()
 
 put (char c)
 
 seekp (Streamoff pos)
 
 seekp (Streamoff off, IosBase::Seekdir dir)
 
Streamoff tellp ()
 
- Public Member Functions inherited from BasicIosChar
bool bad ()
 
 clear ()
 
bool eof ()
 
bool fail ()
 
bool good ()
 

Additional Inherited Members

- Public Types inherited from IosBase
enum  Iostate
 
enum  Openmode
 
enum  Seekdir { beg = 0, cur = 1, end = 2 }
 

Detailed Description

This is a special ostream that writes to a memory buffer, like ostrstream.

However, its contents can be continuously extracted as a sequence of lines of text.

Unlike ostrstream, which can only be extracted from once (and then the buffer freezes and it can no longer be written to), the LineStream is not otherwise affected when a line of text is extracted. More text can still be written to it and continuously extracted.

Member Function Documentation

◆ __init__()

__init__ ( )

◆ getLine()

str getLine ( )

Extracts and returns the next line (or partial line) of text available in the LineStream object.

Once the line has been extracted, you may call has_newline() to determine whether or not there was an explicit newline character written following this line.

◆ hasNewline()

bool hasNewline ( )

Returns true if the line of text most recently returned by get_line() was written out with a terminating newline, or false if a newline character has not yet been written to the LineStream.

◆ isTextAvailable()

bool isTextAvailable ( )

Returns true if there is at least one line of text (or even a partial line) available in the LineStream object.

If this returns true, the line may then be retrieved via get_line().