diff -r 95243422089a -r 491b3ed49290 filesystemuis/memscaneng/serverinc/msengscannerbase.h --- a/filesystemuis/memscaneng/serverinc/msengscannerbase.h Thu Aug 19 09:42:45 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,159 +0,0 @@ -/* -* 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 "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: -* Base class for scanner classes. -* -* -*/ - - -#ifndef MSENGSCANNERBASE_H -#define MSENGSCANNERBASE_H - - - - -// USER INCLUDES -#include "mseng.hrh" -#include "msenginfoarray.h" -#include "msengscanobserver.h" - - - -// CONSTANTS -const TInt KDirectoryListGranularity = 10; - -// CLASS DECLARATION - -/** -* Base class for scanner classes. -* -*/ -class CMsengScannerBase : public CActive - { - public: // Constructors and destructor - - /** - * - */ - enum TStepResult - { - ECompleteRequest = 0, - ERequestIssuedInternally, - EScanComplete - }; - - /** - * C++ default constructor. - */ - CMsengScannerBase(MMsengScannerObserver& aObserver, - CMsengInfoArray& aInfoArray, RFs& aFsSession); - - /** - * Destructor. - */ - virtual ~CMsengScannerBase(); - - protected: // Internal functions - - /** - * Do one incremental scanning step - */ - virtual TStepResult PerformStepL() = 0; - - /** - * Complete this active object's request and set it active again - */ - void CompleteRequest(TInt aCode = KErrNone); - - /** - * Add new value in bytes to the amount of data found with this UID. - * @param aUid The UID type. - * @param aSize The size of the file with this UID. - */ - inline void AddSizeByUidL(TUidTypes aUid, TInt64 aSize); - - /** - * Add new value in bytes to the amount of data found with this UID. - * @param aUid The UID type. - * @param aSize The size of the file with this UID. - */ - inline void AddSizeByExtL(TExtTypes aExt, TInt64 aSize); - - /** - * Query if the directory is in the list of directories to be - * excluded from scanning, or is a subdirectory of one. - * @param aDirectory Path of the directory - */ - inline TBool IsExcludedDir(const TDesC& aDirectory); - - /** - * Query if the directory is in the list of directories to be - * excluded from scanning, or is a subdirectory of one. - * @param aDirectory Path of the directory - */ - inline TBool IsSpecialDir(const TDesC& aDirectory); - - /** - * Access the file server session - */ - inline RFs& FsSession(); - - /** - * Access the information array - */ - inline CMsengInfoArray& InfoArray(); - - /** - * Access the observer of this scanner - */ - inline MMsengScannerObserver& ScannerObserver(); - - private: // from CActive - - /** - * - */ - virtual void RunL(); - - /** - * - */ - virtual void DoCancel(); - - /** - * - */ - virtual TInt RunError(TInt aError); - - private: - - // Prohibit copy constructor if not deriving from CBase. - CMsengScannerBase( const CMsengScannerBase& ); - // Prohibit assigment operator if not deriving from CBase. - CMsengScannerBase& operator= ( const CMsengScannerBase& ); - - - private: - - MMsengScannerObserver& iObserver; - CMsengInfoArray& iInfoArray; - RFs& iFsSession; - }; - -#include "msengscannerbase.inl" - -#endif // CMSENGSCANNERBASE_H - -// End of File