Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes

mozilla::gl::GLContext Class Reference

#include <GLContext.h>

Inheritance diagram for mozilla::gl::GLContext:
Collaboration diagram for mozilla::gl::GLContext:

List of all members.

Classes

struct  ExtensionBitset
struct  RectTriangles
 Helper for DecomposeIntoNoRepeatTriangles. More...

Public Types

enum  GLContextType {
  ContextTypeUnknown, ContextTypeWGL, ContextTypeCGL, ContextTypeGLX,
  ContextTypeEGL, ContextTypeOSMesa
}
enum  NativeDataType { NativeGLContext, NativeImageSurface, NativeThebesSurface, NativeDataTypeMax }
enum  {
  VendorIntel, VendorNVIDIA, VendorATI, VendorQualcomm,
  VendorOther
}
enum  GLExtensions {
  EXT_framebuffer_object, ARB_framebuffer_object, ARB_texture_rectangle, EXT_bgra,
  EXT_texture_format_BGRA8888, OES_depth24, OES_depth32, OES_stencil8,
  OES_texture_npot, OES_depth_texture, OES_packed_depth_stencil, IMG_read_format,
  EXT_read_format_bgra, APPLE_client_storage, ARB_texture_non_power_of_two, ARB_pixel_buffer_object,
  Extensions_Max
}
 

Known GL extensions that can be queried by IsExtensionSupported.

More...

Public Member Functions

nsrefcnt AddRef (void)
nsrefcnt Release (void)
 GLContext (const ContextFormat &aFormat, PRBool aIsOffscreen=0, GLContext *aSharedContext=0L)
virtual ~GLContext ()
virtual GLContextType GetContextType ()
virtual PRBool MakeCurrentImpl (PRBool aForce=0)=0
PRBool MakeCurrent (PRBool aForce=0)
virtual PRBool SetupLookupFunction ()=0
virtual void WindowDestroyed ()
void * GetUserData (void *aKey)
void SetUserData (void *aKey, void *aValue)
void MarkDestroyed ()
PRBool IsDestroyed ()
virtual void * GetNativeData (NativeDataType aType)
GLContextGetSharedContext ()
PRBool IsGlobalSharedContext ()
void SetIsGlobalSharedContext (PRBool aIsOne)
const ContextFormatCreationFormat ()
const ContextFormatActualFormat ()
virtual void * GetD3DShareHandle ()
 If this GL context has a D3D texture share handle, returns non-null.
virtual PRBool IsDoubleBuffered ()
 If this context is double-buffered, returns TRUE.
PRBool IsGLES2 ()
 If this context is the GLES2 API, returns TRUE.
int Vendor () const
PRBool IsWindowOriginBottomLeft ()
 Returns PR_TRUE if the window coordinate origin is the bottom left corener.
nsIntRectFixWindowCoordinateRect (nsIntRect &aRect, int aWindowHeight)
 Fix up the rectangle given in aRect, taking into account window height aWindowHeight and whether windows have their natural origin in the bottom left or not.
virtual PRBool SwapBuffers ()
 If this context wraps a double-buffered target, swap the back and front buffers.
virtual PRBool BindTexImage ()
 Defines a two-dimensional texture image for context target surface.
