Mir
mir_connection.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2012-2014 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify it
5  * under the terms of the GNU Lesser General Public License version 3,
6  * as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  */
17 
18 #ifndef MIR_TOOLKIT_MIR_CONNECTION_H_
19 #define MIR_TOOLKIT_MIR_CONNECTION_H_
20 
22 #include <mir_toolkit/common.h>
24 
25 #include <stdbool.h>
26 
27 #ifdef __cplusplus
28 
32 extern "C" {
33 #endif
34 
52  char const *server,
53  char const *app_name,
54  MirConnectedCallback callback,
55  void *context);
56 
64 MirConnection *mir_connect_sync(char const *server, char const *app_name);
65 
72 bool mir_connection_is_valid(MirConnection *connection);
73 
82 char const *mir_connection_get_error_message(MirConnection *connection);
83 
88 void mir_connection_release(MirConnection *connection);
89 
96 void mir_connection_get_platform(MirConnection *connection, MirPlatformPackage *platform_package)
97 MIR_FOR_REMOVAL_IN_VERSION_1("use platform extensions instead");
98 
109 MIR_FOR_REMOVAL_IN_VERSION_1("use graphics module extension instead");
110 
118  MirLifecycleEventCallback callback, void* context);
119 
120 
139  MirPingEventCallback callback, void* context);
140 
141 
147 void mir_connection_pong(MirConnection* connection, int32_t serial);
148 
160 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_create_display_configuration instead");
161 
172 
184  MirConnection* connection,
185  MirDisplayConfigCallback callback, void* context);
186 
191 void mir_display_config_destroy(MirDisplayConfiguration* display_configuration)
192 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_display_config_release instead");
193 
208 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_apply_session_display_config instead");
209 
221 void mir_connection_apply_session_display_config(MirConnection* connection, MirDisplayConfig const* display_config);
222 
233 
256  MirConnection* connection,
257  MirDisplayConfiguration const* display_configuration)
258 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_preview_base_display_configuration/mir_connection_confirm_base_display_configuration");
259 
260 
287  MirConnection* connection,
288  MirDisplayConfig const* configuration,
289  int timeout_seconds);
290 
311  MirConnection* connection,
312  MirDisplayConfig const* configuration);
313 
328  MirConnection* connection);
329 
336 
346  MirConnection *connection, void *egldisplay, void *eglconfig);
347 
364  MirConnection* connection, MirPixelFormat* formats,
365  unsigned const int formats_size, unsigned int *num_valid_formats);
366 
380  MirConnection* connection,
381  MirPlatformMessage const* request,
382  MirPlatformOperationCallback callback, void* context)
383 MIR_FOR_REMOVAL_IN_VERSION_1("use platform specific extensions instead");
384 
393 
402 void mir_input_config_destroy(MirInputConfig const* config)
403 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_input_config_release instead");
404 
411 void mir_input_config_release(MirInputConfig const* config);
412 
413 
425  MirConnection* connection,
426  MirInputConfigCallback callback, void* context);
427 
436  MirConnection* connection,
437  MirErrorCallback callback,
438  void* context);
439 
440 #ifdef __cplusplus
441 }
443 #endif
444 
445 #endif /* MIR_TOOLKIT_MIR_CONNECTION_H_ */
void mir_connection_get_platform(MirConnection *connection, MirPlatformPackage *platform_package) MIR_FOR_REMOVAL_IN_VERSION_1("use platform extensions instead")
Query platform-specific data and/or file descriptors that are required to initialize GL/EGL features...
void mir_connection_pong(MirConnection *connection, int32_t serial)
Respond to a ping event.
void(* MirDisplayConfigCallback)(MirConnection *connection, void *context)
Callback called when a display config change has occurred.
Definition: client_types.h:147
Definition: client_types.h:226
Definition: client_types.h:369
void mir_input_config_destroy(MirInputConfig const *config) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_input_config_release instead")
struct MirDisplayConfig MirDisplayConfig
Definition: client_types.h:53
char const * mir_connection_get_error_message(MirConnection *connection)
Retrieve a text description of the last error.
void mir_connection_release(MirConnection *connection)
Release a connection to the Mir server.
void mir_connection_set_display_config_change_callback(MirConnection *connection, MirDisplayConfigCallback callback, void *context)
Register a callback to be called when the hardware display configuration changes. ...
void(* MirPingEventCallback)(MirConnection *connection, int32_t serial, void *context)
Callback called when the server pings for responsiveness testing.
Definition: client_types.h:136
void mir_connection_cancel_base_display_configuration_preview(MirConnection *connection)
Cancel a pending base display configuration preview.
void(* MirLifecycleEventCallback)(MirConnection *connection, MirLifecycleState state, void *context)
Callback called when a lifecycle event/callback is requested from the running server.
Definition: client_types.h:124
MirWaitHandle * mir_connection_apply_display_config(MirConnection *connection, MirDisplayConfiguration *display_configuration) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_apply_session_display_config instead")
Apply the display configuration.
#define MIR_FOR_REMOVAL_IN_VERSION_1(message)
Definition: deprecations.h:30
void(* MirInputConfigCallback)(MirConnection *connection, void *context)
Callback called when a change of input devices has occurred.
Definition: client_types.h:479
MirConnection * mir_connect_sync(char const *server, char const *app_name)
Perform a mir_connect() but also wait for and return the result.
MirWaitHandle * mir_connection_set_base_display_config(MirConnection *connection, MirDisplayConfiguration const *display_configuration) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_preview_base_display_configuration/mir_connection_confirm_base_display_configuration")
Set the base display configuration.
void mir_connection_remove_session_display_config(MirConnection *connection)
Remove the display configuration for the connection.
MirWaitHandle * mir_connect(char const *server, char const *app_name, MirConnectedCallback callback, void *context)
Request a connection to the Mir server.
void mir_connection_apply_session_display_config(MirConnection *connection, MirDisplayConfig const *display_config)
Apply the display config for the connection.
void(* MirPlatformOperationCallback)(MirConnection *connection, MirPlatformMessage *reply, void *context)
Callback called when a platform operation completes.
Definition: client_types.h:467
void mir_connection_set_input_config_change_callback(MirConnection *connection, MirInputConfigCallback callback, void *context)
Register a callback to be called when the input devices change.
void mir_connection_preview_base_display_configuration(MirConnection *connection, MirDisplayConfig const *configuration, int timeout_seconds)
Preview a new base display configuration.
void mir_connection_get_available_surface_formats(MirConnection *connection, MirPixelFormat *formats, unsigned const int formats_size, unsigned int *num_valid_formats)
Get the list of possible formats that a surface can be created with.
struct MirWaitHandle MirWaitHandle
Returned by asynchronous functions.
Definition: client_types.h:72
Retrieved information about a loadable module.
Definition: client_types.h:242
void(* MirErrorCallback)(MirConnection *connection, MirError const *error, void *context)
Definition: client_types.h:539
MirDisplayConfig * mir_connection_create_display_configuration(MirConnection *connection)
Query the display.
void mir_connection_set_lifecycle_event_callback(MirConnection *connection, MirLifecycleEventCallback callback, void *context)
Register a callback to be called when a Lifecycle state change occurs.
void(* MirConnectedCallback)(MirConnection *connection, void *client_context)
Callback to be passed when issuing a mir_connect request.
Definition: client_types.h:82
struct MirPlatformMessage MirPlatformMessage
Definition: client_types.h:74
void mir_connection_confirm_base_display_configuration(MirConnection *connection, MirDisplayConfig const *configuration)
Confirm a base configuration change initiated by mir_connection_preview_base_display_configuration() ...
bool mir_connection_is_valid(MirConnection *connection)
Test for a valid connection.
struct MirConnection MirConnection
Definition: client_types.h:41
MirPixelFormat
32-bit pixel formats (8888): The order of components in the enum matches the order of the components ...
Definition: common.h:241
MirDisplayConfiguration * mir_connection_create_display_config(MirConnection *connection) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_create_display_configuration instead")
Query the display.
MirPixelFormat mir_connection_get_egl_pixel_format(MirConnection *connection, void *egldisplay, void *eglconfig)
Get the exact MirPixelFormat to use in creating a surface for a chosen EGLConfig. ...
MirWaitHandle * mir_connection_platform_operation(MirConnection *connection, MirPlatformMessage const *request, MirPlatformOperationCallback callback, void *context) MIR_FOR_REMOVAL_IN_VERSION_1("use platform specific extensions instead")
Perform a platform specific operation.
MirEGLNativeDisplayType mir_connection_get_egl_native_display(MirConnection *connection)
Get a display type that can be used for OpenGL ES 2.0 acceleration.
void mir_connection_get_graphics_module(MirConnection *connection, MirModuleProperties *properties) MIR_FOR_REMOVAL_IN_VERSION_1("use graphics module extension instead")
Query graphics platform module.
Definition: mir_input_config.h:77
void mir_display_config_destroy(MirDisplayConfiguration *display_configuration) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_display_config_release instead")
Destroy the DisplayConfiguration resource acquired from mir_connection_create_display_config.
void mir_connection_set_ping_event_callback(MirConnection *connection, MirPingEventCallback callback, void *context)
Register a callback for server ping events.
MirInputConfig * mir_connection_create_input_config(MirConnection *connection)
Create a snapshot of the attached input devices and device configurations.
void mir_connection_set_error_callback(MirConnection *connection, MirErrorCallback callback, void *context)
Register a callback to be called on non-fatal errors.
void mir_input_config_release(MirInputConfig const *config)
Release this snapshot of the input configuration.
void * MirEGLNativeDisplayType
Definition: client_types.h:40

Copyright © 2012-2016 Canonical Ltd.
Generated on Mon Jun 5 13:49:26 UTC 2017