120 lines
5.5 KiB
C
120 lines
5.5 KiB
C
/***********************************************************
|
|
Copyright (C), LGC Wireless.
|
|
File Name: isdn_if.h
|
|
Description: ISDN interface declaration for wxc2main
|
|
Version: v9.0.0
|
|
Author: Gengxin Chen
|
|
Create Date: 2008-1-17
|
|
History:
|
|
<author> <date> <version> <desc>
|
|
|
|
************************************************************/
|
|
#ifndef _ISDN_IF_H
|
|
#define _ISDN_IF_H
|
|
|
|
#include "isdn_msg.h"
|
|
#include "isdn_inc.h"
|
|
|
|
|
|
/************************************************************
|
|
ISDN Module parameter structure
|
|
************************************************************/
|
|
|
|
//Send to upper layer primitives, save data to structure
|
|
typedef int f_isdn_setup_ind(Pst *pst, IsdnSetup *ptr); //Setup indication
|
|
typedef int f_isdn_setup_cnf(Pst *pst, IsdnConn *ptr); //Setup confirm
|
|
typedef int f_isdn_proc_ind(Pst *pst, IsdnCallProc *ptr); //Proceeding indication
|
|
typedef int f_isdn_alert_ind(Pst *pst, IsdnAlert *ptr); //Alerting indication
|
|
typedef int f_isdn_disc_ind(Pst *pst, IsdnDisc *ptr); //Disconnect indication
|
|
typedef int f_isdn_rel_ind(Pst *pst, IsdnRel *ptr); //Release indication
|
|
typedef int f_isdn_rel_cnf(Pst *pst, IsdnRelComp *ptr); //Release confirm
|
|
typedef int f_isdn_rel_cnf_err(Pst *pst, IsdnRelComp *ptr); //Release confirm error
|
|
typedef int f_isdn_prog_ind(Pst *pst, IsdnProg *ptr); //Progress indication
|
|
typedef int f_isdn_info_ind(Pst *pst, IsdnInfo *ptr); //Info indication
|
|
typedef int f_isdn_minfo_ind(Pst *pst, IsdnSetupAck *ptr); //More info indication //IsdnSetupAck »ò IsdnInfo
|
|
typedef int f_isdn_noti_ind(Pst *pst, IsdnNoti *ptr); //Notify indication
|
|
typedef int f_isdn_stat_ind(Pst *pst, IsdnStatus *ptr); //Status indication
|
|
typedef int f_isdn_stat_ind_err(Pst *pst, IsdnStatus *ptr); //Status indication(error)
|
|
typedef int f_isdn_resu_ind(Pst *pst, IsdnResuRejReq *ptr); //Resume indication
|
|
typedef int f_isdn_rej_ind(Pst *pst, IsdnResuRejReq *ptr); //Reject indication
|
|
typedef int f_Isdn_susp_ind(Pst *pst, IsdnSusp *ptr); //Suspend indication
|
|
typedef int f_isdn_restart_req(Pst *pst, IsdnRestart *ptr); //Restart request
|
|
typedef int f_isdn_rest_cnf(Pst *pst, IsdnRestAck *ptr); //Restart confirm
|
|
typedef int f_isdn_timeout_ind(Pst *pst); //TIMEOUT
|
|
typedef int f_isdn_reattempt_ind(Pst *pst); //REATTEMPT
|
|
//ansi
|
|
typedef int f_isdn_service_ind(Pst *pst, IsdnService *ptr); //Service
|
|
typedef int f_isdn_service_cnf(Pst *pst, IsdnServAck *ptr); //Service Ack
|
|
typedef int f_isdn_ser_timeout_ind(Pst *pst); //Service TIMEOUT
|
|
|
|
typedef struct _isdn_eventhandle_struct
|
|
{
|
|
f_isdn_setup_ind *h_isdn_setup_ind;
|
|
f_isdn_setup_cnf *h_isdn_setup_cnf;
|
|
f_isdn_proc_ind *h_isdn_proc_ind;
|
|
f_isdn_alert_ind *h_isdn_alert_ind;
|
|
f_isdn_disc_ind *h_isdn_disc_ind;
|
|
f_isdn_rel_ind *h_isdn_rel_ind;
|
|
f_isdn_rel_cnf *h_isdn_rel_cnf;
|
|
f_isdn_rel_cnf_err *h_isdn_rel_cnf_err;
|
|
f_isdn_prog_ind *h_isdn_prog_ind;
|
|
f_isdn_info_ind *h_isdn_info_ind;
|
|
f_isdn_minfo_ind *h_isdn_minfo_ind;
|
|
f_isdn_noti_ind *h_isdn_noti_ind;
|
|
f_isdn_stat_ind *h_isdn_stat_ind;
|
|
f_isdn_stat_ind_err *h_isdn_stat_ind_err;
|
|
f_isdn_resu_ind *h_isdn_resu_ind;
|
|
f_isdn_rej_ind *h_isdn_rej_ind;
|
|
// f_isdn_susp_ind *h_isdn_susp_ind;
|
|
f_isdn_restart_req *h_isdn_restart_req;
|
|
f_isdn_rest_cnf *h_isdn_rest_cnf;
|
|
f_isdn_timeout_ind *h_isdn_timeout_ind;
|
|
f_isdn_reattempt_ind *h_isdn_reattempt_ind;
|
|
|
|
//ansi
|
|
f_isdn_service_ind *h_isdn_service_ind;
|
|
f_isdn_service_cnf *h_isdn_service_cnf;
|
|
f_isdn_ser_timeout_ind *h_isdn_ser_timeout_ind;
|
|
|
|
}ISDN_EventHandle_struct;
|
|
|
|
typedef struct _isdn_sap_attrib_
|
|
{
|
|
ISDN_EventHandle_struct event_handle;
|
|
}ISDN_Sap_Attrib_;
|
|
|
|
|
|
|
|
/************************************************************
|
|
ISDN Module interface
|
|
************************************************************/
|
|
|
|
//Receive upper layer interface primitives
|
|
extern int isdn_setup_req(Pst *pst, IsdnSetup *ptr); //Setup request
|
|
extern int isdn_setup_resp(Pst *pst, IsdnConn *ptr); //Setup response
|
|
//extern int isdn_setup_comp_req(Pst *pst, IsdnConnAck *ptr); //Setup complete request
|
|
extern int isdn_call_proc_req(Pst *pst, IsdnCallProc *ptr); //Proceeding request
|
|
extern int isdn_alert_req(Pst *pst, IsdnAlert *ptr); //Alerting request
|
|
extern int isdn_disc_req(Pst *pst, IsdnDisc *ptr); //Disconnect request
|
|
extern int isdn_rel_req(Pst *pst, IsdnRel *ptr); //Release request
|
|
extern int isdn_rej_req(Pst *pst, IsdnRelComp *ptr); //Reject request
|
|
extern int isdn_prog_req(Pst *pst, IsdnProg *ptr); //Progress request
|
|
extern int isdn_info_req(Pst *pst, IsdnInfo *ptr); //Infomation request
|
|
extern int isdn_m_info_req(Pst *pst, IsdnSetupAck *ptr); //More Infomation request //IsdnSetupAck »ò IsdnInfo
|
|
extern int isdn_noti_req(Pst *pst, IsdnNoti *ptr); //Notify request
|
|
extern int isdn_rej_req(Pst *pst, IsdnRelComp *ptr); //Reject request
|
|
extern int isdn_resu_resp(Pst *pst, IsdnResuResp *ptr); //Resume response
|
|
extern int isdn_resu_rej_req(Pst *pst, IsdnResuRejReq *ptr); //Resume reject request
|
|
extern int isdn_susp_resp(Pst *pst, IsdnSusp *ptr); //Suspend response
|
|
extern int isdn_susp_rej_req(Pst *pst, IsdnSuspRejReq *ptr); //Suspend reject request
|
|
extern int isdn_restart_req(Pst *pst, IsdnRestart *ptr); //Restart request
|
|
extern int isdn_m_restart_req(Pst *pst, IsdnRestart *ptr); //Management restart request
|
|
extern int isdn_restart_cnf(Pst *pst, IsdnRestAck *ptr); //Restart confirm
|
|
extern int isdn_timeout(Pst *pst); //Time out
|
|
//ansi
|
|
extern int isdn_service_bc_req(Pst *pst, IsdnService *ptr); //maintenance B-channel SERVICE request
|
|
extern int isdn_service_bc_rsp(Pst *pst, IsdnServAck *ptr); //maintenance B-channel SERVICE response
|
|
|
|
|
|
#endif
|