Public Member Functions | Static Public Member Functions | Friends

SdVolume Class Reference

Access FAT16 and FAT32 volumes on SD and SDHC cards. More...

#include <SdVolume.h>

Collaboration diagram for SdVolume:
Collaboration graph
[legend]

List of all members.

Public Member Functions

uint8_t blocksPerCluster () const
uint32_t blocksPerFat () const
cache_tcacheClear ()
uint32_t clusterCount () const
uint8_t clusterSizeShift () const
uint32_t dataStartBlock () const
uint8_t fatCount () const
uint32_t fatStartBlock () const
uint8_t fatType () const
bool init (Sd2Card *dev, uint8_t part)
bool init (Sd2Card *dev)
uint32_t rootDirEntryCount () const
uint32_t rootDirStart () const
 SdVolume ()

Static Public Member Functions

static Sd2CardsdCard ()

Friends

class SdFile

Detailed Description

Access FAT16 and FAT32 volumes on SD and SDHC cards.


Constructor & Destructor Documentation

SdVolume::SdVolume (  ) [inline]

Create an instance of SdVolume


Member Function Documentation

uint8_t SdVolume::blocksPerCluster (  ) const [inline]
Returns:
The volume's cluster size in blocks.
uint32_t SdVolume::blocksPerFat (  ) const [inline]
Returns:
The number of blocks in one FAT.
cache_t* SdVolume::cacheClear (  ) [inline]

Clear the cache and returns a pointer to the cache. Used by the WaveRP recorder to do raw write to the SD card. Not for normal apps.

Returns:
A pointer to the cache buffer.
uint32_t SdVolume::clusterCount (  ) const [inline]
Returns:
The total number of clusters in the volume.
uint8_t SdVolume::clusterSizeShift (  ) const [inline]
Returns:
The shift count required to multiply by blocksPerCluster.
uint32_t SdVolume::dataStartBlock (  ) const [inline]
Returns:
The logical block number for the start of file data.
uint8_t SdVolume::fatCount (  ) const [inline]
Returns:
The number of FAT structures on the volume.
uint32_t SdVolume::fatStartBlock (  ) const [inline]
Returns:
The logical block number for the start of the first FAT.
uint8_t SdVolume::fatType (  ) const [inline]
Returns:
The FAT type of the volume. Values are 12, 16 or 32.
bool SdVolume::init ( Sd2Card dev ) [inline]

Initialize a FAT volume. Try partition one first then try super floppy format.

Parameters:
[in]devThe Sd2Card where the volume is located.
Returns:
The value one, true, is returned for success and the value zero, false, is returned for failure. Reasons for failure include not finding a valid partition, not finding a valid FAT file system or an I/O error.
bool SdVolume::init ( Sd2Card dev,
uint8_t  part 
)

Initialize a FAT volume.

Parameters:
[in]devThe SD card where the volume is located.
[in]partThe partition to be used. Legal values for part are 1-4 to use the corresponding partition on a device formatted with a MBR, Master Boot Record, or zero if the device is formatted as a super floppy with the FAT boot sector in block zero.
Returns:
The value one, true, is returned for success and the value zero, false, is returned for failure. Reasons for failure include not finding a valid partition, not finding a valid FAT file system in the specified partition or an I/O error.
uint32_t SdVolume::rootDirEntryCount (  ) const [inline]
Returns:
The number of entries in the root directory for FAT16 volumes.
uint32_t SdVolume::rootDirStart (  ) const [inline]
Returns:
The logical block number for the start of the root directory on FAT16 volumes or the first cluster number on FAT32 volumes.
static Sd2Card* SdVolume::sdCard (  ) [inline, static]

Sd2Card object for this volume

Returns:
pointer to Sd2Card object.

The documentation for this class was generated from the following files: