upnpframework/upnpcommand/inc/upnpbrowsetask.h
changeset 0 7f85d04be362
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/upnpframework/upnpcommand/inc/upnpbrowsetask.h	Thu Dec 17 08:52:00 2009 +0200
@@ -0,0 +1,117 @@
+/*
+* 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 "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:  Header file for the CUpnpBrowseTask class.
+*
+*/
+
+
+#ifndef UPNP_BROWSE_TASK_H
+#define UPNP_BROWSE_TASK_H
+
+// INCLUDES
+#include <e32base.h>
+#include "upnpavsessionobserverbase.h"
+#include "upnpavbrowsingsessionobserver.h"
+#include "upnpavdeviceobserver.h"
+#include "upnptask.h"
+
+// FORWARD DECLARATIONS
+class CUpnpAVDevice;
+class MUPnPAVController;
+class MUPnPAVBrowsingSession;
+class MUPnPAVSessionBase;
+
+/**
+* This class defines the CUpnpBrowseTask used in UpnpCommand component.
+*
+* @since S60 3.2
+*/
+class CUpnpBrowseTask : public CUpnpTask,
+                        public MUPnPAVDeviceObserver
+    {
+    public: // Methods from CUpnpTask
+
+        /**
+         * Creates a new CUpnpBrowseTask object. Allocates Upnp Fw resources.
+         * Resources will be released when the task is destroyed.
+         *
+         * @since S60 3.2
+         * @return a new instance of CUpnpBrowseTask, casted to type CUpnpTask
+         */
+        static CUpnpTask* NewL();
+
+        /**
+         * Allocates the Upnp Fw resources.
+         *
+         * @since S60 3.2
+         */
+        void AllocateResourcesL();
+
+        /**
+         * Executes the task.
+         *
+         * @since S60 3.2
+         */
+        void ExecuteL();
+
+    public: // Call back methods of MUPnPAVDeviceObserver
+
+        /* Not used */
+        void UPnPDeviceDiscovered( const CUpnpAVDevice& /*aDevice*/ ) {}
+        void UPnPDeviceDisappeared( const CUpnpAVDevice& /*aDevice*/ ) {}
+
+        /**
+         * Notifies that the WLAN connection has been lost. All sessions
+         * are now usable and must be closed.
+         *
+         * @since Series 60 3.1
+         * @return None
+         */
+        void WLANConnectionLost();
+
+    public: // Public destructor
+
+        /**
+         * Destructor.
+         */
+        virtual ~CUpnpBrowseTask();
+
+    private: // Private construct/destruct methods
+
+        /**
+         * Perform the first phase of two phase construction.
+         *
+         * @since S60 3.2
+         * @return a new instance of CUpnpShowTask, casted to type CUpnpTask
+         */
+        CUpnpBrowseTask();
+
+        /**
+         * Perform the second phase of two phase construction. Reserves the
+         * Upnp Fw resources (they are released when the task is destroyed).
+         */
+        void ConstructL();
+
+    private: // Data members
+
+        /**
+         * Pointer to the UpnpAvController instance. Owned.
+         */
+        MUPnPAVController* iAVController;
+
+    };
+
+#endif // UPNP_BROWSE_TASK_H
+
+// End of File