FreeCalypso > hg > fc-magnetite
comparison src/aci2/aci/line_edit.h @ 3:93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 26 Sep 2016 00:29:36 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
2:c41a534f33c6 | 3:93999a60b835 |
---|---|
1 /* | |
2 +----------------------------------------------------------------------------- | |
3 | Project : | |
4 | Modul : line | |
5 +----------------------------------------------------------------------------- | |
6 | Copyright 2002 Texas Instruments Berlin, AG | |
7 | All rights reserved. | |
8 | | |
9 | This file is confidential and a trade secret of Texas | |
10 | Instruments Berlin, AG | |
11 | The receipt of or possession of this file does not convey | |
12 | any rights to reproduce or disclose its contents or to | |
13 | manufacture, use, or sell anything it may describe, in | |
14 | whole, or in part, without the specific written consent of | |
15 | Texas Instruments Berlin, AG. | |
16 +----------------------------------------------------------------------------- | |
17 | Purpose : This modul ... | |
18 +----------------------------------------------------------------------------- | |
19 */ | |
20 | |
21 #ifndef LINE_EDIT_H | |
22 #define LINE_EDIT_H | |
23 | |
24 /* | |
25 **************************************************************************************************** | |
26 * public stuff * | |
27 **************************************************************************************************** | |
28 */ | |
29 typedef enum | |
30 { | |
31 LEDIT_FAIL = -1, | |
32 LEDIT_EXCT = 0, | |
33 LEDIT_CMPL, | |
34 LEDIT_COLLECT, | |
35 LEDIT_ESC, /* in text mode do nothing when received ESC */ | |
36 LEDIT_OK, /* for single <CR> and simple "AT<CR>" */ | |
37 LEDIT_IGNORE /* ignore chars before A and between A..T */ | |
38 } T_LEDIT_RSLT; | |
39 | |
40 #define LEDIT_ERR_NONE -1 | |
41 | |
42 typedef enum | |
43 { | |
44 /*000*/ LEDIT_ERR_NoMemory = 0, | |
45 /*001*/ LEDIT_ERR_NoMaintenance, | |
46 /*002*/ LEDIT_ERR_NoValidCommand, | |
47 /*003*/ LEDIT_ERR_LastCmdPending, | |
48 /*004*/ LEDIT_ERR_Unknown | |
49 } T_LEDIT_ERR_CODE; | |
50 | |
51 typedef struct /* error code - error message mapping */ | |
52 { | |
53 CHAR* msg; /* error message */ | |
54 T_LEDIT_ERR_CODE code; /* error code */ | |
55 } T_LEDIT_ERR; | |
56 | |
57 | |
58 typedef enum | |
59 { | |
60 LEDIT_CTRL_ERROR, | |
61 LEDIT_CTRL_CMPL, | |
62 LEDIT_CTRL_REMOVE_SRC, | |
63 LEDIT_CTRL_PROMPT, | |
64 LEDIT_CTRL_CRLF_PROMPT, | |
65 LEDIT_CTRL_MORE_CMDS | |
66 } T_LEDIT_CTRL; | |
67 | |
68 | |
69 typedef struct | |
70 { | |
71 UBYTE S3; /* CR */ | |
72 UBYTE S4; /* LF */ | |
73 UBYTE S5; /* BS */ | |
74 UBYTE atE; /* Command Echo: ON */ | |
75 UBYTE smsEnd;/* want to be non V25.ter conform */ | |
76 } T_LEDIT; /* initial = {13, 10, 8, 1, 0x1a}; */ | |
77 /* S3 S4 S5 E, smsEnd */ | |
78 /* done by liblineedit.a */ | |
79 /* can be overwritten by ledit_ctrl() */ | |
80 | |
81 typedef enum | |
82 { | |
83 LEDIT_ATCMD_NIL = 0x00, | |
84 LEDIT_ATCMD_AND = 0x26, /* '&' */ | |
85 LEDIT_ATCMD_BASIC = 0x42, /* 'B' */ | |
86 LEDIT_ATCMD_DIAL = 0x44, /* 'D' */ | |
87 LEDIT_ATCMD_EXTENDED = 0x45, /* 'E' */ | |
88 LEDIT_ATCMD_S = 0x53 /* 'S' */ | |
89 } T_LEDIT_ATCMD_MAINTYPE; | |
90 | |
91 typedef enum | |
92 { | |
93 LEDIT_ATCMD_QUERY = 0x51, | |
94 LEDIT_ATCMD_SET = 0x53, /* 'S' */ | |
95 LEDIT_ATCMD_TEST = 0x54 /* 'T' */ | |
96 } T_LEDIT_ATCMD_SUBTYPE; | |
97 | |
98 typedef struct | |
99 { | |
100 T_LEDIT_ATCMD_MAINTYPE mType; | |
101 T_LEDIT_ATCMD_SUBTYPE sType; | |
102 UBYTE append_Flag; | |
103 } T_LEDIT_ATCMD_TYPE; | |
104 | |
105 | |
106 typedef struct | |
107 { | |
108 T_LEDIT_ATCMD_TYPE type; | |
109 char *name; | |
110 char *params; | |
111 } T_LEDIT_ATCMD; | |
112 | |
113 /* | |
114 * taken from ACI.doc, must be removed when including "P_ACI.val" ! | |
115 * #define MAX_CMD_LEN 350 | |
116 */ | |
117 | |
118 /* | |
119 * global echo buffer | |
120 */ | |
121 EXTERN char g_ledit_echoBuf[MAX_CMD_LEN+1]; | |
122 /* | |
123 * public functions | |
124 */ | |
125 EXTERN T_LEDIT_RSLT ledit_cmd (UBYTE src_id, const UBYTE *chars, USHORT len); | |
126 EXTERN T_LEDIT_RSLT ledit_text (UBYTE src_id, const UBYTE *chars, USHORT len); | |
127 EXTERN T_LEDIT_RSLT ledit_get_first (UBYTE src_id, T_LEDIT_ATCMD **cmd); | |
128 EXTERN T_LEDIT_RSLT ledit_get_next (UBYTE src_id, T_LEDIT_ATCMD **cmd); | |
129 EXTERN T_LEDIT_RSLT ledit_get_current(UBYTE src_id, T_LEDIT_ATCMD **cmd); | |
130 EXTERN T_LEDIT_RSLT ledit_get_text (UBYTE src_id, char **txt); | |
131 EXTERN T_LEDIT_RSLT ledit_ctrl (UBYTE src_id, T_LEDIT_CTRL ctrl, T_LEDIT_ERR **err); | |
132 EXTERN T_LEDIT_RSLT ledit_set_config (UBYTE src_id, T_LEDIT line); | |
133 EXTERN T_LEDIT_RSLT ledit_trace_line (UBYTE src_id, char *txt); | |
134 | |
135 #endif |