| /* |
| * |
| 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 |