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 
104  mir_lifecycle_event_callback callback, void* context);
105 
106 
125  mir_ping_event_callback callback, void* context);
126 
127 
133 void mir_connection_pong(MirConnection* connection, int32_t serial);
134 
143 
155  MirConnection* connection,
156  mir_display_config_callback callback, void* context);
157 
162 void mir_display_config_destroy(MirDisplayConfiguration* display_configuration);
163 
178 
185 
195  MirConnection *connection, void *egldisplay, void *eglconfig);
196 
213  MirConnection* connection, MirPixelFormat* formats,
214  unsigned const int format_size, unsigned int *num_valid_formats);
215 
229  MirConnection* connection,
230  MirPlatformMessage const* request,
231  mir_platform_operation_callback callback, void* context);
232 
233 #ifdef __cplusplus
234 }
236 #endif
237 
238 #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:207
MirDisplayConfiguration * mir_connection_create_display_config(MirConnection *connection)
Query the display.
Definition: mir_connection_api.cpp:213
Definition: client_types.h:186
Definition: client_types.h:289
char const * mir_connection_get_error_message(MirConnection *connection)
Retrieve a text description of the last error.
Definition: mir_connection_api.cpp:165
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:189
void mir_connection_release(MirConnection *connection)
Release a connection to the Mir server.
Definition: mir_connection_api.cpp:170
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:103
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:272
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:127
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:262
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:148
MirWaitHandle * mir_connection_apply_display_config(MirConnection *connection, MirDisplayConfiguration *display_configuration)
Apply the display configuration.
Definition: mir_connection_api.cpp:235
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:182
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:198
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:113
struct MirPlatformMessage MirPlatformMessage
Definition: client_types.h:56
bool mir_connection_is_valid(MirConnection *connection)
Test for a valid connection.
Definition: mir_connection_api.cpp:160
void(* mir_platform_operation_callback)(MirConnection *connection, MirPlatformMessage *reply, void *context)
Callback called when a platform operation completes.
Definition: client_types.h:372
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:230
void(* mir_connected_callback)(MirConnection *connection, void *client_context)
Callback to be passed when issuing a mir_connect request.
Definition: client_types.h:64
Definition: mir_connection.h:88
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:250
void(* mir_display_config_callback)(MirConnection *connection, void *context)
Callback called when a display config change has occurred.
Definition: client_types.h:122
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:221
void * MirEGLNativeDisplayType
Definition: client_types.h:39

Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Oct 8 16:20:16 UTC 2015