Learn how to evaluate and integrate the VNC SDK
Displays.h¶
Manages the list of displays (that is, monitors) currently attached to the Server computer. (more...)
Data structures
Modifier and Type | Name and Description |
---|---|
struct |
Callback receiving display changes. |
Functions
Modifier and Type | Name and Description |
---|---|
function int | vnc_DisplayManager_getDisplayCount(vnc_DisplayManager *displayManager) Returns the number of displays. |
function vnc_status_t | vnc_DisplayManager_setCallback(vnc_DisplayManager *displayManager, const vnc_DisplayManager_Callback *callback, void *userData) Registers a callback notifying when displays are added or removed, or the resolution of an existing display changes. |
function vnc_status_t | vnc_DisplayManager_selectDisplay(vnc_DisplayManager *displayManager, int index) Chooses a particular display to remote to connected Viewer app users. |
function int | vnc_DisplayManager_getDisplayIndex(vnc_DisplayManager *displayManager) Gets the index of the currently selected display. |
function const char * | vnc_DisplayManager_getId(vnc_DisplayManager *displayManager, int index) Gets the ID of the display (typically a short string). |
function const char * | vnc_DisplayManager_getName(vnc_DisplayManager *displayManager, int index) Gets the name of the display (typically a human-readable string). |
function vnc_bool_t | vnc_DisplayManager_isPrimary(vnc_DisplayManager *displayManager, int index) Returns whether this is the primary (or main) display. |
function int | vnc_DisplayManager_getResolutionX(vnc_DisplayManager *displayManager, int index) Gets the horizontal resolution of the display in pixels. |
function int | vnc_DisplayManager_getResolutionY(vnc_DisplayManager *displayManager, int index) Gets the vertical resolution of the display in pixels. |
function int | vnc_DisplayManager_getOriginX(vnc_DisplayManager *displayManager, int index) Gets the horizontal origin of the display in pixels. |
function int | vnc_DisplayManager_getOriginY(vnc_DisplayManager *displayManager, int index) Gets the vertical origin of the display in pixels. |
function vnc_bool_t | vnc_DisplayManager_isSelectDisplayAllowed(vnc_DisplayManager *displayManager) Returns whether the selectDisplay() call is permitted. |
function vnc_status_t | vnc_DisplayManager_enable(vnc_DisplayManager *displayManager, vnc_bool_t enable) Specifies whether screen sharing is enabled. |
function vnc_bool_t | vnc_DisplayManager_isEnabled(vnc_DisplayManager *displayManager) Returns whether the server is sharing its screens, whether it is being called from a server or a viewer. |
Detailed description
Manages the list of displays (that is, monitors) currently attached to the Server computer.
To obtain the current list, call vnc_Server_getDisplayManager to obtain a vnc_DisplayManager object (a list with a 0-based index). Call vnc_DisplayManager_selectDisplay with a particular index
to remote just that monitor to connected Viewer app users. Specify -1 to remote all monitors (this is the default behavior).
To detect monitor changes while the current session is in progress, call vnc_DisplayManager_setCallback. If a monitor is added or removed, or the resolution of an existing monitor changes, vnc_DisplayManager_Callback::displaysChanged returns a new vnc_DisplayManager object. Call vnc_DisplayManager_selectDisplay again to remote a monitor from the new list.
Note that functions taking an index
argument return undefined if the given value is out of range. In this circumstance, a call to vnc_getLastError() returns InvalidArgument.
- Since
- 1.5
Functions
-
int
vnc_DisplayManager_getDisplayCount
(vnc_DisplayManager *displayManager)¶ Returns the number of displays.
-
vnc_status_t
vnc_DisplayManager_setCallback
(vnc_DisplayManager *displayManager, const vnc_DisplayManager_Callback *callback, void *userData)¶ Registers a callback notifying when displays are added or removed, or the resolution of an existing display changes.
- Return
- vnc_success or vnc_failure, in which case call vnc_getLastError() to get the error code.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
callback
-The callback.
userData
-Optional custom data to pass to the callback.
-
vnc_status_t
vnc_DisplayManager_selectDisplay
(vnc_DisplayManager *displayManager, int index)¶ Chooses a particular display to remote to connected Viewer app users.
This replaces any previous selection, so either a single display is remoted or all are.
If the selected display is removed, connected Viewers will cease to receive framebuffer updates until the display is replaced or a new display is selected.
- Return
- vnc_success or vnc_failure, in which case call vnc_getLastError() to get the error code.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the display to remote, or -1 to remote all displays.
- Return Value
InvalidArgument
-index
is invalid.NotEnabled
-Selecting the display is not permitted at present.
-
int
vnc_DisplayManager_getDisplayIndex
(vnc_DisplayManager *displayManager)¶ Gets the index of the currently selected display.
- Return
- The 0-based index of the display selected to remote, or -1 for all displays.
- Since
- 1.8.0
- Parameters
displayManager
-The display manager.
-
const char *
vnc_DisplayManager_getId
(vnc_DisplayManager *displayManager, int index)¶ Gets the ID of the display (typically a short string).
- Return
- A unique identifier.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
const char *
vnc_DisplayManager_getName
(vnc_DisplayManager *displayManager, int index)¶ Gets the name of the display (typically a human-readable string).
- Return
- A friendly name.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
vnc_bool_t
vnc_DisplayManager_isPrimary
(vnc_DisplayManager *displayManager, int index)¶ Returns whether this is the primary (or main) display.
On Windows, the main display acts as the active desktop, showing the taskbar and sign in and lock screens. Most applications open on the main display by default.
-
int
vnc_DisplayManager_getResolutionX
(vnc_DisplayManager *displayManager, int index)¶ Gets the horizontal resolution of the display in pixels.
- Return
- A width in pixels.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
int
vnc_DisplayManager_getResolutionY
(vnc_DisplayManager *displayManager, int index)¶ Gets the vertical resolution of the display in pixels.
- Return
- A height in pixels.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
int
vnc_DisplayManager_getOriginX
(vnc_DisplayManager *displayManager, int index)¶ Gets the horizontal origin of the display in pixels.
- Return
- The X coordinate of the top left corner of the display relative to the operating system’s virtual map of all the displays.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
int
vnc_DisplayManager_getOriginY
(vnc_DisplayManager *displayManager, int index)¶ Gets the vertical origin of the display in pixels.
- Return
- The Y coordinate of the top left corner of the display relative to the operating system’s virtual map of all the displays.
- Since
- 1.5
- Parameters
displayManager
-The display manager.
index
-The 0-based index of the required display.
-
vnc_bool_t
vnc_DisplayManager_isSelectDisplayAllowed
(vnc_DisplayManager *displayManager)¶ Returns whether the selectDisplay() call is permitted.
-
vnc_status_t
vnc_DisplayManager_enable
(vnc_DisplayManager *displayManager, vnc_bool_t enable)¶ Specifies whether screen sharing is enabled.
If this is the server then this sets whether it shares its screen with viewers. If this is the viewer then this sets whether it requires to see the server’s screen.
- Return
- vnc_success or vnc_failure, in which case call vnc_getLastError() to get the error code.
- Since
- 1.8.0
- Parameters
displayManager
-The display manager.
enable
-true if screen sharing enabled, false otherwise
-
vnc_bool_t
vnc_DisplayManager_isEnabled
(vnc_DisplayManager *displayManager)¶ Returns whether the server is sharing its screens, whether it is being called from a server or a viewer.
-
struct
vnc_DisplayManager_Callback
¶ - #include <Displays.h>
Callback receiving display changes.
Public Members
-
void(* vnc_DisplayManager_Callback::displaysChanged) (void *userData, vnc_DisplayManager *displayManager)
Notification that a display has been added or removed, or the resolution of an existing display has changed.
- Since
- 1.5
- Parameters
displayManager
-A displayManager object containing a new list of all the displays.
-