80 ENoErrors = 0, ///< 0 no errors discovered |
80 ENoErrors = 0, ///< 0 no errors discovered |
81 EBadClusterNumber, ///< 1 cluster number that doesn't correspond to the max. amount of clusters on the volume |
81 EBadClusterNumber, ///< 1 cluster number that doesn't correspond to the max. amount of clusters on the volume |
82 EClusterAlreadyInUse, ///< 2 cross-linked cluster chain |
82 EClusterAlreadyInUse, ///< 2 cross-linked cluster chain |
83 EBadClusterValue, ///< 3 also means "lost cluster" |
83 EBadClusterValue, ///< 3 also means "lost cluster" |
84 EInvalidEntrySize, ///< 4 size of file/directory does not correspond to the cluster chain length |
84 EInvalidEntrySize, ///< 4 size of file/directory does not correspond to the cluster chain length |
|
85 EEntrySetIncomplete, ///< 5 incomplete VFAT entryset |
|
86 EEntryBadAtt, ///< 6 incorrect entry attributes |
|
87 |
85 |
88 |
86 EUnknownError = 95, ///< unknown error |
89 EUnknownError = 95, ///< unknown error |
87 |
90 |
88 EScanDriveDirError=100 ///< 100 ScanDrive error |
91 EScanDriveDirError=100 ///< 100 ScanDrive error |
89 }; |
92 }; |
114 TBool IsClusterUsedL(TUint aCluster); |
117 TBool IsClusterUsedL(TUint aCluster); |
115 void MarkClusterUsedL(TUint aCluster); |
118 void MarkClusterUsedL(TUint aCluster); |
116 |
119 |
117 TUint32 ReadFatL(TUint aClusterNum) ; |
120 TUint32 ReadFatL(TUint aClusterNum) ; |
118 void FindSameStartClusterL(); |
121 void FindSameStartClusterL(); |
119 TInt FindStartClusterL(TInt aDirCluster); |
122 TInt FindStartClusterL(TUint32 aDirCluster); |
120 void CheckDirStructureL(); |
123 void CheckDirStructureL(); |
121 void CheckDirL(TUint32 aCluster); |
124 void CheckDirL(TUint32 aCluster); |
122 void ProcessEntryL(const TFatDirEntry& aEntry); |
125 void ProcessEntryL(const TFatDirEntry& aEntry); |
123 TInt CheckEntryClusterL(const TFatDirEntry& aEntry, const TEntryPos& aEntryPos); |
126 TInt CheckEntryClusterL(const TFatDirEntry& aEntry, const TEntryPos& aEntryPos); |
124 void RecordClusterChainL(TInt aCluster,TUint aSizeInBytes); |
127 void RecordClusterChainL(TUint32 aCluster,TUint aSizeInBytes); |
125 TBool MoveToVFatEndL(TEntryPos& aPos,TFatDirEntry& aEntry,TInt& aDirLength); |
128 TBool MoveToVFatEndL(TEntryPos& aPos,TFatDirEntry& aEntry,TInt& aDirLength); |
126 TBool IsValidVFatEntry(const TFatDirEntry& aEntry,TInt prevNum)const; |
129 TBool IsValidVFatEntry(const TFatDirEntry& aEntry,TInt prevNum)const; |
127 TBool IsDosEntry(const TFatDirEntry& aEntry)const; |
130 TBool IsDosEntry(const TFatDirEntry& aEntry)const; |
128 void AddPartialVFatL(const TEntryPos& aStartPos, const TFatDirEntry& aEntry); |
131 void AddPartialVFatL(const TEntryPos& aStartPos, const TFatDirEntry& aEntry); |
129 TBool AddMatchingEntryL(const TEntryPos& aEntryPos); |
132 TBool AddMatchingEntryL(const TEntryPos& aEntryPos); |