--- a/launcher/engine/inc/launcherengine.h Mon Oct 04 10:09:02 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,274 +0,0 @@
-/*
-* Copyright (c) 2010 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:
-*
-*/
-
-#ifndef LAUNCHERENGINE_H
-#define LAUNCHERENGINE_H
-
-#include <e32base.h>
-#include <apgcli.h>
-#include <w32std.h>
-#include <e32std.h>
-#include <e32hal.h>
-
-#include "launcherparserobserver.h"
-
-// CONSTANTS
-// None
-
-// MACROS
-// None
-
-// DATA TYPES
-// None
-
-// FUNCTION PROTOTYPES
-// None
-
-// FORWARD DECLARATIONS
-class CEikonEnv;
-class CAppThreadChecker;
-class CAppRunningChecker;
-class CLauncherXMLParser;
-class CLauncherDLLParser;
-
-
-// INFERFACE FOR COMMUNICATION WITH UI
-
-class MLauncherUI
-{
-public:
- /**
- * Method for writing text to output window.
- * @param aText A text to be written.
- * @return None.
- */
- virtual void PrintText(const TDesC& aText) = 0;
-
- /**
- * Shows info message with text
- * @param aText An text to be shown in message.
- * @return None.
- */
- virtual void ShowInfoMessage(const TDesC& aText) = 0;
-
- /**
- * Shows error message with error text
- * @param aText An error text to be shown in message.
- * @return None.
- */
- virtual void ShowErrorMessage(const TDesC& aText) = 0;
-
- /**
- * Shows progress bar with text
- * @param aText A text to be shown at top of the progress bar.
- * @param aMinimum A minimum progress bar value.
- * @param aMaximum A maximum progress bar value.
- * @return None.
- */
- virtual void ShowProgressBar(const TDesC& aText, TInt aMinimum, TInt aMaximum ) = 0;
-
- /**
- * Sets progress bar value
- * @param aValue A value between min and max value of the progress bar range
- * @return None.
- */
- virtual void SetProgressBarValue(TInt aValue) = 0;
-
- /**
- * Hides progress bar
- * @return None.
- */
- virtual void HideProgressBar() = 0;
-
- /**
- * Shows wait dialog with text
- * @param aText A text to be shown at top of the wait bar.
- * @return None.
- */
- virtual void ShowWaitDialog(const TDesC& aText) = 0;
-
- /**
- * Hides wait dialog
- * @return None.
- */
- virtual void HideWaitDialog() = 0;
-
- /**
- * Changes focus to output view
- * @return None.
- */
- virtual void ChangeFocusToOutputView() = 0;
-
-};
-
-// CLASS DECLARATION
-
-class CLauncherEngine: public CActive, public MLauncherParserObserver
-{
-
-public:
- static CLauncherEngine* NewL(MLauncherUI *aLauncherUI);
- ~CLauncherEngine();
- CDesCArray* ListOfAllAppsL();
- void StartAppLaunchingL(const CArrayFix<TInt>* aSelectedApps, TBool aAutoClose);
- void CheckIfAppIsRunningL();
- void CheckWhyThreadDiedL();
- void StopLaunchingL();
- TBool LogFileExists();
- TBool BCLogFileExists();
-
- TInt DeleteLogFile();
- TInt DeleteBCLogFile();
-
- void AnalyseDLLsL( const TDesC& aFileName );
-
- void ElementParsedL(const CLauncherDLLElement& aDllElement);
- void DocumentParsedL(TInt aErrorCode);
- void ParsingProgressedL(TInt aBytes);
- TInt ReadLineFromFileL(RFile& aFile, TDes& aReadBuf);
-
- const TDesC& RequiredDllsFilePath() const { return iRequiredDllsFilePath; };
-
- void CancelBCAnalysis();
-
-private:
- CLauncherEngine();
- void ConstructL(MLauncherUI *aLauncherUI);
-
- void RunL();
- void DoCancel();
-
- TInt FindFiles(const TDesC& aFileName, const TDesC& aPath);
- void IssueLaunch();
- void WriteInitialStuffToTheLogL(const TDesC& aOwnData, RFile& aFile);
- void CheckForMoreAppsL();
- void LaunchApplicationL();
- void DoLaunchApplicationL();
- CDesCArray* DependencyCheckForE32ImageL();
-
- /**
- * Performs binary compatibility analysis based on reference data given
- * in XML-file.
- */
- void DoBCAnalysisL();
-
- /**
- * Compares given DLL list to system DLLs
- */
- void DoCompareDLLListsL();
-
-private:
-
- MLauncherUI *iLauncherUI;
-
- RTimer iTimer;
- CEikonEnv* iEnv;
- RApaLsSession iLs;
- RWsSession iWs;
- HBufC8* iLogWriteBuf;
- RFile iLogFile;
- RFile iBCLogFile;
- TFileName iLogFilePath;
- TFileName iBCLogFilePath;
- TFileName iSystemDllsFilePath;
- TFileName iRequiredDllsFilePath;
-
- CDesCArray* iAppsArray;
- CDesCArray* iAllAppsArray;
- CDesCArray* iSystemDllArray;
-// CDesCArray* iRequiredDllArray;
-
- TBool iLaunchingIsActive;
- TBool iDLLAnalysisIsActive;
- TBool iSkipHiddenAndEmbedOnly;
- TBool iAutoClose;
- TInt iAppLaunchCounter;
- TInt iFailedCases;
- TInt iOkCases;
- TInt iSkippedCases;
- TInt iTotalNumberOfCases;
-
- TUid iCurrentAppUid;
- TThreadId iCurrentAppThreadId;
- TBuf<128> iCurrentAppNameAndExt;
- RThread iCurrentAppThread;
-//
- CAppThreadChecker* iAppThreadChecker;
- CAppRunningChecker* iAppRunningChecker;
-
- CLauncherXMLParser* iXMLParser;
- CLauncherDLLParser* iDLLParser;
- CLauncherDLLElement* iDLLElement;
-
- TInt iFoundBCIssues;
- HBufC* iBCIssuesBigBuffer;
-
-
-public:
- inline TBool SkipHiddenAndEmbedOnly() { return iSkipHiddenAndEmbedOnly; };
- inline void SetSkipHiddenAndEmbedOnly(TBool aSkip) { iSkipHiddenAndEmbedOnly = aSkip; };
- inline const TDesC& LogFilePath() { return iLogFilePath; }
- inline const TDesC& BCLogFilePath() { return iBCLogFilePath; }
- inline const TDesC& SystemDllsFilePath() { return iSystemDllsFilePath; }
-};
-
-
-
-class CAppRunningChecker : public CActive
- {
-public:
- static CAppRunningChecker* NewL(CLauncherEngine* aLauncherEngine);
- ~CAppRunningChecker();
-
- void StartTesting();
-
-private:
- CAppRunningChecker();
- void ConstructL(CLauncherEngine* aLauncherEngine);
-
- void RunL();
- void DoCancel();
-
-private:
- RTimer iTimer;
- CEikonEnv* iEnv;
- CLauncherEngine* iLauncherEngine;
- };
-
-class CAppThreadChecker : public CActive
- {
-public:
- static CAppThreadChecker* NewL(CLauncherEngine* aLauncherEngine);
- ~CAppThreadChecker();
-
- void ActivateChecking();
- void CheckIfAppIsRunningL();
-
-private:
- CAppThreadChecker();
- void ConstructL(CLauncherEngine* aLauncherEngine);
-
- void RunL();
- void DoCancel();
-
-private:
- CEikonEnv* iEnv;
- CLauncherEngine* iLauncherEngine;
- };
-
-
-#endif //LAUNCHERENGINE_H