--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/upnpframework/upnpaiwprovider/inc/upnpaiwenableexternalservice.h Thu Dec 17 08:52:00 2009 +0200
@@ -0,0 +1,124 @@
+/*
+* Copyright (c) 2005-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 UpnpAiwEnableExternalService.
+*
+*/
+
+
+#ifndef _UPNP_AIW_ENABLE_EXTERNAL_SERVICE_H
+#define _UPNP_AIW_ENABLE_EXTERNAL_SERVICE_H
+
+// INCLUDES
+#include <AiwServiceIfMenu.h>
+
+// FUNCTION PROTOTYPES
+class CUPnPAiwEngine;
+
+// CLASS DECLARATION
+
+/**
+* CUPnPAiwEnableExternalService
+* The class implements the "Enable external" service of the
+* UPnP AIW Media Provider.
+* @since Series S60 3.0
+*/
+class CUPnPAiwEnableExternalService : public CAiwServiceIfMenu
+ {
+
+ public: // Constructors and destructor
+
+ // Two-phased constructor.
+ static CUPnPAiwEnableExternalService* NewL();
+
+ // Destructor.
+ virtual ~CUPnPAiwEnableExternalService();
+
+ public: // Methods from the CAiwServiceIfMenu
+
+ // Unnecessary method
+ void InitialiseL( MAiwNotifyCallback& /*aFrameworkCallback*/,
+ const RCriteriaArray& /*aInterest*/) {}
+
+ /**
+ * Executes generic service commands included in criteria.
+ * @param aCmdId Command to be executed
+ * @param aInParamList Input parameters, can be an empty list
+ * @param aOutParamList Output parameters, can be an empty list
+ * @param aCmdOptions Options for the command, see KAiwCmdOpt*
+ * constants.
+ * @param aCallback callback for asynchronous command handling,
+ * parameter checking, etc.
+ * @see enum TServiceCmdOptions in GENERICPARAM.HRH
+ * @exception KErrArgument if callback is missing when required.
+ * @exception KErrNotSupported if no provider support service
+ */
+ void HandleServiceCmdL( const TInt& aCmdId,
+ const CAiwGenericParamList& aInParamList,
+ CAiwGenericParamList& aOutParamList,
+ TUint aCmdOptions = 0,
+ const MAiwNotifyCallback* aCallback = NULL);
+
+ /**
+ * Initialises menu pane by adding provider specific menu items.
+ * The AIW Framework gives the parameters to be used in addition.
+ * @param aMenuPane Menu pane handle
+ * @param aIndex position of item where to add menu items.
+ * @param aCascadeId ID of cascade menu item.
+ * @param aInParamList input parameter list for provider's parameters
+ * checking
+ */
+ void InitializeMenuPaneL( CAiwMenuPane& aMenuPane,
+ TInt aIndex,
+ TInt aCascadeId,
+ const CAiwGenericParamList& aInParamList);
+
+ /**
+ * Handle a menu command invoked by the Handler.
+ * @param aMenuCmdId Command ID for the menu command,
+ * defined by the provider when adding the menu commands.
+ * @param aInParamList Input parameters, could be empty list
+ * @param aOutParamList Output parameters, could be empty list
+ * @param aCmdOptions Options for the command, see KAiwCmdOpt*
+ * constants.
+ * @param aCallback callback if asynchronous command handling is wanted
+ * by consumer. The provider may or may not support this, leaves
+ * with KErrNotSupported, it not.
+ */
+ void HandleMenuCmdL( TInt aMenuCmdId,
+ const CAiwGenericParamList& aInParamList,
+ CAiwGenericParamList& aOutParamList,
+ TUint aCmdOptions = 0,
+ const MAiwNotifyCallback* aCallback = NULL);
+
+ private: // construction
+
+ // Constructor
+ CUPnPAiwEnableExternalService();
+
+ // ConstructL
+ void ConstructL();
+
+ private: // Data members
+
+ // reference to the engine component
+ CUPnPAiwEngine* iEngine; // not owned (singleton pointer)
+
+ // reference to the client (call back reference)
+ MAiwNotifyCallback* iClient; // not owned
+
+ };
+
+#endif // _UPNP_AIW_ENABLE_EXTERNAL_SERVICE_H
+
+// End of file