userlibandfileserver/fileserver/sfat32/inc/sl_bpb.h
branchRCL_3
changeset 87 2f92ad2dc5db
parent 0 a41df078684a
equal deleted inserted replaced
81:e7d2d738d3c2 87:2f92ad2dc5db
    28 
    28 
    29 
    29 
    30 const TInt KVolumeLabelSize			=11;    ///< Volume lable size
    30 const TInt KVolumeLabelSize			=11;    ///< Volume lable size
    31 const TInt KFileSysTypeSize			=8;     ///< File system type parameter size
    31 const TInt KFileSysTypeSize			=8;     ///< File system type parameter size
    32 const TInt KVendorIdSize			=8;     ///< Vendor ID parameter size
    32 const TInt KVendorIdSize			=8;     ///< Vendor ID parameter size
    33 const TInt KBootSectorSignature		=0xAA55;///< File system Boot sector signiture
    33 const TUint16 KBootSectorSignature	=0xAA55;///< File system Boot sector signiture
    34 const TInt KFat16VolumeLabelPos 	=43;    ///< Position of volume lable in BPB for Fat12/16
    34 const TInt KFat16VolumeLabelPos 	=43;    ///< Position of volume lable in BPB for Fat12/16
    35 const TInt KFat32VolumeLabelPos		=71;    ///< Position of volume lable in BPB for Fat32
    35 const TInt KFat32VolumeLabelPos		=71;    ///< Position of volume lable in BPB for Fat32
    36 const TInt KSizeOfFatBootSector     = 90;   ///< Size in bytes of Boot sector parameter block (BPB) 
    36 const TInt KSizeOfFatBootSector     = 90;   ///< Size in bytes of Boot sector parameter block (BPB) 
    37 
    37 
    38 const TUint32 KBootSectorNum        =0;     ///< Main Boot Sector number (always 0)
    38 const TUint32 KBootSectorNum        =0;     ///< Main Boot Sector number (always 0)
    55 	{
    55 	{
    56 public:
    56 public:
    57 	//-- simple getters / setters
    57 	//-- simple getters / setters
    58     inline const TPtrC8 VendorId() const;
    58     inline const TPtrC8 VendorId() const;
    59 	inline TUint16 BytesPerSector() const;
    59 	inline TUint16 BytesPerSector() const;
    60 	inline TInt SectorsPerCluster() const;
    60 	inline TUint8 SectorsPerCluster() const;
    61 	inline TInt ReservedSectors() const;
    61 	inline TUint16 ReservedSectors() const;
    62 	inline TInt NumberOfFats() const;
    62 	inline TUint8 NumberOfFats() const;
    63 	inline TInt RootDirEntries() const;
    63 	inline TUint16 RootDirEntries() const;
    64 	inline TInt TotalSectors() const;
    64 	inline TUint16 TotalSectors() const;
    65 	inline TUint8 MediaDescriptor() const;
    65 	inline TUint8 MediaDescriptor() const;
    66 	inline TInt FatSectors() const;
    66 	inline TUint16 FatSectors() const;
    67 	inline TInt SectorsPerTrack() const;
    67 	inline TUint16 SectorsPerTrack() const;
    68 	inline TInt NumberOfHeads() const;
    68 	inline TUint16 NumberOfHeads() const;
    69 	inline TInt HiddenSectors() const;
    69 	inline TUint32 HiddenSectors() const;
    70 	inline TInt HugeSectors() const;
    70 	inline TUint32 HugeSectors() const;
    71 	inline TInt PhysicalDriveNumber() const;
    71 	inline TUint8 PhysicalDriveNumber() const;
    72 	inline TInt ExtendedBootSignature() const;
    72 	inline TUint8 ExtendedBootSignature() const;
    73 	inline TUint32 UniqueID() const;
    73 	inline TUint32 UniqueID() const;
    74 	inline const TPtrC8 VolumeLabel() const;
    74 	inline const TPtrC8 VolumeLabel() const;
    75 	inline const TPtrC8 FileSysType() const;
    75 	inline const TPtrC8 FileSysType() const;
    76 	inline TInt BootSectorSignature() const;
    76 	inline TUint16 BootSectorSignature() const;
    77 	inline TUint32 FatSectors32() const;	
    77 	inline TUint32 FatSectors32() const;	
    78 	inline TUint16 FATFlags() const;		
    78 	inline TUint16 FATFlags() const;		
    79 	inline TUint16 VersionNumber() const;		
    79 	inline TUint16 VersionNumber() const;		
    80 	inline TUint32 RootClusterNum() const;	
    80 	inline TUint32 RootClusterNum() const;	
    81 	inline TUint16 FSInfoSectorNum() const;
    81 	inline TUint16 FSInfoSectorNum() const;
    82 	inline TUint16 BkBootRecSector() const;
    82 	inline TUint16 BkBootRecSector() const;
    83 
    83 
    84 	inline void SetJumpInstruction();
    84 	inline void SetJumpInstruction();
    85 	inline void SetVendorID(const TDesC8& aDes);
    85 	inline void SetVendorID(const TDesC8& aDes);
    86 	inline void SetBytesPerSector(TInt aBytesPerSector);
    86 	inline void SetBytesPerSector(TUint16 aBytesPerSector);
    87 	inline void SetSectorsPerCluster(TInt aSectorsPerCluster);
    87 	inline void SetSectorsPerCluster(TUint aSectorsPerCluster);
    88 	inline void SetReservedSectors(TInt aReservedSectors);
    88 	inline void SetReservedSectors(TUint aReservedSectors);
    89 	inline void SetNumberOfFats(TInt aNumberOfFats);
    89 	inline void SetNumberOfFats(TUint8 aNumberOfFats);
    90 	inline void SetRootDirEntries(TInt aRootDirEntries);
    90 	inline void SetRootDirEntries(TUint16 aRootDirEntries);
    91 	inline void SetTotalSectors(TInt aTotalSectors);
    91 	inline void SetTotalSectors(TUint aTotalSectors);
    92 	inline void SetMediaDescriptor(TUint8 aMediaDescriptor);
    92 	inline void SetMediaDescriptor(TUint8 aMediaDescriptor);
    93 	inline void SetFatSectors(TInt aFatSectors);
    93 	inline void SetFatSectors(TUint aFatSectors);
    94 	inline void SetSectorsPerTrack(TInt aSectorsPerTrack);
    94 	inline void SetSectorsPerTrack(TUint16 aSectorsPerTrack);
    95 	inline void SetNumberOfHeads(TInt aNumberOfHeads);
    95 	inline void SetNumberOfHeads(TUint16 aNumberOfHeads);
    96 	inline void SetHiddenSectors(TUint32 aHiddenSectors);
    96 	inline void SetHiddenSectors(TUint32 aHiddenSectors);
    97 	inline void SetHugeSectors(TUint32 aTotalSectors);
    97 	inline void SetHugeSectors(TUint32 aTotalSectors);
    98 	inline void SetPhysicalDriveNumber(TInt aPhysicalDriveNumber);
    98 	inline void SetPhysicalDriveNumber(TInt aPhysicalDriveNumber);
    99 	inline void SetReservedByte(TUint8 aReservedByte);
    99 	inline void SetReservedByte(TUint8 aReservedByte);
   100 	inline void SetExtendedBootSignature(TInt anExtendedBootSignature);
   100 	inline void SetExtendedBootSignature(TUint8 anExtendedBootSignature);
   101 	inline void SetUniqueID(TUint32 anUniqueID);
   101 	inline void SetUniqueID(TUint32 anUniqueID);
   102 	inline void SetVolumeLabel(const TDesC8& aDes);
   102 	inline void SetVolumeLabel(const TDesC8& aDes);
   103 	inline void SetFileSysType(const TDesC8& aDes);
   103 	inline void SetFileSysType(const TDesC8& aDes);
   104 	inline void SetFatSectors32(TUint32	aFatSectors32);	
   104 	inline void SetFatSectors32(TUint32	aFatSectors32);	
   105 	inline void SetFATFlags(TUint16 aFATFlags);		
   105 	inline void SetFATFlags(TUint16 aFATFlags);