| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
 | 2 |  * | 
 | 3 |   Copyright (c) Eicon Networks, 2000. | 
 | 4 |  * | 
 | 5 |   This source file is supplied for the use with | 
 | 6 |   Eicon Networks range of DIVA Server Adapters. | 
 | 7 |  * | 
 | 8 |   Eicon File Revision :    1.9 | 
 | 9 |  * | 
 | 10 |   This program is free software; you can redistribute it and/or modify | 
 | 11 |   it under the terms of the GNU General Public License as published by | 
 | 12 |   the Free Software Foundation; either version 2, or (at your option) | 
 | 13 |   any later version. | 
 | 14 |  * | 
 | 15 |   This program is distributed in the hope that it will be useful, | 
 | 16 |   but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY | 
 | 17 |   implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | 
 | 18 |   See the GNU General Public License for more details. | 
 | 19 |  * | 
 | 20 |   You should have received a copy of the GNU General Public License | 
 | 21 |   along with this program; if not, write to the Free Software | 
 | 22 |   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 
 | 23 |  * | 
 | 24 |  */ | 
 | 25 | #ifndef __DIVA_EICON_TRACE_IDI_IFC_H__ | 
 | 26 | #define __DIVA_EICON_TRACE_IDI_IFC_H__ | 
 | 27 |  | 
 | 28 | void* SuperTraceOpenAdapter   (int AdapterNumber); | 
 | 29 | int   SuperTraceCloseAdapter  (void* AdapterHandle); | 
 | 30 | int   SuperTraceWrite         (void* AdapterHandle, | 
 | 31 |                                const void* data, int length); | 
 | 32 | int   SuperTraceReadRequest   (void* AdapterHandle,const char* name,byte* data); | 
 | 33 | int   SuperTraceGetNumberOfChannels (void* AdapterHandle); | 
 | 34 | int   SuperTraceASSIGN        (void* AdapterHandle, byte* data); | 
 | 35 | int   SuperTraceREMOVE        (void* AdapterHandle); | 
 | 36 | int   SuperTraceTraceOnRequest(void* hAdapter, const char* name, byte* data); | 
 | 37 | int   SuperTraceWriteVar (void* AdapterHandle, | 
 | 38 | 												byte* data, | 
 | 39 | 										 		const char* name, | 
 | 40 | 										 		void* var, | 
 | 41 | 										 		byte type, | 
 | 42 | 										 		byte var_length); | 
 | 43 | int   SuperTraceExecuteRequest (void* AdapterHandle, | 
 | 44 | 																const char* name, | 
 | 45 | 																byte* data); | 
 | 46 |  | 
 | 47 | typedef struct _diva_strace_path2action { | 
 | 48 | 	char               path[64]; /* Full path to variable            */ | 
 | 49 | 	void*							 variable; /* Variable that will receive value */ | 
 | 50 | } diva_strace_path2action_t; | 
 | 51 |  | 
 | 52 | #define DIVA_MAX_MANAGEMENT_TRANSFER_SIZE 4096 | 
 | 53 |  | 
 | 54 | typedef struct _diva_strace_context { | 
 | 55 | 	diva_strace_library_interface_t	instance; | 
 | 56 |  | 
 | 57 | 	int   Adapter; | 
 | 58 | 	void* hAdapter; | 
 | 59 |  | 
 | 60 | 	int Channels; | 
 | 61 | 	int	req_busy; | 
 | 62 |  | 
 | 63 |   ENTITY   e; | 
 | 64 |   IDI_CALL request; | 
 | 65 |   BUFFERS  XData; | 
 | 66 |   BUFFERS  RData; | 
 | 67 | 	byte buffer[DIVA_MAX_MANAGEMENT_TRANSFER_SIZE + 1]; | 
 | 68 |   int removal_state; | 
 | 69 |   int general_b_ch_event; | 
 | 70 |   int general_fax_event; | 
 | 71 |   int general_mdm_event; | 
 | 72 |  | 
 | 73 | 	byte	rc_ok; | 
 | 74 |  | 
 | 75 | 	/* | 
 | 76 | 		Initialization request state machine | 
 | 77 | 		*/ | 
 | 78 | 	int ChannelsTraceActive; | 
 | 79 | 	int ModemTraceActive; | 
 | 80 | 	int FaxTraceActive; | 
 | 81 | 	int IncomingCallsCallsActive; | 
 | 82 | 	int IncomingCallsConnectedActive; | 
 | 83 | 	int OutgoingCallsCallsActive; | 
 | 84 | 	int OutgoingCallsConnectedActive; | 
 | 85 |  | 
 | 86 | 	int trace_mask_init; | 
 | 87 | 	int audio_trace_init; | 
 | 88 | 	int bchannel_init; | 
 | 89 | 	int trace_length_init; | 
 | 90 | 	int	trace_on; | 
 | 91 | 	int trace_events_down; | 
 | 92 | 	int l1_trace; | 
 | 93 | 	int l2_trace; | 
 | 94 |  | 
 | 95 | 	/* | 
 | 96 | 		Trace\Event Enable | 
 | 97 | 		*/ | 
 | 98 | 	word trace_event_mask; | 
 | 99 | 	word current_trace_event_mask; | 
 | 100 |  | 
 | 101 | 	dword audio_tap_mask; | 
 | 102 | 	dword current_audio_tap_mask; | 
 | 103 | 	dword current_eye_pattern_mask; | 
 | 104 | 	int   audio_tap_pending; | 
 | 105 | 	int   eye_pattern_pending; | 
 | 106 |  | 
 | 107 | 	dword bchannel_trace_mask; | 
 | 108 | 	dword current_bchannel_trace_mask; | 
 | 109 |  | 
 | 110 |  | 
 | 111 | 	diva_trace_line_state_t lines[30]; | 
 | 112 |  | 
 | 113 | 	int	parse_entries; | 
 | 114 | 	int	cur_parse_entry; | 
 | 115 | 	diva_strace_path2action_t* parse_table; | 
 | 116 |  | 
 | 117 | 	diva_trace_library_user_interface_t user_proc_table; | 
 | 118 |  | 
 | 119 | 	int line_parse_entry_first[30]; | 
 | 120 | 	int line_parse_entry_last[30]; | 
 | 121 |  | 
 | 122 | 	int modem_parse_entry_first[30]; | 
 | 123 | 	int modem_parse_entry_last[30]; | 
 | 124 |  | 
 | 125 | 	int fax_parse_entry_first[30]; | 
 | 126 | 	int fax_parse_entry_last[30]; | 
 | 127 |  | 
 | 128 | 	int statistic_parse_first; | 
 | 129 | 	int statistic_parse_last; | 
 | 130 |  | 
 | 131 | 	int mdm_statistic_parse_first; | 
 | 132 | 	int mdm_statistic_parse_last; | 
 | 133 |  | 
 | 134 | 	int fax_statistic_parse_first; | 
 | 135 | 	int fax_statistic_parse_last; | 
 | 136 |  | 
 | 137 | 	dword	line_init_event; | 
 | 138 | 	dword	modem_init_event; | 
 | 139 | 	dword	fax_init_event; | 
 | 140 |  | 
 | 141 | 	dword	pending_line_status; | 
 | 142 | 	dword	pending_modem_status; | 
 | 143 | 	dword	pending_fax_status; | 
 | 144 |  | 
 | 145 | 	dword clear_call_command; | 
 | 146 |  | 
 | 147 | 	int outgoing_ifc_stats; | 
 | 148 | 	int incoming_ifc_stats; | 
 | 149 | 	int modem_ifc_stats; | 
 | 150 | 	int fax_ifc_stats; | 
 | 151 | 	int b1_ifc_stats; | 
 | 152 | 	int b2_ifc_stats; | 
 | 153 | 	int d1_ifc_stats; | 
 | 154 | 	int d2_ifc_stats; | 
 | 155 |  | 
 | 156 | 	diva_trace_interface_state_t Interface; | 
 | 157 | 	diva_ifc_statistics_t				 InterfaceStat; | 
 | 158 | } diva_strace_context_t; | 
 | 159 |  | 
 | 160 | typedef struct _diva_man_var_header { | 
 | 161 | 	byte   escape; | 
 | 162 | 	byte   length; | 
 | 163 | 	byte   management_id; | 
 | 164 | 	byte   type; | 
 | 165 | 	byte   attribute; | 
 | 166 | 	byte   status; | 
 | 167 | 	byte   value_length; | 
 | 168 | 	byte	 path_length; | 
 | 169 | } diva_man_var_header_t; | 
 | 170 |  | 
 | 171 | #endif | 
 | 172 |  |