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

📄 mfw_gprs.c

📁 GSM手机设计软件代码
💻 C
📖 第 1 页 / 共 4 页
字号:
   PURPOSE : Enables or Disables  the sending of certain events              occuring in the GPRS ME or the network to the TE.    PARAMETERS :             mode : mode to specifies if the event reporting will be                     enabled or disabled             bfr  : controls the effect on buffered events. */T_MFW_RES gprs_setEventReporting(T_CGEREP_MODE mode, T_CGEREP_BFR bfr){  T_MFW_GPRS_EVENTREP *eventRep;   TRACE_FUNCTION ("gprs_setEventReporting()");  /*   * ACI call   */  if (sAT_PlusCGEREP(CMD_SRC_LCL, mode, bfr) == AT_FAIL)    return MFW_RES_ERR;  /*   * change event reporting data in MFW GPRS data   */  eventRep = (T_MFW_GPRS_EVENTREP *) mfwAlloc(sizeof(T_MFW_GPRS_EVENTREP));  eventRep->mode = mode;  eventRep->bfr  = bfr;  gprs_signal(E_MFW_GPRS_S_EREP, eventRep);  return MFW_RES_OK;}/*+----------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS              || STATE  : code                         ROUTINE: gprs_setServiceSMS    |+----------------------------------------------------------------------+   PURPOSE : The function specifies the service or service preference              to be used for SMS.     PARAMETERS :             n : service to use for SMS ( 0 - GPRS, 1 - circuit switch,                  2 - GPRS preferred, 3 circuit switch preferred)*/T_MFW_RES gprs_setServiceSMS(T_CGSMS_SERVICE service){  TRACE_FUNCTION ("gprs_setServiceSMS()");  /*   * ACI call   */  if (sAT_PlusCGSMS(CMD_SRC_LCL, service) == AT_FAIL)    return MFW_RES_ERR;  /*   * change SMS service data in MFW GPRS data   */  gprs_signal(E_MFW_GPRS_S_SMSSERV, &service);  return MFW_RES_OK;}/*+----------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS              || STATE  : code                         ROUTINE: gprs_getServiceSMS    |+----------------------------------------------------------------------+   PURPOSE : This function returns the service preference to be used for SMS.    PARAMETERS :             n : service to use for SMS ( 0 - GPRS, 1 - circuit switch,                  2 - GPRS preferred, 3 circuit switch preferred)*/T_CGSMS_SERVICE gprs_getServiceSMS(void){		T_CGSMS_SERVICE service;	 if (qAT_PlusCGSMS(CMD_SRC_LCL, &service) != AT_FAIL )    return service;  else    TRACE_EVENT("MFW_GPRS: Error. qAT_PlusCGCLASS failed");	return CGSMS_SERVICE_INVALID;}/*+----------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS              || STATE  : code                         ROUTINE: gprs_counter    |+----------------------------------------------------------------------+   PURPOSE : SPR#1450 - SH   Resets the data counter if reset_counter is TRUE.   In either case, response returned in rAT_PercentSNCNT below.*/T_MFW_RES gprs_counter(BOOL reset_counter){	T_ACI_RETURN result;	TRACE_FUNCTION("gprs_counter");	result = sAT_PercentSNCNT(CMD_SRC_LCL, reset_counter);		if (result!=AT_EXCT && result!=AT_CMPL)		return MFW_RES_ERR;	if (result==AT_CMPL)		return MfwResDone;		/* No response expected */			return MFW_RES_OK;}/*+---------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: gprs_counter_abort      |+---------------------------------------------------------------------+   PURPOSE : Cancel request for data count   SPR#1983 - SH - Added.                 PARAMETERS : None.   */T_MFW_RES gprs_counter_abort(void){	T_ACI_RETURN result;		result = sAT_Abort(CMD_SRC_LCL, AT_CMD_SNCNT);	if (result==AT_FAIL)		return MFW_RES_ERR;	return MFW_RES_OK;}/*+----------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS              || STATE  : code                         ROUTINE: gprs_status    |+----------------------------------------------------------------------+   PURPOSE : Returns the GPRS status value*/T_CGREG_STAT gprs_status(){	T_ACI_RETURN result;	T_CGREG_STAT status = 0;	USHORT lac, ci;		TRACE_FUNCTION("gprs_status");	if (qAT_PlusCGREG(CMD_SRC_LCL, &status, &lac, &ci) == AT_FAIL ) 	{    	TRACE_EVENT("MFW_GPRS: Error. qAT_PlusCGREG failed");	}			return status;}/*--------------------------------------------------------------------  ACI callback functions --------------------------------------------------------------------*//*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_PlusCGACT       |+--------------------------------------------------------------------+   PURPOSE : The function rAt_PlusCGACT informs the application about              the link identifier for the data transfer.             ( ACI callback funtion )   PARAMETERS :             link_id: Link identifier                 */void rAT_PlusCGACT ( SHORT link_id ){  TRACE_FUNCTION ("rAT_PlusCGACT()");  /*   * send event and link id to the current mfw element   */  gprs_signal(E_MFW_GPRS_R_ACT, &link_id);}/*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_PlusCGDATA      |+--------------------------------------------------------------------+   PURPOSE : The function rAt_PlusCGDATA informs the application about              the link identifier for the data transfer after              activation/deactivation (without connect).             ( ACI callback funtion )   PARAMETERS :             link_id: Link identifier                 */void rAT_PlusCGDATA ( SHORT link_id ){  TRACE_FUNCTION ("rAT_PlusCGDATA()");  /*   * send event and link id to the current mfw element   */  gprs_signal(E_MFW_GPRS_R_DATA, &link_id);}/*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_PlusCGANS       |+--------------------------------------------------------------------+   PURPOSE : The function rAt_PlusCGANS informs the application about              the link identifier for the data transfer. It is a              manual reponse to a network request for PDP context              activation (after request by +CRING or RING).             ( ACI callback funtion )   PARAMETERS :             link_id: Link identifier                 */void rAT_PlusCGANS ( SHORT link_id ){  TRACE_FUNCTION ("rAT_PlusCGANS()");  /*   * send event and link id to the current mfw element   */  gprs_signal(E_MFW_GPRS_R_ANS, &link_id);}/*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_PlusCGEREP     |+--------------------------------------------------------------------+   PURPOSE : The function rAt_PlusCGEREP informs the application about              GPRS events connect.              ( ACI callback funtion )   PARAMETERS :             event  : GPRS event                    param  : event parameter              */void rAT_PlusCGEREP ( T_CGEREP_EVENT            event,                       T_CGEREP_EVENT_REP_PARAM *param ){  char msg[30];  T_CGATT_STATE state;  TRACE_FUNCTION ("rAT_PlusCGEREP()");  sprintf(msg, "GPRS eventrep: %d", (short)event);  TRACE_EVENT(msg);  /*   * send event and data to the current mfw element   */  switch ( event )  {    case CGEREP_EVENT_REJECT:      gprs_signal(E_MFW_GPRS_R_EREP_RJ, param);      break;    case CGEREP_EVENT_NW_DETACH:    case CGEREP_EVENT_ME_DETACH:    state = CGATT_STATE_DETACHED;      gprs_signal(E_MFW_GPRS_R_EREP_ATT, &state);      break;    case CGEREP_EVENT_NW_REACT:      gprs_signal(E_MFW_GPRS_R_EREP_ACT, param);      break;    case CGEREP_EVENT_NW_DEACT:    case CGEREP_EVENT_ME_DEACT:      gprs_signal(E_MFW_GPRS_R_EREP_DEACT, param);      break;    case CGEREP_EVENT_NW_CLASS:    case CGEREP_EVENT_ME_CLASS:      gprs_signal(E_MFW_GPRS_R_EREP_CLASS, param);      break;  }}/*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_PlusCGREG       |+--------------------------------------------------------------------+   PURPOSE : The function rAt_PlusCGREG informs the application about              the GPRS registration status and location information.             ( ACI callback funtion )   PARAMETERS :             stat   : indicates the current registration             lac    : two byte location area code                ci     : two byte cell ID    */void rAT_PlusCGREG  ( T_CGREG_STAT stat,                       USHORT       lac,                       USHORT       ci ){   T_MFW_GPRS_CELL_STRUCT cell;  TRACE_FUNCTION ("rAT_PlusCGREG()");#ifndef WIN32  TRACE_EVENT_P3("GPRS regState: %d, lac %X, ci %X", (short)stat, lac, ci);#endif    /*   * send signal for changed registry state to current   * MFW element   */  cell.stat = stat;  cell.lac = lac;  cell.ci = ci;  gprs_signal(E_MFW_GPRS_R_REG, &cell);}/*+--------------------------------------------------------------------+| PROJECT: MMI-Framework (8417)         MODULE:  MFW_GPRS            || STATE  : code                         ROUTINE: rAT_changedQOS      |+--------------------------------------------------------------------+   PURPOSE : The function rAt_changedQOS informs the application about              changes for the Quality of Service Profiles.             ( ACI callback funtion )   PARAMETERS :             cid    :             *qos    : */void rAT_changedQOS ( SHORT  cid,                       T_QOS *qos ){  T_MFW_GPRS_CONTEXT *cntxt;   TRACE_FUNCTION ("rAT_changedQOS()");  /*   * send signal for changed quality of service profile to current   * MFW element   */  cntxt = (T_MFW_GPRS_CONTEXT *) mfwAlloc(sizeof(T_MFW_GPRS_CONTEXT));  cntxt->id = cid;  memcpy (&(cntxt->data.qos), qos, sizeof (T_QOS));  gprs_signal(E_MFW_GPRS_R_QOS, cntxt);}/*+--------------------------------------------------------------------+| PROJECT : GPRS (8441)                 MODULE  : MFW_GPRS          || STATE   : code                        ROUTINE : rAT_PercentSNCNT   |+--------------------------------------------------------------------+  PURPOSE : handles rAT_PercentSNCNT call back*/GLOBAL void rAT_PercentSNCNT ( UBYTE c_id,                               ULONG octets_uplink,                               ULONG octets_downlink,                               ULONG packets_uplink,                               ULONG packets_downlink ){	T_MFW_GPRS_COUNTER	counter;	TRACE_FUNCTION("rAT_PercentSNCNT()");			counter.octets_uplink = octets_uplink;	counter.octets_downlink = octets_downlink;	counter.packets_uplink = packets_uplink;	counter.packets_downlink = packets_downlink;	gprs_signal(E_MFW_GPRS_COUNTER, &counter);		return;}

⌨️ 快捷键说明

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