⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 psa_cc.h

📁 是一个手机功能的模拟程序
💻 H
📖 第 1 页 / 共 2 页
字号:
  UBYTE odd_even;                 /* odd / even indicator          */
  UBYTE c_subaddr;                /* length of subaddress info     */
  UBYTE *subaddr;                 /* subaddress information                             */
} T_dyn_redir_party_sub;

typedef struct CCCallTabl
{
  BOOL      ntryUsdFlg;                 /* flags this entry as used */
  UBYTE     ti;                         /* transaction identifier */
  UBYTE     calStat;                    /* call status */
  UBYTE     calType;                    /* type of call */
  UBYTE     alrtStat;                   /* alerting status */
  BOOL      inBndTns;                   /* in-band tones flag */
  UBYTE     prgDesc;                    /* progress description */
  T_bcpara  BC[2];                      /* bearer capabilities */
  UBYTE     curBC;                      /* current bearer capability */
  T_calling_party     clgPty;           /* calling party address */
  T_calling_party_sub clgPtySub;        /* calling party subaddress */
  T_dyn_called_party  cldPty;           /* called party address */
  T_called_party_sub  cldPtySub;        /* called party subaddress */
  T_dyn_redir_party   rdrPty;           /* Redirecting party */
  T_dyn_redir_party_sub rdrPtySub;      /* Redirecting party subaddress */
  /*CHAR      alphId[MAX_ALPHA+1];*/    /* alpha identifier */
  T_ACI_PB_TEXT       alphIdUni;        /* alpha identifier */
  UBYTE     rptInd;                     /* repeat indicator */
  UBYTE     sigInf;                     /* signal information */
  UBYTE     prio;                       /* priority of call */
  UBYTE     CLIRsup;                    /* CLIR suppression */
  UBYTE     mptyStat;                   /* multiparty status */
  UBYTE     iId;                        /* invoke id */
  UBYTE     srvStat;                    /* service status */
  UBYTE     srvType;                    /* type of service */
  UBYTE     SSver;                      /* supplementary service version */
  UBYTE     opCode;                     /* SS operation code */
  UBYTE     CUGidx;                     /* CUG index */
  UBYTE     CUGprf;                     /* preferential CUG */
  UBYTE     OAsup;                      /* OA suppress */
  USHORT    rslt;                       /* result */
  USHORT    nrmCs;                      /* normal cause */
  USHORT    rejCs;                      /* rejection cause */
  UBYTE     failType;                   /* type of SS failure */
  UBYTE     rejPrb;                     /* reject problem code */
  UBYTE     errCd;                      /* return error code */
  UBYTE     SATinv;                     /* SAT invocation flag */
  UBYTE     CCBSstat;                   /* CCBS status */
  UBYTE     CDStat;                     /* CD status */
  UBYTE     curCmd;                     /* current command executing */
  UBYTE     curSrc;                     /* current command source */
  BOOL      dtmfCmd;                    /* AT_CMD_VTS or AT_CMD_NONE */
  UBYTE     dtmfSrc;                    /* current command source for DTMF */
  T_OWN     calOwn;                     /* owner of call */
#ifdef SIM_TOOLKIT
  BOOL      SatDiscEvent;               /* flag for DISC event for SAT */
#endif
} T_CC_CALL_TBL;


