173 lines
		
	
	
	
		
			4.3 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			173 lines
		
	
	
	
		
			4.3 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * | ||
|  |   Copyright (c) Eicon Networks, 2000. | ||
|  |  * | ||
|  |   This source file is supplied for the use with | ||
|  |   Eicon Networks range of DIVA Server Adapters. | ||
|  |  * | ||
|  |   Eicon File Revision :    1.9 | ||
|  |  * | ||
|  |   This program is free software; you can redistribute it and/or modify | ||
|  |   it under the terms of the GNU General Public License as published by | ||
|  |   the Free Software Foundation; either version 2, or (at your option) | ||
|  |   any later version. | ||
|  |  * | ||
|  |   This program is distributed in the hope that it will be useful, | ||
|  |   but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY | ||
|  |   implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
|  |   See the GNU General Public License for more details. | ||
|  |  * | ||
|  |   You should have received a copy of the GNU General Public License | ||
|  |   along with this program; if not, write to the Free Software | ||
|  |   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
|  |  * | ||
|  |  */ | ||
|  | #ifndef __DIVA_EICON_TRACE_IDI_IFC_H__
 | ||
|  | #define __DIVA_EICON_TRACE_IDI_IFC_H__
 | ||
|  | 
 | ||
|  | void* SuperTraceOpenAdapter   (int AdapterNumber); | ||
|  | int   SuperTraceCloseAdapter  (void* AdapterHandle); | ||
|  | int   SuperTraceWrite         (void* AdapterHandle, | ||
|  |                                const void* data, int length); | ||
|  | int   SuperTraceReadRequest   (void* AdapterHandle,const char* name,byte* data); | ||
|  | int   SuperTraceGetNumberOfChannels (void* AdapterHandle); | ||
|  | int   SuperTraceASSIGN        (void* AdapterHandle, byte* data); | ||
|  | int   SuperTraceREMOVE        (void* AdapterHandle); | ||
|  | int   SuperTraceTraceOnRequest(void* hAdapter, const char* name, byte* data); | ||
|  | int   SuperTraceWriteVar (void* AdapterHandle, | ||
|  | 												byte* data, | ||
|  | 										 		const char* name, | ||
|  | 										 		void* var, | ||
|  | 										 		byte type, | ||
|  | 										 		byte var_length); | ||
|  | int   SuperTraceExecuteRequest (void* AdapterHandle, | ||
|  | 																const char* name, | ||
|  | 																byte* data); | ||
|  | 
 | ||
|  | typedef struct _diva_strace_path2action { | ||
|  | 	char               path[64]; /* Full path to variable            */ | ||
|  | 	void*							 variable; /* Variable that will receive value */ | ||
|  | } diva_strace_path2action_t; | ||
|  | 
 | ||
|  | #define DIVA_MAX_MANAGEMENT_TRANSFER_SIZE 4096
 | ||
|  | 
 | ||
