--- a/mmsharing/mmshavailability/inc/musavaoptionhandler.h Thu Aug 19 09:51:39 2010 +0300
+++ b/mmsharing/mmshavailability/inc/musavaoptionhandler.h Tue Aug 31 15:12:07 2010 +0300
@@ -124,6 +124,11 @@
*/
virtual MMusAvaObserver::TAvailabilityName Name();
+ /**
+ * Invitation has been received.
+ */
+ virtual void PrepareForReceivedInviteL();
+
public: // functions from base class MMusAvaCapabilityQueryObserver
@@ -158,9 +163,45 @@
*/
void VideoCodecsResolvedL( const MDesCArray& aVideoCodecs );
-
TBool CapabilityQueryAnswered( TBool aAnswered );
+ void FastModeResolved( MusSettingsKeys::TFastMode aMode );
+
+private:
+
+ /**
+ * Change state.
+ * @param aNewState, proposed new state
+ * @return KErrNone if successfull
+ */
+ TInt DoSetState( MMusAvaObserver::TAvailabilityStatus aNewState );
+
+ /**
+ * Handle state change in fast mode, state change may be modified
+ * based on fast mode session setup progress.
+ * @param aNewState, proposed new state
+ * @param aCouldNotProceed, ETrue if state change occured because
+ * couldn't proceed (e.g. missing information)
+ * @return new state to set
+ */
+ MMusAvaObserver::TAvailabilityStatus HandleFastModeL(
+ MMusAvaObserver::TAvailabilityStatus aNewState );
+
+ MMusAvaObserver::TAvailabilityStatus HandleFastModeAvailableL(
+ MMusAvaObserver::TAvailabilityStatus aNewState );
+
+ MMusAvaObserver::TAvailabilityStatus HandleFastModeOptionsNotSentL(
+ MMusAvaObserver::TAvailabilityStatus aNewState );
+
+ MMusAvaObserver::TAvailabilityStatus HandleFastModeOptionNotAvailableL(
+ MMusAvaObserver::TAvailabilityStatus aNewState );
+
+ void HandleFastModeQueryAnswered();
+
+ TBool FastModeNegotiatedByAnswerMT();
+
+ TBool FastModeNegotiationFailedMO();
+
private:
/**
@@ -179,6 +220,9 @@
TBool iCapabilitiesRequestAnswered;
TBool iCapabilityQueryAnswered;
+ TBool iFastModeCapable;
+ TBool iFastModeAvailabilityDelayed;
+
MUS_UNITTEST ( UT_CMusAvaOptionHandler )
MUS_UNITTEST ( UT_CMusAvaCapabilityExchange )
MUS_UNITTEST ( UT_CMusAvaCapability )
@@ -187,4 +231,4 @@
MUS_UNITTEST ( UT_CMusAvaCapabilityQuery )
};
-#endif // __MUSAVAOPTIONHANDLER_H__
\ No newline at end of file
+#endif // __MUSAVAOPTIONHANDLER_H__