typedef struct CCShrdParm
{
  T_ACI_CMOD_MOD CMODmode;
  SHORT cIdFail;                  /* holds failed call identifier */
  SHORT cIdMPTY;                  /* holds multiparty root call id */
  SHORT nrOfMOC;                  /* number of current MOC's */
  SHORT nrOfMTC;                  /* number of current MTC's */
  UBYTE chMod;                    /* channel mode */
  UBYTE chType;                   /* channel type */
  USHORT syncCs;                  /* synchronisation cause */
  BOOL  TCHasg;                   /* TCH assignment flag */
  UBYTE datStat;                  /* data connection status */
  UBYTE ctmReq;                   /* TTY/CTM Service to be requested */
  UBYTE ctmState;                 /* State of TTY/CTM Service */
  T_ACI_BS_SPEED  CBSTspeed;      /* parameters passed to CC by CC_CNFG_REQ: for MTC */
  T_ACI_CBST_NAM  CBSTname;       /* parameters passed to CC by CC_CNFG_REQ: for MTC */
  T_ACI_CBST_CE   CBSTce;         /* parameters passed to CC by CC_CNFG_REQ: for MTC */
  UBYTE snsMode;                  /* single numbering scheme mode */
  UBYTE iIdNxt;                   /* next available invoke id */
  UBYTE cmpType;                  /* component type */
  UBYTE msgType;                  /* message type */
  T_CC_CALL_TBL ctb[MAX_CALL_NR]; /* call table for max. nr of calls */
  T_CC_DTMF_PRM dtmf;             /* dtmf parameter */
  BOOL ctmOvwr;                   /* overwrite CTM request for next call */
  UBYTE wapStat;                  /* Wap connection status */
  UBYTE als_cmd;                  /* ALS command: set or query */
  T_ACI_LIST *facility_list;      /* List with stored MNCC_FACILITY_IND */  
}
T_CC_SHRD_PRM;

/*==== PROTOTYPES =================================================*/

EXTERN SHORT psaCC_NewCall     ( SHORT cId );
EXTERN void psaCC_AcceptCall   ( SHORT cId );
EXTERN void psaCC_ClearCall    ( SHORT cId );
EXTERN void psaCC_HoldCall     ( SHORT cId );
EXTERN void psaCC_RetrieveCall ( SHORT cId );
EXTERN SHORT psaCC_ModifyCall  ( SHORT cId );
EXTERN void psaCC_Config       ( void );
EXTERN void psaCC_BuildMPTY    ( SHORT cId );
EXTERN void psaCC_HoldMPTY     ( SHORT cId );
EXTERN void psaCC_RetrieveMPTY ( SHORT cId );
EXTERN void psaCC_SplitMPTY    ( SHORT cId );
EXTERN SHORT psaCC_ECT         ( SHORT cId );

EXTERN SHORT psaCC_SendDTMF ( SHORT cId,
                              UBYTE digit,
                              UBYTE mode );

EXTERN void psaCC_send_satevent( UBYTE event,
                                 SHORT callId ,
                                 T_CC_INITIATER actionSrc,
                                 BOOL check_SatDiscEvent );

GLOBAL void psaCC_init_mtcbearer( void );
GLOBAL void  psaCC_Init ( void );

EXTERN SHORT      psaCC_ctbNewEntry      ( void );
EXTERN SHORT      psaCC_ctbFreeEntry     ( void );
EXTERN SHORT      psaCC_ctbFindTi        ( UBYTE ti2Find );
EXTERN SHORT      psaCC_ctbFindCall      ( T_OWN     calOwn,
                                           T_CC_CLST calStat,
                                           T_CC_CLTP calType );
EXTERN BOOL       psaCC_ctbCallInUse     ( void );
EXTERN SHORT      psaCC_ctbDialNr2CldAdr ( SHORT cId, CHAR * pDialStr );
EXTERN CHAR*      psaCC_ctbClrAdr2Num    ( SHORT cId, CHAR * pNumBuf, UBYTE maxSize );
EXTERN CHAR*      psaCC_ctbClrAdr2Sub    ( SHORT cId, CHAR * pSubBuf );
EXTERN CHAR*      psaCC_ctbCldAdr2Num    ( SHORT cId, CHAR * pNumBuf, UBYTE maxSize );
EXTERN CHAR*      psaCC_ctbCldAdr2Sub    ( SHORT cId, CHAR * pSubBuf );
EXTERN CHAR*      psaCC_ctbRdrAdr2Num    ( SHORT cId, CHAR * pNumBuf, UBYTE maxSize );
EXTERN CHAR*      psaCC_ctbRdrAdr2Sub    ( SHORT cId, CHAR * pSubBuf );
EXTERN T_ACI_PB_TEXT* psaCC_ctbGetAlpha  ( SHORT cId );
#ifdef TRACING
EXTERN void       psaCC_ctbDump          ( void );
EXTERN void       psaCC_ctbDumpBC        ( void );
EXTERN void       psaCC_shrPrmDump       ( void );
#endif /* TRACING */
EXTERN void       psaCC_chngCalTypCnt    ( SHORT cId, SHORT dlt );
EXTERN void       psaCC_chkPrgDesc       ( SHORT cId, UBYTE prgDesc,
                                           UBYTE msgType );
