~darkxst/ubuntu/raring/cogl/lp1163025

« back to all changes in this revision

Viewing changes to cogl/cogl-onscreen-private.h

  • Committer: Package Import Robot
  • Author(s): Jeremy Bicha
  • Date: 2012-03-13 19:11:11 UTC
  • mfrom: (1.1.4)
  • Revision ID: package-import@ubuntu.com-20120313191111-3hgk529qkh9m6uk2
Tags: 1.9.8-0ubuntu1
* New upstream release (LP: #941617)
* Updated symbols & library name for soname update
* debian/control.in: Bump minimum glib to 2.28
* debian/patches/02_disable_armv5t_specific_optimization.patch: Disabled

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Cogl
 
3
 *
 
4
 * An object oriented GL/GLES Abstraction/Utility Layer
 
5
 *
 
6
 * Copyright (C) 2011 Intel Corporation.
 
7
 *
 
8
 * This library is free software; you can redistribute it and/or
 
9
 * modify it under the terms of the GNU Lesser General Public
 
10
 * License as published by the Free Software Foundation; either
 
11
 * version 2 of the License, or (at your option) any later version.
 
12
 *
 
13
 * This library is distributed in the hope that it will be useful,
 
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
16
 * Lesser General Public License for more details.
 
17
 *
 
18
 * You should have received a copy of the GNU Lesser General Public
 
19
 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
 
20
 *
 
21
 *
 
22
 */
 
23
 
 
24
#ifndef __COGL_ONSCREEN_PRIVATE_H
 
25
#define __COGL_ONSCREEN_PRIVATE_H
 
26
 
 
27
#include "cogl-framebuffer-private.h"
 
28
#include "cogl-queue.h"
 
29
 
 
30
#include <glib.h>
 
31
 
 
32
#ifdef COGL_HAS_WIN32_SUPPORT
 
33
#include <windows.h>
 
34
#endif
 
35
 
 
36
typedef struct _CoglSwapBuffersNotifyEntry CoglSwapBuffersNotifyEntry;
 
37
 
 
38
COGL_TAILQ_HEAD (CoglSwapBuffersNotifyList, CoglSwapBuffersNotifyEntry);
 
39
 
 
40
struct _CoglSwapBuffersNotifyEntry
 
41
{
 
42
  COGL_TAILQ_ENTRY (CoglSwapBuffersNotifyEntry) list_node;
 
43
 
 
44
  CoglSwapBuffersNotify callback;
 
45
  void *user_data;
 
46
  unsigned int id;
 
47
};
 
48
 
 
49
struct _CoglOnscreen
 
50
{
 
51
  CoglFramebuffer  _parent;
 
52
 
 
53
#ifdef COGL_HAS_X11_SUPPORT
 
54
  guint32 foreign_xid;
 
55
  CoglOnscreenX11MaskCallback foreign_update_mask_callback;
 
56
  void *foreign_update_mask_data;
 
57
#endif
 
58
 
 
59
#ifdef COGL_HAS_WIN32_SUPPORT
 
60
  HWND foreign_hwnd;
 
61
#endif
 
62
 
 
63
  gboolean swap_throttled;
 
64
 
 
65
  CoglSwapBuffersNotifyList swap_callbacks;
 
66
 
 
67
  void *winsys;
 
68
};
 
69
 
 
70
CoglOnscreen *
 
71
_cogl_onscreen_new (void);
 
72
 
 
73
void
 
74
_cogl_framebuffer_winsys_update_size (CoglFramebuffer *framebuffer,
 
75
                                      int width, int height);
 
76
 
 
77
void
 
78
_cogl_onscreen_notify_swap_buffers (CoglOnscreen *onscreen);
 
79
 
 
80
#endif /* __COGL_ONSCREEN_PRIVATE_H */