📄 divacapi.h
字号:
byte data_ack_pending; DATA_B3_DESC DBuffer[MAX_DATA_B3]; DATA_ACK_DESC DataAck[MAX_DATA_ACK];};struct _DIVA_CAPI_ADAPTER { IDI_CALL request; byte Id; byte max_plci; byte max_listen; byte listen_active; PLCI *plci; byte ch_ncci[MAX_NL_CHANNEL+1]; byte ncci_ch[MAX_NCCI+1]; byte ncci_plci[MAX_NCCI+1]; byte ncci_state[MAX_NCCI+1]; byte ncci_next[MAX_NCCI+1]; NCCI ncci[MAX_NCCI+1]; byte ch_flow_control[MAX_NL_CHANNEL+1]; /* Used by XON protocol */ byte ch_flow_control_pending; byte ch_flow_plci[MAX_NL_CHANNEL+1]; int last_flow_control_ch; dword Info_Mask[MAX_APPL]; dword CIP_Mask[MAX_APPL]; dword Notification_Mask[MAX_APPL]; PLCI *codec_listen[MAX_APPL]; dword requested_options_table[MAX_APPL]; API_PROFILE profile; MANUFACTURER_PROFILE man_profile; dword manufacturer_features; byte AdvCodecFLAG; PLCI *AdvCodecPLCI; PLCI *AdvSignalPLCI; APPL *AdvSignalAppl; byte TelOAD[23]; byte TelOSA[23]; byte scom_appl_disable; PLCI *automatic_lawPLCI; byte automatic_law; byte u_law; byte adv_voice_coef_length; byte adv_voice_coef_buffer[ADV_VOICE_COEF_BUFFER_SIZE]; byte li_pri; byte li_channels; word li_base; byte adapter_disabled; byte group_optimization_enabled; /* use application groups if enabled */ dword sdram_bar; byte flag_dynamic_l1_down; /* for hunt groups:down layer 1 if no appl present*/ byte FlowControlIdTable[256]; byte FlowControlSkipTable[256]; void* os_card; /* pointer to associated OS dependent adapter structure */};/*------------------------------------------------------------------*//* Application flags *//*------------------------------------------------------------------*/#define APPL_FLAG_OLD_LI_SPEC 0x01#define APPL_FLAG_PRIV_EC_SPEC 0x02/*------------------------------------------------------------------*//* API parameter definitions *//*------------------------------------------------------------------*/#define X75_TTX 1 /* x.75 for ttx */#define TRF 2 /* transparent with hdlc framing */#define TRF_IN 3 /* transparent with hdlc fr. inc. */#define SDLC 4 /* sdlc, sna layer-2 */#define X75_BTX 5 /* x.75 for btx */#define LAPD 6 /* lapd (Q.921) */#define X25_L2 7 /* x.25 layer-2 */#define V120_L2 8 /* V.120 layer-2 protocol */#define V42_IN 9 /* V.42 layer-2 protocol, incomming */#define V42 10 /* V.42 layer-2 protocol */#define MDM_ATP 11 /* AT Parser built in the L2 */#define X75_V42BIS 12 /* ISO7776 (X.75 SLP) modified to support V.42 bis compression */#define RTPL2_IN 13 /* RTP layer-2 protocol, incomming */#define RTPL2 14 /* RTP layer-2 protocol */#define V120_V42BIS 15 /* V.120 layer-2 protocol supporting V.42 bis compression */#define T70NL 1#define X25PLP 2#define T70NLX 3#define TRANSPARENT_NL 4#define ISO8208 5#define T30 6/*------------------------------------------------------------------*//* FAX interface to IDI *//*------------------------------------------------------------------*/#define CAPI_MAX_HEAD_LINE_SPACE 89#define CAPI_MAX_DATE_TIME_LENGTH 18#define T30_MAX_STATION_ID_LENGTH 20#define T30_MAX_SUBADDRESS_LENGTH 20#define T30_MAX_PASSWORD_LENGTH 20typedef struct t30_info_s T30_INFO;struct t30_info_s { byte code; byte rate_div_2400; byte resolution; byte data_format; byte pages_low; byte pages_high; byte operating_mode; byte control_bits_low; byte control_bits_high; byte feature_bits_low; byte feature_bits_high; byte recording_properties; byte universal_6; byte universal_7; byte station_id_len; byte head_line_len; byte station_id[T30_MAX_STATION_ID_LENGTH];/* byte head_line[]; *//* byte sub_sep_length; *//* byte sub_sep_field[]; *//* byte pwd_length; *//* byte pwd_field[]; *//* byte nsf_info_length; *//* byte nsf_info_field[]; */};#define T30_RESOLUTION_R8_0385 0x00#define T30_RESOLUTION_R8_0770_OR_200 0x01#define T30_RESOLUTION_R8_1540 0x02#define T30_RESOLUTION_R16_1540_OR_400 0x04#define T30_RESOLUTION_R4_0385_OR_100 0x08#define T30_RESOLUTION_300_300 0x10#define T30_RESOLUTION_INCH_BASED 0x40#define T30_RESOLUTION_METRIC_BASED 0x80#define T30_RECORDING_WIDTH_ISO_A4 0#define T30_RECORDING_WIDTH_ISO_B4 1#define T30_RECORDING_WIDTH_ISO_A3 2#define T30_RECORDING_WIDTH_COUNT 3#define T30_RECORDING_LENGTH_ISO_A4 0#define T30_RECORDING_LENGTH_ISO_B4 1#define T30_RECORDING_LENGTH_UNLIMITED 2#define T30_RECORDING_LENGTH_COUNT 3#define T30_MIN_SCANLINE_TIME_00_00_00 0#define T30_MIN_SCANLINE_TIME_05_05_05 1#define T30_MIN_SCANLINE_TIME_10_05_05 2#define T30_MIN_SCANLINE_TIME_10_10_10 3#define T30_MIN_SCANLINE_TIME_20_10_10 4#define T30_MIN_SCANLINE_TIME_20_20_20 5#define T30_MIN_SCANLINE_TIME_40_20_20 6#define T30_MIN_SCANLINE_TIME_40_40_40 7#define T30_MIN_SCANLINE_TIME_RES_8 8#define T30_MIN_SCANLINE_TIME_RES_9 9#define T30_MIN_SCANLINE_TIME_RES_10 10#define T30_MIN_SCANLINE_TIME_10_10_05 11#define T30_MIN_SCANLINE_TIME_20_10_05 12#define T30_MIN_SCANLINE_TIME_20_20_10 13#define T30_MIN_SCANLINE_TIME_40_20_10 14#define T30_MIN_SCANLINE_TIME_40_40_20 15#define T30_MIN_SCANLINE_TIME_COUNT 16#define T30_DATA_FORMAT_SFF 0#define T30_DATA_FORMAT_ASCII 1#define T30_DATA_FORMAT_NATIVE 2#define T30_DATA_FORMAT_COUNT 3#define T30_OPERATING_MODE_STANDARD 0#define T30_OPERATING_MODE_CLASS2 1#define T30_OPERATING_MODE_CLASS1 2#define T30_OPERATING_MODE_CAPI 3#define T30_OPERATING_MODE_CAPI_NEG 4#define T30_OPERATING_MODE_COUNT 5 /* EDATA transmit messages */#define EDATA_T30_DIS 0x01#define EDATA_T30_FTT 0x02#define EDATA_T30_MCF 0x03#define EDATA_T30_PARAMETERS 0x04 /* EDATA receive messages */#define EDATA_T30_DCS 0x81#define EDATA_T30_TRAIN_OK 0x82#define EDATA_T30_EOP 0x83#define EDATA_T30_MPS 0x84#define EDATA_T30_EOM 0x85#define EDATA_T30_DTC 0x86#define EDATA_T30_PAGE_END 0x87 /* Indicates end of page data. Reserved, but not implemented ! */#define EDATA_T30_EOP_CAPI 0x88#define T30_SUCCESS 0#define T30_ERR_NO_DIS_RECEIVED 1#define T30_ERR_TIMEOUT_NO_RESPONSE 2#define T30_ERR_RETRY_NO_RESPONSE 3#define T30_ERR_TOO_MANY_REPEATS 4#define T30_ERR_UNEXPECTED_MESSAGE 5#define T30_ERR_UNEXPECTED_DCN 6#define T30_ERR_DTC_UNSUPPORTED 7#define T30_ERR_ALL_RATES_FAILED 8#define T30_ERR_TOO_MANY_TRAINS 9#define T30_ERR_RECEIVE_CORRUPTED 10#define T30_ERR_UNEXPECTED_DISC 11#define T30_ERR_APPLICATION_DISC 12#define T30_ERR_INCOMPATIBLE_DIS 13#define T30_ERR_INCOMPATIBLE_DCS 14#define T30_ERR_TIMEOUT_NO_COMMAND 15#define T30_ERR_RETRY_NO_COMMAND 16#define T30_ERR_TIMEOUT_COMMAND_TOO_LONG 17#define T30_ERR_TIMEOUT_RESPONSE_TOO_LONG 18#define T30_ERR_NOT_IDENTIFIED 19#define T30_ERR_SUPERVISORY_TIMEOUT 20#define T30_ERR_TOO_LONG_SCAN_LINE 21/* #define T30_ERR_RETRY_NO_PAGE_AFTER_MPS 22 */#define T30_ERR_RETRY_NO_PAGE_RECEIVED 23#define T30_ERR_RETRY_NO_DCS_AFTER_FTT 24#define T30_ERR_RETRY_NO_DCS_AFTER_EOM 25#define T30_ERR_RETRY_NO_DCS_AFTER_MPS 26#define T30_ERR_RETRY_NO_DCN_AFTER_MCF 27#define T30_ERR_RETRY_NO_DCN_AFTER_RTN 28#define T30_ERR_RETRY_NO_CFR 29#define T30_ERR_RETRY_NO_MCF_AFTER_EOP 30#define T30_ERR_RETRY_NO_MCF_AFTER_EOM 31#define T30_ERR_RETRY_NO_MCF_AFTER_MPS 32#define T30_ERR_SUB_SEP_UNSUPPORTED 33#define T30_ERR_PWD_UNSUPPORTED 34#define T30_ERR_SUB_SEP_PWD_UNSUPPORTED 35#define T30_ERR_INVALID_COMMAND_FRAME 36#define T30_ERR_UNSUPPORTED_PAGE_CODING 37#define T30_ERR_INVALID_PAGE_CODING 38#define T30_ERR_INCOMPATIBLE_PAGE_CONFIG 39#define T30_ERR_TIMEOUT_FROM_APPLICATION 40#define T30_ERR_V34FAX_NO_REACTION_ON_MARK 41#define T30_ERR_V34FAX_TRAINING_TIMEOUT 42#define T30_ERR_V34FAX_UNEXPECTED_V21 43#define T30_ERR_V34FAX_PRIMARY_CTS_ON 44#define T30_ERR_V34FAX_TURNAROUND_POLLING 45#define T30_ERR_V34FAX_V8_INCOMPATIBILITY 46#define T30_CONTROL_BIT_DISABLE_FINE 0x0001#define T30_CONTROL_BIT_ENABLE_ECM 0x0002#define T30_CONTROL_BIT_ECM_64_BYTES 0x0004#define T30_CONTROL_BIT_ENABLE_2D_CODING 0x0008#define T30_CONTROL_BIT_ENABLE_T6_CODING 0x0010#define T30_CONTROL_BIT_ENABLE_UNCOMPR 0x0020#define T30_CONTROL_BIT_ACCEPT_POLLING 0x0040#define T30_CONTROL_BIT_REQUEST_POLLING 0x0080#define T30_CONTROL_BIT_MORE_DOCUMENTS 0x0100#define T30_CONTROL_BIT_ACCEPT_SUBADDRESS 0x0200#define T30_CONTROL_BIT_ACCEPT_SEL_POLLING 0x0400#define T30_CONTROL_BIT_ACCEPT_PASSWORD 0x0800#define T30_CONTROL_BIT_ENABLE_V34FAX 0x1000#define T30_CONTROL_BIT_EARLY_CONNECT 0x2000#define T30_CONTROL_BIT_ALL_FEATURES (T30_CONTROL_BIT_ENABLE_ECM | T30_CONTROL_BIT_ENABLE_2D_CODING | T30_CONTROL_BIT_ENABLE_T6_CODING | T30_CONTROL_BIT_ENABLE_UNCOMPR | T30_CONTROL_BIT_ENABLE_V34FAX)#define T30_FEATURE_BIT_FINE 0x0001#define T30_FEATURE_BIT_ECM 0x0002#define T30_FEATURE_BIT_ECM_64_BYTES 0x0004#define T30_FEATURE_BIT_2D_CODING 0x0008#define T30_FEATURE_BIT_T6_CODING 0x0010#define T30_FEATURE_BIT_UNCOMPR_ENABLED 0x0020#define T30_FEATURE_BIT_POLLING 0x0040#define T30_FEATURE_BIT_MORE_DOCUMENTS 0x0100#define T30_FEATURE_BIT_V34FAX 0x1000#define T30_NSF_CONTROL_BIT_ENABLE_NSF 0x0001#define T30_NSF_CONTROL_BIT_RAW_INFO 0x0002#define T30_NSF_CONTROL_BIT_NEGOTIATE_IND 0x0004#define T30_NSF_CONTROL_BIT_NEGOTIATE_RESP 0x0008#define T30_NSF_ELEMENT_NSF_FIF 0x00#define T30_NSF_ELEMENT_NSC_FIF 0x01#define T30_NSF_ELEMENT_NSS_FIF 0x02#define T30_NSF_ELEMENT_COMPANY_NAME 0x03/*------------------------------------------------------------------*//* Analog modem definitions *//*------------------------------------------------------------------*/typedef struct async_s ASYNC_FORMAT;struct async_s { unsigned pe: 1; unsigned parity:2; unsigned spare: 2; unsigned stp: 1; unsigned ch_len:2; /* 3th octett in CAI */};/*------------------------------------------------------------------*//* PLCI/NCCI states *//*------------------------------------------------------------------*/#define IDLE 0#define OUTG_CON_PENDING 1#define INC_CON_PENDING 2#define INC_CON_ALERT 3#define INC_CON_ACCEPT 4#define INC_ACT_PENDING 5#define LISTENING 6#define CONNECTED 7#define OUTG_DIS_PENDING 8#define INC_DIS_PENDING 9#define LOCAL_CONNECT 10#define INC_RES_PENDING 11#define OUTG_RES_PENDING 12#define SUSPENDING 13#define ADVANCED_VOICE_SIG 14#define ADVANCED_VOICE_NOSIG 15#define RESUMING 16#define INC_CON_CONNECTED_ALERT 17#define OUTG_REJ_PENDING 18/*------------------------------------------------------------------*//* auxilliary states for supplementary services *//*------------------------------------------------------------------*/#define IDLE 0#define HOLD_REQUEST 1#define HOLD_INDICATE 2#define CALL_HELD 3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -