public class IDisplay extends IUnknown
IConsole.getDisplay()
attribute and represents the visual
output of the virtual machine.
The virtual display supports pluggable output targets represented by the
IFramebuffer interface. Examples of the output target are a window on
the host computer or an RDP session's display on a remote computer.
Interface ID: {4680B2DE-8690-11E9-B83D-5719E53CF1DE}Constructor and Description |
---|
IDisplay(java.lang.String wrapped,
org.virtualbox_6_1.ObjectRefManager objMgr,
org.virtualbox_6_1.jaxws.VboxPortType port) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
attachFramebuffer(java.lang.Long screenId,
IFramebuffer framebuffer)
Sets the graphics update target for a screen.
|
IGuestScreenInfo |
createGuestScreenInfo(java.lang.Long display,
GuestMonitorStatus status,
java.lang.Boolean primary,
java.lang.Boolean changeOrigin,
java.lang.Integer originX,
java.lang.Integer originY,
java.lang.Long width,
java.lang.Long height,
java.lang.Long bitsPerPixel)
Make a IGuestScreenInfo object with the provided parameters.
|
void |
detachFramebuffer(java.lang.Long screenId,
java.lang.String id)
Removes the graphics updates target for a screen.
|
void |
detachScreens(java.util.List<java.lang.Integer> screenIds)
Unplugs monitors from the virtual graphics card.
|
java.util.List<IGuestScreenInfo> |
getGuestScreenLayout()
Layout of the guest screens.
|
void |
getScreenResolution(java.lang.Long screenId,
Holder<java.lang.Long> width,
Holder<java.lang.Long> height,
Holder<java.lang.Long> bitsPerPixel,
Holder<java.lang.Integer> xOrigin,
Holder<java.lang.Integer> yOrigin,
Holder<GuestMonitorStatus> guestMonitorStatus)
Queries certain attributes such as display width, height, color depth
and the X and Y origin for a given guest screen.
|
void |
getVideoModeHint(java.lang.Long display,
Holder<java.lang.Boolean> enabled,
Holder<java.lang.Boolean> changeOrigin,
Holder<java.lang.Integer> originX,
Holder<java.lang.Integer> originY,
Holder<java.lang.Long> width,
Holder<java.lang.Long> height,
Holder<java.lang.Long> bitsPerPixel)
Queries the monitor information for a given guest output.
|
void |
invalidateAndUpdate()
Does a full invalidation of the VM display and instructs the VM
to update it.
|
void |
invalidateAndUpdateScreen(java.lang.Long screenId)
Redraw the specified VM screen.
|
void |
notifyHiDPIOutputPolicyChange(java.lang.Boolean fUnscaledHiDPI)
Notify OpenGL HGCM host service about HiDPI monitor scaling policy change.
|
void |
notifyScaleFactorChange(java.lang.Long screenId,
java.lang.Long u32ScaleFactorWMultiplied,
java.lang.Long u32ScaleFactorHMultiplied)
Notify OpenGL HGCM host service about graphics content scaling factor change.
|
IFramebuffer |
queryFramebuffer(java.lang.Long screenId)
Queries the graphics updates targets for a screen.
|
static IDisplay |
queryInterface(IUnknown obj) |
void |
setScreenLayout(ScreenLayoutMode screenLayoutMode,
java.util.List<IGuestScreenInfo> guestScreenInfo)
Set video modes for the guest screens.
|
void |
setSeamlessMode(java.lang.Boolean enabled)
Enables or disables seamless guest display rendering (seamless desktop
integration) mode.
|
void |
setVideoModeHint(java.lang.Long display,
java.lang.Boolean enabled,
java.lang.Boolean changeOrigin,
java.lang.Integer originX,
java.lang.Integer originY,
java.lang.Long width,
java.lang.Long height,
java.lang.Long bitsPerPixel,
java.lang.Boolean notify)
Changes the monitor information reported by a given output of the guest
graphics device.
|
byte[] |
takeScreenShotToArray(java.lang.Long screenId,
java.lang.Long width,
java.lang.Long height,
BitmapFormat bitmapFormat)
Takes a guest screen shot of the requested size and format
and returns it as an array of bytes.
|
void |
viewportChanged(java.lang.Long screenId,
java.lang.Long x,
java.lang.Long y,
java.lang.Long width,
java.lang.Long height)
Signals that framebuffer window viewport has changed.
|
getObjMgr, getRemoteWSPort, getWrapped, releaseRemote
public IDisplay(java.lang.String wrapped, org.virtualbox_6_1.ObjectRefManager objMgr, org.virtualbox_6_1.jaxws.VboxPortType port)
public java.util.List<IGuestScreenInfo> getGuestScreenLayout()
public void getScreenResolution(java.lang.Long screenId, Holder<java.lang.Long> width, Holder<java.lang.Long> height, Holder<java.lang.Long> bitsPerPixel, Holder<java.lang.Integer> xOrigin, Holder<java.lang.Integer> yOrigin, Holder<GuestMonitorStatus> guestMonitorStatus)
public java.lang.String attachFramebuffer(java.lang.Long screenId, IFramebuffer framebuffer)
public void detachFramebuffer(java.lang.Long screenId, java.lang.String id)
public IFramebuffer queryFramebuffer(java.lang.Long screenId)
public void setVideoModeHint(java.lang.Long display, java.lang.Boolean enabled, java.lang.Boolean changeOrigin, java.lang.Integer originX, java.lang.Integer originY, java.lang.Long width, java.lang.Long height, java.lang.Long bitsPerPixel, java.lang.Boolean notify)
display
- The number of the guest output to change.enabled
- True if a monitor is connected,
False otherwise.changeOrigin
- True, if the position of the guest screen is specified,
False otherwise.originX
- The X origin of the guest screen.originY
- The Y origin of the guest screen.width
- The width of the guest screen.height
- The height of the guest screen.bitsPerPixel
- The number of bits per pixel of the guest screen.notify
- Whether the guest should be notified of the change. Normally this
is wished, but it might not be when re-setting monitor information
from the last session (no hotplug happened, as it is still the same
virtual monitor). Might also be useful if several monitors are to be
changed at once, but this would not reflect physical hardware well,
and we also have setScreenLayout for that.
Expected result codes:
E_INVALIDARG | The display value is higher then the number of outputs. |
public void getVideoModeHint(java.lang.Long display, Holder<java.lang.Boolean> enabled, Holder<java.lang.Boolean> changeOrigin, Holder<java.lang.Integer> originX, Holder<java.lang.Integer> originY, Holder<java.lang.Long> width, Holder<java.lang.Long> height, Holder<java.lang.Long> bitsPerPixel)
display
- The number of the guest output to query.enabled
- True if a monitor is connected,
False otherwise.changeOrigin
- True, if the position of the guest screen was specified,
False otherwise.originX
- The X origin of the guest screen.originY
- The Y origin of the guest screen.width
- The width of the monitor preferred mode.height
- The height of the monitor preferred mode.bitsPerPixel
- The number of bits per pixel of the monitor preferred mode.
Expected result codes:
E_INVALIDARG | The display value is higher than the number of outputs. |
public void setSeamlessMode(java.lang.Boolean enabled)
IGuest.getFacilityStatus(org.virtualbox_6_1.AdditionsFacilityType,Holder)
with facility Seamless
does not return Active.public byte[] takeScreenShotToArray(java.lang.Long screenId, java.lang.Long width, java.lang.Long height, BitmapFormat bitmapFormat)
screenId
- The guest monitor to take screenshot from.width
- Desired image width.height
- Desired image height.bitmapFormat
- The requested format.public void invalidateAndUpdate()
VBOX_E_IPRT_ERROR | Could not invalidate and update screen. |
public void invalidateAndUpdateScreen(java.lang.Long screenId)
screenId
- The guest screen to redraw.public void viewportChanged(java.lang.Long screenId, java.lang.Long x, java.lang.Long y, java.lang.Long width, java.lang.Long height)
screenId
- Monitor to take the screenshot from.x
- Framebuffer x offset.y
- Framebuffer y offset.width
- Viewport width.height
- Viewport height.
Expected result codes:
E_INVALIDARG | The specified viewport data is invalid. |
public void notifyScaleFactorChange(java.lang.Long screenId, java.lang.Long u32ScaleFactorWMultiplied, java.lang.Long u32ScaleFactorHMultiplied)
public void notifyHiDPIOutputPolicyChange(java.lang.Boolean fUnscaledHiDPI)
public void setScreenLayout(ScreenLayoutMode screenLayoutMode, java.util.List<IGuestScreenInfo> guestScreenInfo)
public void detachScreens(java.util.List<java.lang.Integer> screenIds)
public IGuestScreenInfo createGuestScreenInfo(java.lang.Long display, GuestMonitorStatus status, java.lang.Boolean primary, java.lang.Boolean changeOrigin, java.lang.Integer originX, java.lang.Integer originY, java.lang.Long width, java.lang.Long height, java.lang.Long bitsPerPixel)
display
- The number of the guest display.status
- True, if this guest screen is enabled,
False otherwise.primary
- Whether this guest monitor must be primary.changeOrigin
- True, if the origin of the guest screen should be changed,
False otherwise.originX
- The X origin of the guest screen.originY
- The Y origin of the guest screen.width
- The width of the guest screen.height
- The height of the guest screen.bitsPerPixel
- The number of bits per pixel of the guest screen.