You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
| /*! \file
 | |
|  *  \brief \ref TextStream outputs text onto the screen in \ref CGA
 | |
|  */
 | |
| 
 | |
| /*! \defgroup io I/O subsystem
 | |
|  *  \brief The input/output subsystem
 | |
|  */
 | |
| 
 | |
| #pragma once
 | |
| #include "../types.h"
 | |
| #include "../object/outputstream.h"
 | |
| #include "../arch/textwindow.h"
 | |
| /*! \brief  Output text (form different data type sources) on screen in text
 | |
|  * mode
 | |
|  *  \ingroup io
 | |
|  *
 | |
|  * Allows the output of different data types as strings on the \ref CGA
 | |
|  * screen of a PC.
 | |
|  * To achieve this, \ref TextStream is derived from both \ref OutputStream and
 | |
|  * \ref TextWindow and only implements the method \ref TextStream::flush().
 | |
|  * Further formatting or special effects are implemented in \ref TextWindow.
 | |
|  */
 | |
| class TextStream: public OutputStream, protected TextWindow {
 | |
|   // Prevent copies and assignments
 | |
|   TextStream(const TextStream&) = delete;
 | |
|   TextStream& operator=(const TextStream&) = delete;
 | |
| 
 | |
|  public:
 | |
|   /// \copydoc TextWindow::TextWindow(unsigned,unsigned,unsigned,unsigned,bool)
 | |
|   TextStream(unsigned from_col, unsigned to_col, unsigned from_row,
 | |
|              unsigned to_row, bool use_cursor = false);
 | |
| 
 | |
|   /*! \brief Output the buffer contents of the base class \ref Stringbuffer
 | |
|    *
 | |
|    * The method is automatically called when the buffer is full,
 | |
|    * but can also be called explicitly to force output of the current buffer.
 | |
|    *
 | |
|    *
 | |
|    */
 | |
|   void flush();
 | |
| 
 | |
| };
 |