phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h
branchRCL_3
changeset 19 7d48bed6ce0c
parent 0 ff3b6d0fd310
child 20 987c9837762f
--- a/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h	Thu Aug 19 10:28:14 2010 +0300
+++ b/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h	Tue Aug 31 15:45:17 2010 +0300
@@ -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