--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dvrengine/CommonRecordingEngine/inc/MCRConnectionObserver.h Thu Dec 17 09:14:38 2009 +0200
@@ -0,0 +1,92 @@
+/*
+* 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: Observer class for wrapping RConnection.*
+*/
+
+
+
+
+#ifndef MCRCONNECTIONOBSERVER_H
+#define MCRCONNECTIONOBSERVER_H
+
+// INCLUDES
+#include <e32base.h>
+
+// CONSTANTS
+// None
+
+// MACROS
+// None
+
+// DATA TYPES
+// None
+
+// FORWARD DECLARATIONS
+// None
+
+// CLASS DECLARATION
+
+/**
+* Observer for connection interface status.
+*
+* @lib CommonRecordingEngine.lib
+* @since Series 60 3.0
+*/
+class MCRConnectionObserver
+ {
+
+public: // Data types
+
+ /**
+ * TCRConnectionStatus is set of indications to be sent to client
+ */
+ enum TCRConnectionStatus
+ {
+ ECRBearerChanged, /**< Indicates change in network bearer */
+ ECRIapDown, /**< Network connection lost */
+ ECRConnectionError, /**< Unable to open connection in RTP engine & CR engine */
+ ECRConnecting, /**< Indicates "connection on progress" state to ui */
+ ECRAuthenticationNeeded, /**< Used to request username/password from ui */
+ ECRNotEnoughBandwidth, /**< Stream has too high bitrate for our network */
+ ECRNormalEndOfStream, /**< Clip ends normally */
+ ECRSwitchingToTcp, /**< Indicates a udp->tcp switch, client may need to reset player */
+ ECRStreamIsLiveStream, /**< Indicates that we have stream that can't be paused */
+ ECRAttachCompleted, /**< Sent when attached to RConnection */
+ ECRStreamIsRealMedia, /**< Indicates that stream is (unsupported) realmedia format */
+ ECRTestSinkData, /**< Data from TestSink (former NullSink) to test client observer */
+ ECRSdpAvailable, /**< Used to communicate availability of SDP */
+ ECRReadyToSeek, /**< Used to communicate seeking posibility */
+ ECRRecordingStarted, /**< Used to communicate recording state */
+ ECRRecordingPaused, /**< Used to communicate recording state */
+ ECRRecordingEnded /**< Used to communicate recording state */
+ };
+
+ /**
+ * This method is called after connection status changes or there is an error
+ * @since Series 60 3.0
+ * @param aSessionId Id to session generating the status change or message. 0 points to no session.
+ * @param aConnection Reference to connection object being used.
+ * @param aInterfaceUp flags if interface has gone up (ETrue)
+ * or down (EFalse).
+ * @param aError error value associated.
+ * @return none.
+ */
+ virtual void ConnectionStatusChange( TInt aSessionId,
+ const TCRConnectionStatus aStatus,
+ TInt aErr ) = 0;
+ };
+
+#endif // MCRCONNECTIONOBSERVER_H
+
+// End of file