summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/context.h
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Optimize get.c by using a table-driven approachKristian Høgsberg2010-05-111-0/+2
|
* mesa: Move API specific context intialization into context.cKristian Høgsberg2010-04-221-3/+0
|
* mesa: Track the OpenGL API we're implementing in the contextKristian Høgsberg2010-04-221-0/+15
| | | | | | | | | | | | | | | | This introduces a new way to create or initialize a context: _mesa_create_context_for_api and _mesa_initialize_context_for_api which in addition to the current arguments take an api enum to indicate which OpenGL API the context should implement. At this point the API field in GLcontext isn't used anywhere, but later commits will key certain functionality off of it. The _mesa_create_context and _mesa_initialize_context functions are kept in place as wrappers around the *_for_api versions, passing in API_OPENGL to get the same behavior as before.
* mesa: Remove support for creating color-index visualsIan Romanick2010-03-031-5/+1
| | | | | | | | Remove the rgbMode and indexBits parameters from _mesa_create_visual and _mesa_initialize_visual. These values are now hardcoded to GL_TRUE and 0. Signed-off-by: Ian Romanick <[email protected]>
* mesa: code refactoring- new _mesa_finish(), _mesa_flush()Brian Paul2009-10-221-0/+8
|
* mesa: new _mesa_valid_to_render() functionBrian Paul2009-08-141-1/+5
| | | | | Tests if the current shader/program is valid and that the framebuffer is complete. To be called by glBegin, glDrawArrays, etc.
* mesa: rework viewport/scissor initialization codeBrian Paul2009-06-171-0/+3
| | | | | | | | | | The first time a context is bound to a drawable, the viewport and scissor bounds are initialized to the buffer's size. This is actually a bit tricky. A new _mesa_check_init_viewport() function is called in several places to check if the viewport has been initialized. We also use a new ctx->ViewportInitialized flag instead of the overloaded ctx->FirstTimeCurrent flag.
* mesa: Add success/failures return value to _mesa_make_current.José Fonseca2009-05-301-1/+1
|
* mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-081-0/+4
| | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* mesa: remove unneeded #includeBrian Paul2009-02-221-1/+3
|
* mesa: allow for extra per-context initBrian Paul2008-09-211-0/+3
| | | | (cherry picked from commit 815cdcfbc0740c66b901361620c88d99541bdad2)
* mesa: re-define NEED_SECONDARY_COLOR. fix #14310.Xiang, Haihao2008-02-021-0/+2
|
* fix NEED_SECONDARY_COLOR for vert/frag progsBrian2007-12-181-4/+4
|
* Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian2007-07-041-1/+1
| | | | of -I flags.
* Remove the never-used SI-style imports/exports code.Brian2007-04-041-38/+0
|
* new RGBA_LOGICOP_ENABLED() macroBrian Paul2006-11-021-0/+8
|
* move/update commentsBrian Paul2006-07-201-37/+33
|
* remove unused NEED_TWO_SIDED_LIGHTING() macroBrian Paul2006-07-201-17/+1
|
* Move stuff common to vertex/fragment_program into the base class, including:Brian Paul2005-11-121-2/+2
| | | | | | Instructions, InputsRead, OutputsWritten, and Parameters. Also, added debug functions: _mesa_print_instruction(), _mesa_print_program_parameters() and revamp _mesa_print_program().
* Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul2005-05-041-34/+2
| | | | | | | Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
* added _mesa_share_state()Brian Paul2005-04-151-0/+2
|
* In GLX_USE_TLS builds, make GET_CURRENT_CONTEXT use the TLS verion of theIan Romanick2005-04-141-25/+0
| | | | | | variable. Without this, GET_CURRENT_CONTEXT would *always* result in a call to _glapi_get_context (because _glapi_Context is a const pointer to NULL in TLS builds).
* Added ctx->Vertex/FragmentProgram._Enable flags. Set when vertex/fragmentBrian Paul2004-04-231-4/+4
| | | | | | | program is enabled AND the currently bound program is valid. Check _Enable instead of Enable to prevent things from blowing up when someone calls glEnable(GL_VERTEX_PROGRAM_ARB) without actually defining a program.
* Before calling _mesa_create_context(), initialize a dd_function_table structBrian Paul2004-01-201-4/+4
| | | | | | | | | | by calling _mesa_init_driver_functions() and then plugging in the driver- specific functions. In particular, make sure ctx->Driver.NewTextureObject points to the appropriate driver function so that _all_ texture objects are augmented with the driver-specific data. Put in a bunch of assertions in the texture-related driver functions that texObj->DriverData is valid. Remove old dead code in near future.
* Update NEED_SECONDARY_COLOR macro to test if either vertex/fragmentBrian Paul2003-12-091-1/+6
| | | | | programs are enabled and if they need secondary color input register. Patch by Karl Rasche, with tweaks by Brian.
* Remove unnecessary usage of __FUNCTION__.Brian Paul2003-11-251-2/+2
| | | | #define MESA_FUNCTION to __FUNCTION__ if MESA_DEBUG is defined.
* Merge vtx-0-2-branchKeith Whitwell2003-11-241-2/+2
|
* Added GLAPIENTRY decorations for all first level OpenGL API function entryKendall Bennett2003-10-211-2/+2
| | | | | points so that the calling conventions will work correctly with the assembler stubs with the Open Watcom compiler.
* Move away from using the ctx->_TriangleCaps bitfield.Brian Paul2003-09-181-0/+26
| | | | | New macros in context.h for testing state: NEED_SECONDARY_COLOR and NEED_TWO_SIDED_LIGHTING.
* Move context ASSERT/FLUSH macros to context.hBrian Paul2003-09-181-0/+104
|
* Merge Jose's documentation and core Mesa changes from embedded branchKeith Whitwell2003-07-171-34/+55
|
* Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick2003-06-051-1/+0
|
* Header file clean-up:Brian Paul2002-10-241-4/+5
| | | | | | | | 1. Remove all.h and PC_HEADER junk. 2. Rolled mem.c and mem.h into imports.c and imports.h 3. Include imports.h instead of mem.h Restore _mesa_create/initialize_context() to be like they were in 4.0.4 New wrappers for a few std C functions: _mesa_atoi(), _mesa_strstr(), etc.
* context-related cleanups (ex: _mesa_notifySwapBuffers instead of ↵Brian Paul2002-10-141-5/+1
| | | | _mesa_swapbuffers)
* Applied Matt Sealey's patch to remove/isolate all stdio.h function calls.Brian Paul2002-06-291-15/+3
| | | | Instead of mstdio.[ch], use imports.[ch] to isolate these functions.
* Added ctx parameter to _mesa_debug()Brian Paul2002-06-151-2/+5
| | | | | | Added _mesa_printf() Updated SetDrawBuffer() function in all drivers (ala 4.0.3) Import 4.0.3/DRI changes.
* more removal of fprintf() callsBrian Paul2002-06-131-3/+3
|
* fixed a couple dumb mistakesBrian Paul2002-06-131-2/+2
|
* New _mesa_debug() function to replace fprintf() calls.Brian Paul2002-06-131-24/+51
| | | | | | | | Some source files updated to call _mesa_debug(), but not finished. Added __GLimports as a parameter to _mesa_create/init_context() and updated drivers accordingly. Fleshed-out more of the __GLimports and __GLexports functionality. Removed run-time config file support (config.c)
* vertex program check-inBrian Paul2001-12-141-5/+2
|
* minor clean-ups and warning fixesBrian Paul2001-05-031-5/+1
|
* added _mesa_free_framebuffer_data()Brian Paul2001-04-271-1/+4
|
* Consistent copyright info (version number, date) across all files.Gareth Hughes2001-03-121-3/+3
|
* lots of gl_*() to _mesa_*() namespace clean-upBrian Paul2001-03-031-5/+6
|
* GLvisual inside GLframebuffer is no longer a pointer, copy the struct instead.Brian Paul2001-02-281-6/+6
| | | | | Added context/drawbuffer visual config sanity checking in _mesa_make_current2(). Added some 'const' keywords.
* Committing in .Jouk Jansen2000-11-221-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modified Files: Mesa/macos/gli_api/gliapi1.h Mesa/macos/gli_api/gliapi2.h Mesa/macos/gli_api/gliapiext.h Mesa/macos/src-gli/fxgli.c Mesa/macos/src-gli/fxgli.h Mesa/macos/src-gli/fxgli2.c Mesa/macos/src-gli/fxgli_tridebug.c Mesa/src/accum.c Mesa/src/accum.h Mesa/src/all.h Mesa/src/alpha.c Mesa/src/alpha.h Mesa/src/attrib.c Mesa/src/attrib.h Mesa/src/bitmap.c Mesa/src/bitmap.h Mesa/src/blend.c Mesa/src/blend.h Mesa/src/buffers.c Mesa/src/buffers.h Mesa/src/clip.c Mesa/src/clip.h Mesa/src/colortab.h Mesa/src/config.c Mesa/src/context.c Mesa/src/context.h Mesa/src/convolve.c Mesa/src/convolve.h Mesa/src/copypix.c Mesa/src/copypix.h Mesa/src/debug.c Mesa/src/depth.c Mesa/src/depth.h Mesa/src/dlist.c Mesa/src/dlist.h Mesa/src/drawpix.c Mesa/src/drawpix.h Mesa/src/enable.c Mesa/src/enable.h Mesa/src/eval.c Mesa/src/eval.h Mesa/src/extensions.c Mesa/src/extensions.h Mesa/src/feedback.c Mesa/src/feedback.h Mesa/src/fog.c Mesa/src/fog.h Mesa/src/get.c Mesa/src/get.h Mesa/src/glapi.c Mesa/src/glthread.h Mesa/src/highpc.c Mesa/src/hint.h Mesa/src/histogram.h Mesa/src/image.c Mesa/src/image.h Mesa/src/imports.c Mesa/src/light.c Mesa/src/light.h Mesa/src/lines.c Mesa/src/lines.h Mesa/src/logic.c Mesa/src/logic.h Mesa/src/masking.c Mesa/src/masking.h Mesa/src/matrix.c Mesa/src/matrix.h Mesa/src/pixel.c Mesa/src/pixel.h Mesa/src/points.c Mesa/src/points.h Mesa/src/polygon.c Mesa/src/polygon.h Mesa/src/rastpos.c Mesa/src/readpix.c Mesa/src/scissor.c Mesa/src/scissor.h Mesa/src/state.c Mesa/src/state.h Mesa/src/stencil.c Mesa/src/stencil.h Mesa/src/teximage.c Mesa/src/teximage.h Mesa/src/texobj.c Mesa/src/texobj.h Mesa/src/texstate.c Mesa/src/texstate.h Mesa/src/texture.c Mesa/src/texture.h Mesa/src/texutil.c Mesa/src/texutil.h Mesa/src/varray.c Mesa/src/varray.h Mesa/src/X/fakeglx.c Mesa/src/X/xm_api.c Mesa/src/X/xm_dd.c Mesa/src/X/xm_line.c Mesa/src/X/xm_span.c Mesa/src/X/xm_tri.c Mesa/src/swrast/s_aaline.c Mesa/src/swrast/s_aaline.h Mesa/src/swrast/s_aatriangle.h Mesa/src/swrast/s_accum.h Mesa/src/swrast/s_alpha.h Mesa/src/swrast/s_alphabuf.h Mesa/src/swrast/s_blend.h Mesa/src/swrast/s_context.c Mesa/src/swrast/s_context.h Mesa/src/swrast/s_depth.h Mesa/src/swrast/s_drawpix.h Mesa/src/swrast/s_feedback.h Mesa/src/swrast/s_fog.h Mesa/src/swrast/s_histogram.h Mesa/src/swrast/s_lines.h Mesa/src/swrast/s_logic.h Mesa/src/swrast/s_masking.h Mesa/src/swrast/s_pb.h Mesa/src/swrast/s_pixeltex.h Mesa/src/swrast/s_points.h Mesa/src/swrast/s_quads.c Mesa/src/swrast/s_quads.h Mesa/src/swrast/s_scissor.h Mesa/src/swrast/s_span.h Mesa/src/swrast/s_stencil.h Mesa/src/swrast/s_texture.h Mesa/src/swrast/s_triangle.h Mesa/src/swrast/s_zoom.h Mesa/src/swrast/swrast.h Mesa/src/swrast_setup/ss_context.h Mesa/src/swrast_setup/ss_triangle.c Mesa/src/swrast_setup/ss_triangle.h Mesa/src/swrast_setup/ss_vb.h Mesa/src/tnl/t_clip.c Mesa/src/tnl/t_clip.h Mesa/src/tnl/t_context.c Mesa/src/tnl/t_context.h Mesa/src/tnl/t_cva.c Mesa/src/tnl/t_cva.h Mesa/src/tnl/t_debug.c Mesa/src/tnl/t_debug.h Mesa/src/tnl/t_dlist.h Mesa/src/tnl/t_eval.c Mesa/src/tnl/t_eval.h Mesa/src/tnl/t_fog.c Mesa/src/tnl/t_fog.h Mesa/src/tnl/t_light.c Mesa/src/tnl/t_light.h Mesa/src/tnl/t_pipeline.c Mesa/src/tnl/t_pipeline.h Mesa/src/tnl/t_shade.c Mesa/src/tnl/t_shade.h Mesa/src/tnl/t_stages.c Mesa/src/tnl/t_stages.h Mesa/src/tnl/t_texture.c Mesa/src/tnl/t_texture.h Mesa/src/tnl/t_trans_elt.c Mesa/src/tnl/t_trans_elt.h Mesa/src/tnl/t_varray.c Mesa/src/tnl/t_varray.h Mesa/src/tnl/t_vb.c Mesa/src/tnl/t_vb.h Mesa/src/tnl/t_vbcull.c Mesa/src/tnl/t_vbcull.h Mesa/src/tnl/t_vbfill.c Mesa/src/tnl/t_vbfill.h Mesa/src/tnl/t_vbindirect.c Mesa/src/tnl/t_vbindirect.h Mesa/src/tnl/t_vbrender.c Mesa/src/tnl/t_vbrender.h Mesa/src/tnl/t_vbxform.c Mesa/src/tnl/t_vbxform.h Mesa/src/tnl/tnl.h Added Files: Mesa/src/mtypes.h Removed Files: Mesa/src/types.h Changed Mesa/src/types to Mesa/src/mtypes.h to avoid conflicts while compiling on a VMS system. ----------------------------------------------------------------------
* Move the transform and lighting code to two new directoriesKeith Whitwell2000-11-161-19/+2
| | | | | | | | | | | | | | | math: Provides basic matrix and vector functionality that might be useful to multiple software t&l implementations, and is used by core mesa to manage the Model, Project, etc matrices. tnl: The real transform & lighting code from core mesa, including everything from glVertex3f through vertex buffer handling, transformation, clipping, lighting and handoff to a driver for rasterization. The interfaces of these can be further tightened up, but the basic splitting up of state and code move is done.
* More GLchan color channel changes.Brian Paul2000-10-291-1/+8
| | | | | | Some header file re-org: Move matrix, vertex buffer structs to types.h to fix #include mess. Remove typedef, extern declarations from config.h
* First batch of OpenGL SI related changes:Brian Paul2000-09-261-38/+20
| | | | | | | Renamed struct gl_context to struct __GLcontextRec. Include glcore.h, setup GL imports/exports. Replaced gl_ prefix with _mesa_ prefix in context.[ch] functions. GLcontext's Visual field is no longer a pointer.
* changed allocation/initialization of API dispatch tablesBrian Paul2000-05-241-8/+1
|