diff options
author | Chad Versace <chad.versace@linux.intel.com> | 2013-01-04 13:13:40 -0800 |
---|---|---|
committer | Chad Versace <chad.versace@linux.intel.com> | 2013-01-04 14:08:31 -0800 |
commit | 9f032714ce447bd143c07629dfb8f2d2bcad34bc (patch) | |
tree | e88d3a99b675b29aefbf43928fbf311606816462 /man | |
parent | e393283c148d97413c7efb86369b56912e56b3f9 (diff) |
core,man: Accept WAFFLE_DONT_CARE for more config attrs
The affected attributes are:
- integer attributes
- WAFFLE_*_SIZE
- WAFFLE_SAMPLES
- boolean attributes
- WAFFLE_ACCUM_BUFFER
- WAFFLE_SAMPLE_BUFFERS
- WAFFLE_DOUBLE_BUFFERED
Waffle needs to accept DONT_CARE for these attributes for two reasons:
- Waffle attempts to follow the behavior of EGL and GLX when possible,
and both accept DONT_CARE for the affected attributes. (See spec
quotes in this patch).
- Waffle will soon acquire a function that returns a *list* of
matching configs, similar to eglChooseConfig. In order for that
function to return a maximumally sized list, we must pass DONT_CARE
to GLX and EGL, not the attribute's default value. As the EGL 1.4
states concerning eglChooseConfig: "If EGL_DONT_CARE is specified
as an attribute value, then the attribute will not be checked.".
Notes on commit 8c21708
-----------------------
Before commit 8c21708, WAFFLE_DONT_CARE was accepted for WAFFLE_*_SIZE and
WAFFLE_SAMPLES, and waffle passed DONT_CARE along to GLX and EGL. Commit
8c21708 unwisely chose to cease accepting WAFFLE_DONT_CARE for those
attributes. In that commit message, I misinterpreted the GLX and EGL
specs.
Even though this patch reinstates the acceptance of WAFFLE_DONT_CARE for
those attributes, it does not restore all the old behavior. Before commit
8c21708, the default value for those attributes was incorrectly DONT_CARE;
now it is 0.
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Diffstat (limited to 'man')
-rw-r--r-- | man/waffle_config.3.xml | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/man/waffle_config.3.xml b/man/waffle_config.3.xml index 00631af..082ed92 100644 --- a/man/waffle_config.3.xml +++ b/man/waffle_config.3.xml @@ -354,7 +354,7 @@ struct waffle_config; <para> The default value for each size attribute is <constant>0</constant>. - The range of valid values is the non-negative integers. + Valid values are the non-negative integers and <constant>WAFFLE_DONT_CARE</constant>. If the requested size for a channel is 0, then any surface created with the config will lack that channel. If the requested size @@ -369,10 +369,20 @@ struct waffle_config; <term><constant>WAFFLE_SAMPLES</constant></term> <listitem> <para> - The valid values for <constant>WAFFLE_SAMPLE_BUFFERS</constant> are true and false. The default value is - false. If false, then any surface created with the config will not be multisampled. If true, the any surface + The default value of <constant>WAFFLE_SAMPLE_BUFFERS</constant> is false(0). + + Valid values are true(1), false(0), and <constant>WAFFLE_DONT_CARE</constant>. + + The attribute specifies if a surface created with this config is double-buffered. + + If false, then any surface created with the config will not be multisampled. If true, the any surface created with the config will be multisampled, where the number of samples will be at least - <constant>WAFFLE_SAMPLES</constant>. The default value of <constant>WAFFLE_SAMPLES</constant> is 0. + <constant>WAFFLE_SAMPLES</constant>. + </para> + <para> + The default value of <constant>WAFFLE_SAMPLES</constant> is <constant>0</constant>. + + Valid values are the non-negative integers and <constant>WAFFLE_DONT_CARE</constant>. </para> </listitem> </varlistentry> @@ -381,8 +391,11 @@ struct waffle_config; <term><constant>WAFFLE_DOUBLE_BUFFERED</constant></term> <listitem> <para> - The valid values are true and false. The default is true. This attribute specifies if a surface created with - this config is double-buffered. + The default value is true(1). + + Valid values are true(1), false(0), and <constant>WAFFLE_DONT_CARE</constant>. + + This attribute specifies if a surface created with this config is double-buffered. </para> </listitem> </varlistentry> @@ -391,12 +404,15 @@ struct waffle_config; <term><constant>WAFFLE_ACCUM_BUFFER</constant></term> <listitem> <para> - The valid values are true and false. The default is false. This attribute specifies if a surface created with - this config possesses an accumulation buffer. + The default value is false(0). + + Valid values are true(1), false(0), and <constant>WAFFLE_DONT_CARE</constant>. + + This attribute specifies if a surface created with this config possesses an accumulation buffer. </para> </listitem> </varlistentry> - + </variablelist> </refsect1> |