chiark / gitweb /
*** empty log message ***
[sympathy.git] / src / tty.h
1 /*
2  * tty.h:
3  *
4  * Copyright (c) 2008 James McKenzie <james@fishsoup.dhs.org>,
5  * All rights reserved.
6  *
7  */
8
9 /*
10  * $Id$
11  */
12
13 /*
14  * $Log$
15  * Revision 1.10  2008/02/22 23:39:27  james
16  * *** empty log message ***
17  *
18  * Revision 1.9  2008/02/22 19:12:05  james
19  * *** empty log message ***
20  *
21  * Revision 1.8  2008/02/15 23:52:12  james
22  * *** empty log message ***
23  *
24  * Revision 1.7  2008/02/14 10:36:18  james
25  * *** empty log message ***
26  *
27  * Revision 1.6  2008/02/14 10:34:30  james
28  * *** empty log message ***
29  *
30  * Revision 1.5  2008/02/13 09:12:21  james
31  * *** empty log message ***
32  *
33  * Revision 1.4  2008/02/13 01:08:18  james
34  * *** empty log message ***
35  *
36  * Revision 1.3  2008/02/09 15:47:28  james
37  * *** empty log message ***
38  *
39  * Revision 1.2  2008/02/07 00:43:27  james
40  * *** empty log message ***
41  *
42  * Revision 1.1  2008/02/06 20:26:58  james
43  * *** empty log message ***
44  *
45  */
46
47 #ifndef __TTY_H__
48 #define __TTY_H__
49
50
51 #define SYM_CHAR_RESET  (-1)
52
53 #define TTY_SIGNATURE \
54         char name[1024]; \
55         int blocked; \
56         CRT_Pos size; \
57         void (*close)(struct TTY_struct *); \
58         int (*recv)(struct TTY_struct *,void *buf,int len); \
59         int (*xmit)(struct TTY_struct *,void *buf,int len); \
60         int rfd; \
61         int wfd; \
62         int hanging_up; \
63         struct timeval hangup_clock; \
64         TTY_Parser parser;
65         
66
67 typedef struct
68 {
69   int in_dle;
70   int in_errmark;
71
72   int bitfreq[8];
73   int biterrs;
74 } TTY_Parser;
75
76
77 typedef struct TTY_struct
78 {
79   TTY_SIGNATURE;
80 } TTY;
81
82 typedef struct
83 {
84   int lines;
85   int blocked;
86   struct termios termios;
87   int baud;
88 } TTY_Status;
89
90 #endif /* __TTY_H__ */