---
title: IOCDBlockStorageDevice
framework: kernel
role: symbol
role_heading: Class
path: kernel/iocdblockstoragedevice
---

# IOCDBlockStorageDevice

The IOCDBlockStorageDevice class is a generic CD block storage device abstraction.

## Declaration

```occ
class IOCDBlockStorageDevice : IOBlockStorageDevice
```

## Overview

Overview This class is the protocol for generic CD functionality, independent of the physical connection protocol (e.g. SCSI, ATA, USB). The APIs are the union of CD (block storage) data APIs and all necessary low-level CD APIs. A subclass implements relay methods that translate our requests into calls to a protocol- and device-specific provider.

## Topics

### Instance Methods

- [doAsyncReadCD](kernel/iocdblockstoragedevice/1578555-doasyncreadcd.md)
- [getMediaType](kernel/iocdblockstoragedevice/1578556-getmediatype.md)
- [getMetaClass](kernel/iocdblockstoragedevice/1578565-getmetaclass.md)
- [getSpeed](kernel/iocdblockstoragedevice/1578567-getspeed.md)
- [init](kernel/iocdblockstoragedevice/1578562-init.md)
- [readDiscInfo](kernel/iocdblockstoragedevice/1578568-readdiscinfo.md)
- [readISRC](kernel/iocdblockstoragedevice/1578558-readisrc.md)
- [readMCN](kernel/iocdblockstoragedevice/1578557-readmcn.md)
- [readTOC](kernel/iocdblockstoragedevice/1578559-readtoc.md)
- [readTOC](kernel/iocdblockstoragedevice/3516774-readtoc.md)
- [readTrackInfo](kernel/iocdblockstoragedevice/1578560-readtrackinfo.md)
- [setSpeed](kernel/iocdblockstoragedevice/1578564-setspeed.md)

## Relationships

### Inherits From

- [IOBlockStorageDevice](kernel/ioblockstoragedevice.md)

## See Also

### Devices

- [IOBlockStorageServices](kernel/ioblockstorageservices.md)
- [IOBDServices](kernel/iobdservices.md)
- [IOBlockStorageDevice](kernel/ioblockstoragedevice.md)
