Public Member Functions | |
void | getPID ([retval] out unsigned long pid) |
PID of the process that has created this Session object. | |
void | getRemoteConsole ([retval] out IConsole console) |
Returns the console object suitable for remote control. | |
void | assignMachine (in IMachine machine, in LockType lockType) |
Assigns the machine object associated with this direct-type session or informs the session that it will be a remote one (if machine == null ). | |
void | assignRemoteMachine (in IMachine machine, in IConsole console) |
Assigns the machine and the (remote) console object associated with this remote-type session. | |
void | updateMachineState (in MachineState aMachineState) |
Updates the machine state in the VM process. | |
void | uninitialize () |
Uninitializes (closes) this session. | |
void | onNetworkAdapterChange (in INetworkAdapter networkAdapter, in boolean changeAdapter) |
Triggered when settings of a network adapter of the associated virtual machine have changed. | |
void | onSerialPortChange (in ISerialPort serialPort) |
Triggered when settings of a serial port of the associated virtual machine have changed. | |
void | onParallelPortChange (in IParallelPort parallelPort) |
Triggered when settings of a parallel port of the associated virtual machine have changed. | |
void | onStorageControllerChange () |
Triggered when settings of a storage controller of the associated virtual machine have changed. | |
void | onMediumChange (in IMediumAttachment mediumAttachment, in boolean force) |
Triggered when attached media of the associated virtual machine have changed. | |
void | onStorageDeviceChange (in IMediumAttachment mediumAttachment, in boolean remove, in boolean silent) |
Triggered when attached storage devices of the associated virtual machine have changed. | |
void | onClipboardModeChange (in ClipboardMode clipboardMode) |
Notification when the shared clipboard mode changes. | |
void | onDragAndDropModeChange (in DragAndDropMode dragAndDropMode) |
Notification when the drag'n'drop mode changes. | |
void | onCPUChange (in unsigned long cpu, in boolean add) |
Notification when a CPU changes. | |
void | onCPUExecutionCapChange (in unsigned long executionCap) |
Notification when the CPU execution cap changes. | |
void | onVRDEServerChange (in boolean restart) |
Triggered when settings of the VRDE server object of the associated virtual machine have changed. | |
void | onUSBControllerChange () |
Triggered when settings of the USB controller object of the associated virtual machine have changed. | |
void | onSharedFolderChange (in boolean global) |
Triggered when a permanent (global or machine) shared folder has been created or removed. | |
void | onUSBDeviceAttach (in IUSBDevice device, in IVirtualBoxErrorInfo error, in unsigned long maskedInterfaces) |
Triggered when a request to capture a USB device (as a result of matched USB filters or direct call to IConsole::attachUSBDevice) has completed. | |
void | onUSBDeviceDetach (in wstringUUID id, in IVirtualBoxErrorInfo error) |
Triggered when a request to release the USB device (as a result of machine termination or direct call to IConsole::detachUSBDevice) has completed. | |
void | onShowWindow (in boolean check, out boolean canShow, out long long winId) |
Called by IMachine::canShowConsoleWindow and by IMachine::showConsoleWindow in order to notify console listeners ICanShowWindowEvent and IShowWindowEvent. | |
void | onBandwidthGroupChange (in IBandwidthGroup bandwidthGroup) |
Notification when one of the bandwidth groups change. | |
void | accessGuestProperty (in wstring name, in wstring value, in wstring flags, in boolean isSetter, out wstring retValue, out long long retTimestamp, out wstring retFlags) |
Called by IMachine::getGuestProperty and by IMachine::setGuestProperty in order to read and modify guest properties. | |
void | enumerateGuestProperties (in wstring patterns, out wstring[] key, out wstring[] value, out long long[] timestamp, out wstring[] flags) |
Return a list of the guest properties matching a set of patterns along with their values, time stamps and flags. | |
void | onlineMergeMedium (in IMediumAttachment mediumAttachment, in unsigned long sourceIdx, in unsigned long targetIdx, in IMedium source, in IMedium target, in boolean mergeForward, in IMedium parentForTarget, in IMedium[] childrenToReparent, in IProgress progress) |
Triggers online merging of a hard disk. | |
void | enableVMMStatistics (in boolean enable) |
Enables or disables collection of VMM RAM statistics. | |
void | pauseWithReason (in Reason reason) |
Internal method for triggering a VM pause with a specified reason code. | |
void | resumeWithReason (in Reason reason) |
Internal method for triggering a VM resume with a specified reason code. | |
void | saveStateWithReason (in Reason reason,[retval] out IProgress progress) |
Internal method for triggering a VM save state with a specified reason code. |
void IInternalSessionControl::getPID | ( | [retval] out unsigned long | pid | ) |
PID of the process that has created this Session object.
void IInternalSessionControl::getRemoteConsole | ( | [retval] out IConsole | console | ) |
Returns the console object suitable for remote control.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
Assigns the machine object associated with this direct-type session or informs the session that it will be a remote one (if machine == null
).
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
Assigns the machine and the (remote) console object associated with this remote-type session.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
void IInternalSessionControl::updateMachineState | ( | in MachineState | aMachineState | ) |
Updates the machine state in the VM process.
Must be called only in certain cases (see the method implementation).
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::uninitialize | ( | ) |
Uninitializes (closes) this session.
Used by VirtualBox to close the corresponding remote session when the direct session dies or gets closed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
void IInternalSessionControl::onNetworkAdapterChange | ( | in INetworkAdapter | networkAdapter, | |
in boolean | changeAdapter | |||
) |
Triggered when settings of a network adapter of the associated virtual machine have changed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onSerialPortChange | ( | in ISerialPort | serialPort | ) |
Triggered when settings of a serial port of the associated virtual machine have changed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onParallelPortChange | ( | in IParallelPort | parallelPort | ) |
Triggered when settings of a parallel port of the associated virtual machine have changed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onStorageControllerChange | ( | ) |
Triggered when settings of a storage controller of the associated virtual machine have changed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onMediumChange | ( | in IMediumAttachment | mediumAttachment, | |
in boolean | force | |||
) |
Triggered when attached media of the associated virtual machine have changed.
mediumAttachment | The medium attachment which changed. | |
force | If the medium change was forced. |
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onStorageDeviceChange | ( | in IMediumAttachment | mediumAttachment, | |
in boolean | remove, | |||
in boolean | silent | |||
) |
Triggered when attached storage devices of the associated virtual machine have changed.
mediumAttachment | The medium attachment which changed. | |
remove | TRUE if the device is removed, FALSE if it was added. | |
silent | TRUE if the device is is silently reconfigured without notifying the guest about it. |
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onClipboardModeChange | ( | in ClipboardMode | clipboardMode | ) |
Notification when the shared clipboard mode changes.
clipboardMode | The new shared clipboard mode. |
void IInternalSessionControl::onDragAndDropModeChange | ( | in DragAndDropMode | dragAndDropMode | ) |
Notification when the drag'n'drop mode changes.
dragAndDropMode | The new mode for drag'n'drop. |
void IInternalSessionControl::onCPUChange | ( | in unsigned long | cpu, | |
in boolean | add | |||
) |
Notification when a CPU changes.
cpu | The CPU which changed | |
add | Flag whether the CPU was added or removed |
void IInternalSessionControl::onCPUExecutionCapChange | ( | in unsigned long | executionCap | ) |
Notification when the CPU execution cap changes.
executionCap | The new CPU execution cap value. (1-100) |
void IInternalSessionControl::onVRDEServerChange | ( | in boolean | restart | ) |
Triggered when settings of the VRDE server object of the associated virtual machine have changed.
restart | Flag whether the server must be restarted |
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onUSBControllerChange | ( | ) |
Triggered when settings of the USB controller object of the associated virtual machine have changed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onSharedFolderChange | ( | in boolean | global | ) |
Triggered when a permanent (global or machine) shared folder has been created or removed.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onUSBDeviceAttach | ( | in IUSBDevice | device, | |
in IVirtualBoxErrorInfo | error, | |||
in unsigned long | maskedInterfaces | |||
) |
Triggered when a request to capture a USB device (as a result of matched USB filters or direct call to IConsole::attachUSBDevice) has completed.
A null
error object means success, otherwise it describes a failure.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onUSBDeviceDetach | ( | in wstringUUID | id, | |
in IVirtualBoxErrorInfo | error | |||
) |
Triggered when a request to release the USB device (as a result of machine termination or direct call to IConsole::detachUSBDevice) has completed.
A null
error object means success, otherwise it describes a failure.
VBOX_E_INVALID_VM_STATE | Session state prevents operation. |
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onShowWindow | ( | in boolean | check, | |
out boolean | canShow, | |||
out long long | winId | |||
) |
Called by IMachine::canShowConsoleWindow and by IMachine::showConsoleWindow in order to notify console listeners ICanShowWindowEvent and IShowWindowEvent.
VBOX_E_INVALID_OBJECT_STATE | Session type prevents operation. |
void IInternalSessionControl::onBandwidthGroupChange | ( | in IBandwidthGroup | bandwidthGroup | ) |
Notification when one of the bandwidth groups change.
bandwidthGroup | The bandwidth group which changed. |
void IInternalSessionControl::accessGuestProperty | ( | in wstring | name, | |
in wstring | value, | |||
in wstring | flags, | |||
in boolean | isSetter, | |||
out wstring | retValue, | |||
out long long | retTimestamp, | |||
out wstring | retFlags | |||
) |
Called by IMachine::getGuestProperty and by IMachine::setGuestProperty in order to read and modify guest properties.
VBOX_E_INVALID_VM_STATE | Machine session is not open. |
VBOX_E_INVALID_OBJECT_STATE | Session type is not direct. |
void IInternalSessionControl::enumerateGuestProperties | ( | in wstring | patterns, | |
out wstring[] | key, | |||
out wstring[] | value, | |||
out long long[] | timestamp, | |||
out wstring[] | flags | |||
) |
Return a list of the guest properties matching a set of patterns along with their values, time stamps and flags.
patterns | The patterns to match the properties against as a comma-separated string. If this is empty, all properties currently set will be returned. | |
key | The key names of the properties returned. | |
value | The values of the properties returned. The array entries match the corresponding entries in the key array. | |
timestamp | The time stamps of the properties returned. The array entries match the corresponding entries in the key array. | |
flags | The flags of the properties returned. The array entries match the corresponding entries in the key array. |
VBOX_E_INVALID_VM_STATE | Machine session is not open. |
VBOX_E_INVALID_OBJECT_STATE | Session type is not direct. |
void IInternalSessionControl::onlineMergeMedium | ( | in IMediumAttachment | mediumAttachment, | |
in unsigned long | sourceIdx, | |||
in unsigned long | targetIdx, | |||
in IMedium | source, | |||
in IMedium | target, | |||
in boolean | mergeForward, | |||
in IMedium | parentForTarget, | |||
in IMedium[] | childrenToReparent, | |||
in IProgress | progress | |||
) |
Triggers online merging of a hard disk.
Used internally when deleting a snapshot while a VM referring to the same hard disk chain is running.
mediumAttachment | The medium attachment to identify the medium chain. | |
sourceIdx | The index of the source image in the chain. Redundant, but drastically reduces IPC. | |
targetIdx | The index of the target image in the chain. Redundant, but drastically reduces IPC. | |
source | Merge source medium. | |
target | Merge target medium. | |
mergeForward | Merge direction. | |
parentForTarget | For forward merges: new parent for target medium. | |
childrenToReparent | For backward merges: list of media which need their parent UUID updated. | |
progress | Progress object for this operation. |
VBOX_E_INVALID_VM_STATE | Machine session is not open. |
VBOX_E_INVALID_OBJECT_STATE | Session type is not direct. |
void IInternalSessionControl::enableVMMStatistics | ( | in boolean | enable | ) |
Enables or disables collection of VMM RAM statistics.
enable | True enables statistics collection. |
VBOX_E_INVALID_VM_STATE | Machine session is not open. |
VBOX_E_INVALID_OBJECT_STATE | Session type is not direct. |
void IInternalSessionControl::pauseWithReason | ( | in Reason | reason | ) |
Internal method for triggering a VM pause with a specified reason code.
The reason code can be interpreted by device/drivers and thus it might behave slightly differently than a normal VM pause.
reason | Specify the best matching reason code please. |
VBOX_E_INVALID_VM_STATE | Virtual machine not in Running state. |
VBOX_E_VM_ERROR | Virtual machine error in suspend operation. |
void IInternalSessionControl::resumeWithReason | ( | in Reason | reason | ) |
Internal method for triggering a VM resume with a specified reason code.
The reason code can be interpreted by device/drivers and thus it might behave slightly differently than a normal VM resume.
reason | Specify the best matching reason code please. |
VBOX_E_INVALID_VM_STATE | Virtual machine not in Paused state. |
VBOX_E_VM_ERROR | Virtual machine error in resume operation. |
void IInternalSessionControl::saveStateWithReason | ( | in Reason | reason, | |
[retval] out IProgress | progress | |||
) |
Internal method for triggering a VM save state with a specified reason code.
The reason code can be interpreted by device/drivers and thus it might behave slightly differently than a normal VM save state.
reason | Specify the best matching reason code please. | |
progress | Progress object to track the operation completion. |
VBOX_E_INVALID_VM_STATE | Virtual machine state neither Running nor Paused. |
VBOX_E_FILE_ERROR | Failed to create directory for saved state file. |