|  | typedef struct _diva_strace_context { | ||
|  | 	diva_strace_library_interface_t	instance; | ||
|  | 
 | ||
|  | 	int   Adapter; | ||
|  | 	void* hAdapter; | ||
|  | 
 | ||
|  | 	int Channels; | ||
|  | 	int	req_busy; | ||
|  | 
 | ||
|  |   ENTITY   e; | ||
|  |   IDI_CALL request; | ||
|  |   BUFFERS  XData; | ||
|  |   BUFFERS  RData; | ||
|  | 	byte buffer[DIVA_MAX_MANAGEMENT_TRANSFER_SIZE + 1]; | ||
|  |   int removal_state; | ||
|  |   int general_b_ch_event; | ||
|  |   int general_fax_event; | ||
|  |   int general_mdm_event; | ||
|  | 
 | ||
|  | 	byte	rc_ok; | ||
|  | 
 | ||
|  | 	/*
 | ||
|  | 		Initialization request state machine | ||
|  | 		*/ | ||
|  | 	int ChannelsTraceActive; | ||
|  | 	int ModemTraceActive; | ||
|  | 	int FaxTraceActive; | ||
|  | 	int IncomingCallsCallsActive; | ||
|  | 	int IncomingCallsConnectedActive; | ||
|  | 	int OutgoingCallsCallsActive; | ||
|  | 	int OutgoingCallsConnectedActive; | ||
|  | 
 | ||
|  | 	int trace_mask_init; | ||
|  | 	int audio_trace_init; | ||
|  | 	int bchannel_init; | ||
|  | 	int trace_length_init; | ||
|  | 	int	trace_on; | ||
|  | 	int trace_events_down; | ||
|  | 	int l1_trace; | ||
|  | 	int l2_trace; | ||
|  | 
 | ||
|  | 	/*
 | ||
|  | 		Trace\Event Enable | ||
|  | 		*/ | ||
|  | 	word trace_event_mask; | ||
|  | 	word current_trace_event_mask; | ||
|  | 
 | ||
|  | 	dword audio_tap_mask; | ||
|  | 	dword current_audio_tap_mask; | ||
|  | 	dword current_eye_pattern_mask; | ||
|  | 	int   audio_tap_pending; | ||
|  | 	int   eye_pattern_pending; | ||
|  | 
 | ||
|  | 	dword bchannel_trace_mask; | ||
|  | 	dword current_bchannel_trace_mask; | ||
|  | 
 | ||
|  | 
 | ||
|  | 	diva_trace_line_state_t lines[30]; | ||
|  | 
 | ||
|  | 	int	parse_entries; | ||
|  | 	int	cur_parse_entry; | ||
|  | 	diva_strace_path2action_t* parse_table; | ||
|  | 
 | ||
|  | 	diva_trace_library_user_interface_t user_proc_table; | ||
|  | 
 | ||
|  | 	int line_parse_entry_first[30]; | ||
|  | 	int line_parse_entry_last[30]; | ||
|  | 
 | ||
|  | 	int modem_parse_entry_first[30]; | ||
|  | 	int modem_parse_entry_last[30]; | ||
|  | 
 | ||
|  | 	int fax_parse_entry_first[30]; | ||
|  | 	int fax_parse_entry_last[30]; | ||
|  | 
 | ||
|  | 	int statistic_parse_first; | ||
|  | 	int statistic_parse_last; | ||
|  | 
 | ||
|  | 	int mdm_statistic_parse_first; | ||
|  | 	int mdm_statistic_parse_last; | ||
|  | 
 | ||
|  | 	int fax_statistic_parse_first; | ||
|  | 	int fax_statistic_parse_last; | ||
|  | 
 | ||
|  | 	dword	line_init_event; | ||
|  | 	dword	modem_init_event; | ||
|  | 	dword	fax_init_event; | ||
|  | 
 | ||
|  | 	dword	pending_line_status; | ||
|  | 	dword	pending_modem_status; | ||
|  | 	dword	pending_fax_status; | ||
|  | 
 | ||
|  | 	dword clear_call_command; | ||
|  | 
 | ||
|  | 	int outgoing_ifc_stats; | ||
|  | 	int incoming_ifc_stats; | ||
|  | 	int modem_ifc_stats; | ||
|  | 	int fax_ifc_stats; | ||
|  | 	int b1_ifc_stats; | ||
|  | 	int b2_ifc_stats; | ||
|  | 	int d1_ifc_stats; | ||
|  | 	int d2_ifc_stats; | ||
|  | 
 | ||
|  | 	diva_trace_interface_state_t Interface; | ||
|  | 	diva_ifc_statistics_t				 InterfaceStat; | ||
|  | } diva_strace_context_t; | ||
|  | 
 | ||
|  | typedef struct _diva_man_var_header { | ||
|  | 	byte   escape; | ||
|  | 	byte   length; | ||
|  | 	byte   management_id; | ||
|  | 	byte   type; | ||
|  | 	byte   attribute; | ||
|  | 	byte   status; | ||
|  | 	byte   value_length; | ||
|  | 	byte	 path_length; | ||
|  | } diva_man_var_header_t; | ||
|  | 
 | ||
|  | #endif
 | ||
|  | 
 |