---
title: VZUSBMassStorageDevice
framework: virtualization
role: symbol
role_heading: Class
path: virtualization/vzusbmassstoragedevice
---

# VZUSBMassStorageDevice

A class that represents a hot-pluggable USB mass storage device.

## Declaration

```swift
class VZUSBMassStorageDevice
```

## Overview

Overview Create this device either by instantiating it directly and passing VZUSBMassStorageDeviceConfiguration to its initializer, or instantiating a VZUSBMassStorageDeviceConfiguration in a VZVirtualMachineConfiguration. Direct instantiation creates an object that you can pass to attach(device:completionHandler:). Instantiation through VZUSBMassStorageDeviceConfiguration makes the device available in the usbDevices property.

## Topics

### Creating a USB mass storage device

- [init(configuration:)](virtualization/vzusbmassstoragedevice/init(configuration:).md)

## Relationships

### Inherits From

- [VZStorageDevice](virtualization/vzstoragedevice.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [VZUSBDevice](virtualization/vzusbdevice.md)

## See Also

### Related Documentation

- [VZUSBController](virtualization/vzusbcontroller.md)

### Storage Devices

- [VZUSBPassthroughDevice](virtualization/vzusbpassthroughdevice.md)
