view src/aci2/bmi/mmiServices.h @ 600:8f50b202e81f

board preprocessor conditionals: prep for more FC hw in the future This change eliminates the CONFIG_TARGET_FCDEV3B preprocessor symbol and all preprocessor conditionals throughout the code base that tested for it, replacing them with CONFIG_TARGET_FCFAM or CONFIG_TARGET_FCMODEM. These new symbols are specified as follows: CONFIG_TARGET_FCFAM is intended to cover all hardware designs created by Mother Mychaela under the FreeCalypso trademark. This family will include modem products (repackagings of the FCDEV3B, possibly with RFFE or even RF transceiver changes), and also my desired FreeCalypso handset product. CONFIG_TARGET_FCMODEM is intended to cover all FreeCalypso modem products (which will be firmware-compatible with the FCDEV3B if they use TI Rita transceiver, or will require a different fw build if we switch to one of Silabs Aero transceivers), but not the handset product. Right now this CONFIG_TARGET_FCMODEM preprocessor symbol is used to conditionalize everything dealing with MCSI. At the present moment the future of FC hardware evolution is still unknown: it is not known whether we will ever have any beyond-FCDEV3B hardware at all (contingent on uncertain funding), and if we do produce further FC hardware designs, it is not known whether they will retain the same FIC modem core (triband), if we are going to have a quadband design that still retains the classic Rita transceiver, or if we are going to switch to Silabs Aero II or some other transceiver. If we produce a quadband modem that still uses Rita, it will run exactly the same fw as the FCDEV3B thanks to the way we define TSPACT signals for the RF_FAM=12 && CONFIG_TARGET_FCFAM combination, and the current fcdev3b build target will be renamed to fcmodem. OTOH, if that putative quadband modem will be Aero-based, then it will require a different fw build target, the fcdev3b target will stay as it is, and the two targets will both define CONFIG_TARGET_FCFAM and CONFIG_TARGET_FCMODEM, but will have different RF_FAM numbers. But no matter which way we are going to evolve, it is not right to have conditionals on CONFIG_TARGET_FCDEV3B in places like ACI, and the present change clears the way for future evolution.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 01 Apr 2019 01:05:24 +0000
parents 3c2acfa1a72f
children
line wrap: on
line source

/*******************************************************************************

					CONDAT (UK)

********************************************************************************                                                                              

 This software product is the property of Condat (UK) Ltd and may not be
 disclosed to any third party without the express permission of the owner.                                 
                                                                              
********************************************************************************

 $Project name:	Basic MMI                                                      
 $Project code:	BMI (6349)                                                           
 $Module:		Services
 $File:		    MmiServices.h
 $Revision:		1.0                                                       
                                                                              
 $Author:		Condat(UK)                                                         
 $Date:		    25/10/00                                                      
                                                                               
********************************************************************************
                                                                              
 Description:
                        
********************************************************************************

 $History: MmiServices.h
	Jun 02,2004 CRR:13649 xpradipg-SASKEN
	subject: CBA : Management of password
  	solution: password is promted on selecting activation/deactivation option as against the previous
  	case where it was shown up on selecting CallBarring option in the Network Services menu.
	25/10/00			Original Condat(UK) BMI version.	
	   
 $End

*******************************************************************************/

#ifndef _DEF_MMI_SERVICES_H_
#define _DEF_MMI_SERVICES_H_

/*
 * External Interfaces
 */



/*
 * Top Window Defintions
 */
T_MFW_HND   services_create        (T_MFW_HND parent_window);
void        services_destroy       (T_MFW_HND own_window);
void        services               (T_MFW_HND win, USHORT event, SHORT value, void * parameter);




/*
 * Event definitions
 */
#define     SS_OK                   100
#define     SS_FAILED               101
#define     SS_ERROR                102
#define     SS_WAIT                 103
#define     SS_DO_CALL_DIVERT       104
#define     SS_USSD_ENTER_NUMBER    105
#define     SS_USSD_LIST_FULL       106

#define     SS_CB_CNF               110

                                        /* REASONS                  */
typedef enum
{
	ServicesIdle = ServicesDummy,
	ServicesOk,
	ServicesFailed,
	ServicesActCW,
	ServicesDeactCW,
	ServicesCheckCW,
	ServicesCheckCW_OK,
    ServicesActCF,
    ServicesDeactCF,
    ServicesCheckCF,
	ServicesCFU_OK,
    ServicesCB_OK,
    ServicesExecCF,
    ServicesDoCallDivert,
	ServicesResShow,
    ServicesActCLIR,
	ServicesDeactCLIR,
	ServicesCheckCLIR,
	ServicesCheckCLI_OK,
    ServicesIMEI_OK,
    ServicesUSSD_REQ_OK,
    ServicesUSSD_CNF_OK,
    ServicesUSSDEnter,
    ServicesUSSDEnter_Send,
    ServicesUSSDNew,
    ServicesUSSDSendEdit,
    ServicesUSSDSendEdit_Ok,
    ServicesUSSDAlreadyFull,
    ServicesUSSDListMenu,
    ServicesUSSDOptions,
    ServicesUSSDChange,
    ServicesUSSDChange_OK,
    ServicesUSSDDelete,
    ServicesOtherNumber,
    SERVICES_INPUT_INIT,
    SERVICES_INPUT_LEFT,
    SERVICES_INPUT_RIGHT,
    SERVICES_INPUT_CLEAR,
    SERVICES_INPUT_DESTROY,
    SERVICES_DO_CALL_VOICE_DIVERT,
    ServicesError

};

