Public Member Functions | Public Attributes

# IFile Interface Reference

Abstract parent interface for files handled by VirtualBox. More...

Inheritance diagram for IFile:

List of all members.

## Public Member Functions
void | close ()
| Closes this file.
void | queryInfo ([retval] out IFsObjInfo objInfo)
| Queries information about this file.
void | read (in unsigned long toRead, in unsigned long timeoutMS,[retval] out octet[] data)
| Reads data from this file.
void | readAt (in long long offset, in unsigned long toRead, in unsigned long timeoutMS,[retval] out octet[] data)
| Reads data from an offset of this file.
void | seek (in long long offset, in FileSeekType whence)
| Changes the read and write position of this file.
void | setACL (in wstring acl)
| Sets the ACL of this file.
void | write (in octet[] data, in unsigned long timeoutMS,[retval] out unsigned long written)
| Writes bytes to this file.
void | writeAt (in long long offset, in octet[] data, in unsigned long timeoutMS,[retval] out unsigned long written)
| Writes bytes at a certain offset to this file.
## Public Attributes
readonly attribute unsigned long | creationMode
| The creation mode.
readonly attribute unsigned long | disposition
| The disposition mode.
readonly attribute wstring | fileName
| Full path of the actual file name of this file.
readonly attribute long long | initialSize
| The initial size in bytes when opened.
readonly attribute unsigned long | openMode
| The open mode.
readonly attribute long long | offset
| Current read/write offset in bytes.

## Detailed Description

Abstract parent interface for files handled by VirtualBox.

Interface ID:
  `{B702A560-6139-4A8E-A892-BBF14B97BF97}`

## Member Function Documentation

void IFile::close | ( |  | ) |

Closes this file.

After closing operations like reading data, writing data or querying information will not be possible anymore.

void IFile::queryInfo | ( | [retval] out IFsObjInfo | objInfo | ) |

Queries information about this file.

Parameters:

  | objInfo | Object information of this file. Also see IFsObjInfo.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

void IFile::read | ( | in unsigned long | toRead,
|  | in unsigned long | timeoutMS,
|  | [retval] out octet[] | data |
| ) |  |  |

Reads data from this file.

Parameters:

  | toRead | Number of bytes to read.
  | timeoutMS | Timeout (in ms) to wait for the operation to complete. Pass 0 for an infinite timeout.
  | data | Array of data read.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

void IFile::readAt | ( | in long long | offset,
|  | in unsigned long | toRead,
|  | in unsigned long | timeoutMS,
|  | [retval] out octet[] | data |
| ) |  |  |

Reads data from an offset of this file.

Parameters:

  | offset | Offset in bytes to start reading.
  | toRead | Number of bytes to read.
  | timeoutMS | Timeout (in ms) to wait for the operation to complete. Pass 0 for an infinite timeout.
  | data | Array of data read.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

void IFile::seek | ( | in long long | offset,
|  | in FileSeekType | whence |
| ) |  |  |

Changes the read and write position of this file.

Parameters:

  | offset | Offset to seek.
  | whence | Seek mode; see FileSeekType for more information.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

void IFile::setACL | ( | in wstring | acl | ) |

Sets the ACL of this file.

Parameters:

  | acl | ACL string to set.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

void IFile::write | ( | in octet[] | data,
|  | in unsigned long | timeoutMS,
|  | [retval] out unsigned long | written |
| ) |  |  |

Writes bytes to this file.

Parameters:

  | data | Array of bytes to write. The size of the array also specifies how much to write.
  | timeoutMS | Timeout (in ms) to wait for the operation to complete. Pass 0 for an infinite timeout.
  | written | How much bytes were written.

void IFile::writeAt | ( | in long long | offset,
|  | in octet[] | data,
|  | in unsigned long | timeoutMS,
|  | [retval] out unsigned long | written |
| ) |  |  |

Writes bytes at a certain offset to this file.

Parameters:

  | offset | Offset in bytes to start writing.
  | data | Array of bytes to write. The size of the array also specifies how much to write.
  | timeoutMS | Timeout (in ms) to wait for the operation to complete. Pass 0 for an infinite timeout.
  | written | How much bytes were written.

Expected result codes:

  E_NOTIMPL | The method is not implemented yet.

## Member Data Documentation

readonly attribute unsigned long IFile::creationMode

The creation mode.

readonly attribute unsigned long IFile::disposition

The disposition mode.

readonly attribute wstring IFile::fileName

Full path of the actual file name of this file.

readonly attribute long long IFile::initialSize

The initial size in bytes when opened.

readonly attribute unsigned long IFile::openMode

The open mode.

readonly attribute long long IFile::offset

Current read/write offset in bytes.