usbuis/usbuinotif/inc/usbuinotifmsmmerror.h
changeset 0 1e05558e2206
child 3 47c263f7e521
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usbuis/usbuinotif/inc/usbuinotifmsmmerror.h	Thu Dec 17 09:14:30 2009 +0200
@@ -0,0 +1,125 @@
+/*
+* Copyright (c) 2007, 2009 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:  Declares USB UI Queries notifier.
+ *
+*/
+
+
+#ifndef USBUINOTIFMSMMERROR_H
+#define USBUINOTIFMSMMERROR_H
+
+// INCLUDES
+
+#include "usbnotifier.h"      // Base class
+#include <aknquerydialog.h>   // AVKON component
+#define KUsbUiNotifOtgGeneralQueryGranularity 3
+// CLASS DECLARATION
+
+/**
+ *  This class is used to show general USB query.
+ *  Asynchronous call is required.
+ *
+ *  @lib
+ */
+NONSHARABLE_CLASS(CUsbUiNotifMSMMError) : public CUSBUINotifierBase
+    {
+public:
+
+/**
+ * Possible parameter values for KUsbUiNotifMSMMError
+ */
+enum TUsbUiNotifMSMMError
+    {
+    EUsbMSMMGeneralError,	
+    EUsbMSMMUnknownFileSystem,
+    EUsbMSMMOutOfMemory
+    };
+    // Constructors and destructor
+
+    /**
+     * Two-phased constructor.
+     */
+    static CUsbUiNotifMSMMError* NewL();
+
+    /**
+     * Destructor.
+     */
+    virtual ~CUsbUiNotifMSMMError();
+
+protected:
+
+    /**
+     * Second phase contructor
+     */
+    void ConstructL();
+
+private:
+    // Functions from base class
+
+    /**
+     * From CUSBUINotifierBase Called when a notifier is first loaded.        
+     * @param None.
+     * @return A structure containing priority and channel info.
+     */
+    TNotifierInfo RegisterL();
+
+    /**
+     * From CUSBUINotifierBase The notifier has been deactivated 
+     * so resources can be freed and outstanding messages completed.
+     */
+    void Cancel();
+
+    /**
+     * From CUSBUINotifierBase Gets called when a request completes.
+     */
+    void RunL();
+
+    /**
+     * From CUSBUINotifierBase Used in asynchronous notifier launch to 
+     * store received parameters into members variables and 
+     * make needed initializations.
+     * @param aBuffer A buffer containing received parameters
+     * @param aReplySlot A reply slot.
+     * @param aMessage Should be completed when the notifier is deactivated.
+     */
+    void GetParamsL(const TDesC8& aBuffer, TInt aReplySlot,
+            const RMessagePtr2& aMessage);
+
+private:
+
+    /**
+     *  C++ default constructor.
+     */
+    CUsbUiNotifMSMMError();
+
+private:
+    // New functions
+
+    /**
+     * Show query dialog     
+     * @return KErrNone - accepted, KErrCancel - Cancel or End call key
+     */
+    TInt QueryUserResponseL();
+
+private:
+    // Data
+    /**
+     *  Query
+     *  Not own, destroys self when lauched.
+     */
+    CAknQueryDialog* iQuery; 
+    RArray<TInt> iStringIds;
+    TInt iErrorId;
+    };
+#endif // USBUINOTIFMSMMERROR_H