# SdFat: BlockDeviceInterface Class Reference

BlockDeviceInterface Class Referenceabstract

BlockDeviceInterface class. More...

`#include <BlockDeviceInterface.h>`

Inheritance diagram for BlockDeviceInterface:
[legend]

## Public Member Functions

virtual bool | readSector (uint32_t sector, uint8_t *dst)=0
virtual bool | readSectors (uint32_t sector, uint8_t *dst, size_t ns)=0
virtual uint32_t | sectorCount ()=0
virtual bool | syncDevice ()=0
virtual bool | writeSector (uint32_t sector, const uint8_t *src)=0
virtual bool | writeSectors (uint32_t sector, const uint8_t *src, size_t ns)=0

## Detailed Description

BlockDeviceInterface class.

## Member Function Documentation

## readSector()

virtual bool BlockDeviceInterface::readSector | ( | uint32_t | sector,
|  | uint8_t * | dst
| ) |  |

pure virtual

Read a 512 byte sector.

Parameters

  [in] | sector | Logical sector to be read.
  [out] | dst | Pointer to the location that will receive the data.

Returns
  true for success or false for failure.

Implemented in SdioCard.

## readSectors()

virtual bool BlockDeviceInterface::readSectors | ( | uint32_t | sector,
|  | uint8_t * | dst,
|  | size_t | ns
| ) |  |

pure virtual

Read multiple 512 byte sectors.

Parameters

  [in] | sector | Logical sector to be read.
  [in] | ns | Number of sectors to be read.
  [out] | dst | Pointer to the location that will receive the data.

Returns
  true for success or false for failure.

Implemented in SdioCard.

## sectorCount()

virtual uint32_t BlockDeviceInterface::sectorCount | ( |  | ) |

pure virtual

Returns
  device size in sectors.

Implemented in SdCardInterface, and SdioCard.

## syncDevice()

virtual bool BlockDeviceInterface::syncDevice | ( |  | ) |

pure virtual

End multi-sector transfer and go to idle state.

Returns
  true for success or false for failure.

Implemented in SdioCard.

## writeSector()

virtual bool BlockDeviceInterface::writeSector | ( | uint32_t | sector,
|  | const uint8_t * | src
| ) |  |

pure virtual

Writes a 512 byte sector.

Parameters

  [in] | sector | Logical sector to be written.
  [in] | src | Pointer to the location of the data to be written.

Returns
  true for success or false for failure.

Implemented in SdioCard.

## writeSectors()

virtual bool BlockDeviceInterface::writeSectors | ( | uint32_t | sector,
|  | const uint8_t * | src,
|  | size_t | ns
| ) |  |

pure virtual

Write multiple 512 byte sectors.

Parameters

  [in] | sector | Logical sector to be written.
  [in] | ns | Number of sectors to be written.
  [in] | src | Pointer to the location of the data to be written.

Returns
  true for success or false for failure.

Implemented in SdioCard.

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

- ArduinoSdFat/libraries/SdFat/src/common/BlockDeviceInterface.h