phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h
branchRCL_3
changeset 20 987c9837762f
parent 19 7d48bed6ce0c
--- a/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h	Tue Aug 31 15:45:17 2010 +0300
+++ b/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h	Wed Sep 01 12:15:03 2010 +0100
@@ -33,28 +33,28 @@
 class MCCPCallObserver
     {
 public:
-    /** Call states */
-    enum TCCPCallState
-        {
-        /** Indicates initial call state after call creation. Basic state. */
-        ECCPStateIdle,
-        /** Indicates that the MT call is ringing but not answered yet by the local user. Basic state.*/
-        ECCPStateRinging,
-        /** MO Call: the network notifies to the MS that the remote party is now ringing. Basic state.*/
-        ECCPStateConnecting,
-        /** Indicates that call is connected and active. Basic state.*/
-        ECCPStateConnected,
-        /** Indicates that call is disconnecting. Basic state.*/
-        ECCPStateDisconnecting,
-        /** Indicates that the call is connected but on hold. Basic state.*/
-        ECCPStateHold,
+	/** Call states */
+	enum TCCPCallState
+		{
+		/** Indicates initial call state after call creation. Basic state. */
+		ECCPStateIdle,
+		/** Indicates that the MT call is ringing but not answered yet by the local user. Basic state.*/
+		ECCPStateRinging,
+		/** MO Call: the network notifies to the MS that the remote party is now ringing. Basic state.*/
+		ECCPStateConnecting,
+		/** Indicates that call is connected and active. Basic state.*/
+		ECCPStateConnected,
+		/** Indicates that call is disconnecting. Basic state.*/
+		ECCPStateDisconnecting,
+		/** Indicates that the call is connected but on hold. Basic state.*/
+		ECCPStateHold,
 
-        /** Call is transfering. Optional state.*/
-        ECCPStateTransferring,
-        /** MO call is being forwarded at receiver end. Optional state. */
-        ECCPStateForwarding,
-        /** Call is queued locally. Optional state. */
-        ECCPStateQueued,
+		/** Call is transfering. Optional state.*/
+		ECCPStateTransferring,
+		/** MO call is being forwarded at receiver end. Optional state. */
+		ECCPStateForwarding,
+		/** Call is queued locally. Optional state. */
+		ECCPStateQueued,
 
         /** Indicates that the local user has answered the MT call but the network has not
         acknowledged the call connection yet.  Must be sent after MCCPCall::Answer method has been completed. */
@@ -62,189 +62,189 @@
    
         /** Indicates that the call is dialing. Must be sent after MCCPCall::Dial method has been completed. */
         ECCPStateDialling,
-        
-        };
+		
+		};
 
-    /** Describes the possible call events. */
-    enum TCCPCallEvent
-        {
-        /** Call has been placed on hold as a result of a local action. */
-        ECCPLocalHold,
-        /** Call has been placed on hold by the remote connected party. */
-        ECCPRemoteHold,
-        /** Call has been resumed as a result of a local action.    */
-        ECCPLocalResume,
-        /** Call has been resumed by the remote connected party. */
-        ECCPRemoteResume,
-        /** Outgoing call has been barred by the local party. */
-        ECCPLocalBarred,
-        /** Outgoing call has been barred by the remote party. */
-        ECCPRemoteBarred,
-        /** Call is waiting at the remote end. Obsolote, use supplementary service ESsCallWaiting */
-        ECCPRemoteWaiting,
-        /** Call has been terminated by the remote party. */
-        ECCPRemoteTerminated,
-        /** Call is in queue */
-        ECCPQueued,
+	/** Describes the possible call events. */
+	enum TCCPCallEvent
+		{
+		/** Call has been placed on hold as a result of a local action. */
+		ECCPLocalHold,
+		/** Call has been placed on hold by the remote connected party. */
+		ECCPRemoteHold,
+		/** Call has been resumed as a result of a local action.	*/
+		ECCPLocalResume,
+		/** Call has been resumed by the remote connected party. */
+		ECCPRemoteResume,
+		/** Outgoing call has been barred by the local party. */
+		ECCPLocalBarred,
+		/** Outgoing call has been barred by the remote party. */
+		ECCPRemoteBarred,
+		/** Call is waiting at the remote end. Obsolote, use supplementary service ESsCallWaiting */
+		ECCPRemoteWaiting,
+		/** Call has been terminated by the remote party. */
+		ECCPRemoteTerminated,
+		/** Call is in queue */
+		ECCPQueued,
 
-        /** VoIP specific */
-        ECCCSPEarlyMediaStarted,
+		/** VoIP specific */
+		ECCCSPEarlyMediaStarted,
 
-        /** Call is secure */
-        ECCPSecureCall,
-        /** Call is not secure */
-        ECCPNotSecureCall,
-        
-        /** VoIP specific
-        User has called with address containing "SIPS:" prefix. This event notifies that
-        secure call signaling is not possible. **/
-        ECCPNotSecureSessionWithSips,
+		/** Call is secure */
+		ECCPSecureCall,
+		/** Call is not secure */
+		ECCPNotSecureCall,
+		
+		/** VoIP specific
+		User has called with address containing "SIPS:" prefix. This event notifies that
+		secure call signaling is not possible. **/
+		ECCPNotSecureSessionWithSips,
        
-        /** Call has been added to remote conference call at remote end */
-        ECCPRemoteConferenceCreate,
-       
-        ////////////////////////////
-        // CS call specific events
-        ///////////////////////////        
-       
-        /** CS call specific event */
-        ECCPCSDataPortLoaned,
-        /** CS call specific event */
-        ECCPCSDataPortRecovered,
+		/** Call has been added to remote conference call at remote end */
+		ECCPRemoteConferenceCreate,
+	   
+		////////////////////////////
+		// CS call specific events
+		///////////////////////////        
+	   
+		/** CS call specific event */
+		ECCPCSDataPortLoaned,
+		/** CS call specific event */
+		ECCPCSDataPortRecovered,
 
-        /** One or more of following information has been changed
+		/** One or more of following information has been changed
          *  - Remote party name
          *  - Remote party number/address
          *  - Call parameters ( ie. service id )
-         */     
-        ECCPNotifyRemotePartyInfoChange,
+		 */		
+		ECCPNotifyRemotePartyInfoChange,
 
         /** Call secure status cannot be determined */
         ECCPSecureNotSpecified
-        };
+		};
 
 
-    /** Flags indicating all the possible call control capabilities. */
-    enum TCCPCallControlCaps
-        {
-        /** Call supports data calls. */
-        ECCPCapsData           =   0x00000001,
-        /** Call supports fax calls. */
-        ECCPCapsFax            =   0x00000002,
-        /** Call supports voice calls. */
-        ECCPCapsVoice          =   0x00000004,
-        /** The Dial request is currently a valid action. */
-        ECCPCapsDial           =   0x00000008,
-        /** The Connect request is currently a valid action. */
-        ECCPCapsConnect        =   0x00000010,
-        /** The Hang Up request is currently a valid action. */
-        ECCPCapsHangUp         =   0x00000020,
-        /** The Answer request is currently a valid action. */
-        ECCPCapsAnswer         =   0x00000040,
-        /** The Loan Data Port request is currently a valid action. */
-        ECCPCapsLoanDataPort   =   0x00000080,
-        /** The Recover Data Port request is currently a valid action. */
-        ECCPCapsRecoverDataPort=   0x00000100,
-        /** Indicates that this call can be put on hold. This implies that the call is currently
-        active and that there is no other held call. */
-        ECCPCapsHold           =   0x00000200,
-        /** Indicates that this call can be resumed. This implies that the call is currently
-        on hold and that there is no other active call. */
-        ECCPCapsResume         =   0x00000400,
-        /** Indicates that this call's state can be swapped to the opposite state. This
-        implies that this call is either active or held. There may be another call
-        in the opposite state and if this is the case then both calls will be simultaneously
-        swapped to their opposite state. */
-        ECCPCapsSwap           =   0x00000800,
-        /** Indicates that this incoming call can be deflected to another destination.*/
-        ECCPCapsDeflect        =   0x00001000,
-        /** Indicates that this call can be transferred to the remote party of another call.
-        For this capability to be set there must be one active call and one held or
-        dialing call.*/
-        ECCPCapsTransfer       =   0x00002000,
-        /** Indicates that this call can be joined either to another single call to form
-        a conference call or to an existing conference call.*/
-        ECCPCapsJoin           =   0x00004000,
-        /** Indicates that this call (within a conference call) can go into One to One mode.
-        This action would put the rest of the conference call on hold. */
-        ECCPCapsOneToOne       =   0x00008000,
-        /** Indicates that the user can activate a CCBS request on this failed call set-up.*/
-        ECCPCapsActivateCCBS   =   0x00010000,
-        /** Indicates that this call is part of an alternating call and the client can call
-        SwitchAlternatingCall() on this call in order to switch it to its other mode.*/
-        ECCPCapsSwitchAlternatingCall = 0x00020000,
-        /** Indicates that this call can use/create a new bearer. This means that multiple
-        calls (multicall) can be active at the same time using no more that 7 bearers
-        simultaneously. The other option is to swap with an active call, therefore
-        it becomes held and shares the same bearer.*/
-        ECCPCapsMulticall      =   0x00040000,
-        /** Indicates that this call is an packet switched call */
-        ECCPCapsPSCall       =   0x00080000,
-        /** Indicates that this call supports unattended transfer method and that this call
-        is currently active */
-        ECCPCapsUnattendedTransfer = 0x00100000,
-        /** Indicates that a conference call can be created. */
-        KCCPCapsCreate = 0x00200000
-        };
+	/** Flags indicating all the possible call control capabilities. */
+	enum TCCPCallControlCaps
+		{
+		/** Call supports data calls. */
+		ECCPCapsData           =   0x00000001,
+		/** Call supports fax calls. */
+		ECCPCapsFax            =   0x00000002,
+		/** Call supports voice calls. */
+		ECCPCapsVoice          =   0x00000004,
+		/** The Dial request is currently a valid action. */
+		ECCPCapsDial           =   0x00000008,
+		/** The Connect request is currently a valid action. */
+		ECCPCapsConnect        =   0x00000010,
+		/** The Hang Up request is currently a valid action. */
+		ECCPCapsHangUp         =   0x00000020,
+		/** The Answer request is currently a valid action. */
+		ECCPCapsAnswer         =   0x00000040,
+		/** The Loan Data Port request is currently a valid action. */
+		ECCPCapsLoanDataPort   =   0x00000080,
+		/** The Recover Data Port request is currently a valid action. */
+		ECCPCapsRecoverDataPort=   0x00000100,
+		/** Indicates that this call can be put on hold. This implies that the call is currently
+		active and that there is no other held call. */
+		ECCPCapsHold           =   0x00000200,
+		/** Indicates that this call can be resumed. This implies that the call is currently
+		on hold and that there is no other active call. */
+		ECCPCapsResume         =   0x00000400,
+		/** Indicates that this call's state can be swapped to the opposite state. This
+		implies that this call is either active or held. There may be another call
+		in the opposite state and if this is the case then both calls will be simultaneously
+		swapped to their opposite state. */
+		ECCPCapsSwap           =   0x00000800,
+		/** Indicates that this incoming call can be deflected to another destination.*/
+		ECCPCapsDeflect        =   0x00001000,
+		/** Indicates that this call can be transferred to the remote party of another call.
+		For this capability to be set there must be one active call and one held or
+		dialing call.*/
+		ECCPCapsTransfer       =   0x00002000,
+		/** Indicates that this call can be joined either to another single call to form
+		a conference call or to an existing conference call.*/
+		ECCPCapsJoin           =   0x00004000,
+		/** Indicates that this call (within a conference call) can go into One to One mode.
+		This action would put the rest of the conference call on hold. */
+		ECCPCapsOneToOne       =   0x00008000,
+		/** Indicates that the user can activate a CCBS request on this failed call set-up.*/
+		ECCPCapsActivateCCBS   =   0x00010000,
+		/** Indicates that this call is part of an alternating call and the client can call
+		SwitchAlternatingCall() on this call in order to switch it to its other mode.*/
+		ECCPCapsSwitchAlternatingCall = 0x00020000,
+		/** Indicates that this call can use/create a new bearer. This means that multiple
+		calls (multicall) can be active at the same time using no more that 7 bearers
+		simultaneously. The other option is to swap with an active call, therefore
+		it becomes held and shares the same bearer.*/
+		ECCPCapsMulticall      =   0x00040000,
+		/** Indicates that this call is an packet switched call */
+		ECCPCapsPSCall       =   0x00080000,
+		/** Indicates that this call supports unattended transfer method and that this call
+		is currently active */
+		ECCPCapsUnattendedTransfer = 0x00100000,
+		/** Indicates that a conference call can be created. */
+		KCCPCapsCreate = 0x00200000
+		};
 
 
 protected:
-    /** 
-    * Protects the observer being deleted through the observer interface 
-    * @since S60 3.2
-    */
-    virtual inline ~MCCPCallObserver() {};
+	/** 
+	* Protects the observer being deleted through the observer interface 
+	* @since S60 3.2
+	*/
+	virtual inline ~MCCPCallObserver() {};
     
 public:
-    /**
-    * An error has occurred concerning a specific call.
-    * @since S60 3.2
-    * @param aError Error code.
-    * @param aCall Pointer to used ccp call, can be NULL in emergency call
-    * @return none
-    */
-    virtual void ErrorOccurred( const TCCPError aError, MCCPCall* aCall ) = 0; 
+	/**
+	* An error has occurred concerning a specific call.
+	* @since S60 3.2
+	* @param aError Error code.
+	* @param aCall Pointer to used ccp call, can be NULL in emergency call
+	* @return none
+	*/
+	virtual void ErrorOccurred( const TCCPError aError, MCCPCall* aCall ) = 0; 
 
-    /**
-    * The state of the call has changed.
-    * @since S60 3.2
-    * @param aState Call state.
-    * @param aCall Pointer to used ccp call, can be NULL in emergency call
-    * @return none
-    */
-    virtual void CallStateChanged( const MCCPCallObserver::TCCPCallState aState, 
-                                   MCCPCall* aCall) = 0; 
+	/**
+	* The state of the call has changed.
+	* @since S60 3.2
+	* @param aState Call state.
+	* @param aCall Pointer to used ccp call, can be NULL in emergency call
+	* @return none
+	*/
+	virtual void CallStateChanged( const MCCPCallObserver::TCCPCallState aState, 
+	                               MCCPCall* aCall) = 0; 
 
-    /**
-    * The state of the call has changed with inband tone, meaning network is playing 
-    * the tone relating to the state.
-    * @since S60 3.2
-    * @param aState Call state.
-    * @param aCall Pointer to used ccp call, can be NULL in emergency call
-    * @return none
-    */
-    virtual void CallStateChangedWithInband( const MCCPCallObserver::TCCPCallState aState, 
-                                             MCCPCall* aCall ) = 0; 
+	/**
+	* The state of the call has changed with inband tone, meaning network is playing 
+	* the tone relating to the state.
+	* @since S60 3.2
+	* @param aState Call state.
+	* @param aCall Pointer to used ccp call, can be NULL in emergency call
+	* @return none
+	*/
+	virtual void CallStateChangedWithInband( const MCCPCallObserver::TCCPCallState aState, 
+	                                         MCCPCall* aCall ) = 0; 
 
-    /**
-    * An event has occurred concerning a specific call.
-    * @since S60 3.2
-    * @param aEvent Occurred event.
-    * @param aCall Pointer to used ccp call, can be NULL in emergency call
-    * @return none
-    */
-    virtual void CallEventOccurred( const MCCPCallObserver::TCCPCallEvent aEvent, 
-                                    MCCPCall* aCall ) = 0; 
+	/**
+	* An event has occurred concerning a specific call.
+	* @since S60 3.2
+	* @param aEvent Occurred event.
+	* @param aCall Pointer to used ccp call, can be NULL in emergency call
+	* @return none
+	*/
+	virtual void CallEventOccurred( const MCCPCallObserver::TCCPCallEvent aEvent, 
+	                                MCCPCall* aCall ) = 0; 
 
-    /**
-    * Notifies changed call capabilities.
-    * @since S60 3.2
-    * @param aCapsFlags New capabilities for the call
-    * @param aCall Pointer to used ccp call, can be NULL in emergency call
-    * @return none
-    */
-    virtual void CallCapsChanged( const TUint32 aCapsFlags, 
-                                  MCCPCall* aCall ) = 0; 
+	/**
+	* Notifies changed call capabilities.
+	* @since S60 3.2
+	* @param aCapsFlags New capabilities for the call
+	* @param aCall Pointer to used ccp call, can be NULL in emergency call
+	* @return none
+	*/
+	virtual void CallCapsChanged( const TUint32 aCapsFlags, 
+	                              MCCPCall* aCall ) = 0; 
     };
 
 #endif // MCCPCALLOBSERVER_H