mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 04:48:08 +02:00
mesa/main: Add comments to mfeatures.h.
The comments document the conventions that a feature may follow.
This commit is contained in:
parent
c9ddd6f810
commit
17099f5e19
1 changed files with 32 additions and 0 deletions
|
|
@ -36,6 +36,38 @@
|
||||||
#define _HAVE_FULL_GL 1
|
#define _HAVE_FULL_GL 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* assert that a feature is disabled and should never be used */
|
||||||
|
#define ASSERT_NO_FEATURE() ASSERT(0)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A feature can be anything. But most of them share certain characteristics.
|
||||||
|
*
|
||||||
|
* When a feature defines driver entries, they can be initialized by
|
||||||
|
* _MESA_INIT_<FEATURE>_FUNCTIONS
|
||||||
|
*
|
||||||
|
* When a feature defines vtxfmt entries, they can be initialized and
|
||||||
|
* installed by
|
||||||
|
* _MESA_INIT_<FEATURE>_VTXFMT
|
||||||
|
* _mesa_install_<feature>_vtxfmt
|
||||||
|
*
|
||||||
|
* When a feature defines dispatch entries, they are initialized by
|
||||||
|
* _mesa_init_<feature>_dispatch
|
||||||
|
*
|
||||||
|
* When a feature has states, they are initialized and freed by
|
||||||
|
* _mesa_init_<feature>
|
||||||
|
* _mesa_free_<feature>_data
|
||||||
|
*
|
||||||
|
* Except for states, the others compile to no-op when a feature is disabled.
|
||||||
|
*
|
||||||
|
* The GLAPIENTRYs and helper functions defined by a feature should also
|
||||||
|
* compile to no-op when it is disabled. But to save typings and to catch
|
||||||
|
* bugs, some of them may be unavailable, or compile to ASSERT_NO_FEATURE()
|
||||||
|
* when the feature is disabled.
|
||||||
|
*
|
||||||
|
* A feature following the conventions may be used without knowing if it is
|
||||||
|
* enabled or not.
|
||||||
|
*/
|
||||||
|
|
||||||
#define FEATURE_accum _HAVE_FULL_GL
|
#define FEATURE_accum _HAVE_FULL_GL
|
||||||
#define FEATURE_attrib_stack _HAVE_FULL_GL
|
#define FEATURE_attrib_stack _HAVE_FULL_GL
|
||||||
#define FEATURE_colortable _HAVE_FULL_GL
|
#define FEATURE_colortable _HAVE_FULL_GL
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue