--- a/tsrc/musenginestub/inc/musengmcesession.h Tue Feb 02 00:09:07 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,303 +0,0 @@
-/*
-* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-
-#ifndef MUSHENGMCESESSION_H
-#define MUSHENGMCESESSION_H
-
-// USER
-#include "musengsession.h"
-#include "musengsessiondurationtimerobserver.h"
-
-// SYSTEM
-/*
-#include <mcesessionobserver.h>
-#include <mcestreamobserver.h>
-#include <mcertpobserver.h>
-#include <mcetransactiondatacontainer.h>
-*/
-
-/*
-class CMceManager;
-class CMceSession;
-*/
-class CMusEngSessionDurationTimer;
-
-
-// CONSTANTS
-
-_LIT8( KMusEngAcceptContactHeader,
- "Accept-Contact: *;+g.3gpp.cs-voice; explicit" );
-_LIT8( KMusEngSessionSdpLineXApplication, "a=X-application:com.nokia.rtvs" );
-
-// CLASS DECLARATION
-
-/**
-* Base class for Multimedia Sharing Engine MCE sessions, inherited by
-* CMusEngLiveSession CMusEngClipSession and CMusEngReceiveSession.
-*
-* CMusEngMceSession encapsulates CMCESession and simplifies use of
-* MCE Sessions to user interface. Also splits observers messy events
-* simplified commands like a SessionDisconnected.
-*
-* @lib musengine.lib
-* @since S60 v3.2
-*/
-class CMusEngMceSession : public CMusEngSession,
- public MMusEngSessionDurationTimerObserver
- {
-
- public:
-
- /**
- * Destructor
- *
- * @since S60 v3.2
- */
- ~CMusEngMceSession();
-
-
- public: // API FUNCTIONS
-
- /**
- * Terminates session.
- * @pre Session is established
- * @post Session is ready to be deleted
- * @leave KErrNotReady if precondition is not fullfilled
- * @since S60 v3.2
- */
- IMPORT_C void TerminateL();
-
- /**
- * Releases all this session internal observers. This function is needed
- * before we could get session store out of this session.
- * TODO: Is this function really needed? At least at the moment it is
- * not called from UI. -HR 21.8.
- *
- * @since S60 v3.2
- */
- IMPORT_C void ReleaseInternalObservers();
-
- /**
- * Get session time return estabilished session time
- *
- * @since S60 v3.2
- * @return TTime returns time if connection established else < 0
- */
- IMPORT_C TTimeIntervalSeconds GetSessionTime() const;
-
- /**
- * Returns current connection state
- *
- * @since S60 v3.2
- * @return TBool returns current connection state
- */
- IMPORT_C TBool ConnectionActive() const;
-
-
- public: // VIRTUAL API
-
- // No virtual api
-
-
- public: // from CMusEngSession
-
- /**
- * Increases volume level by one
- *
- * @pre Session is ongoing
- * @since S60 v3.2
- */
- IMPORT_C void VolumeUpL();
-
- /**
- * Decreases volume level by one
- *
- * @pre Session is ongoing
- * @since S60 v3.2
- */
- IMPORT_C void VolumeDownL();
-
- /**
- * Permission to draw on screen device.
- *
- * @pre Session is ongoing
- * @since S60 v3.2
- */
- IMPORT_C void EnableDisplayL( TBool aEnable );
-
- /**
- * Implements virtual from CMusEngSession
- *
- * @pre Session is ongoing
- * @since S60 v3.2
- */
- IMPORT_C void MuteL();
-
- /**
- * Implements virtual from CMusEngSession
- *
- * @pre Session is ongoing
- * @since S60 v3.2
- */
- IMPORT_C void UnmuteL();
-
-
- protected: // CONSTRUCTORS
-
- /**
- * Constructor
- *
- * @since S60 v3.2
- */
- CMusEngMceSession( const TRect& aRect );
-
- /**
- * Second-phase constructor
- *
- * @since S60 v3.2
- */
- void ConstructL();
-
-
- protected: // HELPER FUNCTIONS
-
- /**
- *
- * @since S60 v3.2
- */
- void RectChangedL();
-
- /**
- * Sets session specific SDP line to a session
- *
- * @since S60 v3.2
- */
- //void SetSessionSdpLinesL( CMceSession& aSession );
-
-
- protected: // internal API
-
- /**
- *
- * @since S60 v3.2
- */
- virtual TBool IsRtpcInactivityTimoutSupported();
-
-
- private: // HELPER FUNCTIONS
-
- /**
- * Start counting session time
- *
- * @since S60 v3.2
- */
- void InitializeSessionTimer();
-
- /**
- * Callback
- *
- * @since S60 v3.2
- */
- void UpdateTimerEvent();
-
- /**
- *
- *
- * @since S60 v3.2
- */
- void DoMuteL( TBool aMute );
-
- /**
- * Increases or decreases current volume of all speakers in session
- * structure by one.
- * @pre Current volume of all the speakers is less than MaxVolumeL()
- * and at least 1.
- */
- void ChangeVolumeByOneL( TBool aIncreaseVolume );
-
-
- private: // Helpers
-
- /**
- * Helper function to avoid three different traps.
- * Should be replaced when MCE supports different kind of method
- * detecting end of clip.
- *
- * @since S60 v3.2
- */
- void CheckClipEndL();
-
-
- public: // MEMBERS
-
- /**
- * Class for connecting to MCE server.
- * This class provides the connection to the MCE server and
- * provides functions
- * for setting observers for asynchronous events.
- * The user should create only one instance of this class.
- *
- * @since S60 v3.2
- */
- //CMceManager* iManager;
-
- /**
- * Base class for MCE sessions, inherited by both CMCEInSession and
- * CMCEOutSession. * CMCESession represents peer-to-peer connection
- * made with remote terminal. This connection is also known as dialog
- * and it is set up using SIP INVITE method. The characteristics of the
- * session are defined by user of this class by attaching media streams
- * into the session. After the session has been succesfully established,
- * it can be later updated and must be finally terminated. If for any
- * reason instance of this class is deleted while in established state,
- * session is automatically terminated by MCE server.
- *
- * @since S60 v3.2
- */
- //CMceSession* iSession;
-
-
- public:
-
- /**
- * It is assumed, that user has only one instance of this class.
- * The same instance is passed between MCE and user, but the data
- * inside of this container is just updated for each event.
- *
- * @since S60 v3.2
- */
- //TMceTransactionDataContainer iTransactionDataContainer;
-
- /**
- * Session time. Acts simultaneously as RTCP inactivity timer.
- *
- * @since S60 v3.2
- */
- TTime iStartTime;
-
- CMusEngSessionDurationTimer* iUpdateTimer;
-
- /**
- * Value indicating seconds gone since last received RTCP sender or
- * receiver report. Value 20 indicates RTCP inactivity timeout.
- */
- TInt iSecondsFromLastRtcpReport;
- TInt iDisplayEnabled;
-
- };
-#endif //MUSHENGMCESESSION_H