1 /*
2  * selection.h
3  *
4  * Interface between console.c, tty_io.c, vt.c, vc_screen.c and selection.c
5  */
6 
7 #ifndef _LINUX_SELECTION_H_
8 #define _LINUX_SELECTION_H_
9 
10 #include <linux/vt_buffer.h>
11 
12 extern int sel_cons;
13 
14 extern void clear_selection(void);
15 extern int set_selection(const unsigned long arg, struct tty_struct *tty, int user);
16 extern int paste_selection(struct tty_struct *tty);
17 extern int sel_loadlut(const unsigned long arg);
18 extern int mouse_reporting(void);
19 extern void mouse_report(struct tty_struct * tty, int butt, int mrx, int mry);
20 
21 #define video_num_columns	(vc_cons[currcons].d->vc_cols)
22 #define video_num_lines		(vc_cons[currcons].d->vc_rows)
23 #define video_size_row		(vc_cons[currcons].d->vc_size_row)
24 #define can_do_color		(vc_cons[currcons].d->vc_can_do_color)
25 
26 extern int console_blanked;
27 
28 extern unsigned char color_table[];
29 extern int default_red[];
30 extern int default_grn[];
31 extern int default_blu[];
32 
33 extern unsigned short *screen_pos(int currcons, int w_offset, int viewed);
34 extern u16 screen_glyph(int currcons, int offset);
35 extern void complement_pos(int currcons, int offset);
36 extern void invert_screen(int currcons, int offset, int count, int shift);
37 
38 extern void getconsxy(int currcons, char *p);
39 extern void putconsxy(int currcons, char *p);
40 
41 extern u16 vcs_scr_readw(int currcons, const u16 *org);
42 extern void vcs_scr_writew(int currcons, u16 val, u16 *org);
43 
44 #endif
45