public class GLRendererQuirks extends Object
Using centralized quirk identifier enables us to locate code dealing w/ it and hence eases it's maintenance.
Modifier and Type | Field and Description |
---|---|
static int |
COUNT
Number of quirks known.
|
static int |
GLSLBuggyDiscard
GLSL
discard command leads to undefined behavior or won't get compiled if being used. |
static int |
NoDoubleBufferedBitmap
On Windows no double buffered bitmaps are guaranteed to be available.
|
static int |
NoDoubleBufferedPBuffer
Crashes XServer when using double buffered PBuffer with:
Mesa DRI Intel(R) Sandybridge Desktop
Mesa DRI Intel(R) Ivybridge Mobile - 3.0 Mesa 8.0.4
Gallium 0.4 on AMD CYPRESS
For now, it is safe to disable it w/ hw-acceleration.
|
static int |
NoOffscreenBitmap
No offscreen bitmap available, currently true for JOGL's OSX implementation.
|
static int |
NoSetSwapInterval
Crashes application when trying to set EGL swap interval on Android 4.0.3 / Pandaboard ES / PowerVR SGX 540
|
static int |
NoSetSwapIntervalPostRetarget
SIGSEGV on setSwapInterval() after changing the context's drawable w/ 'Mesa 8.0.4' dri2SetSwapInterval/DRI2 (soft & intel)
|
Constructor and Description |
---|
GLRendererQuirks(int[] quirks,
int offset,
int len) |
Modifier and Type | Method and Description |
---|---|
boolean |
exist(int quirk) |
String |
toString() |
static String |
toString(int quirk) |
StringBuilder |
toString(StringBuilder sb) |
static void |
validateQuirk(int quirk) |
public static final int NoDoubleBufferedPBuffer
public static final int NoDoubleBufferedBitmap
public static final int NoSetSwapInterval
public static final int NoOffscreenBitmap
public static final int NoSetSwapIntervalPostRetarget
public static final int GLSLBuggyDiscard
discard
command leads to undefined behavior or won't get compiled if being used. Appears to happen on Nvidia Tegra2. FIXME: Constrain version.public static final int COUNT
public GLRendererQuirks(int[] quirks, int offset, int len) throws IllegalArgumentException
quirks
- an array of valid quirksoffset
- offset in quirks array to start readinglen
- number of quirks to read from offset within quirks arrayIllegalArgumentException
- if one of the quirks is out of rangepublic final boolean exist(int quirk) throws IllegalArgumentException
quirk
- the quirk to be testedIllegalArgumentException
- if quirk is out of rangepublic final StringBuilder toString(StringBuilder sb)
public static void validateQuirk(int quirk) throws IllegalArgumentException
quirk
- the quirk to be validated, i.e. whether it is out of rangeIllegalArgumentException
- if quirk is out of rangepublic static final String toString(int quirk) throws IllegalArgumentException
quirk
- the quirk to be converted to StringIllegalArgumentException
- if quirk is out of rangeCopyright 2010 JogAmp Community.