RemotePanelRendering¶
-
MLModule
¶ genre Remote
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLRemoteRendering
definition MLRemoteRendering.def see also RemoteRendering
,RemoteRenderingClient
Purpose¶
The RemotePanelRendering
module is derived from the RemoteRendering
module. It allows rendering module panels offscreen, which can be viewed by using a RemoteRenderingClient
module or any other remote rendering client (e.g. a web browser).
Usage¶
Add the RemotePanelRendering
module to your network and set the Panel
value to the module panel that you want to render.
Tips¶
If you have several processes running that use RemotePanelRendering at the same time, you can set the environment variable MLAB_NUMBER_CONCURRENT_PANEL_RENDERING
to a number to restrict the number of these modules that render a panel at the same time. This can avoid a GPU bottleneck by serializing the use of the GPU.
Output Fields¶
outBase¶
-
name:
outBase
, type:
RemoteRendering(MLBase)
¶ - For accessing this object via scripting see the Scripting Reference:
MLRemoteRenderingWrapper
.
Parameter Fields¶
Field Index¶
clearImageCacheOnClient : Trigger |
High Quality Jpg Quality : Integer |
Panel : String |
doubleClickIntercepted : Trigger |
imageCacheId : String |
Status : Enum |
Enable : Bool |
imageRendered : Trigger |
Store Transparency : Bool |
Enable Context Menu Events : Bool |
Interactive Image Type : Enum |
|
Enable Focus Stealing : Bool |
Interactive Jpg Quality : Integer |
|
Enable Multi Sampling : Bool |
Intercept Double Clicks : Bool |
|
Enable Nested Graphics Views : Bool |
isRenderSizeSet : Bool |
|
High Quality Image Type : Enum |
Multi Sampling : Integer |
Visible Fields¶
Enable Multi Sampling¶
-
name:
enableMultiSampling
, type:
Bool
, default:
FALSE
¶ Enable multi sample anti-aliasing (MSAA). This only works when a GraphicsView is rendered, since it requires OpenGL rendering.
Multi Sampling¶
-
name:
multiSampling
, type:
Integer
, default:
16
¶ Sets the number of multi sampling samples that are used. If the hardware supports less samples, the module uses the maximum supported number of samples.
Store Transparency¶
-
name:
storeTransparency
, type:
Bool
, default:
FALSE
¶ If enabled, the alpha channel of the framebuffer is enabled and the resulting alpha is sent with the rendered image. This forces the usage of PNG, since JPG does not support transparency.
Intercept Double Clicks¶
-
name:
interceptDoubleClicks
, type:
Bool
, default:
FALSE
¶ If set, the RemotePanelRendering module will intercept and remove double clicks (including the first click of a double click). This is done by delaying mouse clicks until the double click is received or the double click threshold (time or distance) is exceeded.
Be aware that using this feature can disturb the usual ordering between input events and other messages received from the remote connection.
Enable¶
-
name:
overrideStreamingQuality
, type:
Bool
, default:
FALSE
¶ Allows to override the image type and quality for image streaming.
NOTE: Typically the client can select the desired type and quality by sending the streaming settings, e.g. from JavaScript or the HTTP url. If overrideStreamingQuality is enabled, the quality is set by the server/this module and can not be set from the client any more.
Interactive Image Type¶
-
name:
interactiveImageType
, type:
Enum
, default:
JPG
¶ Interactive image type.
Values:
Title | Name |
---|---|
Jpg | JPG |
Png | PNG |
Bmp | BMP |
Webp Lossy | WEBP_LOSSY |
Webp Lossless | WEBP_LOSSLESS |
Jpg Alpha | JPG_ALPHA |
High Quality Image Type¶
-
name:
highQualityImageType
, type:
Enum
, default:
PNG
¶ HQ image type.
Values:
Title | Name |
---|---|
Jpg | JPG |
Png | PNG |
Bmp | BMP |
Webp Lossy | WEBP_LOSSY |
Webp Lossless | WEBP_LOSSLESS |
Jpg Alpha | JPG_ALPHA |
Interactive Jpg Quality¶
-
name:
interactiveJpgQuality
, type:
Integer
, default:
70
, minimum:
0
, maximum:
100
¶ Interactive JPG Quality (0-100)
High Quality Jpg Quality¶
-
name:
highQualityJpgQuality
, type:
Integer
, default:
100
, minimum:
0
, maximum:
100
¶ HQ Jpg quality (0-100)
Panel¶
-
name:
panel
, type:
String
¶ This field must be set to the name of the module (and optionally include also the window name) whose panel should be rendered. The syntax is “modulename[.windowname]”. If windowname is not given, then the default panel is rendered. If you want to render the panel of a sub-module, you can use “macroname.submodule.windowname”. In this case, the windowname is required to distinguish between submodule and windowname. The default panel is named “_default”, so you can write “macroname.submodule._default” to get the default panel of a submodule. There is a special syntax for showing the panel of the parent macro, which is a single “.”. It is also possible to select a specific panel of the parent macro, which is “.windowname”.
Examples:
Value Meaning SomeModule Show the default panel of SomeModule in the same network SomeModule.someWindow Show the window named someWindow of SomeModule SomeModule.SubModule._default Show the default panel of SomeModule.SubModule SomeModule.SubModule.someWindow Show the window names someWindow of SomeModule.SubModule . Show the default panel of the parent macro .someWindow Show the window named someWindow of the parent macro parent:someWindow Show the default panel of the parent macro of the parent macro parent:SomeModule._default Show the default panel of the parent macro of the parent macro Note that “parent:” is one level above the macro in which the RemotePanelRendering is located, which is why there is the special single “.” syntax to specify the direct parent macro.
Status¶
-
name:
status
, type:
Enum
, persistent:
no
¶ This field indicates the status of the
RemotePanelRendering
module.
Values:
Title | Name |
---|---|
No Module Panel Specified | NO_MODULE_PANEL_SPECIFIED |
Module Not Found | MODULE_NOT_FOUND |
Window Control Not Created | WINDOW_CONTROL_NOT_CREATED |
Window Not Created | WINDOW_NOT_CREATED |
Rendering | RENDERING |
Enable Nested Graphics Views¶
-
name:
enableNestedGraphicsViews
, type:
Bool
, default:
FALSE
¶ Enables support for nested graphics views.
Enable Focus Stealing¶
-
name:
enableFocusStealing
, type:
Bool
, default:
TRUE
¶ Enable focus stealing behavior when the mouse enters the remote panel rendering. This may steal the keyboard focus from the client computer if worker process and client are on the same computer, but is necessary to make keyboard shortcuts like those defined with the accel keyword work.