phoneengine/engineinfo/inc/cpeengineinfoimpl.h
branchRCL_3
changeset 62 5266b1f337bd
parent 61 41a7f70b3818
child 69 8baf28733c3d
equal deleted inserted replaced
61:41a7f70b3818 62:5266b1f337bd
    34 // None.
    34 // None.
    35 
    35 
    36 // DATA TYPES
    36 // DATA TYPES
    37 NONSHARABLE_STRUCT( TPECallCommandInfo )                  // For Mobile Originated Call Commands
    37 NONSHARABLE_STRUCT( TPECallCommandInfo )                  // For Mobile Originated Call Commands
    38     {
    38     {
    39     TChar iKeyCode;                         // pressed key code
    39 	TChar iKeyCode;                         // pressed key code
    40     TInt iAudioMute;                        // state of microphone ( 0 = false, 1 = true )
    40 	TInt iAudioMute;                        // state of microphone ( 0 = false, 1 = true )
    41     TInt iAudioVolume;                      // Audio volume
    41 	TInt iAudioVolume;                      // Audio volume
    42     TPEAudioOutput iAudioOutput;            // audio output path
    42 	TPEAudioOutput iAudioOutput;            // audio output path
    43     TBool iShowNote;                        // Status of call audio route info note.
    43 	TBool iShowNote;                        // Status of call audio route info note.
    44     TInt iCallId;                           // Calls ID
    44 	TInt iCallId;                           // Calls ID
    45     TPEDtmfString iDtmfString;              // Dtmf string to be sent.
    45 	TPEDtmfString iDtmfString;              // Dtmf string to be sent.
    46     TPEPhoneNumber iPhoneNumber;            // Dialed Phonenumber, set by client
    46 	TPEPhoneNumber iPhoneNumber;            // Dialed Phonenumber, set by client
    47     TPECallType iCallType;                  // Type of the attempted call
    47 	TPECallType iCallType;                  // Type of the attempted call
    48     TUint32 iServiceId;                     // ServiceId    
    48 	TUint32 iServiceId;                     // ServiceId	
    49     TPECallOrigin iCallOrigin;              // Origin of the attempted call (Phone, client or SAT)
    49 	TPECallOrigin iCallOrigin;              // Origin of the attempted call (Phone, client or SAT)
    50     RMobileCall::TMobileCallIdRestriction iIdRestrict; // Call Id restriction setting to be used for this call
    50 	RMobileCall::TMobileCallIdRestriction iIdRestrict; // Call Id restriction setting to be used for this call
    51     TPEPhoneNumber iEmergencyNumber;        // For checking is this number emergency number.
    51 	TPEPhoneNumber iEmergencyNumber;        // For checking is this number emergency number.
    52     TPEUserToUserInfo iUserToUserInfo;      // User to user information.
    52 	TPEUserToUserInfo iUserToUserInfo;      // User to user information.
    53     TPEPhoneNumber iSwitchToNumber;         // Dialed Phonenumber, set by client
    53 	TPEPhoneNumber iSwitchToNumber;         // Dialed Phonenumber, set by client
    54     TPEPhoneNumber iTransferToAddress;      // Unattended transfer target address   
    54 	TPEPhoneNumber iTransferToAddress;      // Unattended transfer target address	
    55     TInt iForwardToAddressIndex;            // Array index for a address to be forwarded
    55     TInt iForwardToAddressIndex;            // Array index for a address to be forwarded
       
    56     TBool iTransferDial;                    // Flag which indicates utransfer dial
    56     };
    57     };
    57 
    58 
    58 NONSHARABLE_STRUCT( TPEBasicInfo )                         // Contains information of the phone related variables 
    59 NONSHARABLE_STRUCT( TPEBasicInfo )                         // Contains information of the phone related variables 
    59     {
    60     {
    60     TBool iAudioMute;                       // state of microphone.                 
    61 	TBool iAudioMute;                       // state of microphone.					
    61     TBool iTwoDigitSupportStatus;           // Two Digit support status
    62 	TBool iTwoDigitSupportStatus;           // Two Digit support status
    62     TBool iALSLineSupport;                  // ALS line support.                
    63 	TBool iALSLineSupport;                  // ALS line support.				
    63     TInt iAudioOutputPreference;            // Audio output preference (private/public) - TODO: change type to enum when available
    64 	TInt iAudioOutputPreference;            // Audio output preference (private/public) - TODO: change type to enum when available
    64     TInt iAudioVolume;                      // Audio volume                 
    65 	TInt iAudioVolume;                      // Audio volume					
    65     TInt iKeypadVolume;                     // Keypad volume                    
    66 	TInt iKeypadVolume;                     // Keypad volume					
    66     TInt iLastCallDuration;                 // Call duration (seconds)                  
    67 	TInt iLastCallDuration;                 // Call duration (seconds)					
    67     TInt iPersonalToneStatus;               // Personal tone status                 
    68 	TInt iPersonalToneStatus;               // Personal tone status					
    68     TInt iProfileId;                        // the id number of the profile                 
    69 	TInt iProfileId;                        // the id number of the profile					
    69     TInt iRingingVolume;                    // Current ringing volume                   
    70 	TInt iRingingVolume;                    // Current ringing volume					
    70     TBool iTextToSpeech;                    // Current text-to-speech setting
    71 	TBool iTextToSpeech;                    // Current text-to-speech setting
    71     TBool iPhoneNumberIsServiceCode;        // flag indicating if the phone number is a service code
    72 	TBool iPhoneNumberIsServiceCode;        // flag indicating if the phone number is a service code
    72     TNWNetworkRegistrationStatus iNetworkRegistrationStatus;                    
    73 	TNWNetworkRegistrationStatus iNetworkRegistrationStatus;					
    73     CCCECallParameters::TCCELineType iALSLine;        // includes active als line.                  
    74     CCCECallParameters::TCCELineType iALSLine;        // includes active als line.                  
    74     TPEContactFileName iRingingToneName1;   // Current ringingtone name                 
    75 	TPEContactFileName iRingingToneName1;   // Current ringingtone name					
    75     TPEContactFileName iRingingToneName2;
    76 	TPEContactFileName iRingingToneName2;
    76     TPEContactFileName iVideoCallRingingTone; // Video call ringingtone name                                    
    77 	TPEContactFileName iVideoCallRingingTone; // Video call ringingtone name									
    77     TPEDtmfString iDtmfString;              // Dtmf string.                 
    78 	TPEDtmfString iDtmfString;              // Dtmf string.					
    78     TPEErrorInfo iErrorInfo;                // possible error code                  
    79 	TPEErrorInfo iErrorInfo;                // possible error code					
    79     TPEProfileName iProfileName;            // the name of the profile                  
    80 	TPELifeTimeData iLifeTimeData;					
    80     TProfileRingingType iRingingType;       // Includes current ringing type                    
    81 	TPEPhoneIdentityParameters iPhoneIdentityParameters; // the phone identity parameters					
    81     TPEVoiceMailBoxNumberInfo iVMBXNumbers; // Voice mail box numbers
    82 	TPEProfileName iProfileName;            // the name of the profile					
    82     TPEPhoneAudioRouteParameters iPhoneAudioRouteParameters; // the phone audio route parameters
    83 	TProfileRingingType iRingingType;       // Includes current ringing type 					
    83     TCCPTone iInbandTone;                   // Inband tone needed to play in a call state transition or error
    84 	TPEVoiceMailBoxNumberInfo iVMBXNumbers; // Voice mail box numbers
    84     TPEActiveForwardInfo iActiveForward;    // active forward information.
    85 	TPEPhoneAudioRouteParameters iPhoneAudioRouteParameters; // the phone audio route parameters
    85     TPEBarringInfo iBarringInfo;            // includes call barring information.
    86 	TCCPTone iInbandTone;                   // Inband tone needed to play in a call state transition or error
    86     TPESimState iSimState;
    87 	TPEActiveForwardInfo iActiveForward;    // active forward information.
    87     TPESSCommandInfo iSSCommandInfo;        // Contains information of the Suplementary Services command.
    88 	TPEBarringInfo iBarringInfo;            // includes call barring information.
       
    89 	TPESimState iSimState;
       
    90 	TPESSCommandInfo iSSCommandInfo;        // Contains information of the Suplementary Services command.
    88     TBool iSecureSpecified;                 // Secure specified status
    91     TBool iSecureSpecified;                 // Secure specified status
    89     TName iDataPortName;                    // the name of data port currently on-loan
    92 	TName iDataPortName;                    // the name of data port currently on-loan
    90     TBool iSwitchToOngoing;                 // Switch to operation status
    93     TBool iSwitchToOngoing;                 // Switch to operation status
    91     TBool iOutgoingBarringActivated;        // Outgoing barring activated 
    94     TPEPhoneNumber iCallBackAddress;        // Address of the transfer originator used for calling back
    92     };
    95     };
    93 
    96 
    94 NONSHARABLE_STRUCT( TPEConferenceCallInfo ) // Contains conference call related variables 
    97 NONSHARABLE_STRUCT( TPEConferenceCallInfo ) // Contains conference call related variables 
    95     {
    98     {
    96     TPEState iConferenceCallState;
    99     TPEState iConferenceCallState;
   249         * Gets secure status from call info
   252         * Gets secure status from call info
   250         * @param aCallId is the call identification number.
   253         * @param aCallId is the call identification number.
   251         * @return TBool the secure status (on/off)
   254         * @return TBool the secure status (on/off)
   252         */
   255         */
   253         TBool IsSecureCall( const TInt aCallId ) const;
   256         TBool IsSecureCall( const TInt aCallId ) const;
   254         
   257 		
   255         /**
   258         /**
   256         * Gets dtmf postfix
   259         * Gets dtmf postfix
   257         * @param aCallId is the call identification number.
   260         * @param aCallId is the call identification number.
   258         * @return dtmf postfix
   261         * @return dtmf postfix
   259         */
   262         */
   276         * @return the inband tone to be played
   279         * @return the inband tone to be played
   277         */
   280         */
   278         const TCCPTone& InbandTone() const;
   281         const TCCPTone& InbandTone() const;
   279 
   282 
   280         /**
   283         /**
       
   284         * Gets lifetimer data
       
   285         * @return lifetime data (TDes8&)
       
   286         */
       
   287         const TPELifeTimeData& LifeTimerData() const;
       
   288 
       
   289         /**
   281         * Gets network registration status
   290         * Gets network registration status
   282         * @return TNWNetworkRegistrationStatus Network registration status
   291         * @return TNWNetworkRegistrationStatus Network registration status
   283         */
   292         */
   284         const TNWNetworkRegistrationStatus& NetworkRegistrationStatus() const;
   293         const TNWNetworkRegistrationStatus& NetworkRegistrationStatus() const;
       
   294 
       
   295         /**
       
   296         * Gets phone identity parameters from TPEBasicInfo-structure
       
   297         * @param aPhoneIdentityParameters is the phone identity parameters. 
       
   298         */
       
   299         const TPEPhoneIdentityParameters& PhoneIdentityParameters() const;
   285 
   300 
   286         /**
   301         /**
   287         * Gets phone number
   302         * Gets phone number
   288         * @return Reference to TPEPhoneNumber, containing the phone number of the remote party.
   303         * @return Reference to TPEPhoneNumber, containing the phone number of the remote party.
   289         */
   304         */
   603           */
   618           */
   604          TPECallOrigin CallOrigin( const TInt aCallId ) const;
   619          TPECallOrigin CallOrigin( const TInt aCallId ) const;
   605          
   620          
   606          /**
   621          /**
   607          * Checks if given state can be found.
   622          * Checks if given state can be found.
   608          * @param aCallState state to be checked.
   623 		 * @param aCallState state to be checked.
   609          */
   624          */
   610           TBool CheckIfCallStateExists( const TPEState& aCallState );
   625           TBool CheckIfCallStateExists( const TPEState& aCallState );
   611           
   626           
   612           /**
   627           /**
   613           * Sets the protocol spesific error code
   628           * From base class MPEEngineInfo
   614           * @param aError is the error code from protocol.
   629           * @see MPEEngineInfo::SetTransferDial          
   615           * @return None.
       
   616           */
   630           */
   617            void SetProtocolError( TInt aError ); 
   631           void SetIsTransferDial( TBool aTransferDial );
       
   632           
       
   633           /**
       
   634           * From base class MPEEngineInfo
       
   635           * @see MPEEngineInfo::IsTransferDial         
       
   636           */
       
   637           TBool IsTransferDial() const;
       
   638           
       
   639           /**
       
   640           * From base class MPEEngineInfo
       
   641           * @see MPEEngineInfo::SetCallBackAddress   
       
   642           */
       
   643           void SetCallBackAddress( const TDesC& aAddress );
       
   644           
       
   645           /**
       
   646           * From base class MPEEngineInfo
       
   647           * @see MPEEngineInfo::CallBackAddress
       
   648           */
       
   649           const TDesC& CallBackAddress() const;
   618 
   650 
   619     // Functions from MPEDataStore (reading values)
   651     // Functions from MPEDataStore (reading values)
   620     public:
   652     public:
   621         /**
   653         /**
   622         * Gets group ids which are active to play ring tone
   654         * Gets group ids which are active to play ring tone
   917         /**
   949         /**
   918          * From base class MPEDataStore
   950          * From base class MPEDataStore
   919          * @see MPEDataStore::CallIndex
   951          * @see MPEDataStore::CallIndex
   920          */
   952          */
   921         TInt CallIndex( TInt aCallId ) const;
   953         TInt CallIndex( TInt aCallId ) const;
       
   954         
       
   955         /**
       
   956          * From base class MPEDataStore
       
   957          * @see MPEDataStore::DoCallBackRequest     
       
   958          */
       
   959         TBool DoCallBackRequest( TInt aCallId ) const;
   922 
   960 
   923     // Functions from MPEDataStore (setting values)
   961     // Functions from MPEDataStore (setting values)
   924     public:
   962     public:
   925         /**
   963         /**
   926         * Resets TPECallInfo parameters.
   964         * Resets TPECallInfo parameters.
  1157         /**
  1195         /**
  1158         * Sets Keypad volume of the phone to TPEBasicInfo-structure
  1196         * Sets Keypad volume of the phone to TPEBasicInfo-structure
  1159         * @param aKeypadVolume is Keypad volume of the phone.
  1197         * @param aKeypadVolume is Keypad volume of the phone.
  1160         */
  1198         */
  1161         void SetKeypadVolume( const TInt aKeypadVolume );
  1199         void SetKeypadVolume( const TInt aKeypadVolume );
       
  1200 
       
  1201         /**
       
  1202         * Sets lifetimer data of the phone to TPEBasicInfo-structure
       
  1203         * @param aLifeTimerData lifetime data (TDesc8&).
       
  1204         */
       
  1205         void SetLifeTimerData( TCCPLifeTimeDataPckg& aPckg );
  1162 
  1206 
  1163         /**
  1207         /**
  1164         * Sets a logging indicator to TPECallInfo-tructure
  1208         * Sets a logging indicator to TPECallInfo-tructure
  1165         * @param aLoggingIndicator, Continuous logging indicator.
  1209         * @param aLoggingIndicator, Continuous logging indicator.
  1166         * @param aCallId, the call identification number.
  1210         * @param aCallId, the call identification number.
  1195         /**
  1239         /**
  1196         * Sets personal tone status value to TPEBasicInfo-structure.
  1240         * Sets personal tone status value to TPEBasicInfo-structure.
  1197         * @param aPersonalTone is personal tone status (EFalse/ETrue).
  1241         * @param aPersonalTone is personal tone status (EFalse/ETrue).
  1198         */
  1242         */
  1199         void SetPersonalToneStatus( const TInt& aPersonalToneStatus );
  1243         void SetPersonalToneStatus( const TInt& aPersonalToneStatus );
       
  1244 
       
  1245         /**
       
  1246         * Sets phone number to TPECallCommandInfo-structure
       
  1247         * @param aPhoneIdentityParameters is the phone identity parameters
       
  1248         */
       
  1249         void SetPhoneIdentityParameters( 
       
  1250             const TPEPhoneIdentityParameters& aPhoneIdentityParameters );
  1200         
  1251         
  1201         /**
  1252         /**
  1202         * Sets phone number parsing result
  1253         * Sets phone number parsing result
  1203         * @param aServiceCode indicates if phone number a service code
  1254         * @param aServiceCode indicates if phone number a service code
  1204         */
  1255         */
  1484 
  1535 
  1485         /**
  1536         /**
  1486          * @see MPEDataStore::UserToUserInformation
  1537          * @see MPEDataStore::UserToUserInformation
  1487          * @since S60 5.0
  1538          * @since S60 5.0
  1488          */
  1539          */
  1489         void SetUserToUserInformation( const TPEUserToUserInfo& aUUI );
  1540 		void SetUserToUserInformation( const TPEUserToUserInfo& aUUI );
  1490         
  1541 		
  1491         /**
  1542         /**
  1492          * Sets remote party name given by network to TPECallInfo structure.
  1543          * Sets remote party name given by network to TPECallInfo structure.
  1493          * @param aName Remote party name.
  1544          * @param aName Remote party name.
  1494          * @param aCallId Call identification number.
  1545          * @param aCallId Call identification number.
  1495          */
  1546          */
  1508         /**
  1559         /**
  1509          * From base class MPEDataStore
  1560          * From base class MPEDataStore
  1510          * @see MPEDataStore::SetCallOrigin          
  1561          * @see MPEDataStore::SetCallOrigin          
  1511          */
  1562          */
  1512         void SetCallOrigin( TPECallOrigin aOrigin, TInt aCallId );
  1563         void SetCallOrigin( TPECallOrigin aOrigin, TInt aCallId );
  1513       
  1564         
  1514         /**
  1565         /**
  1515         * Sets call Phonebook contact identifier.
  1566          * From base class MPEDataStore
  1516         * @param aContactId is the contact identifier for a call
  1567          * @see MPEDataStore::SetDoCallBackRequest        
  1517         */
  1568          */
  1518         void SetContactId2( const TInt aContactId );
  1569         void SetDoCallBackRequest( TBool aDoCallBack, TInt aCallId );
  1519 
  1570                 
  1520         /**
       
  1521          * Returns Phonebook contact identifier.
       
  1522          */
       
  1523         TInt ContactId2() const;
       
  1524         
       
  1525         /**
       
  1526         * Sets the protocol spesific error code
       
  1527         * @param aError is the error code from protocol.
       
  1528         * @return None.
       
  1529         */
       
  1530         void SetProtocolError( TInt aError, TInt aCallId ); 
       
  1531  
       
  1532         /**
       
  1533         * Returns the protocol spesific error code
       
  1534         * @return Error code.
       
  1535         */
       
  1536         TInt ProtocolError( TInt aCallId ); 
       
  1537         
       
  1538         /**
       
  1539         * Returns flag if the outgoing barring is activated.
       
  1540         * @return ETrue if barring activated.
       
  1541         */
       
  1542         TBool IsOutgoingCallBarringActivated();
       
  1543         
       
  1544         /**
       
  1545         * Sets the flag if the outgoing barring is activated.
       
  1546         * @return ETrue if barring activated.
       
  1547         */
       
  1548         void SetOutgoingCallBarringActivated( 
       
  1549                 TBool aActivated );
       
  1550           
       
  1551     private:
  1571     private:
  1552           /**
  1572           /**
  1553         * C++ default constructor.
  1573         * C++ default constructor.
  1554         */
  1574         */
  1555         CPEEngineInfoImpl();
  1575         CPEEngineInfoImpl();
  1577 
  1597 
  1578         // Available audio outputs array
  1598         // Available audio outputs array
  1579         TFixedArray<TBool, KPEMaxAudioOutputs> iAvailableAudioOutputs;
  1599         TFixedArray<TBool, KPEMaxAudioOutputs> iAvailableAudioOutputs;
  1580 
  1600 
  1581         // Contains the group id's which are active for ringtone
  1601         // Contains the group id's which are active for ringtone
  1582         RArray< TContactItemId > iAlertForGroup;
  1602     	RArray< TContactItemId > iAlertForGroup;
  1583 
  1603 
  1584         /**
  1604         /**
  1585          * CCE call dial parameters
  1605          * CCE call dial parameters
  1586          */
  1606          */
  1587         CCCECallParameters *iCallParams;
  1607         CCCECallParameters *iCallParams;
  1588 
  1608 
  1589         /**
       
  1590          * Phonebook contact identifier.
       
  1591          */
       
  1592         TInt iContactId;
       
  1593     };
  1609     };
  1594 
  1610 
  1595 
  1611 
  1596 #endif // CPEENGINEINFOIMPL_H   
  1612 #endif // CPEENGINEINFOIMPL_H   
  1597             
  1613