#define SERVICESIDLE                    ServicesIdle
#define SERVICESOK                      ServicesOk
#define SERVICESFAILED                  ServicesFailed
#define SERVICESACTCW                   ServicesActCW
#define SERVICESDEACTCW                 ServicesDeactCW
#define SERVICESCHECKCW                 ServicesCheckCW
#define SERVICESCHECKCW_OK              ServicesCheckCW_OK
#define SERVICESACTCF                   ServicesActCF
#define SERVICESDEACTCF                 ServicesDeactCF
#define SERVICESCHECKCF                 ServicesCheckCF
#define SERVICESCFU_OK                  ServicesCFU_OK
#define SERVICESCB_OK                   ServicesCB_OK
#define SERVICESEXECCF                  ServicesExecCF
#define SERVICESDOCALLDIVERT            ServicesDoCallDivert
#define SERVICESRESSHOW                 ServicesResShow
#define SERVICESACTCLIR                 ServicesActCLIR
#define SERVICESDEACTCLIR               ServicesDeactCLIR
#define SERVICESCHECKCLIR               ServicesCheckCLIR
#define SERVICESCHECKCLI_OK             ServicesCheckCLI_OK
#define SERVICESIMEI_OK                 ServicesIMEI_OK
#define SERVICESUSSD_REQ_OK             ServicesUSSD_REQ_OK
#define SERVICESUSSD_CNF_OK             ServicesUSSD_CNF_OK
#define SERVICESUSSDENTER               ServicesUSSDEnter
#define SERVICESUSSDENTER_SEND          ServicesUSSDEnter_Send
#define SERVICESUSSDNEW                 ServicesUSSDNew
#define SERVICESUSSDSENDEDIT            ServicesUSSDSendEdit
#define SERVICESUSSDSENDEDIT_OK         ServicesUSSDSendEdit_Ok
#define SERVICESUSSDALREADYFULL         ServicesUSSDAlreadyFull
#define SERVICESUSSDLISTMENU            ServicesUSSDListMenu
#define SERVICESUSSDOPTIONS             ServicesUSSDOptions
#define SERVICESUSSDCHANGE              ServicesUSSDChange
#define SERVICESUSSDCHANGE_OK           ServicesUSSDChange_OK
#define SERVICESUSSDDELETE              ServicesUSSDDelete
#define SERVICESERROR                   ServicesError


int servicesNumbers(MfwMnu* m, MfwMnuItem* i);
int servicesInfraRed(void);

int servicesActivateCLIR(MfwMnu* m, MfwMnuItem* i);
int servicesDeactivateCLIR(MfwMnu* m, MfwMnuItem* i);
int servicesCheckCLIR(MfwMnu* m, MfwMnuItem* i);

int servicesCheckCWaiting(MfwMnu* m, MfwMnuItem* i);
int servicesActivateCWaiting(MfwMnu* m, MfwMnuItem* i);
int servicesDeactivateCWaiting(MfwMnu* m, MfwMnuItem* i);
int servicesInterCFU(void);

int servicesActivateIRDA(MfwMnu* m, MfwMnuItem* i);
int servicesDeactivateIRDA(MfwMnu* m, MfwMnuItem* i);

T_MFW_HND servicesInit(T_MFW_HND parentWindow);
void servicesExit(void);
void services (T_MFW_HND win, USHORT event, SHORT value, void * parameter);

void servicesExec (int reason, MmiState next);




void servicesDivertActivate(void);
void servicesDivertDeactivate(void);
void servicesDivertCheck(void);
void servicesDivertDeactivate(void);
void servicesDivertVoice(void);
void servicesDivertFax(void);
void servicesDivertData(void);
void servicesDivertActionAll(void);
void servicesDivertBusy(void);
void servicesDivertNoAnswer(void);
void servicesDivertNotReachable(void);
void servicesDivertAllCalls(void);
void servicesDivertNoService(void);
void servicesDivertCancelAll(void);
void servicesDoVoiceMailNumber(void);
void servicesDoOtherNumber(void);

void servicesBarringAllOutgoing(void);
void servicesBarringInternational(void);
void servicesBarringInternationalHome(void);
void servicesBarringAllIncoming(void);
void servicesBarringIncomingRoaming(void);

void servicesCallBarringActivate(void);
void servicesCallBarringDeactivate(void);
void servicesCallBarringCheck(void);
void servicesCallBarringCancelAll(void);
//Jun 02,2004 CRR:13649 xpradipg-SASKEN - start
//Declaration for the functions added
void servicesCallBarringActivatePassword(void);
void servicesCallBarringDeactivatePassword(void);
void servicesCallBarringCancelAllPassword(void);
void enterOldCBPassword(void);
//Jun 02,2004 CRR:13649 xpradipg-SASKEN - end
void requestCBPassword(void);
//CQ-16432 start
void requestSatCBPassword(void);
//CQ-16432 end
void changeCBPassword(void);
void confirmNewCBPassword(void);
void enterNewCBPassword(void);


static void getCBPassword(char* pSSstring);
static void getCBType(char* pSSstring);
static void getCBAction(char * pSSstring);
static void CB_password_cb(T_MFW_HND win, UBYTE identifier, UBYTE reason);

#if 0
/* SH - This whole editor appears to be redundant */
void servicesUSSDDisplayList(void);
void servicesUSSDSend(void);
void servicesUSSDAddNew(void);
#endif

void featurePlaceholder(void); //SPR#1113 - DS - Added prototype for placeholder function for not-yet-implemented features.
#endif