# IHardDiskFormat Interface Reference

The IHardDiskFormat interface represents a virtual hard disk format. More...

List of all members.

## Public Member Functions
void | describeProperties (out wstring[] names, out wstring[] description, out DataType[] types, out unsigned long[] flags, out wstring[] defaults)
| Returns several arrays describing the properties supported by this format.
## Public Attributes
readonly attribute wstring | id
| Identifier of this format.
readonly attribute wstring | name
| Human readable description of this format.
readonly attribute wstring[] | fileExtensions
| Array of strings containing the supported file extensions.
readonly attribute unsigned long | capabilities
| Capabilities of the format as a set of bit flags.

## Detailed Description

The IHardDiskFormat interface represents a virtual hard disk format.

Each hard disk format has an associated backend which is used to handle hard disks stored in this format. This interface provides information about the properties of the associated backend.

Each hard disk format is identified by a string represented by the id attribute. This string is used in calls like IVirtualBox::createHardDisk to specify the desired format.

The list of all supported hard disk formats can be obtained using ISystemProperties::hardDiskFormats.

See also:
  IHardDisk

Interface ID:
  `{7F3BA790-3A0B-4A8A-BAC2-BB50150123C5}`

## Member Function Documentation

void IHardDiskFormat::describeProperties | ( | out wstring[] | names,
|  | out wstring[] | description,
|  | out DataType[] | types,
|  | out unsigned long[] | flags,
|  | out wstring[] | defaults |
| ) |  |  |

Returns several arrays describing the properties supported by this format.

An element with the given index in each array describes one property. Thus, the number of elements in each returned array is the same and corresponds to the number of supported properties.

The returned arrays are filled in only if the HardDiskFormatCapabilities_Properties flag is set. All arguments must be non-`null`.

Parameters:

  | names | Array of property names.
  | description | Array of property descriptions.
  | types | Array of property types.
  | flags | Array of property flags.
  | defaults | Array of default property values.

See also:
  DataType

  DataFlags

## Member Data Documentation

readonly attribute wstring IHardDiskFormat::id

Identifier of this format.

The format identifier is a non-`null` non-empty ASCII string. Note that this string is case-insensitive. This means that, for example, all of the following strings:

              "VDI"
              "vdi"
              "VdI"

refer to the same hard disk format.

This string is used in methods of other interfaces where it is necessary to specify a hard disk format, such as IVirtualBox::createHardDisk.

readonly attribute wstring IHardDiskFormat::name

Human readable description of this format.

Mainly for use in file open dialogs.

readonly attribute wstring [] IHardDiskFormat::fileExtensions

Array of strings containing the supported file extensions.

The first extension in the array is the extension preferred by the backend. It is recommended to use this extension when specifying a location of the storage unit for a new hard disk.

Note that some backends do not work on files, so this array may be empty.

See also:
  IHardDiskFormat::capabilities

readonly attribute unsigned long IHardDiskFormat::capabilities

Capabilities of the format as a set of bit flags.

For the meaning of individual capability flags see HardDiskFormatCapabilities.