76 |
76 |
77 inline TUint FAT_SectorSzLog2() const; |
77 inline TUint FAT_SectorSzLog2() const; |
78 inline TUint FAT_SectorSz() const; |
78 inline TUint FAT_SectorSz() const; |
79 inline TUint FAT_ClusterSzLog2() const; |
79 inline TUint FAT_ClusterSzLog2() const; |
80 |
80 |
|
81 inline TUint32 MaxFatEntries() const; |
|
82 inline TBool FatIndexValid(TUint32 aIndex) const; |
|
83 |
|
84 |
81 protected: |
85 protected: |
82 |
86 |
83 enum {KInvalidFatNo = 0xFF}; ///< used to invalidate current FAT no. |
87 enum {KInvalidFatNo = 0xFF}; ///< used to invalidate current FAT no. |
84 TUint iCurrentFatNo; ///< current FAT number WriteFatData will write to. |
88 TUint iCurrentFatNo; ///< current FAT number WriteFatData will write to. |
85 |
89 |
86 private: |
90 private: |
87 //-- values cached from owning mount. |
91 //-- values cached from owning mount. |
88 TUint32 iFatStartPos; ///< media position of FAT1 start |
92 TUint32 iFatStartPos; ///< media position of FAT1 start |
89 TUint32 iFatSize; ///< size of FAT in bytes |
93 TUint32 iFatSize; ///< size of FAT in bytes |
|
94 TUint32 iMaxFatEntries; ///< maximal number of FAT entries in FAT table, FAT[0] & FAT [1] included |
90 TUint16 iNumFATs; ///< number of FATs on the volume |
95 TUint16 iNumFATs; ///< number of FATs on the volume |
91 TUint16 iFatSecSzLog2; ///< Log2(FAT Sector size) |
96 TUint16 iFatSecSzLog2; ///< Log2(FAT Sector size) |
92 TUint16 iFatClustSzLog2;///< Log2(FAT cluster size) |
97 TUint16 iFatClustSzLog2;///< Log2(FAT cluster size) |
93 TFatType iFatType; ///< FAT type |
98 TFatType iFatType; ///< FAT type |
94 TDriveInterface* ipDrive;///< interface to the media driver |
99 TDriveInterface* ipDrive;///< interface to the media driver |