mmsharing/mmshavailability/inc/musavaoptionhandler.h
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
equal deleted inserted replaced
32:73a1feb507fb 33:bc78a40cd63c
   122      *
   122      *
   123      * @return Name of *this* availability.
   123      * @return Name of *this* availability.
   124      */
   124      */
   125     virtual MMusAvaObserver::TAvailabilityName Name();
   125     virtual MMusAvaObserver::TAvailabilityName Name();
   126     
   126     
   127     /**
       
   128     * Invitation has been received.
       
   129     */  
       
   130     virtual void PrepareForReceivedInviteL();
       
   131     
       
   132 
   127 
   133 public: // functions from base class MMusAvaCapabilityQueryObserver
   128 public: // functions from base class MMusAvaCapabilityQueryObserver
   134 
   129 
   135     void CapabilitiesResolved( const CMusAvaCapabilityQueryBase& aSentQuery );
   130     void CapabilitiesResolved( const CMusAvaCapabilityQueryBase& aSentQuery );
   136 
   131 
   161     /**
   156     /**
   162      * Advertise about video codec capabilities     
   157      * Advertise about video codec capabilities     
   163      */
   158      */
   164     void VideoCodecsResolvedL( const MDesCArray& aVideoCodecs );
   159     void VideoCodecsResolvedL( const MDesCArray& aVideoCodecs );
   165 
   160 
       
   161 
   166     TBool CapabilityQueryAnswered( TBool aAnswered );
   162     TBool CapabilityQueryAnswered( TBool aAnswered );
   167 
   163 
   168     void FastModeResolved( MusSettingsKeys::TFastMode aMode );
       
   169 
       
   170 private:
       
   171     
       
   172     /**
       
   173     * Change state.
       
   174     * @param aNewState, proposed new state
       
   175     * @return KErrNone if successfull
       
   176     */
       
   177     TInt DoSetState( MMusAvaObserver::TAvailabilityStatus aNewState );
       
   178     
       
   179     /**
       
   180     * Handle state change in fast mode, state change may be modified
       
   181     * based on fast mode session setup progress.
       
   182     * @param aNewState, proposed new state
       
   183     * @param aCouldNotProceed, ETrue if state change occured because
       
   184     *       couldn't proceed (e.g. missing information)
       
   185     * @return new state to set
       
   186     */
       
   187     MMusAvaObserver::TAvailabilityStatus HandleFastModeL( 
       
   188         MMusAvaObserver::TAvailabilityStatus aNewState );
       
   189     
       
   190     MMusAvaObserver::TAvailabilityStatus HandleFastModeAvailableL(
       
   191         MMusAvaObserver::TAvailabilityStatus aNewState );
       
   192     
       
   193     MMusAvaObserver::TAvailabilityStatus HandleFastModeOptionsNotSentL(
       
   194         MMusAvaObserver::TAvailabilityStatus aNewState );
       
   195     
       
   196     MMusAvaObserver::TAvailabilityStatus HandleFastModeOptionNotAvailableL(
       
   197         MMusAvaObserver::TAvailabilityStatus aNewState );
       
   198     
       
   199     void HandleFastModeQueryAnswered();
       
   200     
       
   201     TBool FastModeNegotiatedByAnswerMT();
       
   202     
       
   203     TBool FastModeNegotiationFailedMO();
       
   204     
       
   205 private:
   164 private:
   206 
   165 
   207     /**
   166     /**
   208      * Reference to availability settings (data store)
   167      * Reference to availability settings (data store)
   209      */
   168      */
   218     CMusAvaCapabilityExchange*  iCapabilityExchange;
   177     CMusAvaCapabilityExchange*  iCapabilityExchange;
   219     CMusAvaCapability*          iSwisCapability;
   178     CMusAvaCapability*          iSwisCapability;
   220     TBool                       iCapabilitiesRequestAnswered;
   179     TBool                       iCapabilitiesRequestAnswered;
   221     TBool                       iCapabilityQueryAnswered;
   180     TBool                       iCapabilityQueryAnswered;
   222     
   181     
   223     TBool                       iFastModeCapable;
       
   224     TBool                       iFastModeAvailabilityDelayed;
       
   225     
       
   226     MUS_UNITTEST ( UT_CMusAvaOptionHandler )
   182     MUS_UNITTEST ( UT_CMusAvaOptionHandler )
   227     MUS_UNITTEST ( UT_CMusAvaCapabilityExchange )
   183     MUS_UNITTEST ( UT_CMusAvaCapabilityExchange )
   228     MUS_UNITTEST ( UT_CMusAvaCapability )
   184     MUS_UNITTEST ( UT_CMusAvaCapability )
   229     MUS_UNITTEST ( UT_CMusAvaTerminal )
   185     MUS_UNITTEST ( UT_CMusAvaTerminal )
   230     MUS_UNITTEST ( UT_CMusAvaCapabilitySipAgent )
   186     MUS_UNITTEST ( UT_CMusAvaCapabilitySipAgent )