~ubuntu-branches/ubuntu/natty/mesa/natty-proposed

« back to all changes in this revision

Viewing changes to src/egl/main/egldisplay.h

  • Committer: Bazaar Package Importer
  • Author(s): Robert Hooker, Robert Hooker, Christopher James Halse Rogers
  • Date: 2010-09-14 08:55:40 UTC
  • mfrom: (1.2.28 upstream)
  • Revision ID: james.westby@ubuntu.com-20100914085540-m4fpl0hdjlfd4jgz
Tags: 7.9~git20100909-0ubuntu1
[ Robert Hooker ]
* New upstream git snapshot up to commit 94118fe2d4b1e5 (LP: #631413)
* New features include ATI HD5xxx series support in r600, and a vastly
  improved glsl compiler.
* Remove pre-generated .pc's, use the ones generated at build time
  instead.
* Remove all references to mesa-utils now that its no longer shipped
  with the mesa source.
* Disable the experimental ARB_fragment_shader option by default on
  i915, it exposes incomplete functionality that breaks KDE compositing
  among other things. It can be enabled via driconf still. (LP: #628930).

[ Christopher James Halse Rogers ]
* debian/patches/04_osmesa_version.diff:
  - Refresh for new upstream
* Bugs fixed in this release:
  - Fixes severe rendering corruption in Unity on radeon (LP: #628727,
    LP: #596292, LP: #599741, LP: #630315, LP: #613694, LP: #599741).
  - Also fixes rendering in gnome-shell (LP: #578619).
  - Flickering in OpenGL apps on radeon (LP: #626943, LP: #610541).
  - Provides preliminary support for new intel chips (LP: #601052).
* debian/rules:
  - Update configure flags to match upstream reshuffling.
  - Explicitly remove gallium DRI drivers that we don't want to ship.
* Update debian/gbp.conf for this Maverick-specific packaging
* libegl1-mesa-dri-x11,kms: There are no longer separate kms or x11 drivers
  for EGL, libegl1-mesa-drivers now contains a single driver that provides
  both backends.

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
#include "egltypedefs.h"
6
6
#include "egldefines.h"
7
7
#include "eglmutex.h"
 
8
#include "eglarray.h"
 
9
 
 
10
 
 
11
enum _egl_platform_type {
 
12
   _EGL_PLATFORM_WINDOWS,
 
13
   _EGL_PLATFORM_X11,
 
14
   _EGL_PLATFORM_DRM,
 
15
   _EGL_PLATFORM_FBDEV,
 
16
 
 
17
   _EGL_NUM_PLATFORMS,
 
18
   _EGL_INVALID_PLATFORM = -1
 
19
};
 
20
typedef enum _egl_platform_type _EGLPlatformType;
8
21
 
9
22
 
10
23
enum _egl_resource_type {
11
24
   _EGL_RESOURCE_CONTEXT,
12
25
   _EGL_RESOURCE_SURFACE,
13
26
   _EGL_RESOURCE_IMAGE,
 
27
   _EGL_RESOURCE_SYNC,
14
28
 
15
29
   _EGL_NUM_RESOURCES
16
30
};
39
53
{
40
54
   EGLBoolean MESA_screen_surface;
41
55
   EGLBoolean MESA_copy_context;
 
56
   EGLBoolean MESA_drm_display;
 
57
   EGLBoolean MESA_drm_image;
 
58
 
42
59
   EGLBoolean KHR_image_base;
43
60
   EGLBoolean KHR_image_pixmap;
44
61
   EGLBoolean KHR_vg_parent_image;
47
64
   EGLBoolean KHR_gl_texture_3D_image;
48
65
   EGLBoolean KHR_gl_renderbuffer_image;
49
66
 
 
67
   EGLBoolean KHR_reusable_sync;
 
68
   EGLBoolean KHR_fence_sync;
 
69
 
 
70
   EGLBoolean KHR_surfaceless_gles1;
 
71
   EGLBoolean KHR_surfaceless_gles2;
 
72
   EGLBoolean KHR_surfaceless_opengl;
 
73
 
 
74
   EGLBoolean NOK_swap_region;
 
75
   EGLBoolean NOK_texture_from_pixmap;
 
76
 
50
77
   char String[_EGL_MAX_EXTENSIONS_LEN];
51
78
};
52
79
 
53
80
 
54
 
struct _egl_display 
 
81
struct _egl_display
55
82
{
56
83
   /* used to link displays */
57
84
   _EGLDisplay *Next;
58
85
 
59
86
   _EGLMutex Mutex;
60
87
 
61
 
   EGLNativeDisplayType NativeDisplay;
 
88
   _EGLPlatformType Platform;
 
89
   void *PlatformDisplay;
62
90
 
63
91
   EGLBoolean Initialized; /**< True if the display is initialized */
64
92
   _EGLDriver *Driver;
73
101
 
74
102
   _EGLExtensions Extensions;
75
103
 
76
 
   EGLint NumScreens;
77
 
   _EGLScreen **Screens;  /* array [NumScreens] */
78
 
 
79
 
   EGLint MaxConfigs;
80
 
   EGLint NumConfigs;
81
 
   _EGLConfig **Configs;  /* array [NumConfigs] of ptr to _EGLConfig */
 
104
   _EGLArray *Screens;
 
105
   _EGLArray *Configs;
82
106
 
83
107
   /* lists of resources */
84
108
   _EGLResource *ResourceLists[_EGL_NUM_RESOURCES];
85
109
};
86
110
 
87
111
 
 
112
extern _EGLPlatformType
 
113
_eglGetNativePlatform(void);
 
114
 
 
115
 
88
116
extern void
89
117
_eglFiniDisplay(void);
90
118
 
91
119
 
92
120
extern _EGLDisplay *
93
 
_eglFindDisplay(EGLNativeDisplayType displayName);
 
121
_eglFindDisplay(_EGLPlatformType plat, void *plat_dpy);
94
122
 
95
123
 
96
124
PUBLIC void