NAME¶
scr_dump, 
scr_restore, 
scr_init, 
scr_set - read
  (write) a 
curses screen from (to) a file
SYNOPSIS¶
#include <curses.h>
int scr_dump(const char *filename);
 
int scr_restore(const char *filename);
 
int scr_init(const char *filename);
 
int scr_set(const char *filename);
 
DESCRIPTION¶
The 
scr_dump routine dumps the current contents of the virtual screen to
  the file 
filename.
The 
scr_restore routine sets the virtual screen to the contents of
  
filename, which must have been written using 
scr_dump. The next
  call to 
doupdate restores the screen to the way it looked in the dump
  file.
The 
scr_init routine reads in the contents of 
filename and uses
  them to initialize the 
curses data structures about what the terminal
  currently has on its screen. If the data is determined to be valid,
  
curses bases its next update of the screen on this information rather
  than clearing the screen and starting from scratch. 
scr_init is used
  after 
initscr or a 
system call to share the screen with another
  process which has done a 
scr_dump after its 
endwin call. The
  data is declared invalid if the terminfo capabilities 
rmcup and
  
nrrmc exist; also if the terminal has been written to since the
  preceding 
scr_dump call.
The 
scr_set routine is a combination of 
scr_restore and
  
scr_init. It tells the program that the information in 
filename
  is what is currently on the screen, and also what the program wants on the
  screen. This can be thought of as a screen inheritance function.
To read (write) a window from (to) a file, use the 
getwin and
  
putwin routines [see 
util(3NCURSES)].
RETURN VALUE¶
All routines return the integer 
ERR upon failure and 
OK upon
  success.
X/Open defines no error conditions. In this implementation, each will return an
  error if the file cannot be opened.
NOTES¶
Note that 
scr_init, 
scr_set, and 
scr_restore may be macros.
PORTABILITY¶
The XSI Curses standard, Issue 4, describes these functions (adding the const
  qualifiers).
The SVr4 docs merely say under 
scr_init that the dump data is also
  considered invalid "if the time-stamp of the tty is old" but do not
  define "old".
SEE ALSO¶
ncurses(3NCURSES), 
initscr(3NCURSES), 
refresh(3NCURSES),
  
util(3NCURSES), 
system(3)