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>
23 
24 #include <stdbool.h>
25 
26 #ifdef __cplusplus
27 
31 extern "C" {
32 #endif
33 
51  char const *server,
52  char const *app_name,
53  mir_connected_callback callback,
54  void *context);
55 
63 MirConnection *mir_connect_sync(char const *server, char const *app_name);
64 
71 bool mir_connection_is_valid(MirConnection *connection);
72 
81 char const *mir_connection_get_error_message(MirConnection *connection);
82 
87 void mir_connection_release(MirConnection *connection);
88 
95 void mir_connection_get_platform(MirConnection *connection, MirPlatformPackage *platform_package);
96 
107 
115  mir_lifecycle_event_callback callback, void* context);
116 
117 
136  mir_ping_event_callback callback, void* context);
137 
138 
144 void mir_connection_pong(MirConnection* connection, int32_t serial);
145 
157 
168 
180  MirConnection* connection,
181  mir_display_config_callback callback, void* context);
182 
187 void mir_display_config_destroy(MirDisplayConfiguration* display_configuration);
188 
203 
226  MirConnection* connection,
227  MirDisplayConfiguration const* display_configuration);
228 
229 
255  MirConnection* connection,
256  MirDisplayConfig const* configuration,
257  int timeout_seconds);
258 
279  MirConnection* connection,
280  MirDisplayConfig const* configuration);
281 
288 
298  MirConnection *connection, void *egldisplay, void *eglconfig);
299 
316  MirConnection* connection, MirPixelFormat* formats,
317  unsigned const int format_size, unsigned int *num_valid_formats);
318 
332  MirConnection* connection,
333  MirPlatformMessage const* request,
334  mir_platform_operation_callback callback, void* context);
335 
344 
351 void mir_input_config_destroy(MirInputConfig const* config);
352 
364  MirConnection* connection,
365  mir_input_config_callback callback, void* context);
366 
375  MirConnection* connection,
376  mir_error_callback callback,
377  void* context);
378 
379 #ifdef __cplusplus
380 }
382 #endif
383 
384 #endif /* MIR_TOOLKIT_MIR_CONNECTION_H_ */
void mir_connection_pong(MirConnection *connection, int32_t serial)
Respond to a ping event.
Definition: mir_connection_api.cpp:223
MirDisplayConfiguration * mir_connection_create_display_config(MirConnection *connection)
Query the display.
Definition: mir_connection_api.cpp:229
Definition: client_types.h:207
Definition: client_types.h:353
struct MirDisplayConfig MirDisplayConfig
Definition: client_types.h:49
char const * mir_connection_get_error_message(MirConnection *connection)
Retrieve a text description of the last error.
Definition: mir_connection_api.cpp:168
void mir_connection_set_lifecycle_event_callback(MirConnection *connection, mir_lifecycle_event_callback callback, void *context)
Register a callback to be called when a Lifecycle state change occurs.
Definition: mir_connection_api.cpp:205
void mir_connection_release(MirConnection *connection)
Release a connection to the Mir server.
Definition: mir_connection_api.cpp:173
void(* mir_lifecycle_event_callback)(MirConnection *connection, MirLifecycleState state, void *context)
Callback called when a lifecycle event/callback is requested from the running server.
Definition: client_types.h:115
Definition: mir_wait_handle.h:31
MirWaitHandle * mir_connection_platform_operation(MirConnection *connection, MirPlatformMessage const *request, mir_platform_operation_callback callback, void *context)
Perform a platform specific operation.
Definition: mir_connection_api.cpp:379
MirWaitHandle * mir_connect(char const *server, char const *app_name, mir_connected_callback callback, void *context)
Request a connection to the Mir server.
Definition: mir_connection_api.cpp:130
void mir_input_config_destroy(MirInputConfig const *config)
Release this snapshot of the input configuration.
Definition: mir_connection_api.cpp:315
void mir_connection_get_available_surface_formats(MirConnection *connection, MirPixelFormat *formats, unsigned const int format_size, unsigned int *num_valid_formats)
Get the list of possible formats that a surface can be created with.
Definition: mir_connection_api.cpp:369
MirConnection * mir_connect_sync(char const *server, char const *app_name)
Perform a mir_connect() but also wait for and return the result.
Definition: mir_connection_api.cpp:151
MirWaitHandle * mir_connection_apply_display_config(MirConnection *connection, MirDisplayConfiguration *display_configuration)
Apply the display configuration.
Definition: mir_connection_api.cpp:265
void mir_connection_get_platform(MirConnection *connection, MirPlatformPackage *platform_package)
Query platform-specific data and/or file descriptors that are required to initialize GL/EGL features...
Definition: mir_connection_api.cpp:185
void mir_connection_preview_base_display_configuration(MirConnection *connection, MirDisplayConfig const *configuration, int timeout_seconds)
Preview a new base display configuration.
Definition: mir_connection_api.cpp:321
Retrieved information about a loadable module.
Definition: client_types.h:223
void mir_connection_set_ping_event_callback(MirConnection *connection, mir_ping_event_callback callback, void *context)
Register a callback for server ping events.
Definition: mir_connection_api.cpp:214
void(* mir_ping_event_callback)(MirConnection *connection, int32_t serial, void *context)
Callback called when the server pings for responsiveness testing.
Definition: client_types.h:125
MirDisplayConfig * mir_connection_create_display_configuration(MirConnection *connection)
Query the display.
Definition: mir_connection_api.cpp:237
struct MirPlatformMessage MirPlatformMessage
Definition: client_types.h:68
void mir_connection_set_error_callback(MirConnection *connection, mir_error_callback callback, void *context)
Register a callback to be called on non-fatal errors.
Definition: mir_connection_api.cpp:395
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() ...
Definition: mir_connection_api.cpp:340
bool mir_connection_is_valid(MirConnection *connection)
Test for a valid connection.
Definition: mir_connection_api.cpp:163
void(* mir_platform_operation_callback)(MirConnection *connection, MirPlatformMessage *reply, void *context)
Callback called when a platform operation completes.
Definition: client_types.h:439
void(* mir_input_config_callback)(MirConnection *connection, void *context)
Callback called when a change of input devices has occurred.
Definition: client_types.h:449
void(* mir_error_callback)(MirConnection *connection, MirError const *error, void *context)
Definition: client_types.h:477
void mir_connection_set_input_config_change_callback(MirConnection *connection, mir_input_config_callback callback, void *context)
Register a callback to be called when the input devices change.
Definition: mir_connection_api.cpp:304
MirPixelFormat
32-bit pixel formats (8888): The order of components in the enum matches the order of the components ...
Definition: common.h:134
void mir_display_config_destroy(MirDisplayConfiguration *display_configuration)
Destroy the DisplayConfiguration resource acquired from mir_connection_create_display_config.
Definition: mir_connection_api.cpp:260
void(* mir_connected_callback)(MirConnection *connection, void *client_context)
Callback to be passed when issuing a mir_connect request.
Definition: client_types.h:76
Definition: mir_connection.h:96
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. ...
MirEGLNativeDisplayType mir_connection_get_egl_native_display(MirConnection *connection)
Get a display type that can be used for OpenGL ES 2.0 acceleration.
Definition: mir_connection_api.cpp:357
void(* mir_display_config_callback)(MirConnection *connection, void *context)
Callback called when a display config change has occurred.
Definition: client_types.h:134
void mir_connection_get_graphics_module(MirConnection *connection, MirModuleProperties *properties)
Query graphics platform module.
Definition: mir_connection_api.cpp:192
MirWaitHandle * mir_connection_set_base_display_config(MirConnection *connection, MirDisplayConfiguration const *display_configuration)
Set the base display configuration.
Definition: mir_connection_api.cpp:280
struct MirInputConfig MirInputConfig
Definition: client_types.h:379
void mir_connection_set_display_config_change_callback(MirConnection *connection, mir_display_config_callback callback, void *context)
Register a callback to be called when the hardware display configuration changes. ...
Definition: mir_connection_api.cpp:251
MirInputConfig * mir_connection_create_input_config(MirConnection *connection)
Create a snapshot of the attached input devices and device configurations.
Definition: mir_connection_api.cpp:295
void * MirEGLNativeDisplayType
Definition: client_types.h:39

Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Sep 8 14:50:19 UTC 2016