44 { |
44 { |
45 public: |
45 public: |
46 IMPORT_C static CMTPFSEnumerator* NewL(MMTPDataProviderFramework& aFramework, CMTPFSExclusionMgr& aExclusionMgr, MMTPEnumerationCallback& aCallback, TInt aProcessLimit); |
46 IMPORT_C static CMTPFSEnumerator* NewL(MMTPDataProviderFramework& aFramework, CMTPFSExclusionMgr& aExclusionMgr, MMTPEnumerationCallback& aCallback, TInt aProcessLimit); |
47 IMPORT_C ~CMTPFSEnumerator(); |
47 IMPORT_C ~CMTPFSEnumerator(); |
48 |
48 |
49 IMPORT_C void StartL(TUint32 aStorageId); |
49 IMPORT_C void StartL(TUint32 aStorageId, TBool aOnlyRoot = EFalse); |
50 |
50 |
51 private: |
51 private: |
52 //from CActive |
52 //from CActive |
53 void DoCancel(); |
53 void DoCancel(); |
54 void RunL(); |
54 void RunL(); |
62 void ScanStorageL(TUint32 aStorageId); |
62 void ScanStorageL(TUint32 aStorageId); |
63 void ScanNextL(); |
63 void ScanNextL(); |
64 void ScanNextStorageL(); |
64 void ScanNextStorageL(); |
65 void ScanNextSubdirL(); |
65 void ScanNextSubdirL(); |
66 void ProcessEntriesL(); |
66 void ProcessEntriesL(); |
67 void AddEntryL(const TDesC& aPath, TUint32 &aHandle, TMTPFormatCode format, TUint32 aDPId, const TEntry& aEntry); |
67 void AddEntryL(const TDesC& aPath, TUint32 &aHandle, TMTPFormatCode format, TUint32 aDPId, const TEntry& aEntry, TUint32 aStorageId, TUint32 aParentHandle); |
68 void AddFileEntryForOtherDpL(const TDesC& aPath, TUint32 &aHandle, TMTPFormatCode format, TUint32 aDPId, const TEntry& aEntry); |
68 void AddFileEntryForOtherDpL(const TDesC& aPath, TUint32 &aHandle, TMTPFormatCode format, TUint32 aDPId, const TEntry& aEntry, TUint32 aStorageId, TUint32 aParentHandle); |
69 void NotifyObjectAddToDP(const TUint32 aHandle,const TUint DpId); |
69 void NotifyObjectAddToDP(const TUint32 aHandle,const TUint DpId); |
|
70 |
70 |
71 |
71 private: |
72 private: |
72 // Owned |
73 // Owned |
73 MMTPDataProviderFramework& iFramework; |
74 MMTPDataProviderFramework& iFramework; |
74 CMTPFSExclusionMgr& iExclusionMgr; |
75 CMTPFSExclusionMgr& iExclusionMgr; |
86 TInt iProcessLimit; |
87 TInt iProcessLimit; |
87 CMTPObjectMetaData* iObject; |
88 CMTPObjectMetaData* iObject; |
88 TUint iDpID; |
89 TUint iDpID; |
89 RMTPFramework iSingletons; |
90 RMTPFramework iSingletons; |
90 TBool iSkipCurrentStorage; |
91 TBool iSkipCurrentStorage; |
|
92 |
|
93 TBool iIsFileEnumerator; |
|
94 TBool iOnlyScanRoot; |
|
95 TInt iNumOfFoldersAndFiles; |
91 /** |
96 /** |
92 FLOGGER debug trace member variable. |
97 FLOGGER debug trace member variable. |
93 */ |
98 */ |
94 __FLOG_DECLARATION_MEMBER_MUTABLE; |
99 __FLOG_DECLARATION_MEMBER_MUTABLE; |
95 |
100 |