diff -r 798ee5f1972c -r 826cea16efd9 videoutils_plat/dvrengine_api/inc/ipvideo/CCRDvrApi.h --- a/videoutils_plat/dvrengine_api/inc/ipvideo/CCRDvrApi.h Thu Aug 19 10:54:18 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,315 +0,0 @@ -/* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the License "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: Interface for Common recording engine, the part of API* -*/ - - - - -#ifndef CCRDVRAPI_H -#define CCRDVRAPI_H - -// INCLUDES -#include -#include -#include - -// CONSTANTS -const TReal KRealZero( 0.0 ); -const TReal KRealMinusOne( -1.0 ); - -// MACROS -// None - -// DATA TYPES -// None - -// FORWARD DECLARATIONS -class CCRMsgQueueObserver; -class MCREngineObserver; - -// CLASS DECLARATION - -/** -* Ip-LiveTV-specific client api that manages service functionality. -* -* @lib CommonRecordingEngineClient.lib -* @since Series 60 3.0 -*/ -class CCRDvrApi : public CCRApiBase - { - -public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - IMPORT_C static CCRDvrApi* NewL( MCREngineObserver *aObserver ); - - /** - * Two-phased constructor. - */ - IMPORT_C static CCRDvrApi* NewL(); - - /** - * Destructor. - * @return None. - */ - IMPORT_C virtual ~CCRDvrApi(); - -public: // New methods - - /** - * Tells receiving engine which IAP to use - * @since Series 60 3.0 - * @param aIapId is handle to RConnection that is already open. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt SetIap( const TSubConnectionUniqueId& aIapId ); - - /** - * Tells receiving engine to cancel IAP selection. - * @since Series 60 3.0 - * @param none. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt CancelSetIap(); - - /** - * Prepares RTSP stream for player. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRtspUrl is set of parameters required for rtsp. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayRtspUrl( TUint& aSessionChk, - const SCRRtspParams& aRtspUrl ); - - /** - * Prepares DVB-H live stream for player. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aLiveParams is set of parameters required for DVB-H. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayDvbhStream( TUint& aSessionChk, - const SCRLiveParams& aLiveParams ); - - /** - * Changes DVB-H service of live streaming. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aLiveParams is set of parameters required for DVB-H. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt ChangeDvbhService( TUint& aSessionChk, - const SCRLiveParams& aLiveParams ); - - /** - * Prepares RTP clip stream for player. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRtpFile is set of parameters required for rtsp. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayRtpFile( TUint& aSessionChk, - const SCRRtpPlayParams& aRtpFile ); - - /** - * Prepares RTP clip stream for player. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRtpHandle a open file handle for RTP file. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayRtpFile( TUint& aSessionChk, - const RFile& aRtpHandle ); - - /** - * Starts recording for currently active stream. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRecordParams a parameters for recording. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt RecordCurrentStream( const TUint aSessionChk, - const SCRRecordParams& aRecordParams ); - - /** - * Starts recording for RTSP live stream. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRtspUrl is set of parameters required for rtsp. - * @param aRecordParams a parameters for recording. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt RecordRtspStream( TUint& aSessionChk, - const SCRRtspParams& aRtspUrl, - const SCRRecordParams& aRecordParams ); - - /** - * Starts recording for DVB-H live stream. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aLiveParams is set of parameters required for DVB-H. - * @param aRecordParams a parameters for recording. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt RecordDvbhStream( TUint& aSessionChk, - const SCRLiveParams& aLiveParams, - const SCRRecordParams& aRecordParams ); - - /** - * Pauses/Resumes recording of wanted stream. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aStart a start or end pausing. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PauseRecordStream( const TUint aSessionChk, - const TBool& aStart ); - - /** - * Stops recording of wanted stream. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt StopRecordStream( const TUint aSessionChk ); - - /** - * Starts time shifting for wanted stream. - * @since Series 60 3.0 - * @param aTimeShiftChk a session definition checksum. - * @param aCurrentChk a session definition of existing session. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt StartTimeShift( TUint& aTimeShiftChk, - const TUint aCurrentChk ); - - /** - * Stops time shifting mode. - * @since Series 60 3.0 - * @param aTimeShiftChk a session definition checksum. - * @param aCurrentChk a session definition of existing session. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt StopTimeShift( const TUint aTimeShiftChk, - const TUint aCurrentChk ); - - /** - * Method for ordering "play" for packet source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aStartPos is start position in seconds. - * @param aEndPos is end position in seconds. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayCommand( const TUint aSessionChk, - const TReal aStartPos = KRealMinusOne, - const TReal aEndPos = KRealMinusOne ); - - /** - * Method for ordering "pause" for packet source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PauseCommand( const TUint aSessionChk ); - - /** - * Method for ordering "stop" for packet source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt StopCommand( const TUint aSessionChk ); - - /** - * Setter for play position of packet source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aPosition a postion of RTP playback. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt SetPosition( const TUint aSessionChk, - const TInt64 aPosition ); - - /** - * Getter for play position of packet source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aPosition a postion of RTP playback. - * @param aDuration a duration of RTP clip. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt GetPosition( const TUint aSessionChk, - TInt64& aPosition, - TInt64& aDuration ); - - /** - * Method for ordering closing a source and all sinks. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt CloseSession( const TUint aSessionChk ); - - /** - * Prepares rtp file playing as a live source. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayNullSource( TUint& aSessionChk ); - - /** - * Prepares rtsp stream for null sink. - * @since Series 60 3.0 - * @param aSessionChk a session definition checksum. - * @param aRtspUrl is set of parameters required for rtsp - * @return KErrNone if ok, otherwise system-wide error codes. - */ - IMPORT_C TInt PlayRtspUrlToNullSink( TUint& aSessionChk, - const SCRRtspParams& aRtspUrl ); - -private: // Constructors and destructor - - /** - * C++ default constructor. - */ - CCRDvrApi(); - - /** - * Symbian 2nd phase constructor can leave. - */ - void ConstructL( MCREngineObserver *aObserver ); - - /** - * Symbian 2nd phase constructor can leave. - */ - void ConstructL(); - -private: // Data - - /** - * Queue observer. - */ - CCRMsgQueueObserver* iQueueObserver; - - }; - -#endif // CCRDVRAPI_H - -// End of File