ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

context.h File Reference
#include "glapi/glapi.h"
#include "imports.h"
#include "mtypes.h"

Go to the source code of this file.

Defines

#define NEED_SECONDARY_COLOR(CTX)
#define RGBA_LOGICOP_ENABLED(CTX)
Macros for flushing buffered rendering commands before state changes,

checking if inside glBegin/glEnd, etc.

#define FLUSH_VERTICES(ctx, newstate)
#define FLUSH_CURRENT(ctx, newstate)
#define ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, retval)
#define ASSERT_OUTSIDE_BEGIN_END(ctx)
#define ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx)
#define ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH_WITH_RETVAL(ctx, retval)

Functions

void _mesa_notifySwapBuffers (__GLcontext *gc)
struct _glapi_table_mesa_get_dispatch (GLcontext *ctx)
Visual-related functions
GLvisual_mesa_create_visual (GLboolean rgbFlag, GLboolean dbFlag, GLboolean stereoFlag, GLint redBits, GLint greenBits, GLint blueBits, GLint alphaBits, GLint indexBits, GLint depthBits, GLint stencilBits, GLint accumRedBits, GLint accumGreenBits, GLint accumBlueBits, GLint accumAlphaBits, GLint numSamples)
GLboolean _mesa_initialize_visual (GLvisual *v, GLboolean rgbFlag, GLboolean dbFlag, GLboolean stereoFlag, GLint redBits, GLint greenBits, GLint blueBits, GLint alphaBits, GLint indexBits, GLint depthBits, GLint stencilBits, GLint accumRedBits, GLint accumGreenBits, GLint accumBlueBits, GLint accumAlphaBits, GLint numSamples)
void _mesa_destroy_visual (GLvisual *vis)
Context-related functions
GLcontext * _mesa_create_context (const GLvisual *visual, GLcontext *share_list, const struct dd_function_table *driverFunctions, void *driverContext)
GLboolean _mesa_initialize_context (GLcontext *ctx, const GLvisual *visual, GLcontext *share_list, const struct dd_function_table *driverFunctions, void *driverContext)
void _mesa_initialize_context_extra (GLcontext *ctx)
void _mesa_free_context_data (GLcontext *ctx)
void _mesa_destroy_context (GLcontext *ctx)
void _mesa_copy_context (const GLcontext *src, GLcontext *dst, GLuint mask)
void _mesa_make_current (GLcontext *ctx, GLframebuffer *drawBuffer, GLframebuffer *readBuffer)
GLboolean _mesa_share_state (GLcontext *ctx, GLcontext *ctxToShare)
GLcontext * _mesa_get_current_context (void)
Miscellaneous
void _mesa_record_error (GLcontext *ctx, GLenum error)
void GLAPIENTRY _mesa_Finish (void)
void GLAPIENTRY _mesa_Flush (void)

Detailed Description

Mesa context and visual-related functions.

There are three large Mesa data types/classes which are meant to be used by device drivers:

  • GLcontext: this contains the Mesa rendering state
  • GLvisual: this describes the color buffer (RGB vs. ci), whether or not there's a depth buffer, stencil buffer, etc.
  • GLframebuffer: contains pointers to the depth buffer, stencil buffer, accum buffer and alpha buffers.

These types should be encapsulated by corresponding device driver data types. See xmesa.h and xmesaP.h for an example.

In OOP terms, GLcontext, GLvisual, and GLframebuffer are base classes which the device driver must derive from.

The following functions create and destroy these data types.

Definition in file context.h.


Generated on Sun May 27 2012 04:57:34 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.