virtual PRBool ReleaseTexImage ()
virtual PRBool BindOffscreenNeedsTexture (GLContext *aOffscreen)
virtual PRBool BindTex2DOffscreen (GLContext *aOffscreen)
virtual void UnbindTex2DOffscreen (GLContext *aOffscreen)
PRBool IsOffscreen ()
virtual PRBool ResizeOffscreen (const gfxIntSize &aNewSize)
gfxIntSize OffscreenSize ()
gfxIntSize OffscreenActualSize ()
GLuint GetOffscreenFBO ()
GLuint GetOffscreenTexture ()
virtual PRBool TextureImageSupportsGetBackingSurface ()
virtual PRBool RenewSurface ()
virtual already_AddRefed
< TextureImage
CreateTextureImage (const nsIntSize &aSize, TextureImage::ContentType aContentType, GLenum aWrapMode, PRBool aUseNearestFilter=0)
 ` Return a valid, allocated TextureImage of |aSize| with |aContentType|.
already_AddRefed< gfxImageSurfaceReadTextureImage (GLuint aTexture, const gfxIntSize &aSize, GLenum aTextureFormat)
 Read the image data contained in aTexture, and return it as an ImageSurface.
void ReadPixelsIntoImageSurface (GLint aX, GLint aY, GLsizei aWidth, GLsizei aHeight, gfxImageSurface *aDest)
 Call ReadPixels into an existing gfxImageSurface for the given bounds.
void BlitTextureImage (TextureImage *aSrc, const nsIntRect &aSrcRect, TextureImage *aDst, const nsIntRect &aDstRect)
 Copy a rectangle from one TextureImage into another.
ShaderProgramType UploadSurfaceToTexture (gfxASurface *aSurface, const nsIntRegion &aDstRegion, GLuint &aTexture, bool aOverwrite=false, const nsIntPoint &aSrcPoint=nsIntPoint(0, 0), bool aPixelBuffer=0)
 Creates a RGB/RGBA texture (or uses one provided) and uploads the surface contents to it within aSrcRect.
virtual ShaderProgramType UploadSurfaceToTextureExternal (gfxASurface *aSurface, const nsIntRect &aSrcRect, GLuint &aTexture, bool aOverwrite=false, const nsIntPoint &aDstPoint=nsIntPoint(0, 0), bool aPixelBuffer=0)
PRBool IsExtensionSupported (GLExtensions aKnownExtension)
GLint GetMaxTextureSize ()
GLenum fGetError ()
void fScissor (GLint x, GLint y, GLsizei width, GLsizei height)
nsIntRectScissorRect ()
void PushScissorRect ()
void PushScissorRect (const nsIntRect &aRect)
void PopScissorRect ()
void fViewport (GLint x, GLint y, GLsizei width, GLsizei height)
nsIntRectViewportRect ()
void PushViewportRect ()
void PushViewportRect (const nsIntRect &aRect)
void PopViewportRect ()
void fActiveTexture (GLenum texture)
void fAttachShader (GLuint program, GLuint shader)
void fBindAttribLocation (GLuint program, GLuint index, const GLchar *name)
void fBindBuffer (GLenum target, GLuint buffer)
void fBindTexture (GLenum target, GLuint texture)
void fBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
void fBlendEquation (GLenum mode)
void fBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha)
void fBlendFunc (GLenum sfactor, GLenum dfactor)
void fBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
void fBufferData (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
void fBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
void fClear (GLbitfield mask)
void fClearColor (GLclampf r, GLclampf g, GLclampf b, GLclampf a)
void fClearStencil (GLint s)
void fColorMask (realGLboolean red, realGLboolean green, realGLboolean blue, realGLboolean alpha)
void fCullFace (GLenum mode)
void fDetachShader (GLuint program, GLuint shader)
void fDepthFunc (GLenum func)
void fDepthMask (realGLboolean flag)
void fDisable (GLenum capability)
void fDisableVertexAttribArray (GLuint index)
void fDrawArrays (GLenum mode, GLint first, GLsizei count)
void fDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
void fEnable (GLenum capability)
void fEnableVertexAttribArray (GLuint index)
void fFinish ()
void fFlush ()
void fFrontFace (GLenum face)
void fGetActiveAttrib (GLuint program, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
void fGetActiveUniform (GLuint program, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
void fGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)
GLint fGetAttribLocation (GLuint program, const GLchar *name)
void fGetIntegerv (GLenum pname, GLint *params)
void fGetFloatv (GLenum pname, GLfloat *params)
void fGetBooleanv (GLenum pname, realGLboolean *params)
void fGetBufferParameteriv (GLenum target, GLenum pname, GLint *params)
void fGenerateMipmap (GLenum target)
void fGetProgramiv (GLuint program, GLenum pname, GLint *param)
void fGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
void fTexParameteri (GLenum target, GLenum pname, GLint param)
void fTexParameterf (GLenum target, GLenum pname, GLfloat param)
const GLubytefGetString (GLenum name)
void fGetTexParameterfv (GLenum target, GLenum pname, const GLfloat *params)
void fGetTexParameteriv (GLenum target, GLenum pname, const GLint *params)
void fGetUniformfv (GLuint program, GLint location, GLfloat *params)
void fGetUniformiv (GLuint program, GLint location, GLint *params)
GLint fGetUniformLocation (GLint programObj, const GLchar *name)
void fGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *retval)
void fGetVertexAttribiv (GLuint index, GLenum pname, GLint *retval)
void fHint (GLenum target, GLenum mode)
realGLboolean fIsBuffer (GLuint buffer)
realGLboolean fIsEnabled (GLenum capability)
realGLboolean fIsProgram (GLuint program)
realGLboolean fIsShader (GLuint shader)
realGLboolean fIsTexture (GLuint texture)
void fLineWidth (GLfloat width)
void fLinkProgram (GLuint program)
void fPixelStorei (GLenum pname, GLint param)
void fPolygonOffset (GLfloat factor, GLfloat bias)
void fReadBuffer (GLenum mode)
void fReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
void fSampleCoverage (GLclampf value, realGLboolean invert)
void fStencilFunc (GLenum func, GLint ref, GLuint mask)
void fStencilFuncSeparate (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
void fStencilMask (GLuint mask)
void fStencilMaskSeparate (GLenum face, GLuint mask)
void fStencilOp (GLenum fail, GLenum zfail, GLenum zpass)
void fStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
void fTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
void fTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
void fUniform1f (GLint location, GLfloat v0)
void fUniform1fv (GLint location, GLsizei count, const GLfloat *value)
void fUniform1i (GLint location, GLint v0)
void fUniform1iv (GLint location, GLsizei count, const GLint *value)
void fUniform2f (GLint location, GLfloat v0, GLfloat v1)
void fUniform2fv (GLint location, GLsizei count, const GLfloat *value)
void fUniform2i (GLint location, GLint v0, GLint v1)
void fUniform2iv (GLint location, GLsizei count, const GLint *value)
void fUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
void fUniform3fv (GLint location, GLsizei count, const GLfloat *value)
void fUniform3i (GLint location, GLint v0, GLint v1, GLint v2)
void fUniform3iv (GLint location, GLsizei count, const GLint *value)
void fUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
void fUniform4fv (GLint location, GLsizei count, const GLfloat *value)
void fUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
void fUniform4iv (GLint location, GLsizei count, const GLint *value)
void fUniformMatrix2fv (GLint location, GLsizei count, realGLboolean transpose, const GLfloat *value)
void fUniformMatrix3fv (GLint location, GLsizei count, realGLboolean transpose, const GLfloat *value)
void fUniformMatrix4fv (GLint location, GLsizei count, realGLboolean transpose, const GLfloat *value)
void fUseProgram (GLuint program)
void fValidateProgram (GLuint program)
void fVertexAttribPointer (GLuint index, GLint size, GLenum type, realGLboolean normalized, GLsizei stride, const GLvoid *pointer)
void fVertexAttrib1f (GLuint index, GLfloat x)
void fVertexAttrib2f (GLuint index, GLfloat x, GLfloat y)
void fVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z)
void fVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
void fVertexAttrib1fv (GLuint index, const GLfloat *v)
void fVertexAttrib2fv (GLuint index, const GLfloat *v)
void fVertexAttrib3fv (GLuint index, const GLfloat *v)
void fVertexAttrib4fv (GLuint index, const GLfloat *v)
void fCompileShader (GLuint shader)
void fCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
void fCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
void fGetShaderiv (GLuint shader, GLenum pname, GLint *param)
void fGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
void fGetShaderSource (GLint obj, GLsizei maxLength, GLsizei *length, GLchar *source)
void fShaderSource (GLuint shader, GLsizei count, const GLchar **strings, const GLint *lengths)
void fBindFramebuffer (GLenum target, GLuint framebuffer)
void fBindRenderbuffer (GLenum target, GLuint renderbuffer)
GLenum fCheckFramebufferStatus (GLenum target)
void fFramebufferRenderbuffer (GLenum target, GLenum attachmentPoint, GLenum renderbufferTarget, GLuint renderbuffer)
void fFramebufferTexture2D (GLenum target, GLenum attachmentPoint, GLenum textureTarget, GLuint texture, GLint level)
void fGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint *value)
void fGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *value)
realGLboolean fIsFramebuffer (GLuint framebuffer)
realGLboolean fIsRenderbuffer (GLuint renderbuffer)
void fRenderbufferStorage (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height)
void fDepthRange (GLclampf a, GLclampf b)
void fClearDepth (GLclampf v)
void * fMapBuffer (GLenum target, GLenum access)
realGLboolean fUnmapBuffer (GLenum target)
GLuint fCreateProgram ()
GLuint fCreateShader (GLenum t)
void fGenBuffers (GLsizei n, GLuint *names)
void fGenTextures (GLsizei n, GLuint *names)
void fGenFramebuffers (GLsizei n, GLuint *names)
void fGenRenderbuffers (GLsizei n, GLuint *names)
void fDeleteProgram (GLuint program)
void fDeleteShader (GLuint shader)
void fDeleteBuffers (GLsizei n, GLuint *names)
void fDeleteTextures (GLsizei n, GLuint *names)
void fDeleteFramebuffers (GLsizei n, GLuint *names)
void fDeleteRenderbuffers (GLsizei n, GLuint *names)

Static Public Member Functions

static void DecomposeIntoNoRepeatTriangles (const nsIntRect &aTexCoordRect, const nsIntSize &aTexSize, RectTriangles &aRects)
 Decompose drawing the possibly-wrapped aTexCoordRect rectangle of a texture of aTexSize into one or more rectangles (represented as 2 triangles) and associated tex coordinates, such that we don't have to use the REPEAT wrap mode.
static PRBool ListHasExtension (const GLubyte *extensions, const char *extension)

Protected Types

enum  { DebugEnabled = 1 << 0, DebugTrace = 1 << 1, DebugAbortOnError = 1 << 2 }

Protected Member Functions

void UpdateActualFormat ()
void UseBlitProgram ()
void SetBlitFramebufferForDestTexture (GLuint aTexture)
PRBool ResizeOffscreenFBO (const gfxIntSize &aSize)
void DeleteOffscreenFBO ()
void ClearSafely ()
void SetIsGLES2 (PRBool aIsGLES2)
PRBool InitWithPrefix (const char *prefix, PRBool trygl)
void InitExtensions ()
PRBool IsExtensionSupported (const char *extension)
virtual already_AddRefed
< TextureImage
CreateBasicTextureImage (GLuint aTexture, const nsIntSize &aSize, GLenum aWrapMode, TextureImage::ContentType aContentType, GLContext *aContext)
void raw_fScissor (GLint x, GLint y, GLsizei width, GLsizei height)
void raw_fViewport (GLint x, GLint y, GLsizei width, GLsizei height)

Protected Attributes

nsAutoRefCnt mRefCnt
PRPackedBool mInitialized
PRPackedBool mIsOffscreen
PRPackedBool mIsGLES2
PRPackedBool mIsGlobalSharedContext
PRPackedBool mWindowOriginBottomLeft
PRInt32 mVendor
PRUint32 mDebugMode
ContextFormat mCreationFormat
nsRefPtr< GLContextmSharedContext
GLContextSymbols mSymbols
ContextFormat mActualFormat
gfxIntSize mOffscreenSize
gfxIntSize mOffscreenActualSize
GLuint mOffscreenTexture
GLuint mBlitProgram
GLuint mBlitFramebuffer
GLuint mOffscreenFBO
GLuint mOffscreenDepthRB
GLuint mOffscreenStencilRB
ExtensionBitset< Extensions_Max > mAvailableExtensions
nsDataHashtable
< nsVoidPtrHashKey, void * > 
mUserData
nsTArray< nsIntRectmViewportStack
nsTArray< nsIntRectmScissorStack
GLint mMaxTextureSize

Member Enumeration Documentation

anonymous enum
Enumerator:
VendorIntel 
VendorNVIDIA 
VendorATI 
VendorQualcomm 
VendorOther 
anonymous enum [protected]
Enumerator:
DebugEnabled 
DebugTrace 
DebugAbortOnError 
Enumerator:
ContextTypeUnknown 
ContextTypeWGL 
ContextTypeCGL 
ContextTypeGLX 
ContextTypeEGL 
ContextTypeOSMesa 

Known GL extensions that can be queried by IsExtensionSupported.

The results of this are cached, and as such it's safe to use this even in performance critical code. If you add to this array, remember to add to the string names in GLContext.cpp.

Enumerator:
EXT_framebuffer_object 
ARB_framebuffer_object 
ARB_texture_rectangle 
EXT_bgra 
EXT_texture_format_BGRA8888 
OES_depth24 
OES_depth32 
OES_stencil8 
OES_texture_npot 
OES_depth_texture 
OES_packed_depth_stencil 
IMG_read_format 
EXT_read_format_bgra 
APPLE_client_storage 
ARB_texture_non_power_of_two 
ARB_pixel_buffer_object 
Extensions_Max 
Enumerator:
NativeGLContext 
NativeImageSurface 
NativeThebesSurface 
NativeDataTypeMax 

Constructor & Destructor Documentation

mozilla::gl::GLContext::GLContext ( const ContextFormat aFormat,
PRBool  aIsOffscreen = 0,
GLContext aSharedContext = 0L 
) [inline]
virtual mozilla::gl::GLContext::~GLContext (  )  [inline, virtual]

Member Function Documentation

const ContextFormat& mozilla::gl::GLContext::ActualFormat (  )  [inline]
nsrefcnt mozilla::gl::GLContext::AddRef ( void   )  [inline]
virtual PRBool mozilla::gl::GLContext::BindOffscreenNeedsTexture ( GLContext aOffscreen  )  [inline, virtual]
virtual PRBool mozilla::gl::GLContext::BindTex2DOffscreen ( GLContext aOffscreen  )  [inline, virtual]
virtual PRBool mozilla::gl::GLContext::BindTexImage (  )  [inline, virtual]

Defines a two-dimensional texture image for context target surface.

void mozilla::gl::GLContext::BlitTextureImage ( TextureImage aSrc,
const nsIntRect aSrcRect,
TextureImage aDst,
const nsIntRect aDstRect 
)

Copy a rectangle from one TextureImage into another.

The source and destination are given in integer coordinates, and will be converted to texture coordinates.

For the source texture, the wrap modes DO apply -- it's valid to use REPEAT or PAD and expect appropriate behaviour if the source rectangle extends beyond its bounds.

For the destination texture, the wrap modes DO NOT apply -- the destination will be clipped by the bounds of the texture.

Note: calling this function will cause the following OpenGL state to be changed:

  • current program
  • framebuffer binding
  • viewport
  • blend state (will be enabled at end)
  • scissor state (will be enabled at end)
  • vertex attrib 0 and 1 (pointer and enable state [enable state will be disabled at exit])
  • array buffer binding (will be 0)
  • active texture (will be 0)
  • texture 0 binding
void mozilla::gl::GLContext::ClearSafely (  )  [protected]
virtual already_AddRefed<TextureImage> mozilla::gl::GLContext::CreateBasicTextureImage ( GLuint  aTexture,
const nsIntSize aSize,
GLenum  aWrapMode,
TextureImage::ContentType  aContentType,
GLContext aContext 
) [inline, protected, virtual]
virtual already_AddRefed<TextureImage> mozilla::gl::GLContext::CreateTextureImage ( const nsIntSize aSize,
TextureImage::ContentType  aContentType,
GLenum  aWrapMode,
PRBool  aUseNearestFilter = 0 
) [virtual]

` Return a valid, allocated TextureImage of |aSize| with |aContentType|.

The TextureImage's texture is configured to use |aWrapMode| (usually GL_CLAMP_TO_EDGE or GL_REPEAT) and by default, GL_LINEAR filtering. Specify |aUseNearestFilter=PR_TRUE| for GL_NEAREST filtering. Return NULL if creating the TextureImage fails.

The returned TextureImage may only be used with this GLContext. Attempting to use the returned TextureImage after this GLContext is destroyed will result in undefined (and likely crashy) behavior.

const ContextFormat& mozilla::gl::GLContext::CreationFormat (  )  [inline]
static void mozilla::gl::GLContext::DecomposeIntoNoRepeatTriangles ( const nsIntRect aTexCoordRect,
const nsIntSize aTexSize,
RectTriangles aRects 
) [static]

Decompose drawing the possibly-wrapped aTexCoordRect rectangle of a texture of aTexSize into one or more rectangles (represented as 2 triangles) and associated tex coordinates, such that we don't have to use the REPEAT wrap mode.

The resulting triangle vertex coordinates will be in the space of (0.0, 0.0) to (1.0, 1.0) -- transform the coordinates appropriately if you need a different space.

The resulting vertex coordinates should be drawn using GL_TRIANGLES, and rects.numRects * 3 * 6

void mozilla::gl::GLContext::DeleteOffscreenFBO (  )  [protected]
void mozilla::gl::GLContext::fActiveTexture ( GLenum  texture  )  [inline]
void mozilla::gl::GLContext::fAttachShader ( GLuint  program,
GLuint  shader 
) [inline]
void mozilla::gl::GLContext::fBindAttribLocation ( GLuint  program,
GLuint  index,
const GLchar name 
) [inline]
void mozilla::gl::GLContext::fBindBuffer ( GLenum  target,
GLuint  buffer 
) [inline]
void mozilla::gl::GLContext::fBindFramebuffer ( GLenum  target,
GLuint  framebuffer 
) [inline]
void mozilla::gl::GLContext::fBindRenderbuffer ( GLenum  target,
GLuint  renderbuffer 
) [inline]
void mozilla::gl::GLContext::fBindTexture ( GLenum  target,
GLuint  texture 
) [inline]
void mozilla::gl::GLContext::fBlendColor ( GLclampf  red,
GLclampf  green,
GLclampf  blue,
GLclampf  alpha 
) [inline]
void mozilla::gl::GLContext::fBlendEquation ( GLenum  mode  )  [inline]
void mozilla::gl::GLContext::fBlendEquationSeparate ( GLenum  modeRGB,
GLenum  modeAlpha 
) [inline]
void mozilla::gl::GLContext::fBlendFunc ( GLenum  sfactor,
GLenum  dfactor 
) [inline]
void mozilla::gl::GLContext::fBlendFuncSeparate ( GLenum  sfactorRGB,
GLenum  dfactorRGB,
GLenum  sfactorAlpha,
GLenum  dfactorAlpha 
) [inline]
void mozilla::gl::GLContext::fBufferData ( GLenum  target,
GLsizeiptr  size,
const GLvoid data,
GLenum  usage 
) [inline]
void mozilla::gl::GLContext::fBufferSubData ( GLenum  target,
GLintptr  offset,
GLsizeiptr  size,
const GLvoid data 
) [inline]
GLenum mozilla::gl::GLContext::fCheckFramebufferStatus ( GLenum  target  )  [inline]
void mozilla::gl::GLContext::fClear ( GLbitfield  mask  )  [inline]
void mozilla::gl::GLContext::fClearColor ( GLclampf  r,
GLclampf  g,
GLclampf  b,
GLclampf  a 
) [inline]
void mozilla::gl::GLContext::fClearDepth ( GLclampf  v  )  [inline]
void mozilla::gl::GLContext::fClearStencil ( GLint  s  )  [inline]
void mozilla::gl::GLContext::fColorMask ( realGLboolean  red,
realGLboolean  green,
realGLboolean  blue,
realGLboolean  alpha 
) [inline]
void mozilla::gl::GLContext::fCompileShader ( GLuint  shader  )  [inline]
void mozilla::gl::GLContext::fCopyTexImage2D ( GLenum  target,
GLint  level,
GLenum  internalformat,
GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height,
GLint  border 
) [inline]
void mozilla::gl::GLContext::fCopyTexSubImage2D ( GLenum  target,
GLint  level,
GLint  xoffset,
GLint  yoffset,
GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
) [inline]
GLuint mozilla::gl::GLContext::fCreateProgram (  )  [inline]
GLuint mozilla::gl::GLContext::fCreateShader ( GLenum  t  )  [inline]
void mozilla::gl::GLContext::fCullFace ( GLenum  mode  )  [inline]
void mozilla::gl::GLContext::fDeleteBuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fDeleteFramebuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fDeleteProgram ( GLuint  program  )  [inline]
void mozilla::gl::GLContext::fDeleteRenderbuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fDeleteShader ( GLuint  shader  )  [inline]
void mozilla::gl::GLContext::fDeleteTextures ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fDepthFunc ( GLenum  func  )  [inline]
void mozilla::gl::GLContext::fDepthMask ( realGLboolean  flag  )  [inline]
void mozilla::gl::GLContext::fDepthRange ( GLclampf  a,
GLclampf  b 
) [inline]
void mozilla::gl::GLContext::fDetachShader ( GLuint  program,
GLuint  shader 
) [inline]
void mozilla::gl::GLContext::fDisable ( GLenum  capability  )  [inline]
void mozilla::gl::GLContext::fDisableVertexAttribArray ( GLuint  index  )  [inline]
void mozilla::gl::GLContext::fDrawArrays ( GLenum  mode,
GLint  first,
GLsizei  count 
) [inline]
void mozilla::gl::GLContext::fDrawElements ( GLenum  mode,
GLsizei  count,
GLenum  type,
const GLvoid indices 
) [inline]
void mozilla::gl::GLContext::fEnable ( GLenum  capability  )  [inline]
void mozilla::gl::GLContext::fEnableVertexAttribArray ( GLuint  index  )  [inline]
void mozilla::gl::GLContext::fFinish (  )  [inline]
void mozilla::gl::GLContext::fFlush (  )  [inline]
void mozilla::gl::GLContext::fFramebufferRenderbuffer ( GLenum  target,
GLenum  attachmentPoint,
GLenum  renderbufferTarget,
GLuint  renderbuffer 
) [inline]
void mozilla::gl::GLContext::fFramebufferTexture2D ( GLenum  target,
GLenum  attachmentPoint,
GLenum  textureTarget,
GLuint  texture,
GLint  level 
) [inline]
void mozilla::gl::GLContext::fFrontFace ( GLenum  face  )  [inline]
void mozilla::gl::GLContext::fGenBuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fGenerateMipmap ( GLenum  target  )  [inline]
void mozilla::gl::GLContext::fGenFramebuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fGenRenderbuffers ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fGenTextures ( GLsizei  n,
GLuint names 
) [inline]
void mozilla::gl::GLContext::fGetActiveAttrib ( GLuint  program,
GLuint  index,
GLsizei  maxLength,
GLsizei length,
GLint size,
GLenum type,
GLchar name 
) [inline]
void mozilla::gl::GLContext::fGetActiveUniform ( GLuint  program,
GLuint  index,
GLsizei  maxLength,
GLsizei length,
GLint size,
GLenum type,
GLchar name 
) [inline]
void mozilla::gl::GLContext::fGetAttachedShaders ( GLuint  program,
GLsizei  maxCount,
GLsizei count,
GLuint shaders 
) [inline]
GLint mozilla::gl::GLContext::fGetAttribLocation ( GLuint  program,
const GLchar name 
) [inline]
void mozilla::gl::GLContext::fGetBooleanv ( GLenum  pname,
realGLboolean params 
) [inline]
void mozilla::gl::GLContext::fGetBufferParameteriv ( GLenum  target,
GLenum  pname,
GLint params 
) [inline]
GLenum mozilla::gl::GLContext::fGetError (  )  [inline]
void mozilla::gl::GLContext::fGetFloatv ( GLenum  pname,
GLfloat params 
) [inline]
void mozilla::gl::GLContext::fGetFramebufferAttachmentParameteriv ( GLenum  target,
GLenum  attachment,
GLenum  pname,
GLint value 
) [inline]
void mozilla::gl::GLContext::fGetIntegerv ( GLenum  pname,
GLint params 
) [inline]
void mozilla::gl::GLContext::fGetProgramInfoLog ( GLuint  program,
GLsizei  bufSize,
GLsizei length,
GLchar infoLog 
) [inline]
void mozilla::gl::GLContext::fGetProgramiv ( GLuint  program,
GLenum  pname,
GLint param 
) [inline]
void mozilla::gl::GLContext::fGetRenderbufferParameteriv ( GLenum  target,
GLenum  pname,
GLint value 
) [inline]
void mozilla::gl::GLContext::fGetShaderInfoLog ( GLuint  shader,
GLsizei  bufSize,
GLsizei length,
GLchar infoLog 
) [inline]
void mozilla::gl::GLContext::fGetShaderiv ( GLuint  shader,
GLenum  pname,
GLint param 
) [inline]
void mozilla::gl::GLContext::fGetShaderSource ( GLint  obj,
GLsizei  maxLength,
GLsizei length,
GLchar source 
) [inline]
const GLubyte* mozilla::gl::GLContext::fGetString ( GLenum  name  )  [inline]
void mozilla::gl::GLContext::fGetTexParameterfv ( GLenum  target,
GLenum  pname,
const GLfloat params 
) [inline]
void mozilla::gl::GLContext::fGetTexParameteriv ( GLenum  target,
GLenum  pname,
const GLint params 
) [inline]
void mozilla::gl::GLContext::fGetUniformfv ( GLuint  program,
GLint  location,
GLfloat params 
) [inline]
void mozilla::gl::GLContext::fGetUniformiv ( GLuint  program,
GLint  location,
GLint params 
) [inline]
GLint mozilla::gl::GLContext::fGetUniformLocation ( GLint  programObj,
const GLchar name 
) [inline]
void mozilla::gl::GLContext::fGetVertexAttribfv ( GLuint  index,
GLenum  pname,
GLfloat retval 
) [inline]
void mozilla::gl::GLContext::fGetVertexAttribiv ( GLuint  index,
GLenum  pname,
GLint retval 
) [inline]
void mozilla::gl::GLContext::fHint ( GLenum  target,
GLenum  mode 
) [inline]
realGLboolean mozilla::gl::GLContext::fIsBuffer ( GLuint  buffer  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsEnabled ( GLenum  capability  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsFramebuffer ( GLuint  framebuffer  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsProgram ( GLuint  program  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsRenderbuffer ( GLuint  renderbuffer  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsShader ( GLuint  shader  )  [inline]
realGLboolean mozilla::gl::GLContext::fIsTexture ( GLuint  texture  )  [inline]
nsIntRect& mozilla::gl::GLContext::FixWindowCoordinateRect ( nsIntRect aRect,
int  aWindowHeight 
) [inline]

Fix up the rectangle given in aRect, taking into account window height aWindowHeight and whether windows have their natural origin in the bottom left or not.

void mozilla::gl::GLContext::fLineWidth ( GLfloat  width  )  [inline]
void mozilla::gl::GLContext::fLinkProgram ( GLuint  program  )  [inline]
void* mozilla::gl::GLContext::fMapBuffer ( GLenum  target,
GLenum  access 
) [inline]
void mozilla::gl::GLContext::fPixelStorei ( GLenum  pname,
GLint  param 
) [inline]
void mozilla::gl::GLContext::fPolygonOffset ( GLfloat  factor,
GLfloat  bias 
) [inline]
void mozilla::gl::GLContext::fReadBuffer ( GLenum  mode  )  [inline]
void mozilla::gl::GLContext::fReadPixels ( GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height,
GLenum  format,
GLenum  type,
GLvoid pixels 
) [inline]
void mozilla::gl::GLContext::fRenderbufferStorage ( GLenum  target,
GLenum  internalFormat,
GLsizei  width,
GLsizei  height 
) [inline]
void mozilla::gl::GLContext::fSampleCoverage ( GLclampf  value,
realGLboolean  invert 
) [inline]
void mozilla::gl::GLContext::fScissor ( GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
) [inline]
void mozilla::gl::GLContext::fShaderSource ( GLuint  shader,
GLsizei  count,
const GLchar **  strings,
const GLint lengths 
) [inline]
void mozilla::gl::GLContext::fStencilFunc ( GLenum  func,
GLint  ref,
GLuint  mask 
) [inline]
void mozilla::gl::GLContext::fStencilFuncSeparate ( GLenum  frontfunc,
GLenum  backfunc,
GLint  ref,
GLuint  mask 
) [inline]
void mozilla::gl::GLContext::fStencilMask ( GLuint  mask  )  [inline]
void mozilla::gl::GLContext::fStencilMaskSeparate ( GLenum  face,
GLuint  mask 
) [inline]
void mozilla::gl::GLContext::fStencilOp ( GLenum  fail,
GLenum  zfail,
GLenum  zpass 
) [inline]
void mozilla::gl::GLContext::fStencilOpSeparate ( GLenum  face,
GLenum  sfail,
GLenum  dpfail,
GLenum  dppass 
) [inline]
void mozilla::gl::GLContext::fTexImage2D ( GLenum  target,
GLint  level,
GLint  internalformat,
GLsizei  width,
GLsizei  height,
GLint  border,
GLenum  format,
GLenum  type,
const GLvoid pixels 
) [inline]
void mozilla::gl::GLContext::fTexParameterf ( GLenum  target,
GLenum  pname,
GLfloat  param 
) [inline]
void mozilla::gl::GLContext::fTexParameteri ( GLenum  target,
GLenum  pname,
GLint  param 
) [inline]
void mozilla::gl::GLContext::fTexSubImage2D ( GLenum  target,
GLint  level,
GLint  xoffset,
GLint  yoffset,
GLsizei  width,
GLsizei  height,
GLenum  format,
GLenum  type,
const GLvoid pixels 
) [inline]
void mozilla::gl::GLContext::fUniform1f ( GLint  location,
GLfloat  v0 
) [inline]
void mozilla::gl::GLContext::fUniform1fv ( GLint  location,
GLsizei  count,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniform1i ( GLint  location,
GLint  v0 
) [inline]
void mozilla::gl::GLContext::fUniform1iv ( GLint  location,
GLsizei  count,
const GLint value 
) [inline]
void mozilla::gl::GLContext::fUniform2f ( GLint  location,
GLfloat  v0,
GLfloat  v1 
) [inline]
void mozilla::gl::GLContext::fUniform2fv ( GLint  location,
GLsizei  count,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniform2i ( GLint  location,
GLint  v0,
GLint  v1 
) [inline]
void mozilla::gl::GLContext::fUniform2iv ( GLint  location,
GLsizei  count,
const GLint value 
) [inline]
void mozilla::gl::GLContext::fUniform3f ( GLint  location,
GLfloat  v0,
GLfloat  v1,
GLfloat  v2 
) [inline]
void mozilla::gl::GLContext::fUniform3fv ( GLint  location,
GLsizei  count,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniform3i ( GLint  location,
GLint  v0,
GLint  v1,
GLint  v2 
) [inline]
void mozilla::gl::GLContext::fUniform3iv ( GLint  location,
GLsizei  count,
const GLint value 
) [inline]
void mozilla::gl::GLContext::fUniform4f ( GLint  location,
GLfloat  v0,
GLfloat  v1,
GLfloat  v2,
GLfloat  v3 
) [inline]
void mozilla::gl::GLContext::fUniform4fv ( GLint  location,
GLsizei  count,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniform4i ( GLint  location,
GLint  v0,
GLint  v1,
GLint  v2,
GLint  v3 
) [inline]
void mozilla::gl::GLContext::fUniform4iv ( GLint  location,
GLsizei  count,
const GLint value 
) [inline]
void mozilla::gl::GLContext::fUniformMatrix2fv ( GLint  location,
GLsizei  count,
realGLboolean  transpose,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniformMatrix3fv ( GLint  location,
GLsizei  count,
realGLboolean  transpose,
const GLfloat value 
) [inline]
void mozilla::gl::GLContext::fUniformMatrix4fv ( GLint  location,
GLsizei  count,
realGLboolean  transpose,
const GLfloat value 
) [inline]
realGLboolean mozilla::gl::GLContext::fUnmapBuffer ( GLenum  target  )  [inline]
void mozilla::gl::GLContext::fUseProgram ( GLuint  program  )  [inline]
void mozilla::gl::GLContext::fValidateProgram ( GLuint  program  )  [inline]
void mozilla::gl::GLContext::fVertexAttrib1f ( GLuint  index,
GLfloat  x 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib1fv ( GLuint  index,
const GLfloat v 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib2f ( GLuint  index,
GLfloat  x,
GLfloat  y 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib2fv ( GLuint  index,
const GLfloat v 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib3f ( GLuint  index,
GLfloat  x,
GLfloat  y,
GLfloat  z 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib3fv ( GLuint  index,
const GLfloat v 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib4f ( GLuint  index,
GLfloat  x,
GLfloat  y,
GLfloat  z,
GLfloat  w 
) [inline]
void mozilla::gl::GLContext::fVertexAttrib4fv ( GLuint  index,
const GLfloat v 
) [inline]
void mozilla::gl::GLContext::fVertexAttribPointer ( GLuint  index,
GLint  size,
GLenum  type,
realGLboolean  normalized,
GLsizei  stride,
const GLvoid pointer 
) [inline]
void mozilla::gl::GLContext::fViewport ( GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
) [inline]
virtual GLContextType mozilla::gl::GLContext::GetContextType (  )  [inline, virtual]
virtual void* mozilla::gl::GLContext::GetD3DShareHandle (  )  [inline, virtual]

If this GL context has a D3D texture share handle, returns non-null.

GLint mozilla::gl::GLContext::GetMaxTextureSize (  )  [inline]
virtual void* mozilla::gl::GLContext::GetNativeData ( NativeDataType  aType  )  [inline, virtual]
GLuint mozilla::gl::GLContext::GetOffscreenFBO (  )  [inline]
GLuint mozilla::gl::GLContext::GetOffscreenTexture (  )  [inline]
GLContext* mozilla::gl::GLContext::GetSharedContext (  )  [inline]
void* mozilla::gl::GLContext::GetUserData ( void *  aKey  )  [inline]
void mozilla::gl::GLContext::InitExtensions (  )  [protected]
PRBool mozilla::gl::GLContext::InitWithPrefix ( const char *  prefix,
PRBool  trygl 
) [protected]
PRBool mozilla::gl::GLContext::IsDestroyed (  )  [inline]
virtual PRBool mozilla::gl::GLContext::IsDoubleBuffered (  )  [inline, virtual]

If this context is double-buffered, returns TRUE.

PRBool mozilla::gl::GLContext::IsExtensionSupported ( GLExtensions  aKnownExtension  )  [inline]
PRBool mozilla::gl::GLContext::IsExtensionSupported ( const char *  extension  )  [protected]
PRBool mozilla::gl::GLContext::IsGLES2 (  )  [inline]

If this context is the GLES2 API, returns TRUE.

This means that various GLES2 restrictions might be in effect (modulo extensions).

PRBool mozilla::gl::GLContext::IsGlobalSharedContext (  )  [inline]
PRBool mozilla::gl::GLContext::IsOffscreen (  )  [inline]
PRBool mozilla::gl::GLContext::IsWindowOriginBottomLeft (  )  [inline]

Returns PR_TRUE if the window coordinate origin is the bottom left corener.

If PR_FALSE, it is the top left corner.

This needs to be taken into account when calling glViewport and glScissor when drawing directly to a window. If this is PR_FALSE, the y coordinate given to those functions should be (windowHeight - (desiredHeight + desiredY)).

This should only be done when drawing directly to a window; when drawing to a FBO, the origin is always the bottom left.

See FixWindowCoordinateRect().

static PRBool mozilla::gl::GLContext::ListHasExtension ( const GLubyte extensions,
const char *  extension 
) [static]
PRBool mozilla::gl::GLContext::MakeCurrent ( PRBool  aForce = 0  )  [inline]
virtual PRBool mozilla::gl::GLContext::MakeCurrentImpl ( PRBool  aForce = 0  )  [pure virtual]
void mozilla::gl::GLContext::MarkDestroyed (  ) 
gfxIntSize mozilla::gl::GLContext::OffscreenActualSize (  )  [inline]
gfxIntSize mozilla::gl::GLContext::OffscreenSize (  )  [inline]
void mozilla::gl::GLContext::PopScissorRect (  )  [inline]
void mozilla::gl::GLContext::PopViewportRect (  )  [inline]
void mozilla::gl::GLContext::PushScissorRect ( const nsIntRect aRect  )  [inline]
void mozilla::gl::GLContext::PushScissorRect (  )  [inline]
void mozilla::gl::GLContext::PushViewportRect (  )  [inline]
void mozilla::gl::GLContext::PushViewportRect ( const nsIntRect aRect  )  [inline]
void mozilla::gl::GLContext::raw_fScissor ( GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
) [inline, protected]
void mozilla::gl::GLContext::raw_fViewport ( GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
) [inline, protected]
void mozilla::gl::GLContext::ReadPixelsIntoImageSurface ( GLint  aX,
GLint  aY,
GLsizei  aWidth,
GLsizei  aHeight,
gfxImageSurface aDest 
)

Call ReadPixels into an existing gfxImageSurface for the given bounds.

The image surface must be using image format RGBA32 or RGB24.

already_AddRefed<gfxImageSurface> mozilla::gl::GLContext::ReadTextureImage ( GLuint  aTexture,
const gfxIntSize aSize,
GLenum  aTextureFormat 
)

Read the image data contained in aTexture, and return it as an ImageSurface.

If GL_RGBA is given as the format, a ImageFormatARGB32 surface is returned. Not implemented yet: If GL_RGB is given as the format, a ImageFormatRGB24 surface is returned. If GL_LUMINANCE is given as the format, a ImageFormatA8 surface is returned.

THIS IS EXPENSIVE. It is ridiculously expensive. Only do this if you absolutely positively must, and never in any performance critical path.

nsrefcnt mozilla::gl::GLContext::Release ( void   )  [inline]
virtual PRBool mozilla::gl::GLContext::ReleaseTexImage (  )  [inline, virtual]
virtual PRBool mozilla::gl::GLContext::RenewSurface (  )  [inline, virtual]
virtual PRBool mozilla::gl::GLContext::ResizeOffscreen ( const gfxIntSize aNewSize  )  [inline, virtual]
PRBool mozilla::gl::GLContext::ResizeOffscreenFBO ( const gfxIntSize aSize  )  [protected]
nsIntRect& mozilla::gl::GLContext::ScissorRect (  )  [inline]
void mozilla::gl::GLContext::SetBlitFramebufferForDestTexture ( GLuint  aTexture  )  [protected]
void mozilla::gl::GLContext::SetIsGLES2 ( PRBool  aIsGLES2  )  [inline, protected]
void mozilla::gl::GLContext::SetIsGlobalSharedContext ( PRBool  aIsOne  )  [inline]
virtual PRBool mozilla::gl::GLContext::SetupLookupFunction (  )  [pure virtual]
void mozilla::gl::GLContext::SetUserData ( void *  aKey,
void *  aValue 
) [inline]
virtual PRBool mozilla::gl::GLContext::SwapBuffers (  )  [inline, virtual]

If this context wraps a double-buffered target, swap the back and front buffers.

It should be assumed that after a swap, the contents of the new back buffer are undefined.

virtual PRBool mozilla::gl::GLContext::TextureImageSupportsGetBackingSurface (  )  [inline, virtual]
virtual void mozilla::gl::GLContext::UnbindTex2DOffscreen ( GLContext aOffscreen  )  [inline, virtual]
void mozilla::gl::GLContext::UpdateActualFormat (  )  [protected]
ShaderProgramType mozilla::gl::GLContext::UploadSurfaceToTexture ( gfxASurface aSurface,
const nsIntRegion aDstRegion,
GLuint aTexture,
bool  aOverwrite = false,
const nsIntPoint aSrcPoint = nsIntPoint(0, 0),
bool  aPixelBuffer = 0 
)

Creates a RGB/RGBA texture (or uses one provided) and uploads the surface contents to it within aSrcRect.

aSrcRect.x/y will be uploaded to 0/0 in the texture, and the size of the texture with be aSrcRect.width/height.

If an existing texture is passed through aTexture, it is assumed it has already been initialised with glTexImage2D (or this function), and that its size is equal to or greater than aSrcRect + aDstPoint. You can alternatively set the overwrite flag to true and have a new texture memory block allocated.

The aDstPoint parameter is ignored if no texture was provided or aOverwrite is true.

Parameters:
aSurface Surface to upload.
aDstRegion Region of texture to upload to.
aTexture Texture to use, or 0 to have one created for you.
aOverwrite Over an existing texture with a new one.
aSrcPoint Offset into aSrc where the region's bound's TopLeft() sits.
aPixelBuffer Pass true to upload texture data with an offset from the base data (generally for pixel buffer objects), otherwise textures are upload with an absolute pointer to the data.
Returns:
Shader program needed to render this texture.
virtual ShaderProgramType mozilla::gl::GLContext::UploadSurfaceToTextureExternal ( gfxASurface aSurface,
const nsIntRect aSrcRect,
GLuint aTexture,
bool  aOverwrite = false,
const nsIntPoint aDstPoint = nsIntPoint(0, 0),
bool  aPixelBuffer = 0 
) [inline, virtual]
void mozilla::gl::GLContext::UseBlitProgram (  )  [protected]
int mozilla::gl::GLContext::Vendor (  )  const [inline]
nsIntRect& mozilla::gl::GLContext::ViewportRect (  )  [inline]
virtual void mozilla::gl::GLContext::WindowDestroyed (  )  [inline, virtual]

Member Data Documentation

PRUint32 mozilla::gl::GLContext::mDebugMode [protected]
nsAutoRefCnt mozilla::gl::GLContext::mRefCnt [protected]
PRInt32 mozilla::gl::GLContext::mVendor [protected]

The documentation for this class was generated from the following file: