diff -r 000000000000 -r 96612d01cf9f videofeeds/vcxnotifier/inc/vcxnotifier.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videofeeds/vcxnotifier/inc/vcxnotifier.h Mon Jan 18 20:21:12 2010 +0200 @@ -0,0 +1,178 @@ +/* +* Copyright (c) 2006 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: +* +*/ + + + +#ifndef CVCXNOTIFIER_H +#define CVCXNOTIFIER_H + +// INCLUDES + +#include + +#include +#include +#include +#include + +class CCoeEnv; +class CIptvResourceLoader; +class CAknWaitDialog; + +// CLASS DECLARATION +class CVcXNotifier : public CBase, + public MEikSrvNotifierBase2, + public MProgressDialogCallback + { + public: + + /** + * Creates instance of the CVcXNotifier class. + * + * @return Returns the MEikSrvNotifierBase2 instance just created. + */ + static MEikSrvNotifierBase2* NewL(); + + /** + * Destructor. + */ + virtual ~CVcXNotifier(); + + public: // from MEikSrvNotifierBase2 + + /** + * Notifier capabilities. + */ + TInt NotifierCapabilites(); + + /** + * Called when all resources allocated by notifiers should be freed. + */ + void Release(); + + /** + * From MEikSrvNotifierBase2 - method for registering the EikSrv plugin + * + * @return TNotifierInfo - struct containing the plugin priorities etc. + */ + TNotifierInfo RegisterL(); + + /** + * From MEikSrvNotifierBase2 - method for getting the notifier info + * + * @return TNotifierInfo - struct containing the plugin priorities etc. + */ + TNotifierInfo Info() const; + + /** + * From MEikSrvNotifierBase2 - method for starting the plugin. Synchronous version + * @param aBuffer - buffer containing the parameters for the plugin, packaged in TPckg + * @return TPtrC8 - return value to the client, this method will return KNullDesC + */ + TPtrC8 StartL(const TDesC8& aBuffer); + + /** + * From MEikSrvNotifierBase2 - method for starting the plugin. Asynchronous version. + * @param aBuffer - buffer containing parameters for the plugin, packaged in TPckg + * @param aReturnVal - return value of any type. Not used in this case. + * @param aMessage - RMessage to notify that the execution has ended + */ + void StartL(const TDesC8& aBuffer,TInt aReturnVal, const RMessagePtr2& aMessage); + + /** + * From MEikSrvNotifierBase2 - method for cancelling the plugin execution. + */ + void Cancel(); + + /** + * From MEikSrvNotifierBase2 - method for updating the plugin while execution is in progress + * @param aBuffer - buffer containing parameters for the plugin, packaged in TPckg + * @return not used, return KNullDesC + */ + TPtrC8 UpdateL(const TDesC8& /*aBuffer*/); + + private:// From MProgressDialogCallback + + /** + * Get's called when a dialog is dismissed. + */ + void DialogDismissedL( TInt aButtonId ); + + private: + + /** + * Displays a wait note + * + */ + void DisplayWaitNoteL(); + + /** + * closes a wait note + * + */ + void CloseWaitNote(); + + private: + + /** + * C++ default constructor. + */ + CVcXNotifier(); + + /** + * Check if our application is running. + */ + TBool IsOurApplication(); + + + /** + * Load resources. + */ + void LoadResourcesL(); + + + private: + + /** + * Notifier info. + */ + TNotifierInfo iInfo; + + /** + * Parameters. + */ + TVcxNotifierParams iParams; + + /** + * Resource loader. + */ + CIptvResourceLoader* iResourceLoader; + + /** + * Connection wait dialog + */ + CAknWaitDialog* iWaitDialog; + + /** + * MEssage object to be completed if user cancels dialog + */ + RMessagePtr2 iAsyncResp; + }; + +#endif // CVCXNOTIFIER_H + +// end of file