EXTERN SHORT      psaCC_getMOCTi         ( SHORT cId );
EXTERN void       psaCC_retMOCTi         ( UBYTE ti );
EXTERN void       psaCC_setSpeechMode    ( void );
EXTERN UBYTE      psaCC_phbSrchNumPlnTxt ( CHAR           * inNum,
                                           UBYTE          * inoutMaxLen,
                                           T_ACI_PB_TEXT  * outTxt );
EXTERN UBYTE      psaCC_phbMfwSrchNumPlnTxt ( CHAR          * inNum,
                                              T_ACI_PB_TEXT * outTxt );
EXTERN void       psaCC_phbSrchNum       ( SHORT cId );
EXTERN BOOL       psaCC_phbSrchName      ( T_ACI_CMD_SRC  srcId,
                                           T_ACI_PB_TEXT  *srchName,
                                           T_CLPTY_PRM    *calPrm );
EXTERN UBYTE      psaCC_phbSrchECC       ( CHAR* dialStr, BOOL srchECC );
EXTERN BOOL       psaCC_phbNtryFnd       ( UBYTE phb,
                                           T_CLPTY_PRM* calPrm );
EXTERN void       psaCC_phbAddNtry       ( UBYTE phb, SHORT cId,
                                           UBYTE clTp );
EXTERN void       psaCC_asmBuildMPTY     ( void );
EXTERN void       psaCC_asmHoldMPTY      ( void );
EXTERN void       psaCC_asmRetrieveMPTY  ( void );
EXTERN void       psaCC_asmSplitMPTY     ( void );
EXTERN void       psaCC_asmECT           ( void );
EXTERN void       psaCC_asmCUGInfo       ( SHORT cId );
EXTERN void       psaCC_asmCDReq         ( const CHAR      *number,
                                           const T_ACI_TOA *type,
                                           const CHAR      *subaddr,
                                           const T_ACI_TOS *satype);
EXTERN void       psaCC_asmComponent     ( SHORT cId );
EXTERN void       psaCC_asmCCBSReq       ( SHORT cId );
EXTERN void       psaCC_dasmInvokeCmp    ( SHORT cId, T_inv_comp *invCmp );
EXTERN void       psaCC_dasmResultCmp    ( SHORT cId, T_res_comp *resCmp );
EXTERN void       psaCC_dasmErrorCmp     ( SHORT cId, T_err_comp *errCmp );
EXTERN void       psaCC_dasmRejectCmp    ( SHORT cId, T_rej_comp *rejCmp );
EXTERN void       psaCC_InitCtbNtry      ( SHORT idx );
EXTERN void       psaCC_FreeRdrPty       ( SHORT idx );
EXTERN void       psaCC_FreeCtbNtry      ( SHORT idx );
EXTERN void       psaCC_DumpFIE          ( T_fac_inf * fie );
EXTERN void       psaCC_DTMFSent         ( SHORT cId );
EXTERN void       psaCC_StopDTMF         ( SHORT cId );

EXTERN SHORT      psaCC_BCapCode         ( UBYTE reqId, SHORT cId,
                                           UBYTE bc );
EXTERN SHORT      psaCC_BCapDecode       ( UBYTE reqId, UBYTE bcLen,
                                           UBYTE *bc );
EXTERN SHORT      psaCC_MPTY             ( SHORT cId,
                                           UBYTE mpty_event );

EXTERN void       psaCC_DTMFTimeout      ( void );

/*==== EXPORT =====================================================*/

#ifdef PSA_CCF_C

GLOBAL T_CC_SHRD_PRM ccShrdPrm;

#else

EXTERN T_CC_SHRD_PRM ccShrdPrm;

#endif /* PSA_CCF_C */


#endif /* PSA_CC_H */

/*==== EOF =======================================================*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -