# IInternalSessionControl Interface Reference

List of all members.

## 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)
| 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 | onDVDDriveChange ()
| Triggered when settings of the DVD drive object of the associated virtual machine have changed.
void | onFloppyDriveChange ()
| Triggered when settings of the floppy drive object of the associated virtual machine have changed.
void | onNetworkAdapterChange (in INetworkAdapter networkAdapter)
| Triggered when settings of a network adapter of the associated virtual machine have changed.
void | onSerialPortChange (in ISerialPort serialPort)
| Triggered when settions 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 | onVRDPServerChange ()
| Triggered when settings of the VRDP 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 uuid 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 unsigned long long winId)
| Called by IMachine::canShowConsoleWindow() and by IMachine::showConsoleWindow() in order to notify console callbacks IConsoleCallback::onCanShowWindow() and IConsoleCallback::onShowWindow().
void | accessGuestProperty (in wstring name, in wstring value, in wstring flags, in boolean isSetter, out wstring retValue, out unsigned 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 unsigned long long[] timestamp, out wstring[] flags)
| Return a list of the guest properties matching a set of patterns along with their values, timestamps and flags.

## Member Function Documentation

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.

void IInternalSessionControl::assignMachine | ( | in IMachine | machine | ) |

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 IInternalSessionControl::assignRemoteMachine | ( | in IMachine | machine,
|  | in IConsole | console |
| ) |  |  |

Assigns the machine and the (remote) console object associated with this remote-type session.

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).

void IInternalSessionControl::uninitialize | ( |  | ) |

Uninitializes (closes) this session.

Used by VirtualBox to close the corresponding remote session when the direct session dies or gets closed.

void IInternalSessionControl::onDVDDriveChange | ( |  | ) |

Triggered when settings of the DVD drive object of the associated virtual machine have changed.

void IInternalSessionControl::onFloppyDriveChange | ( |  | ) |

Triggered when settings of the floppy drive object of the associated virtual machine have changed.

void IInternalSessionControl::onNetworkAdapterChange | ( | in INetworkAdapter | networkAdapter | ) |

Triggered when settings of a network adapter of the associated virtual machine have changed.

void IInternalSessionControl::onSerialPortChange | ( | in ISerialPort | serialPort | ) |

Triggered when settions of a serial port of the associated virtual machine have changed.

void IInternalSessionControl::onParallelPortChange | ( | in IParallelPort | parallelPort | ) |

Triggered when settings of a parallel port of the associated virtual machine have changed.

void IInternalSessionControl::onVRDPServerChange | ( |  | ) |

Triggered when settings of the VRDP server object of the associated virtual machine have changed.

void IInternalSessionControl::onUSBControllerChange | ( |  | ) |

Triggered when settings of the USB controller object of the associated virtual machine have changed.

void IInternalSessionControl::onSharedFolderChange | ( | in boolean | global | ) |

Triggered when a permanent (global or machine) shared folder has been created or removed.

Note:
  We don't pass shared folder parameters in this notification because the order in which parallel notifications are delivered is not defined, therefore it could happen that these parameters were outdated by the time of processing this notification.

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.

void IInternalSessionControl::onUSBDeviceDetach | ( | in uuid | 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

void IInternalSessionControl::onShowWindow | ( | in boolean | check,
|  | out boolean | canShow,
|  | out unsigned long long | winId |
| ) |  |  |

Called by IMachine::canShowConsoleWindow() and by IMachine::showConsoleWindow() in order to notify console callbacks IConsoleCallback::onCanShowWindow() and IConsoleCallback::onShowWindow().

void IInternalSessionControl::accessGuestProperty | ( | in wstring | name,
|  | in wstring | value,
|  | in wstring | flags,
|  | in boolean | isSetter,
|  | out wstring | retValue,
|  | out unsigned long long | retTimestamp,
|  | out wstring | retFlags |
| ) |  |  |

Called by IMachine::getGuestProperty() and by IMachine::setGuestProperty() in order to read and modify guest properties.

void IInternalSessionControl::enumerateGuestProperties | ( | in wstring | patterns,
|  | out wstring[] | key,
|  | out wstring[] | value,
|  | out unsigned long long[] | timestamp,
|  | out wstring[] | flags |
| ) |  |  |

Return a list of the guest properties matching a set of patterns along with their values, timestamps and flags.

Parameters:

  | 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 timestamps 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.