for (i = 0; i < num_buf; i++) {
tbm_bo bo = tbm_surface_internal_get_bo(surface, i);
- if (bo == NULL) {
+ if (bo == NULL)
goto err;
- }
/* try to get fd first */
if (is_fd == -1 || is_fd == 1) {
return NULL;
}
- if(!_wayland_tbm_server_export_surface(wl_tbm,
+ if (!_wayland_tbm_server_export_surface(wl_tbm,
tbm_buffer->wl_buffer, surface)) {
WL_TBM_S_LOG("Failed to send the surface to the wl_tbm_queue\n");
wl_resource_destroy(tbm_buffer->wl_buffer);
tbm_buffer->user_data = user_data;
tbm_buffer->flags = flags;
- if(!_wayland_tbm_server_export_surface(cqueue->wl_tbm,
+ if (!_wayland_tbm_server_export_surface(cqueue->wl_tbm,
tbm_buffer->wl_buffer, surface)) {
WL_TBM_S_LOG("Failed to send the surface to the wl_tbm_queue\n");
wl_resource_destroy(tbm_buffer->wl_buffer);
#include "wayland-tbm-test-client-protocol.h"
-#define WL_APP_C_LOG(fmt, ...) fprintf (stderr, "[CLIENT(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
+#define WL_APP_C_LOG(fmt, ...) fprintf(stderr, "[CLIENT(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
typedef struct {
struct wayland_tbm_client *tbm_client;
struct wl_buffer *bufs[3];
int cur_buf;
-
+
int exit;
} AppInfoClient;
_wl_registry_global_remove_cb,
};
-static void
+static void
_wl_test_remote_update_cb(void *data,
struct wl_test_remote *wl_test_remote,
struct wl_buffer *buffer)
{
- WL_APP_C_LOG("wl_buffer:%p, tbm_surface:%p\n",buffer, wl_buffer_get_user_data(buffer));
+ WL_APP_C_LOG("wl_buffer:%p, tbm_surface:%p\n", buffer, wl_buffer_get_user_data(buffer));
}
static const struct wl_test_remote_listener wl_test_remote_impl = {
int
main(int argc, char *argv[])
{
+ static const char *default_dpy_name = "tbm_remote";
struct wl_display *dpy = NULL;
struct wl_registry *registry;
const char *dpy_name = NULL;
- const static char *default_dpy_name = "tbm_remote";
int ret = 0;
- if (argc > 1) {
+ if (argc > 1)
dpy_name = argv[1];
- } else {
+ else
dpy_name = default_dpy_name;
- }
dpy = wl_display_connect(dpy_name);
if (!dpy) {
gApp.wl_tbm = wayland_tbm_client_get_wl_tbm(gApp.tbm_client);
create_consumer(&gApp);
-
- while (ret >= 0 && gApp.exit == 0) {
+
+ while (ret >= 0 && gApp.exit == 0)
ret = wl_display_dispatch(dpy);
- }
finish:
return 1;
#include "wayland-tbm-test-client-protocol.h"
-#define WL_APP_C_LOG(fmt, ...) fprintf (stderr, "[CLIENT(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
+#define WL_APP_C_LOG(fmt, ...) fprintf(stderr, "[CLIENT(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
typedef struct {
struct wayland_tbm_client *tbm_client;
struct wl_buffer *bufs[3];
int cur_buf;
-
+
int exit;
} AppInfoClient;
{
tbm_surface_h tbm_surf;
int i;
-
+
app->surface = wl_tbm_test_create_surface(app->wl_tbm_test);
wl_tbm_test_set_provider(app->wl_tbm_test, app->surface, "test");
//Make wl_buffer
- for (i=0; i<3; i++) {
- tbm_surf = tbm_surface_create(16,16, TBM_FORMAT_ABGR8888);
+ for (i = 0; i < 3; i++) {
+ tbm_surf = tbm_surface_create(16, 16, TBM_FORMAT_ABGR8888);
app->bufs[i] = wayland_tbm_client_create_buffer(app->tbm_client, tbm_surf);
}
}
AppInfoClient *app = (AppInfoClient *)data;
wl_test_surface_attach(app->surface, app->bufs[app->cur_buf]);
- app->cur_buf = (app->cur_buf+1)%3;
-
+ app->cur_buf = (app->cur_buf + 1) % 3;
+
wl_callback_destroy(wl_callback);
}
struct wl_display *dpy = NULL;
struct wl_registry *registry;
const char *dpy_name = NULL;
- const static char *default_dpy_name = "tbm_remote";
+ static const char *default_dpy_name = "tbm_remote";
int ret = 0;
struct wl_callback *wl_cb;
- if (argc > 1) {
+ if (argc > 1)
dpy_name = argv[1];
- } else {
+ else
dpy_name = default_dpy_name;
- }
dpy = wl_display_connect(dpy_name);
if (!dpy) {
gApp.wl_tbm = wayland_tbm_client_get_wl_tbm(gApp.tbm_client);
create_provider(&gApp);
-
+
while (ret >= 0 && gApp.exit == 0) {
wl_cb = wl_display_sync(dpy);
wl_callback_add_listener(wl_cb, &do_done_impl, &gApp);
static void
wl_tbm_test_idle_cb(void *data)
{
-#if 0
+#if 0
AppInfo *app = data;
AppSurface *app_surface, *tmp;
tbm_surface_h back = NULL;
#include "wayland-tbm-test-server-protocol.h"
-#define SERVER_LOG(fmt, ...) fprintf (stderr, "[SERVER(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
+#define SERVER_LOG(fmt, ...) fprintf(stderr, "[SERVER(%d):%s] " fmt, getpid(), __func__, ##__VA_ARGS__)
typedef struct {
struct wl_display *dpy;
struct wl_global *wl_tbm_test;
struct wl_resource *provider;
-}Server;
+} Server;
typedef struct {
struct wl_resource *wl_surface;
struct wl_resource *front;
struct wl_list remotes;
-}Surface;
+} Surface;
typedef struct {
struct wl_resource *wl_remote_surface;
struct wl_resource *wl_tbm;
struct wl_resource *front;
Surface *provider;
-
+
struct wl_list link;
-}RemoteSurface;
+} RemoteSurface;
Server gServer;
wl_list_remove(&remote->link);
SERVER_LOG("%p(%p)\n", resource, remote);
}
-
+
free(remote);
}
Surface *surface = (Surface *)wl_resource_get_user_data(resource);
SERVER_LOG("%p provider:%p\n", resource, gServer.provider);
-
+
if (!wl_list_empty(&surface->remotes)) {
RemoteSurface *pos, *tmp;
-
- wl_list_for_each_safe(pos, tmp,&surface->remotes, link) {
+
+ wl_list_for_each_safe(pos, tmp, &surface->remotes, link) {
pos->provider = NULL;
wl_list_remove(&pos->link);
}
if (surface->front && (surface->front != wl_buffer))
wl_buffer_send_release(surface->front);
-
+
surface->front = wl_buffer;
if (!wl_list_empty(&surface->remotes)) {
RemoteSurface *pos;
struct wl_resource *wl_remote_buffer = NULL;
-
+
wl_list_for_each(pos, &surface->remotes, link) {
if (pos->wl_tbm) {
wl_remote_buffer = wayland_tbm_server_get_remote_buffer(NULL, wl_buffer, pos->wl_tbm);
if (!wl_remote_buffer) {
tbm_surface_h tbm_surface;
-
+
tbm_surface = wayland_tbm_server_get_surface(NULL, wl_buffer);
wl_remote_buffer = wayland_tbm_server_export_buffer(NULL, pos->wl_tbm, tbm_surface);
SERVER_LOG("export: wl_tbm:%p, tbm_surf:%p, wl_buf:%p\n", pos->wl_tbm, tbm_surface, wl_remote_buffer);
_wl_test_surface_frame_cb
};
-static void
+static void
_wl_tbm_test_create_surface(struct wl_client *client,
struct wl_resource *resource,
uint32_t id)
wl_list_init(&surface->remotes);
surface->wl_surface = wl_resource_create(client,
&wl_test_surface_interface, 1, id);
- wl_resource_set_implementation(surface->wl_surface,
+ wl_resource_set_implementation(surface->wl_surface,
&wl_test_surface_impl, surface,
_wl_test_surface_destroy);
}
id);
wl_resource_set_implementation(remote->wl_remote_surface,
&wl_test_remote_impl,
- remote,
+ remote,
_wl_test_remote_destroy);
wl_list_init(&remote->link);
wl_list_insert(&provider->remotes, &remote->link);
gServer.tbm_server = tbm_server;
gServer.wl_tbm_test = wl_global_create(dpy, &wl_tbm_test_interface, 1, &gServer,
wl_tbm_test_bind_cb);
-
+
wl_display_run(dpy);
return 0;
finish:
if (tbm_monitor) {
- if (tbm_monitor->wl_tbm_monitor) {
+ if (tbm_monitor->wl_tbm_monitor)
wl_tbm_monitor_destroy(tbm_monitor->wl_tbm_monitor);
- }
free(tbm_monitor);
}