phoneengine/engineinfo/inc/cpeengineinfoimpl.h
branchRCL_3
changeset 61 41a7f70b3818
parent 19 544e34b3255a
child 62 5266b1f337bd
equal deleted inserted replaced
58:40a3f856b14d 61:41a7f70b3818
    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
       
    57     };
    56     };
    58 
    57 
    59 NONSHARABLE_STRUCT( TPEBasicInfo )                         // Contains information of the phone related variables 
    58 NONSHARABLE_STRUCT( TPEBasicInfo )                         // Contains information of the phone related variables 
    60     {
    59     {
    61 	TBool iAudioMute;                       // state of microphone.					
    60     TBool iAudioMute;                       // state of microphone.                 
    62 	TBool iTwoDigitSupportStatus;           // Two Digit support status
    61     TBool iTwoDigitSupportStatus;           // Two Digit support status
    63 	TBool iALSLineSupport;                  // ALS line support.				
    62     TBool iALSLineSupport;                  // ALS line support.                
    64 	TInt iAudioOutputPreference;            // Audio output preference (private/public) - TODO: change type to enum when available
    63     TInt iAudioOutputPreference;            // Audio output preference (private/public) - TODO: change type to enum when available
    65 	TInt iAudioVolume;                      // Audio volume					
    64     TInt iAudioVolume;                      // Audio volume                 
    66 	TInt iKeypadVolume;                     // Keypad volume					
    65     TInt iKeypadVolume;                     // Keypad volume                    
    67 	TInt iLastCallDuration;                 // Call duration (seconds)					
    66     TInt iLastCallDuration;                 // Call duration (seconds)                  
    68 	TInt iPersonalToneStatus;               // Personal tone status					
    67     TInt iPersonalToneStatus;               // Personal tone status                 
    69 	TInt iProfileId;                        // the id number of the profile					
    68     TInt iProfileId;                        // the id number of the profile                 
    70 	TInt iRingingVolume;                    // Current ringing volume					
    69     TInt iRingingVolume;                    // Current ringing volume                   
    71 	TBool iTextToSpeech;                    // Current text-to-speech setting
    70     TBool iTextToSpeech;                    // Current text-to-speech setting
    72 	TBool iPhoneNumberIsServiceCode;        // flag indicating if the phone number is a service code
    71     TBool iPhoneNumberIsServiceCode;        // flag indicating if the phone number is a service code
    73 	TNWNetworkRegistrationStatus iNetworkRegistrationStatus;					
    72     TNWNetworkRegistrationStatus iNetworkRegistrationStatus;                    
    74     CCCECallParameters::TCCELineType iALSLine;        // includes active als line.                  
    73     CCCECallParameters::TCCELineType iALSLine;        // includes active als line.                  
    75 	TPEContactFileName iRingingToneName1;   // Current ringingtone name					
    74     TPEContactFileName iRingingToneName1;   // Current ringingtone name                 
    76 	TPEContactFileName iRingingToneName2;
    75     TPEContactFileName iRingingToneName2;
    77 	TPEContactFileName iVideoCallRingingTone; // Video call ringingtone name									
    76     TPEContactFileName iVideoCallRingingTone; // Video call ringingtone name                                    
    78 	TPEDtmfString iDtmfString;              // Dtmf string.					
    77     TPEDtmfString iDtmfString;              // Dtmf string.                 
    79 	TPEErrorInfo iErrorInfo;                // possible error code					
    78     TPEErrorInfo iErrorInfo;                // possible error code                  
    80 	TPELifeTimeData iLifeTimeData;					
    79     TPEProfileName iProfileName;            // the name of the profile                  
    81 	TPEPhoneIdentityParameters iPhoneIdentityParameters; // the phone identity parameters					
    80     TProfileRingingType iRingingType;       // Includes current ringing type                    
    82 	TPEProfileName iProfileName;            // the name of the profile					
    81     TPEVoiceMailBoxNumberInfo iVMBXNumbers; // Voice mail box numbers
    83 	TProfileRingingType iRingingType;       // Includes current ringing type 					
    82     TPEPhoneAudioRouteParameters iPhoneAudioRouteParameters; // the phone audio route parameters
    84 	TPEVoiceMailBoxNumberInfo iVMBXNumbers; // Voice mail box numbers
    83     TCCPTone iInbandTone;                   // Inband tone needed to play in a call state transition or error
    85 	TPEPhoneAudioRouteParameters iPhoneAudioRouteParameters; // the phone audio route parameters
    84     TPEActiveForwardInfo iActiveForward;    // active forward information.
    86 	TCCPTone iInbandTone;                   // Inband tone needed to play in a call state transition or error
    85     TPEBarringInfo iBarringInfo;            // includes call barring information.
    87 	TPEActiveForwardInfo iActiveForward;    // active forward information.
    86     TPESimState iSimState;
    88 	TPEBarringInfo iBarringInfo;            // includes call barring information.
    87     TPESSCommandInfo iSSCommandInfo;        // Contains information of the Suplementary Services command.
    89 	TPESimState iSimState;
       
    90 	TPESSCommandInfo iSSCommandInfo;        // Contains information of the Suplementary Services command.
       
    91     TBool iSecureSpecified;                 // Secure specified status
    88     TBool iSecureSpecified;                 // Secure specified status
    92 	TName iDataPortName;                    // the name of data port currently on-loan
    89     TName iDataPortName;                    // the name of data port currently on-loan
    93     TBool iSwitchToOngoing;                 // Switch to operation status
    90     TBool iSwitchToOngoing;                 // Switch to operation status
    94     TPEPhoneNumber iCallBackAddress;        // Address of the transfer originator used for calling back
    91     TBool iOutgoingBarringActivated;        // Outgoing barring activated 
    95     };
    92     };
    96 
    93 
    97 NONSHARABLE_STRUCT( TPEConferenceCallInfo ) // Contains conference call related variables 
    94 NONSHARABLE_STRUCT( TPEConferenceCallInfo ) // Contains conference call related variables 
    98     {
    95     {
    99     TPEState iConferenceCallState;
    96     TPEState iConferenceCallState;
   252         * Gets secure status from call info
   249         * Gets secure status from call info
   253         * @param aCallId is the call identification number.
   250         * @param aCallId is the call identification number.
   254         * @return TBool the secure status (on/off)
   251         * @return TBool the secure status (on/off)
   255         */
   252         */
   256         TBool IsSecureCall( const TInt aCallId ) const;
   253         TBool IsSecureCall( const TInt aCallId ) const;
   257 		
   254         
   258         /**
   255         /**
   259         * Gets dtmf postfix
   256         * Gets dtmf postfix
   260         * @param aCallId is the call identification number.
   257         * @param aCallId is the call identification number.
   261         * @return dtmf postfix
   258         * @return dtmf postfix
   262         */
   259         */
   279         * @return the inband tone to be played
   276         * @return the inband tone to be played
   280         */
   277         */
   281         const TCCPTone& InbandTone() const;
   278         const TCCPTone& InbandTone() const;
   282 
   279 
   283         /**
   280         /**
   284         * Gets lifetimer data
       
   285         * @return lifetime data (TDes8&)
       
   286         */
       
   287         const TPELifeTimeData& LifeTimerData() const;
       
   288 
       
   289         /**
       
   290         * Gets network registration status
   281         * Gets network registration status
   291         * @return TNWNetworkRegistrationStatus Network registration status
   282         * @return TNWNetworkRegistrationStatus Network registration status
   292         */
   283         */
   293         const TNWNetworkRegistrationStatus& NetworkRegistrationStatus() const;
   284         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;
       
   300 
   285 
   301         /**
   286         /**
   302         * Gets phone number
   287         * Gets phone number
   303         * @return Reference to TPEPhoneNumber, containing the phone number of the remote party.
   288         * @return Reference to TPEPhoneNumber, containing the phone number of the remote party.
   304         */
   289         */
   618           */
   603           */
   619          TPECallOrigin CallOrigin( const TInt aCallId ) const;
   604          TPECallOrigin CallOrigin( const TInt aCallId ) const;
   620          
   605          
   621          /**
   606          /**
   622          * Checks if given state can be found.
   607          * Checks if given state can be found.
   623 		 * @param aCallState state to be checked.
   608          * @param aCallState state to be checked.
   624          */
   609          */
   625           TBool CheckIfCallStateExists( const TPEState& aCallState );
   610           TBool CheckIfCallStateExists( const TPEState& aCallState );
   626           
   611           
   627           /**
   612           /**
   628           * From base class MPEEngineInfo
   613           * Sets the protocol spesific error code
   629           * @see MPEEngineInfo::SetTransferDial          
   614           * @param aError is the error code from protocol.
       
   615           * @return None.
   630           */
   616           */
   631           void SetIsTransferDial( TBool aTransferDial );
   617            void SetProtocolError( TInt aError ); 
   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;
       
   650 
   618 
   651     // Functions from MPEDataStore (reading values)
   619     // Functions from MPEDataStore (reading values)
   652     public:
   620     public:
   653         /**
   621         /**
   654         * Gets group ids which are active to play ring tone
   622         * Gets group ids which are active to play ring tone
   949         /**
   917         /**
   950          * From base class MPEDataStore
   918          * From base class MPEDataStore
   951          * @see MPEDataStore::CallIndex
   919          * @see MPEDataStore::CallIndex
   952          */
   920          */
   953         TInt CallIndex( TInt aCallId ) const;
   921         TInt CallIndex( TInt aCallId ) const;
   954         
       
   955         /**
       
   956          * From base class MPEDataStore
       
   957          * @see MPEDataStore::DoCallBackRequest     
       
   958          */
       
   959         TBool DoCallBackRequest( TInt aCallId ) const;
       
   960 
   922 
   961     // Functions from MPEDataStore (setting values)
   923     // Functions from MPEDataStore (setting values)
   962     public:
   924     public:
   963         /**
   925         /**
   964         * Resets TPECallInfo parameters.
   926         * Resets TPECallInfo parameters.
  1195         /**
  1157         /**
  1196         * Sets Keypad volume of the phone to TPEBasicInfo-structure
  1158         * Sets Keypad volume of the phone to TPEBasicInfo-structure
  1197         * @param aKeypadVolume is Keypad volume of the phone.
  1159         * @param aKeypadVolume is Keypad volume of the phone.
  1198         */
  1160         */
  1199         void SetKeypadVolume( const TInt aKeypadVolume );
  1161         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 );
       
  1206 
  1162 
  1207         /**
  1163         /**
  1208         * Sets a logging indicator to TPECallInfo-tructure
  1164         * Sets a logging indicator to TPECallInfo-tructure
  1209         * @param aLoggingIndicator, Continuous logging indicator.
  1165         * @param aLoggingIndicator, Continuous logging indicator.
  1210         * @param aCallId, the call identification number.
  1166         * @param aCallId, the call identification number.
  1239         /**
  1195         /**
  1240         * Sets personal tone status value to TPEBasicInfo-structure.
  1196         * Sets personal tone status value to TPEBasicInfo-structure.
  1241         * @param aPersonalTone is personal tone status (EFalse/ETrue).
  1197         * @param aPersonalTone is personal tone status (EFalse/ETrue).
  1242         */
  1198         */
  1243         void SetPersonalToneStatus( const TInt& aPersonalToneStatus );
  1199         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 );
       
  1251         
  1200         
  1252         /**
  1201         /**
  1253         * Sets phone number parsing result
  1202         * Sets phone number parsing result
  1254         * @param aServiceCode indicates if phone number a service code
  1203         * @param aServiceCode indicates if phone number a service code
  1255         */
  1204         */
  1535 
  1484 
  1536         /**
  1485         /**
  1537          * @see MPEDataStore::UserToUserInformation
  1486          * @see MPEDataStore::UserToUserInformation
  1538          * @since S60 5.0
  1487          * @since S60 5.0
  1539          */
  1488          */
  1540 		void SetUserToUserInformation( const TPEUserToUserInfo& aUUI );
  1489         void SetUserToUserInformation( const TPEUserToUserInfo& aUUI );
  1541 		
  1490         
  1542         /**
  1491         /**
  1543          * Sets remote party name given by network to TPECallInfo structure.
  1492          * Sets remote party name given by network to TPECallInfo structure.
  1544          * @param aName Remote party name.
  1493          * @param aName Remote party name.
  1545          * @param aCallId Call identification number.
  1494          * @param aCallId Call identification number.
  1546          */
  1495          */
  1559         /**
  1508         /**
  1560          * From base class MPEDataStore
  1509          * From base class MPEDataStore
  1561          * @see MPEDataStore::SetCallOrigin          
  1510          * @see MPEDataStore::SetCallOrigin          
  1562          */
  1511          */
  1563         void SetCallOrigin( TPECallOrigin aOrigin, TInt aCallId );
  1512         void SetCallOrigin( TPECallOrigin aOrigin, TInt aCallId );
  1564         
  1513       
  1565         /**
  1514         /**
  1566          * From base class MPEDataStore
  1515         * Sets call Phonebook contact identifier.
  1567          * @see MPEDataStore::SetDoCallBackRequest        
  1516         * @param aContactId is the contact identifier for a call
  1568          */
  1517         */
  1569         void SetDoCallBackRequest( TBool aDoCallBack, TInt aCallId );
  1518         void SetContactId2( const TInt aContactId );
  1570                 
  1519 
       
  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           
  1571     private:
  1551     private:
  1572           /**
  1552           /**
  1573         * C++ default constructor.
  1553         * C++ default constructor.
  1574         */
  1554         */
  1575         CPEEngineInfoImpl();
  1555         CPEEngineInfoImpl();
  1597 
  1577 
  1598         // Available audio outputs array
  1578         // Available audio outputs array
  1599         TFixedArray<TBool, KPEMaxAudioOutputs> iAvailableAudioOutputs;
  1579         TFixedArray<TBool, KPEMaxAudioOutputs> iAvailableAudioOutputs;
  1600 
  1580 
  1601         // Contains the group id's which are active for ringtone
  1581         // Contains the group id's which are active for ringtone
  1602     	RArray< TContactItemId > iAlertForGroup;
  1582         RArray< TContactItemId > iAlertForGroup;
  1603 
  1583 
  1604         /**
  1584         /**
  1605          * CCE call dial parameters
  1585          * CCE call dial parameters
  1606          */
  1586          */
  1607         CCCECallParameters *iCallParams;
  1587         CCCECallParameters *iCallParams;
  1608 
  1588 
       
  1589         /**
       
  1590          * Phonebook contact identifier.
       
  1591          */
       
  1592         TInt iContactId;
  1609     };
  1593     };
  1610 
  1594 
  1611 
  1595 
  1612 #endif // CPEENGINEINFOIMPL_H   
  1596 #endif // CPEENGINEINFOIMPL_H   
  1613             
  1597