LCOV - app.info - objdir/dist/include/nsIDOMWebGLRenderingContext.h

LCOV - code coverage report
| Current view: | directory - objdir/dist/include - nsIDOMWebGLRenderingContext.h (source / functions) |  | Found | Hit | Coverage |
| Test: | app.info | Lines: | 14 | 0 | 0.0 %
| Date: | 2012-04-21 | Functions: | 14 | 0 | 0.0 %

           1                 : /*
           2                 :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM /builds/slave/m-aurora-lnx-codecoverage/build/dom/interfaces/canvas/nsIDOMWebGLRenderingContext.idl
           3                 :  */
           4                 :
           5                 : #ifndef __gen_nsIDOMWebGLRenderingContext_h__
           6                 : #define __gen_nsIDOMWebGLRenderingContext_h__
           7                 :
           8                 :
           9                 : #ifndef __gen_nsISupports_h__
          10                 : #include "nsISupports.h"
          11                 : #endif
          12                 :
          13                 : #ifndef __gen_nsIVariant_h__
          14                 : #include "nsIVariant.h"
          15                 : #endif
          16                 :
          17                 : #include "jspubtd.h"
          18                 :
          19                 : /* For IDL files that don't want to include root IDL files. */
          20                 : #ifndef NS_NO_VTABLE
          21                 : #define NS_NO_VTABLE
          22                 : #endif
          23                 : class nsIDOMElement; /* forward declaration */
          24                 :
          25                 : class nsIDOMHTMLCanvasElement; /* forward declaration */
          26                 :
          27                 : class nsIPropertyBag; /* forward declaration */
          28                 :
          29                 : typedef PRUint32  WebGLenum;
          30                 :
          31                 : typedef bool  WebGLboolean;
          32                 :
          33                 : typedef PRUint32  WebGLbitfield;
          34                 :
          35                 : typedef PRInt32  WebGLint;
          36                 :
          37                 : typedef PRInt32  WebGLsizei;
          38                 :
          39                 : typedef PRInt32  WebGLsizeiptr;
          40                 :
          41                 : typedef PRUint32  WebGLuint;
          42                 :
          43                 : typedef float  WebGLfloat;
          44                 :
          45                 : typedef float  WebGLclampf;
          46                 :
          47                 : // for jsval
          48                 : #include "jsapi.h"
          49                 : namespace mozilla {
          50                 : namespace dom {
          51                 : class Element;
          52                 : } // namespace dom
          53                 : } // namespace mozilla
          54                 : /* Avoid conflict with WinAPI */
          55                 : #undef NO_ERROR
          56                 :
          57                 : /* starting interface:    nsIWebGLTexture */
          58                 : #define NS_IWEBGLTEXTURE_IID_STR "0df9f4ed-f5ff-4e51-a6ff-2bd9785a7639"
          59                 :
          60                 : #define NS_IWEBGLTEXTURE_IID \
          61                 :   {0x0df9f4ed, 0xf5ff, 0x4e51, \
          62                 :     { 0xa6, 0xff, 0x2b, 0xd9, 0x78, 0x5a, 0x76, 0x39 }}
          63                 :
          64               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLTexture : public nsISupports {
          65                 :  public:
          66                 :
          67                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLTEXTURE_IID)
          68                 :
          69                 :   /* [noscript] attribute WebGLuint name; */
          70                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
          71                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
          72                 :
          73                 : };
          74                 :
          75                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLTexture, NS_IWEBGLTEXTURE_IID)
          76                 :
          77                 : /* Use this macro when declaring classes that implement this interface. */
          78                 : #define NS_DECL_NSIWEBGLTEXTURE \
          79                 :   NS_IMETHOD GetName(WebGLuint *aName); \
          80                 :   NS_IMETHOD SetName(WebGLuint aName);
          81                 :
          82                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
          83                 : #define NS_FORWARD_NSIWEBGLTEXTURE(_to) \
          84                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
          85                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
          86                 :
          87                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
          88                 : #define NS_FORWARD_SAFE_NSIWEBGLTEXTURE(_to) \
          89                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
          90                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
          91                 :
          92                 : #if 0
          93                 : /* Use the code below as a template for the implementation class for this interface. */
          94                 :
          95                 : /* Header file */
          96                 : class nsWebGLTexture : public nsIWebGLTexture
          97                 : {
          98                 : public:
          99                 :   NS_DECL_ISUPPORTS
         100                 :   NS_DECL_NSIWEBGLTEXTURE
         101                 :
         102                 :   nsWebGLTexture();
         103                 :
         104                 : private:
         105                 :   ~nsWebGLTexture();
         106                 :
         107                 : protected:
         108                 :   /* additional members */
         109                 : };
         110                 :
         111                 : /* Implementation file */
         112                 : NS_IMPL_ISUPPORTS1(nsWebGLTexture, nsIWebGLTexture)
         113                 :
         114                 : nsWebGLTexture::nsWebGLTexture()
         115                 : {
         116                 :   /* member initializers and constructor code */
         117                 : }
         118                 :
         119                 : nsWebGLTexture::~nsWebGLTexture()
         120                 : {
         121                 :   /* destructor code */
         122                 : }
         123                 :
         124                 : /* [noscript] attribute WebGLuint name; */
         125                 : NS_IMETHODIMP nsWebGLTexture::GetName(WebGLuint *aName)
         126                 : {
         127                 :     return NS_ERROR_NOT_IMPLEMENTED;
         128                 : }
         129                 : NS_IMETHODIMP nsWebGLTexture::SetName(WebGLuint aName)
         130                 : {
         131                 :     return NS_ERROR_NOT_IMPLEMENTED;
         132                 : }
         133                 :
         134                 : /* End of implementation class template. */
         135                 : #endif
         136                 :
         137                 :
         138                 : /* starting interface:    nsIWebGLBuffer */
         139                 : #define NS_IWEBGLBUFFER_IID_STR "9eca9c32-8305-11de-b89b-000c29206271"
         140                 :
         141                 : #define NS_IWEBGLBUFFER_IID \
         142                 :   {0x9eca9c32, 0x8305, 0x11de, \
         143                 :     { 0xb8, 0x9b, 0x00, 0x0c, 0x29, 0x20, 0x62, 0x71 }}
         144                 :
         145               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLBuffer : public nsISupports {
         146                 :  public:
         147                 :
         148                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLBUFFER_IID)
         149                 :
         150                 :   /* [noscript] attribute WebGLuint name; */
         151                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
         152                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
         153                 :
         154                 : };
         155                 :
         156                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLBuffer, NS_IWEBGLBUFFER_IID)
         157                 :
         158                 : /* Use this macro when declaring classes that implement this interface. */
         159                 : #define NS_DECL_NSIWEBGLBUFFER \
         160                 :   NS_IMETHOD GetName(WebGLuint *aName); \
         161                 :   NS_IMETHOD SetName(WebGLuint aName);
         162                 :
         163                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         164                 : #define NS_FORWARD_NSIWEBGLBUFFER(_to) \
         165                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
         166                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
         167                 :
         168                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         169                 : #define NS_FORWARD_SAFE_NSIWEBGLBUFFER(_to) \
         170                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
         171                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
         172                 :
         173                 : #if 0
         174                 : /* Use the code below as a template for the implementation class for this interface. */
         175                 :
         176                 : /* Header file */
         177                 : class nsWebGLBuffer : public nsIWebGLBuffer
         178                 : {
         179                 : public:
         180                 :   NS_DECL_ISUPPORTS
         181                 :   NS_DECL_NSIWEBGLBUFFER
         182                 :
         183                 :   nsWebGLBuffer();
         184                 :
         185                 : private:
         186                 :   ~nsWebGLBuffer();
         187                 :
         188                 : protected:
         189                 :   /* additional members */
         190                 : };
         191                 :
         192                 : /* Implementation file */
         193                 : NS_IMPL_ISUPPORTS1(nsWebGLBuffer, nsIWebGLBuffer)
         194                 :
         195                 : nsWebGLBuffer::nsWebGLBuffer()
         196                 : {
         197                 :   /* member initializers and constructor code */
         198                 : }
         199                 :
         200                 : nsWebGLBuffer::~nsWebGLBuffer()
         201                 : {
         202                 :   /* destructor code */
         203                 : }
         204                 :
         205                 : /* [noscript] attribute WebGLuint name; */
         206                 : NS_IMETHODIMP nsWebGLBuffer::GetName(WebGLuint *aName)
         207                 : {
         208                 :     return NS_ERROR_NOT_IMPLEMENTED;
         209                 : }
         210                 : NS_IMETHODIMP nsWebGLBuffer::SetName(WebGLuint aName)
         211                 : {
         212                 :     return NS_ERROR_NOT_IMPLEMENTED;
         213                 : }
         214                 :
         215                 : /* End of implementation class template. */
         216                 : #endif
         217                 :
         218                 :
         219                 : /* starting interface:    nsIWebGLProgram */
         220                 : #define NS_IWEBGLPROGRAM_IID_STR "a6a19e74-8305-11de-9ce9-000c29206271"
         221                 :
         222                 : #define NS_IWEBGLPROGRAM_IID \
         223                 :   {0xa6a19e74, 0x8305, 0x11de, \
         224                 :     { 0x9c, 0xe9, 0x00, 0x0c, 0x29, 0x20, 0x62, 0x71 }}
         225                 :
         226               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLProgram : public nsISupports {
         227                 :  public:
         228                 :
         229                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLPROGRAM_IID)
         230                 :
         231                 :   /* [noscript] attribute WebGLuint name; */
         232                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
         233                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
         234                 :
         235                 : };
         236                 :
         237                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLProgram, NS_IWEBGLPROGRAM_IID)
         238                 :
         239                 : /* Use this macro when declaring classes that implement this interface. */
         240                 : #define NS_DECL_NSIWEBGLPROGRAM \
         241                 :   NS_IMETHOD GetName(WebGLuint *aName); \
         242                 :   NS_IMETHOD SetName(WebGLuint aName);
         243                 :
         244                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         245                 : #define NS_FORWARD_NSIWEBGLPROGRAM(_to) \
         246                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
         247                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
         248                 :
         249                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         250                 : #define NS_FORWARD_SAFE_NSIWEBGLPROGRAM(_to) \
         251                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
         252                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
         253                 :
         254                 : #if 0
         255                 : /* Use the code below as a template for the implementation class for this interface. */
         256                 :
         257                 : /* Header file */
         258                 : class nsWebGLProgram : public nsIWebGLProgram
         259                 : {
         260                 : public:
         261                 :   NS_DECL_ISUPPORTS
         262                 :   NS_DECL_NSIWEBGLPROGRAM
         263                 :
         264                 :   nsWebGLProgram();
         265                 :
         266                 : private:
         267                 :   ~nsWebGLProgram();
         268                 :
         269                 : protected:
         270                 :   /* additional members */
         271                 : };
         272                 :
         273                 : /* Implementation file */
         274                 : NS_IMPL_ISUPPORTS1(nsWebGLProgram, nsIWebGLProgram)
         275                 :
         276                 : nsWebGLProgram::nsWebGLProgram()
         277                 : {
         278                 :   /* member initializers and constructor code */
         279                 : }
         280                 :
         281                 : nsWebGLProgram::~nsWebGLProgram()
         282                 : {
         283                 :   /* destructor code */
         284                 : }
         285                 :
         286                 : /* [noscript] attribute WebGLuint name; */
         287                 : NS_IMETHODIMP nsWebGLProgram::GetName(WebGLuint *aName)
         288                 : {
         289                 :     return NS_ERROR_NOT_IMPLEMENTED;
         290                 : }
         291                 : NS_IMETHODIMP nsWebGLProgram::SetName(WebGLuint aName)
         292                 : {
         293                 :     return NS_ERROR_NOT_IMPLEMENTED;
         294                 : }
         295                 :
         296                 : /* End of implementation class template. */
         297                 : #endif
         298                 :
         299                 :
         300                 : /* starting interface:    nsIWebGLShader */
         301                 : #define NS_IWEBGLSHADER_IID_STR "ac7440a4-8305-11de-807b-000c29206271"
         302                 :
         303                 : #define NS_IWEBGLSHADER_IID \
         304                 :   {0xac7440a4, 0x8305, 0x11de, \
         305                 :     { 0x80, 0x7b, 0x00, 0x0c, 0x29, 0x20, 0x62, 0x71 }}
         306                 :
         307               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLShader : public nsISupports {
         308                 :  public:
         309                 :
         310                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLSHADER_IID)
         311                 :
         312                 :   /* [noscript] attribute WebGLuint name; */
         313                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
         314                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
         315                 :
         316                 : };
         317                 :
         318                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLShader, NS_IWEBGLSHADER_IID)
         319                 :
         320                 : /* Use this macro when declaring classes that implement this interface. */
         321                 : #define NS_DECL_NSIWEBGLSHADER \
         322                 :   NS_IMETHOD GetName(WebGLuint *aName); \
         323                 :   NS_IMETHOD SetName(WebGLuint aName);
         324                 :
         325                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         326                 : #define NS_FORWARD_NSIWEBGLSHADER(_to) \
         327                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
         328                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
         329                 :
         330                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         331                 : #define NS_FORWARD_SAFE_NSIWEBGLSHADER(_to) \
         332                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
         333                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
         334                 :
         335                 : #if 0
         336                 : /* Use the code below as a template for the implementation class for this interface. */
         337                 :
         338                 : /* Header file */
         339                 : class nsWebGLShader : public nsIWebGLShader
         340                 : {
         341                 : public:
         342                 :   NS_DECL_ISUPPORTS
         343                 :   NS_DECL_NSIWEBGLSHADER
         344                 :
         345                 :   nsWebGLShader();
         346                 :
         347                 : private:
         348                 :   ~nsWebGLShader();
         349                 :
         350                 : protected:
         351                 :   /* additional members */
         352                 : };
         353                 :
         354                 : /* Implementation file */
         355                 : NS_IMPL_ISUPPORTS1(nsWebGLShader, nsIWebGLShader)
         356                 :
         357                 : nsWebGLShader::nsWebGLShader()
         358                 : {
         359                 :   /* member initializers and constructor code */
         360                 : }
         361                 :
         362                 : nsWebGLShader::~nsWebGLShader()
         363                 : {
         364                 :   /* destructor code */
         365                 : }
         366                 :
         367                 : /* [noscript] attribute WebGLuint name; */
         368                 : NS_IMETHODIMP nsWebGLShader::GetName(WebGLuint *aName)
         369                 : {
         370                 :     return NS_ERROR_NOT_IMPLEMENTED;
         371                 : }
         372                 : NS_IMETHODIMP nsWebGLShader::SetName(WebGLuint aName)
         373                 : {
         374                 :     return NS_ERROR_NOT_IMPLEMENTED;
         375                 : }
         376                 :
         377                 : /* End of implementation class template. */
         378                 : #endif
         379                 :
         380                 :
         381                 : /* starting interface:    nsIWebGLShaderArray */
         382                 : #define NS_IWEBGLSHADERARRAY_IID_STR "beea4b38-3094-4e8d-b6e6-8b21d07e8994"
         383                 :
         384                 : #define NS_IWEBGLSHADERARRAY_IID \
         385                 :   {0xbeea4b38, 0x3094, 0x4e8d, \
         386                 :     { 0xb6, 0xe6, 0x8b, 0x21, 0xd0, 0x7e, 0x89, 0x94 }}
         387                 :
         388                 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLShaderArray : public nsISupports {
         389                 :  public:
         390                 :
         391                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLSHADERARRAY_IID)
         392                 :
         393                 :   /* readonly attribute unsigned long length; */
         394                 :   NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) = 0;
         395                 :
         396                 :   /* nsIWebGLShader item (in unsigned long index); */
         397                 :   NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIWebGLShader * *_retval NS_OUTPARAM) = 0;
         398                 :
         399                 : };
         400                 :
         401                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLShaderArray, NS_IWEBGLSHADERARRAY_IID)
         402                 :
         403                 : /* Use this macro when declaring classes that implement this interface. */
         404                 : #define NS_DECL_NSIWEBGLSHADERARRAY \
         405                 :   NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength); \
         406                 :   NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIWebGLShader * *_retval NS_OUTPARAM);
         407                 :
         408                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         409                 : #define NS_FORWARD_NSIWEBGLSHADERARRAY(_to) \
         410                 :   NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) { return _to GetLength(aLength); } \
         411                 :   NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIWebGLShader * *_retval NS_OUTPARAM) { return _to Item(index, _retval); }
         412                 :
         413                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         414                 : #define NS_FORWARD_SAFE_NSIWEBGLSHADERARRAY(_to) \
         415                 :   NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLength(aLength); } \
         416                 :   NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIWebGLShader * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Item(index, _retval); }
         417                 :
         418                 : #if 0
         419                 : /* Use the code below as a template for the implementation class for this interface. */
         420                 :
         421                 : /* Header file */
         422                 : class nsWebGLShaderArray : public nsIWebGLShaderArray
         423                 : {
         424                 : public:
         425                 :   NS_DECL_ISUPPORTS
         426                 :   NS_DECL_NSIWEBGLSHADERARRAY
         427                 :
         428                 :   nsWebGLShaderArray();
         429                 :
         430                 : private:
         431                 :   ~nsWebGLShaderArray();
         432                 :
         433                 : protected:
         434                 :   /* additional members */
         435                 : };
         436                 :
         437                 : /* Implementation file */
         438                 : NS_IMPL_ISUPPORTS1(nsWebGLShaderArray, nsIWebGLShaderArray)
         439                 :
         440                 : nsWebGLShaderArray::nsWebGLShaderArray()
         441                 : {
         442                 :   /* member initializers and constructor code */
         443                 : }
         444                 :
         445                 : nsWebGLShaderArray::~nsWebGLShaderArray()
         446                 : {
         447                 :   /* destructor code */
         448                 : }
         449                 :
         450                 : /* readonly attribute unsigned long length; */
         451                 : NS_IMETHODIMP nsWebGLShaderArray::GetLength(PRUint32 *aLength)
         452                 : {
         453                 :     return NS_ERROR_NOT_IMPLEMENTED;
         454                 : }
         455                 :
         456                 : /* nsIWebGLShader item (in unsigned long index); */
         457                 : NS_IMETHODIMP nsWebGLShaderArray::Item(PRUint32 index, nsIWebGLShader * *_retval NS_OUTPARAM)
         458                 : {
         459                 :     return NS_ERROR_NOT_IMPLEMENTED;
         460                 : }
         461                 :
         462                 : /* End of implementation class template. */
         463                 : #endif
         464                 :
         465                 :
         466                 : /* starting interface:    nsIWebGLFramebuffer */
         467                 : #define NS_IWEBGLFRAMEBUFFER_IID_STR "bce8be60-8305-11de-9f3c-000c29206271"
         468                 :
         469                 : #define NS_IWEBGLFRAMEBUFFER_IID \
         470                 :   {0xbce8be60, 0x8305, 0x11de, \
         471                 :     { 0x9f, 0x3c, 0x00, 0x0c, 0x29, 0x20, 0x62, 0x71 }}
         472                 :
         473               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLFramebuffer : public nsISupports {
         474                 :  public:
         475                 :
         476                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLFRAMEBUFFER_IID)
         477                 :
         478                 :   /* [noscript] attribute WebGLuint name; */
         479                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
         480                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
         481                 :
         482                 : };
         483                 :
         484                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLFramebuffer, NS_IWEBGLFRAMEBUFFER_IID)
         485                 :
         486                 : /* Use this macro when declaring classes that implement this interface. */
         487                 : #define NS_DECL_NSIWEBGLFRAMEBUFFER \
         488                 :   NS_IMETHOD GetName(WebGLuint *aName); \
         489                 :   NS_IMETHOD SetName(WebGLuint aName);
         490                 :
         491                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         492                 : #define NS_FORWARD_NSIWEBGLFRAMEBUFFER(_to) \
         493                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
         494                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
         495                 :
         496                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         497                 : #define NS_FORWARD_SAFE_NSIWEBGLFRAMEBUFFER(_to) \
         498                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
         499                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
         500                 :
         501                 : #if 0
         502                 : /* Use the code below as a template for the implementation class for this interface. */
         503                 :
         504                 : /* Header file */
         505                 : class nsWebGLFramebuffer : public nsIWebGLFramebuffer
         506                 : {
         507                 : public:
         508                 :   NS_DECL_ISUPPORTS
         509                 :   NS_DECL_NSIWEBGLFRAMEBUFFER
         510                 :
         511                 :   nsWebGLFramebuffer();
         512                 :
         513                 : private:
         514                 :   ~nsWebGLFramebuffer();
         515                 :
         516                 : protected:
         517                 :   /* additional members */
         518                 : };
         519                 :
         520                 : /* Implementation file */
         521                 : NS_IMPL_ISUPPORTS1(nsWebGLFramebuffer, nsIWebGLFramebuffer)
         522                 :
         523                 : nsWebGLFramebuffer::nsWebGLFramebuffer()
         524                 : {
         525                 :   /* member initializers and constructor code */
         526                 : }
         527                 :
         528                 : nsWebGLFramebuffer::~nsWebGLFramebuffer()
         529                 : {
         530                 :   /* destructor code */
         531                 : }
         532                 :
         533                 : /* [noscript] attribute WebGLuint name; */
         534                 : NS_IMETHODIMP nsWebGLFramebuffer::GetName(WebGLuint *aName)
         535                 : {
         536                 :     return NS_ERROR_NOT_IMPLEMENTED;
         537                 : }
         538                 : NS_IMETHODIMP nsWebGLFramebuffer::SetName(WebGLuint aName)
         539                 : {
         540                 :     return NS_ERROR_NOT_IMPLEMENTED;
         541                 : }
         542                 :
         543                 : /* End of implementation class template. */
         544                 : #endif
         545                 :
         546                 :
         547                 : /* starting interface:    nsIWebGLRenderbuffer */
         548                 : #define NS_IWEBGLRENDERBUFFER_IID_STR "c82eacd0-8305-11de-9de9-000c29206271"
         549                 :
         550                 : #define NS_IWEBGLRENDERBUFFER_IID \
         551                 :   {0xc82eacd0, 0x8305, 0x11de, \
         552                 :     { 0x9d, 0xe9, 0x00, 0x0c, 0x29, 0x20, 0x62, 0x71 }}
         553                 :
         554               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLRenderbuffer : public nsISupports {
         555                 :  public:
         556                 :
         557                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLRENDERBUFFER_IID)
         558                 :
         559                 :   /* [noscript] attribute WebGLuint name; */
         560                 :   NS_IMETHOD GetName(WebGLuint *aName) = 0;
         561                 :   NS_IMETHOD SetName(WebGLuint aName) = 0;
         562                 :
         563                 : };
         564                 :
         565                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLRenderbuffer, NS_IWEBGLRENDERBUFFER_IID)
         566                 :
         567                 : /* Use this macro when declaring classes that implement this interface. */
         568                 : #define NS_DECL_NSIWEBGLRENDERBUFFER \
         569                 :   NS_IMETHOD GetName(WebGLuint *aName); \
         570                 :   NS_IMETHOD SetName(WebGLuint aName);
         571                 :
         572                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         573                 : #define NS_FORWARD_NSIWEBGLRENDERBUFFER(_to) \
         574                 :   NS_IMETHOD GetName(WebGLuint *aName) { return _to GetName(aName); } \
         575                 :   NS_IMETHOD SetName(WebGLuint aName) { return _to SetName(aName); }
         576                 :
         577                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         578                 : #define NS_FORWARD_SAFE_NSIWEBGLRENDERBUFFER(_to) \
         579                 :   NS_IMETHOD GetName(WebGLuint *aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
         580                 :   NS_IMETHOD SetName(WebGLuint aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetName(aName); }
         581                 :
         582                 : #if 0
         583                 : /* Use the code below as a template for the implementation class for this interface. */
         584                 :
         585                 : /* Header file */
         586                 : class nsWebGLRenderbuffer : public nsIWebGLRenderbuffer
         587                 : {
         588                 : public:
         589                 :   NS_DECL_ISUPPORTS
         590                 :   NS_DECL_NSIWEBGLRENDERBUFFER
         591                 :
         592                 :   nsWebGLRenderbuffer();
         593                 :
         594                 : private:
         595                 :   ~nsWebGLRenderbuffer();
         596                 :
         597                 : protected:
         598                 :   /* additional members */
         599                 : };
         600                 :
         601                 : /* Implementation file */
         602                 : NS_IMPL_ISUPPORTS1(nsWebGLRenderbuffer, nsIWebGLRenderbuffer)
         603                 :
         604                 : nsWebGLRenderbuffer::nsWebGLRenderbuffer()
         605                 : {
         606                 :   /* member initializers and constructor code */
         607                 : }
         608                 :
         609                 : nsWebGLRenderbuffer::~nsWebGLRenderbuffer()
         610                 : {
         611                 :   /* destructor code */
         612                 : }
         613                 :
         614                 : /* [noscript] attribute WebGLuint name; */
         615                 : NS_IMETHODIMP nsWebGLRenderbuffer::GetName(WebGLuint *aName)
         616                 : {
         617                 :     return NS_ERROR_NOT_IMPLEMENTED;
         618                 : }
         619                 : NS_IMETHODIMP nsWebGLRenderbuffer::SetName(WebGLuint aName)
         620                 : {
         621                 :     return NS_ERROR_NOT_IMPLEMENTED;
         622                 : }
         623                 :
         624                 : /* End of implementation class template. */
         625                 : #endif
         626                 :
         627                 :
         628                 : /* starting interface:    nsIWebGLActiveInfo */
         629                 : #define NS_IWEBGLACTIVEINFO_IID_STR "a85d4fd0-5b9f-4cb8-aeee-5a2c5c5bad76"
         630                 :
         631                 : #define NS_IWEBGLACTIVEINFO_IID \
         632                 :   {0xa85d4fd0, 0x5b9f, 0x4cb8, \
         633                 :     { 0xae, 0xee, 0x5a, 0x2c, 0x5c, 0x5b, 0xad, 0x76 }}
         634                 :
         635               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLActiveInfo : public nsISupports {
         636                 :  public:
         637                 :
         638                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLACTIVEINFO_IID)
         639                 :
         640                 :   /* readonly attribute WebGLint size; */
         641                 :   NS_SCRIPTABLE NS_IMETHOD GetSize(WebGLint *aSize) = 0;
         642                 :
         643                 :   /* readonly attribute WebGLenum type; */
         644                 :   NS_SCRIPTABLE NS_IMETHOD GetType(WebGLenum *aType) = 0;
         645                 :
         646                 :   /* readonly attribute DOMString name; */
         647                 :   NS_SCRIPTABLE NS_IMETHOD GetName(nsAString & aName) = 0;
         648                 :
         649                 : };
         650                 :
         651                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLActiveInfo, NS_IWEBGLACTIVEINFO_IID)
         652                 :
         653                 : /* Use this macro when declaring classes that implement this interface. */
         654                 : #define NS_DECL_NSIWEBGLACTIVEINFO \
         655                 :   NS_SCRIPTABLE NS_IMETHOD GetSize(WebGLint *aSize); \
         656                 :   NS_SCRIPTABLE NS_IMETHOD GetType(WebGLenum *aType); \
         657                 :   NS_SCRIPTABLE NS_IMETHOD GetName(nsAString & aName);
         658                 :
         659                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         660                 : #define NS_FORWARD_NSIWEBGLACTIVEINFO(_to) \
         661                 :   NS_SCRIPTABLE NS_IMETHOD GetSize(WebGLint *aSize) { return _to GetSize(aSize); } \
         662                 :   NS_SCRIPTABLE NS_IMETHOD GetType(WebGLenum *aType) { return _to GetType(aType); } \
         663                 :   NS_SCRIPTABLE NS_IMETHOD GetName(nsAString & aName) { return _to GetName(aName); }
         664                 :
         665                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         666                 : #define NS_FORWARD_SAFE_NSIWEBGLACTIVEINFO(_to) \
         667                 :   NS_SCRIPTABLE NS_IMETHOD GetSize(WebGLint *aSize) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSize(aSize); } \
         668                 :   NS_SCRIPTABLE NS_IMETHOD GetType(WebGLenum *aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } \
         669                 :   NS_SCRIPTABLE NS_IMETHOD GetName(nsAString & aName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); }
         670                 :
         671                 : #if 0
         672                 : /* Use the code below as a template for the implementation class for this interface. */
         673                 :
         674                 : /* Header file */
         675                 : class nsWebGLActiveInfo : public nsIWebGLActiveInfo
         676                 : {
         677                 : public:
         678                 :   NS_DECL_ISUPPORTS
         679                 :   NS_DECL_NSIWEBGLACTIVEINFO
         680                 :
         681                 :   nsWebGLActiveInfo();
         682                 :
         683                 : private:
         684                 :   ~nsWebGLActiveInfo();
         685                 :
         686                 : protected:
         687                 :   /* additional members */
         688                 : };
         689                 :
         690                 : /* Implementation file */
         691                 : NS_IMPL_ISUPPORTS1(nsWebGLActiveInfo, nsIWebGLActiveInfo)
         692                 :
         693                 : nsWebGLActiveInfo::nsWebGLActiveInfo()
         694                 : {
         695                 :   /* member initializers and constructor code */
         696                 : }
         697                 :
         698                 : nsWebGLActiveInfo::~nsWebGLActiveInfo()
         699                 : {
         700                 :   /* destructor code */
         701                 : }
         702                 :
         703                 : /* readonly attribute WebGLint size; */
         704                 : NS_IMETHODIMP nsWebGLActiveInfo::GetSize(WebGLint *aSize)
         705                 : {
         706                 :     return NS_ERROR_NOT_IMPLEMENTED;
         707                 : }
         708                 :
         709                 : /* readonly attribute WebGLenum type; */
         710                 : NS_IMETHODIMP nsWebGLActiveInfo::GetType(WebGLenum *aType)
         711                 : {
         712                 :     return NS_ERROR_NOT_IMPLEMENTED;
         713                 : }
         714                 :
         715                 : /* readonly attribute DOMString name; */
         716                 : NS_IMETHODIMP nsWebGLActiveInfo::GetName(nsAString & aName)
         717                 : {
         718                 :     return NS_ERROR_NOT_IMPLEMENTED;
         719                 : }
         720                 :
         721                 : /* End of implementation class template. */
         722                 : #endif
         723                 :
         724                 :
         725                 : /* starting interface:    nsIWebGLShaderPrecisionFormat */
         726                 : #define NS_IWEBGLSHADERPRECISIONFORMAT_IID_STR "76265e93-2e8f-40ca-b25b-eea5995e9641"
         727                 :
         728                 : #define NS_IWEBGLSHADERPRECISIONFORMAT_IID \
         729                 :   {0x76265e93, 0x2e8f, 0x40ca, \
         730                 :     { 0xb2, 0x5b, 0xee, 0xa5, 0x99, 0x5e, 0x96, 0x41 }}
         731                 :
         732               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLShaderPrecisionFormat : public nsISupports {
         733                 :  public:
         734                 :
         735                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLSHADERPRECISIONFORMAT_IID)
         736                 :
         737                 :   /* readonly attribute WebGLint rangeMin; */
         738                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMin(WebGLint *aRangeMin) = 0;
         739                 :
         740                 :   /* readonly attribute WebGLint rangeMax; */
         741                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMax(WebGLint *aRangeMax) = 0;
         742                 :
         743                 :   /* readonly attribute WebGLint precision; */
         744                 :   NS_SCRIPTABLE NS_IMETHOD GetPrecision(WebGLint *aPrecision) = 0;
         745                 :
         746                 : };
         747                 :
         748                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLShaderPrecisionFormat, NS_IWEBGLSHADERPRECISIONFORMAT_IID)
         749                 :
         750                 : /* Use this macro when declaring classes that implement this interface. */
         751                 : #define NS_DECL_NSIWEBGLSHADERPRECISIONFORMAT \
         752                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMin(WebGLint *aRangeMin); \
         753                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMax(WebGLint *aRangeMax); \
         754                 :   NS_SCRIPTABLE NS_IMETHOD GetPrecision(WebGLint *aPrecision);
         755                 :
         756                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         757                 : #define NS_FORWARD_NSIWEBGLSHADERPRECISIONFORMAT(_to) \
         758                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMin(WebGLint *aRangeMin) { return _to GetRangeMin(aRangeMin); } \
         759                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMax(WebGLint *aRangeMax) { return _to GetRangeMax(aRangeMax); } \
         760                 :   NS_SCRIPTABLE NS_IMETHOD GetPrecision(WebGLint *aPrecision) { return _to GetPrecision(aPrecision); }
         761                 :
         762                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         763                 : #define NS_FORWARD_SAFE_NSIWEBGLSHADERPRECISIONFORMAT(_to) \
         764                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMin(WebGLint *aRangeMin) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRangeMin(aRangeMin); } \
         765                 :   NS_SCRIPTABLE NS_IMETHOD GetRangeMax(WebGLint *aRangeMax) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRangeMax(aRangeMax); } \
         766                 :   NS_SCRIPTABLE NS_IMETHOD GetPrecision(WebGLint *aPrecision) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPrecision(aPrecision); }
         767                 :
         768                 : #if 0
         769                 : /* Use the code below as a template for the implementation class for this interface. */
         770                 :
         771                 : /* Header file */
         772                 : class nsWebGLShaderPrecisionFormat : public nsIWebGLShaderPrecisionFormat
         773                 : {
         774                 : public:
         775                 :   NS_DECL_ISUPPORTS
         776                 :   NS_DECL_NSIWEBGLSHADERPRECISIONFORMAT
         777                 :
         778                 :   nsWebGLShaderPrecisionFormat();
         779                 :
         780                 : private:
         781                 :   ~nsWebGLShaderPrecisionFormat();
         782                 :
         783                 : protected:
         784                 :   /* additional members */
         785                 : };
         786                 :
         787                 : /* Implementation file */
         788                 : NS_IMPL_ISUPPORTS1(nsWebGLShaderPrecisionFormat, nsIWebGLShaderPrecisionFormat)
         789                 :
         790                 : nsWebGLShaderPrecisionFormat::nsWebGLShaderPrecisionFormat()
         791                 : {
         792                 :   /* member initializers and constructor code */
         793                 : }
         794                 :
         795                 : nsWebGLShaderPrecisionFormat::~nsWebGLShaderPrecisionFormat()
         796                 : {
         797                 :   /* destructor code */
         798                 : }
         799                 :
         800                 : /* readonly attribute WebGLint rangeMin; */
         801                 : NS_IMETHODIMP nsWebGLShaderPrecisionFormat::GetRangeMin(WebGLint *aRangeMin)
         802                 : {
         803                 :     return NS_ERROR_NOT_IMPLEMENTED;
         804                 : }
         805                 :
         806                 : /* readonly attribute WebGLint rangeMax; */
         807                 : NS_IMETHODIMP nsWebGLShaderPrecisionFormat::GetRangeMax(WebGLint *aRangeMax)
         808                 : {
         809                 :     return NS_ERROR_NOT_IMPLEMENTED;
         810                 : }
         811                 :
         812                 : /* readonly attribute WebGLint precision; */
         813                 : NS_IMETHODIMP nsWebGLShaderPrecisionFormat::GetPrecision(WebGLint *aPrecision)
         814                 : {
         815                 :     return NS_ERROR_NOT_IMPLEMENTED;
         816                 : }
         817                 :
         818                 : /* End of implementation class template. */
         819                 : #endif
         820                 :
         821                 :
         822                 : /* starting interface:    nsIWebGLUniformLocation */
         823                 : #define NS_IWEBGLUNIFORMLOCATION_IID_STR "d38b0467-623e-4c82-9140-5f14a3bd1bad"
         824                 :
         825                 : #define NS_IWEBGLUNIFORMLOCATION_IID \
         826                 :   {0xd38b0467, 0x623e, 0x4c82, \
         827                 :     { 0x91, 0x40, 0x5f, 0x14, 0xa3, 0xbd, 0x1b, 0xad }}
         828                 :
         829               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLUniformLocation : public nsISupports {
         830                 :  public:
         831                 :
         832                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLUNIFORMLOCATION_IID)
         833                 :
         834                 :   /* [noscript] attribute WebGLint location; */
         835                 :   NS_IMETHOD GetLocation(WebGLint *aLocation) = 0;
         836                 :   NS_IMETHOD SetLocation(WebGLint aLocation) = 0;
         837                 :
         838                 : };
         839                 :
         840                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLUniformLocation, NS_IWEBGLUNIFORMLOCATION_IID)
         841                 :
         842                 : /* Use this macro when declaring classes that implement this interface. */
         843                 : #define NS_DECL_NSIWEBGLUNIFORMLOCATION \
         844                 :   NS_IMETHOD GetLocation(WebGLint *aLocation); \
         845                 :   NS_IMETHOD SetLocation(WebGLint aLocation);
         846                 :
         847                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         848                 : #define NS_FORWARD_NSIWEBGLUNIFORMLOCATION(_to) \
         849                 :   NS_IMETHOD GetLocation(WebGLint *aLocation) { return _to GetLocation(aLocation); } \
         850                 :   NS_IMETHOD SetLocation(WebGLint aLocation) { return _to SetLocation(aLocation); }
         851                 :
         852                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         853                 : #define NS_FORWARD_SAFE_NSIWEBGLUNIFORMLOCATION(_to) \
         854                 :   NS_IMETHOD GetLocation(WebGLint *aLocation) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLocation(aLocation); } \
         855                 :   NS_IMETHOD SetLocation(WebGLint aLocation) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLocation(aLocation); }
         856                 :
         857                 : #if 0
         858                 : /* Use the code below as a template for the implementation class for this interface. */
         859                 :
         860                 : /* Header file */
         861                 : class nsWebGLUniformLocation : public nsIWebGLUniformLocation
         862                 : {
         863                 : public:
         864                 :   NS_DECL_ISUPPORTS
         865                 :   NS_DECL_NSIWEBGLUNIFORMLOCATION
         866                 :
         867                 :   nsWebGLUniformLocation();
         868                 :
         869                 : private:
         870                 :   ~nsWebGLUniformLocation();
         871                 :
         872                 : protected:
         873                 :   /* additional members */
         874                 : };
         875                 :
         876                 : /* Implementation file */
         877                 : NS_IMPL_ISUPPORTS1(nsWebGLUniformLocation, nsIWebGLUniformLocation)
         878                 :
         879                 : nsWebGLUniformLocation::nsWebGLUniformLocation()
         880                 : {
         881                 :   /* member initializers and constructor code */
         882                 : }
         883                 :
         884                 : nsWebGLUniformLocation::~nsWebGLUniformLocation()
         885                 : {
         886                 :   /* destructor code */
         887                 : }
         888                 :
         889                 : /* [noscript] attribute WebGLint location; */
         890                 : NS_IMETHODIMP nsWebGLUniformLocation::GetLocation(WebGLint *aLocation)
         891                 : {
         892                 :     return NS_ERROR_NOT_IMPLEMENTED;
         893                 : }
         894                 : NS_IMETHODIMP nsWebGLUniformLocation::SetLocation(WebGLint aLocation)
         895                 : {
         896                 :     return NS_ERROR_NOT_IMPLEMENTED;
         897                 : }
         898                 :
         899                 : /* End of implementation class template. */
         900                 : #endif
         901                 :
         902                 :
         903                 : /* starting interface:    nsIWebGLExtension */
         904                 : #define NS_IWEBGLEXTENSION_IID_STR "70814f32-a5c5-4b95-83d5-ac653bac3316"
         905                 :
         906                 : #define NS_IWEBGLEXTENSION_IID \
         907                 :   {0x70814f32, 0xa5c5, 0x4b95, \
         908                 :     { 0x83, 0xd5, 0xac, 0x65, 0x3b, 0xac, 0x33, 0x16 }}
         909                 :
         910               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLExtension : public nsISupports {
         911                 :  public:
         912                 :
         913                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLEXTENSION_IID)
         914                 :
         915                 : };
         916                 :
         917                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLExtension, NS_IWEBGLEXTENSION_IID)
         918                 :
         919                 : /* Use this macro when declaring classes that implement this interface. */
         920                 : #define NS_DECL_NSIWEBGLEXTENSION \
         921                 :   /* no methods! */
         922                 :
         923                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         924                 : #define NS_FORWARD_NSIWEBGLEXTENSION(_to) \
         925                 :   /* no methods! */
         926                 :
         927                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         928                 : #define NS_FORWARD_SAFE_NSIWEBGLEXTENSION(_to) \
         929                 :   /* no methods! */
         930                 :
         931                 : #if 0
         932                 : /* Use the code below as a template for the implementation class for this interface. */
         933                 :
         934                 : /* Header file */
         935                 : class nsWebGLExtension : public nsIWebGLExtension
         936                 : {
         937                 : public:
         938                 :   NS_DECL_ISUPPORTS
         939                 :   NS_DECL_NSIWEBGLEXTENSION
         940                 :
         941                 :   nsWebGLExtension();
         942                 :
         943                 : private:
         944                 :   ~nsWebGLExtension();
         945                 :
         946                 : protected:
         947                 :   /* additional members */
         948                 : };
         949                 :
         950                 : /* Implementation file */
         951                 : NS_IMPL_ISUPPORTS1(nsWebGLExtension, nsIWebGLExtension)
         952                 :
         953                 : nsWebGLExtension::nsWebGLExtension()
         954                 : {
         955                 :   /* member initializers and constructor code */
         956                 : }
         957                 :
         958                 : nsWebGLExtension::~nsWebGLExtension()
         959                 : {
         960                 :   /* destructor code */
         961                 : }
         962                 :
         963                 : /* End of implementation class template. */
         964                 : #endif
         965                 :
         966                 :
         967                 : /* starting interface:    nsIWebGLExtensionStandardDerivatives */
         968                 : #define NS_IWEBGLEXTENSIONSTANDARDDERIVATIVES_IID_STR "3de3dfd9-864a-4e4c-989b-2977eaa80b7b"
         969                 :
         970                 : #define NS_IWEBGLEXTENSIONSTANDARDDERIVATIVES_IID \
         971                 :   {0x3de3dfd9, 0x864a, 0x4e4c, \
         972                 :     { 0x98, 0x9b, 0x29, 0x77, 0xea, 0xa8, 0x0b, 0x7b }}
         973                 :
         974               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLExtensionStandardDerivatives : public nsIWebGLExtension {
         975                 :  public:
         976                 :
         977                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLEXTENSIONSTANDARDDERIVATIVES_IID)
         978                 :
         979                 :   enum {
         980                 :     FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 35723U
         981                 :   };
         982                 :
         983                 : };
         984                 :
         985                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLExtensionStandardDerivatives, NS_IWEBGLEXTENSIONSTANDARDDERIVATIVES_IID)
         986                 :
         987                 : /* Use this macro when declaring classes that implement this interface. */
         988                 : #define NS_DECL_NSIWEBGLEXTENSIONSTANDARDDERIVATIVES \
         989                 :
         990                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
         991                 : #define NS_FORWARD_NSIWEBGLEXTENSIONSTANDARDDERIVATIVES(_to) \
         992                 :
         993                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
         994                 : #define NS_FORWARD_SAFE_NSIWEBGLEXTENSIONSTANDARDDERIVATIVES(_to) \
         995                 :
         996                 : #if 0
         997                 : /* Use the code below as a template for the implementation class for this interface. */
         998                 :
         999                 : /* Header file */
        1000                 : class nsWebGLExtensionStandardDerivatives : public nsIWebGLExtensionStandardDerivatives
        1001                 : {
        1002                 : public:
        1003                 :   NS_DECL_ISUPPORTS
        1004                 :   NS_DECL_NSIWEBGLEXTENSIONSTANDARDDERIVATIVES
        1005                 :
        1006                 :   nsWebGLExtensionStandardDerivatives();
        1007                 :
        1008                 : private:
        1009                 :   ~nsWebGLExtensionStandardDerivatives();
        1010                 :
        1011                 : protected:
        1012                 :   /* additional members */
        1013                 : };
        1014                 :
        1015                 : /* Implementation file */
        1016                 : NS_IMPL_ISUPPORTS1(nsWebGLExtensionStandardDerivatives, nsIWebGLExtensionStandardDerivatives)
        1017                 :
        1018                 : nsWebGLExtensionStandardDerivatives::nsWebGLExtensionStandardDerivatives()
        1019                 : {
        1020                 :   /* member initializers and constructor code */
        1021                 : }
        1022                 :
        1023                 : nsWebGLExtensionStandardDerivatives::~nsWebGLExtensionStandardDerivatives()
        1024                 : {
        1025                 :   /* destructor code */
        1026                 : }
        1027                 :
        1028                 : /* End of implementation class template. */
        1029                 : #endif
        1030                 :
        1031                 :
        1032                 : /* starting interface:    nsIWebGLExtensionLoseContext */
        1033                 : #define NS_IWEBGLEXTENSIONLOSECONTEXT_IID_STR "b0afc2eb-0895-4509-98de-5c383d160694"
        1034                 :
        1035                 : #define NS_IWEBGLEXTENSIONLOSECONTEXT_IID \
        1036                 :   {0xb0afc2eb, 0x0895, 0x4509, \
        1037                 :     { 0x98, 0xde, 0x5c, 0x38, 0x3d, 0x16, 0x06, 0x94 }}
        1038                 :
        1039               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLExtensionLoseContext : public nsIWebGLExtension {
        1040                 :  public:
        1041                 :
        1042                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLEXTENSIONLOSECONTEXT_IID)
        1043                 :
        1044                 :   /* void loseContext (); */
        1045                 :   NS_SCRIPTABLE NS_IMETHOD LoseContext(void) = 0;
        1046                 :
        1047                 :   /* void restoreContext (); */
        1048                 :   NS_SCRIPTABLE NS_IMETHOD RestoreContext(void) = 0;
        1049                 :
        1050                 : };
        1051                 :
        1052                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLExtensionLoseContext, NS_IWEBGLEXTENSIONLOSECONTEXT_IID)
        1053                 :
        1054                 : /* Use this macro when declaring classes that implement this interface. */
        1055                 : #define NS_DECL_NSIWEBGLEXTENSIONLOSECONTEXT \
        1056                 :   NS_SCRIPTABLE NS_IMETHOD LoseContext(void); \
        1057                 :   NS_SCRIPTABLE NS_IMETHOD RestoreContext(void);
        1058                 :
        1059                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
        1060                 : #define NS_FORWARD_NSIWEBGLEXTENSIONLOSECONTEXT(_to) \
        1061                 :   NS_SCRIPTABLE NS_IMETHOD LoseContext(void) { return _to LoseContext(); } \
        1062                 :   NS_SCRIPTABLE NS_IMETHOD RestoreContext(void) { return _to RestoreContext(); }
        1063                 :
        1064                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
        1065                 : #define NS_FORWARD_SAFE_NSIWEBGLEXTENSIONLOSECONTEXT(_to) \
        1066                 :   NS_SCRIPTABLE NS_IMETHOD LoseContext(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->LoseContext(); } \
        1067                 :   NS_SCRIPTABLE NS_IMETHOD RestoreContext(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->RestoreContext(); }
        1068                 :
        1069                 : #if 0
        1070                 : /* Use the code below as a template for the implementation class for this interface. */
        1071                 :
        1072                 : /* Header file */
        1073                 : class nsWebGLExtensionLoseContext : public nsIWebGLExtensionLoseContext
        1074                 : {
        1075                 : public:
        1076                 :   NS_DECL_ISUPPORTS
        1077                 :   NS_DECL_NSIWEBGLEXTENSIONLOSECONTEXT
        1078                 :
        1079                 :   nsWebGLExtensionLoseContext();
        1080                 :
        1081                 : private:
        1082                 :   ~nsWebGLExtensionLoseContext();
        1083                 :
        1084                 : protected:
        1085                 :   /* additional members */
        1086                 : };
        1087                 :
        1088                 : /* Implementation file */
        1089                 : NS_IMPL_ISUPPORTS1(nsWebGLExtensionLoseContext, nsIWebGLExtensionLoseContext)
        1090                 :
        1091                 : nsWebGLExtensionLoseContext::nsWebGLExtensionLoseContext()
        1092                 : {
        1093                 :   /* member initializers and constructor code */
        1094                 : }
        1095                 :
        1096                 : nsWebGLExtensionLoseContext::~nsWebGLExtensionLoseContext()
        1097                 : {
        1098                 :   /* destructor code */
        1099                 : }
        1100                 :
        1101                 : /* void loseContext (); */
        1102                 : NS_IMETHODIMP nsWebGLExtensionLoseContext::LoseContext()
        1103                 : {
        1104                 :     return NS_ERROR_NOT_IMPLEMENTED;
        1105                 : }
        1106                 :
        1107                 : /* void restoreContext (); */
        1108                 : NS_IMETHODIMP nsWebGLExtensionLoseContext::RestoreContext()
        1109                 : {
        1110                 :     return NS_ERROR_NOT_IMPLEMENTED;
        1111                 : }
        1112                 :
        1113                 : /* End of implementation class template. */
        1114                 : #endif
        1115                 :
        1116                 :
        1117                 : /* starting interface:    nsIWebGLExtensionTextureFilterAnisotropic */
        1118                 : #define NS_IWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC_IID_STR "73bfb64d-94bd-4a7a-9eab-6b6d32e57aa0"
        1119                 :
        1120                 : #define NS_IWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC_IID \
        1121                 :   {0x73bfb64d, 0x94bd, 0x4a7a, \
        1122                 :     { 0x9e, 0xab, 0x6b, 0x6d, 0x32, 0xe5, 0x7a, 0xa0 }}
        1123                 :
        1124               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWebGLExtensionTextureFilterAnisotropic : public nsIWebGLExtension {
        1125                 :  public:
        1126                 :
        1127                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC_IID)
        1128                 :
        1129                 :   enum {
        1130                 :     TEXTURE_MAX_ANISOTROPY_EXT = 34046U,
        1131                 :     MAX_TEXTURE_MAX_ANISOTROPY_EXT = 34047U
        1132                 :   };
        1133                 :
        1134                 : };
        1135                 :
        1136                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWebGLExtensionTextureFilterAnisotropic, NS_IWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC_IID)
        1137                 :
        1138                 : /* Use this macro when declaring classes that implement this interface. */
        1139                 : #define NS_DECL_NSIWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC \
        1140                 :
        1141                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
        1142                 : #define NS_FORWARD_NSIWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC(_to) \
        1143                 :
        1144                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
        1145                 : #define NS_FORWARD_SAFE_NSIWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC(_to) \
        1146                 :
        1147                 : #if 0
        1148                 : /* Use the code below as a template for the implementation class for this interface. */
        1149                 :
        1150                 : /* Header file */
        1151                 : class nsWebGLExtensionTextureFilterAnisotropic : public nsIWebGLExtensionTextureFilterAnisotropic
        1152                 : {
        1153                 : public:
        1154                 :   NS_DECL_ISUPPORTS
        1155                 :   NS_DECL_NSIWEBGLEXTENSIONTEXTUREFILTERANISOTROPIC
        1156                 :
        1157                 :   nsWebGLExtensionTextureFilterAnisotropic();
        1158                 :
        1159                 : private:
        1160                 :   ~nsWebGLExtensionTextureFilterAnisotropic();
        1161                 :
        1162                 : protected:
        1163                 :   /* additional members */
        1164                 : };
        1165                 :
        1166                 : /* Implementation file */
        1167                 : NS_IMPL_ISUPPORTS1(nsWebGLExtensionTextureFilterAnisotropic, nsIWebGLExtensionTextureFilterAnisotropic)
        1168                 :
        1169                 : nsWebGLExtensionTextureFilterAnisotropic::nsWebGLExtensionTextureFilterAnisotropic()
        1170                 : {
        1171                 :   /* member initializers and constructor code */
        1172                 : }
        1173                 :
        1174                 : nsWebGLExtensionTextureFilterAnisotropic::~nsWebGLExtensionTextureFilterAnisotropic()
        1175                 : {
        1176                 :   /* destructor code */
        1177                 : }
        1178                 :
        1179                 : /* End of implementation class template. */
        1180                 : #endif
        1181                 :
        1182                 :
        1183                 : /* starting interface:    nsIDOMWebGLRenderingContext */
        1184                 : #define NS_IDOMWEBGLRENDERINGCONTEXT_IID_STR "020474b1-2d3f-403b-b85d-11d9082ccd92"
        1185                 :
        1186                 : #define NS_IDOMWEBGLRENDERINGCONTEXT_IID \
        1187                 :   {0x020474b1, 0x2d3f, 0x403b, \
        1188                 :     { 0xb8, 0x5d, 0x11, 0xd9, 0x08, 0x2c, 0xcd, 0x92 }}
        1189                 :
        1190               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIDOMWebGLRenderingContext : public nsISupports {
        1191                 :  public:
        1192                 :
        1193                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMWEBGLRENDERINGCONTEXT_IID)
        1194                 :
        1195                 :   enum {
        1196                 :     DEPTH_BUFFER_BIT = 256U,
        1197                 :     STENCIL_BUFFER_BIT = 1024U,
        1198                 :     COLOR_BUFFER_BIT = 16384U,
        1199                 :     POINTS = 0U,
        1200                 :     LINES = 1U,
        1201                 :     LINE_LOOP = 2U,
        1202                 :     LINE_STRIP = 3U,
        1203                 :     TRIANGLES = 4U,
        1204                 :     TRIANGLE_STRIP = 5U,
        1205                 :     TRIANGLE_FAN = 6U,
        1206                 :     ZERO = 0U,
        1207                 :     ONE = 1U,
        1208                 :     SRC_COLOR = 768U,
        1209                 :     ONE_MINUS_SRC_COLOR = 769U,
        1210                 :     SRC_ALPHA = 770U,
        1211                 :     ONE_MINUS_SRC_ALPHA = 771U,
        1212                 :     DST_ALPHA = 772U,
        1213                 :     ONE_MINUS_DST_ALPHA = 773U,
        1214                 :     DST_COLOR = 774U,
        1215                 :     ONE_MINUS_DST_COLOR = 775U,
        1216                 :     SRC_ALPHA_SATURATE = 776U,
        1217                 :     FUNC_ADD = 32774U,
        1218                 :     BLEND_EQUATION = 32777U,
        1219                 :     BLEND_EQUATION_RGB = 32777U,
        1220                 :     BLEND_EQUATION_ALPHA = 34877U,
        1221                 :     FUNC_SUBTRACT = 32778U,
        1222                 :     FUNC_REVERSE_SUBTRACT = 32779U,
        1223                 :     BLEND_DST_RGB = 32968U,
        1224                 :     BLEND_SRC_RGB = 32969U,
        1225                 :     BLEND_DST_ALPHA = 32970U,
        1226                 :     BLEND_SRC_ALPHA = 32971U,
        1227                 :     CONSTANT_COLOR = 32769U,
        1228                 :     ONE_MINUS_CONSTANT_COLOR = 32770U,
        1229                 :     CONSTANT_ALPHA = 32771U,
        1230                 :     ONE_MINUS_CONSTANT_ALPHA = 32772U,
        1231                 :     BLEND_COLOR = 32773U,
        1232                 :     ARRAY_BUFFER = 34962U,
        1233                 :     ELEMENT_ARRAY_BUFFER = 34963U,
        1234                 :     ARRAY_BUFFER_BINDING = 34964U,
        1235                 :     ELEMENT_ARRAY_BUFFER_BINDING = 34965U,
        1236                 :     STREAM_DRAW = 35040U,
        1237                 :     STATIC_DRAW = 35044U,
        1238                 :     DYNAMIC_DRAW = 35048U,
        1239                 :     BUFFER_SIZE = 34660U,
        1240                 :     BUFFER_USAGE = 34661U,
        1241                 :     CURRENT_VERTEX_ATTRIB = 34342U,
        1242                 :     FRONT = 1028U,
        1243                 :     BACK = 1029U,
        1244                 :     FRONT_AND_BACK = 1032U,
        1245                 :     TEXTURE_2D = 3553U,
        1246                 :     CULL_FACE = 2884U,
        1247                 :     BLEND = 3042U,
        1248                 :     DITHER = 3024U,
        1249                 :     STENCIL_TEST = 2960U,
        1250                 :     DEPTH_TEST = 2929U,
        1251                 :     SCISSOR_TEST = 3089U,
        1252                 :     POLYGON_OFFSET_FILL = 32823U,
        1253                 :     SAMPLE_ALPHA_TO_COVERAGE = 32926U,
        1254                 :     SAMPLE_COVERAGE = 32928U,
        1255                 :     NO_ERROR = 0U,
        1256                 :     INVALID_ENUM = 1280U,
        1257                 :     INVALID_VALUE = 1281U,
        1258                 :     INVALID_OPERATION = 1282U,
        1259                 :     OUT_OF_MEMORY = 1285U,
        1260                 :     CW = 2304U,
        1261                 :     CCW = 2305U,
        1262                 :     LINE_WIDTH = 2849U,
        1263                 :     ALIASED_POINT_SIZE_RANGE = 33901U,
        1264                 :     ALIASED_LINE_WIDTH_RANGE = 33902U,
        1265                 :     CULL_FACE_MODE = 2885U,
        1266                 :     FRONT_FACE = 2886U,
        1267                 :     DEPTH_RANGE = 2928U,
        1268                 :     DEPTH_WRITEMASK = 2930U,
        1269                 :     DEPTH_CLEAR_VALUE = 2931U,
        1270                 :     DEPTH_FUNC = 2932U,
        1271                 :     STENCIL_CLEAR_VALUE = 2961U,
        1272                 :     STENCIL_FUNC = 2962U,
        1273                 :     STENCIL_FAIL = 2964U,
        1274                 :     STENCIL_PASS_DEPTH_FAIL = 2965U,
        1275                 :     STENCIL_PASS_DEPTH_PASS = 2966U,
        1276                 :     STENCIL_REF = 2967U,
        1277                 :     STENCIL_VALUE_MASK = 2963U,
        1278                 :     STENCIL_WRITEMASK = 2968U,
        1279                 :     STENCIL_BACK_FUNC = 34816U,
        1280                 :     STENCIL_BACK_FAIL = 34817U,
        1281                 :     STENCIL_BACK_PASS_DEPTH_FAIL = 34818U,
        1282                 :     STENCIL_BACK_PASS_DEPTH_PASS = 34819U,
        1283                 :     STENCIL_BACK_REF = 36003U,
        1284                 :     STENCIL_BACK_VALUE_MASK = 36004U,
        1285                 :     STENCIL_BACK_WRITEMASK = 36005U,
        1286                 :     SCISSOR_BOX = 3088U,
        1287                 :     COLOR_CLEAR_VALUE = 3106U,
        1288                 :     COLOR_WRITEMASK = 3107U,
        1289                 :     UNPACK_ALIGNMENT = 3317U,
        1290                 :     PACK_ALIGNMENT = 3333U,
        1291                 :     MAX_TEXTURE_SIZE = 3379U,
        1292                 :     MAX_VIEWPORT_DIMS = 3386U,
        1293                 :     SUBPIXEL_BITS = 3408U,
        1294                 :     RED_BITS = 3410U,
        1295                 :     GREEN_BITS = 3411U,
        1296                 :     BLUE_BITS = 3412U,
        1297                 :     ALPHA_BITS = 3413U,
        1298                 :     DEPTH_BITS = 3414U,
        1299                 :     STENCIL_BITS = 3415U,
        1300                 :     POLYGON_OFFSET_UNITS = 10752U,
        1301                 :     POLYGON_OFFSET_FACTOR = 32824U,
        1302                 :     TEXTURE_BINDING_2D = 32873U,
        1303                 :     SAMPLE_BUFFERS = 32936U,
        1304                 :     SAMPLES = 32937U,
        1305                 :     SAMPLE_COVERAGE_VALUE = 32938U,
        1306                 :     SAMPLE_COVERAGE_INVERT = 32939U,
        1307                 :     NUM_COMPRESSED_TEXTURE_FORMATS = 34466U,
        1308                 :     COMPRESSED_TEXTURE_FORMATS = 34467U,
        1309                 :     DONT_CARE = 4352U,
        1310                 :     FASTEST = 4353U,
        1311                 :     NICEST = 4354U,
        1312                 :     GENERATE_MIPMAP_HINT = 33170U,
        1313                 :     BYTE = 5120U,
        1314                 :     UNSIGNED_BYTE = 5121U,
        1315                 :     SHORT = 5122U,
        1316                 :     UNSIGNED_SHORT = 5123U,
        1317                 :     INT = 5124U,
        1318                 :     UNSIGNED_INT = 5125U,
        1319                 :     FLOAT = 5126U,
        1320                 :     DEPTH_COMPONENT = 6402U,
        1321                 :     ALPHA = 6406U,
        1322                 :     RGB = 6407U,
        1323                 :     RGBA = 6408U,
        1324                 :     LUMINANCE = 6409U,
        1325                 :     LUMINANCE_ALPHA = 6410U,
        1326                 :     UNSIGNED_SHORT_4_4_4_4 = 32819U,
        1327                 :     UNSIGNED_SHORT_5_5_5_1 = 32820U,
        1328                 :     UNSIGNED_SHORT_5_6_5 = 33635U,
        1329                 :     FRAGMENT_SHADER = 35632U,
        1330                 :     VERTEX_SHADER = 35633U,
        1331                 :     MAX_VERTEX_ATTRIBS = 34921U,
        1332                 :     MAX_VERTEX_UNIFORM_VECTORS = 36347U,
        1333                 :     MAX_VARYING_VECTORS = 36348U,
        1334                 :     MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661U,
        1335                 :     MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660U,
        1336                 :     MAX_TEXTURE_IMAGE_UNITS = 34930U,
        1337                 :     MAX_FRAGMENT_UNIFORM_VECTORS = 36349U,
        1338                 :     SHADER_TYPE = 35663U,
        1339                 :     DELETE_STATUS = 35712U,
        1340                 :     LINK_STATUS = 35714U,
        1341                 :     VALIDATE_STATUS = 35715U,
        1342                 :     ATTACHED_SHADERS = 35717U,
        1343                 :     ACTIVE_UNIFORMS = 35718U,
        1344                 :     ACTIVE_ATTRIBUTES = 35721U,
        1345                 :     SHADING_LANGUAGE_VERSION = 35724U,
        1346                 :     CURRENT_PROGRAM = 35725U,
        1347                 :     NEVER = 512U,
        1348                 :     LESS = 513U,
        1349                 :     EQUAL = 514U,
        1350                 :     LEQUAL = 515U,
        1351                 :     GREATER = 516U,
        1352                 :     NOTEQUAL = 517U,
        1353                 :     GEQUAL = 518U,
        1354                 :     ALWAYS = 519U,
        1355                 :     KEEP = 7680U,
        1356                 :     REPLACE = 7681U,
        1357                 :     INCR = 7682U,
        1358                 :     DECR = 7683U,
        1359                 :     INVERT = 5386U,
        1360                 :     INCR_WRAP = 34055U,
        1361                 :     DECR_WRAP = 34056U,
        1362                 :     VENDOR = 7936U,
        1363                 :     RENDERER = 7937U,
        1364                 :     VERSION = 7938U,
        1365                 :     EXTENSIONS = 7939U,
        1366                 :     NEAREST = 9728U,
        1367                 :     LINEAR = 9729U,
        1368                 :     NEAREST_MIPMAP_NEAREST = 9984U,
        1369                 :     LINEAR_MIPMAP_NEAREST = 9985U,
        1370                 :     NEAREST_MIPMAP_LINEAR = 9986U,
        1371                 :     LINEAR_MIPMAP_LINEAR = 9987U,
        1372                 :     TEXTURE_MAG_FILTER = 10240U,
        1373                 :     TEXTURE_MIN_FILTER = 10241U,
        1374                 :     TEXTURE_WRAP_S = 10242U,
        1375                 :     TEXTURE_WRAP_T = 10243U,
        1376                 :     TEXTURE = 5890U,
        1377                 :     TEXTURE_CUBE_MAP = 34067U,
        1378                 :     TEXTURE_BINDING_CUBE_MAP = 34068U,
        1379                 :     TEXTURE_CUBE_MAP_POSITIVE_X = 34069U,
        1380                 :     TEXTURE_CUBE_MAP_NEGATIVE_X = 34070U,
        1381                 :     TEXTURE_CUBE_MAP_POSITIVE_Y = 34071U,
        1382                 :     TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072U,
        1383                 :     TEXTURE_CUBE_MAP_POSITIVE_Z = 34073U,
        1384                 :     TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074U,
        1385                 :     MAX_CUBE_MAP_TEXTURE_SIZE = 34076U,
        1386                 :     TEXTURE0 = 33984U,
        1387                 :     TEXTURE1 = 33985U,
        1388                 :     TEXTURE2 = 33986U,
        1389                 :     TEXTURE3 = 33987U,
        1390                 :     TEXTURE4 = 33988U,
        1391                 :     TEXTURE5 = 33989U,
        1392                 :     TEXTURE6 = 33990U,
        1393                 :     TEXTURE7 = 33991U,
        1394                 :     TEXTURE8 = 33992U,
        1395                 :     TEXTURE9 = 33993U,
        1396                 :     TEXTURE10 = 33994U,
        1397                 :     TEXTURE11 = 33995U,
        1398                 :     TEXTURE12 = 33996U,
        1399                 :     TEXTURE13 = 33997U,
        1400                 :     TEXTURE14 = 33998U,
        1401                 :     TEXTURE15 = 33999U,
        1402                 :     TEXTURE16 = 34000U,
        1403                 :     TEXTURE17 = 34001U,
        1404                 :     TEXTURE18 = 34002U,
        1405                 :     TEXTURE19 = 34003U,
        1406                 :     TEXTURE20 = 34004U,
        1407                 :     TEXTURE21 = 34005U,
        1408                 :     TEXTURE22 = 34006U,
        1409                 :     TEXTURE23 = 34007U,
        1410                 :     TEXTURE24 = 34008U,
        1411                 :     TEXTURE25 = 34009U,
        1412                 :     TEXTURE26 = 34010U,
        1413                 :     TEXTURE27 = 34011U,
        1414                 :     TEXTURE28 = 34012U,
        1415                 :     TEXTURE29 = 34013U,
        1416                 :     TEXTURE30 = 34014U,
        1417                 :     TEXTURE31 = 34015U,
        1418                 :     ACTIVE_TEXTURE = 34016U,
        1419                 :     REPEAT = 10497U,
        1420                 :     CLAMP_TO_EDGE = 33071U,
        1421                 :     MIRRORED_REPEAT = 33648U,
        1422                 :     FLOAT_VEC2 = 35664U,
        1423                 :     FLOAT_VEC3 = 35665U,
        1424                 :     FLOAT_VEC4 = 35666U,
        1425                 :     INT_VEC2 = 35667U,
        1426                 :     INT_VEC3 = 35668U,
        1427                 :     INT_VEC4 = 35669U,
        1428                 :     BOOL = 35670U,
        1429                 :     BOOL_VEC2 = 35671U,
        1430                 :     BOOL_VEC3 = 35672U,
        1431                 :     BOOL_VEC4 = 35673U,
        1432                 :     FLOAT_MAT2 = 35674U,
        1433                 :     FLOAT_MAT3 = 35675U,
        1434                 :     FLOAT_MAT4 = 35676U,
        1435                 :     SAMPLER_2D = 35678U,
        1436                 :     SAMPLER_CUBE = 35680U,
        1437                 :     VERTEX_ATTRIB_ARRAY_ENABLED = 34338U,
        1438                 :     VERTEX_ATTRIB_ARRAY_SIZE = 34339U,
        1439                 :     VERTEX_ATTRIB_ARRAY_STRIDE = 34340U,
        1440                 :     VERTEX_ATTRIB_ARRAY_TYPE = 34341U,
        1441                 :     VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922U,
        1442                 :     VERTEX_ATTRIB_ARRAY_POINTER = 34373U,
        1443                 :     VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975U,
        1444                 :     COMPILE_STATUS = 35713U,
        1445                 :     SHADER_COMPILER = 36346U,
        1446                 :     LOW_FLOAT = 36336U,
        1447                 :     MEDIUM_FLOAT = 36337U,
        1448                 :     HIGH_FLOAT = 36338U,
        1449                 :     LOW_INT = 36339U,
        1450                 :     MEDIUM_INT = 36340U,
        1451                 :     HIGH_INT = 36341U,
        1452                 :     FRAMEBUFFER = 36160U,
        1453                 :     RENDERBUFFER = 36161U,
        1454                 :     RGBA4 = 32854U,
        1455                 :     RGB5_A1 = 32855U,
        1456                 :     RGB565 = 36194U,
        1457                 :     DEPTH_COMPONENT16 = 33189U,
        1458                 :     STENCIL_INDEX = 6401U,
        1459                 :     STENCIL_INDEX8 = 36168U,
        1460                 :     DEPTH_STENCIL = 34041U,
        1461                 :     RENDERBUFFER_WIDTH = 36162U,
        1462                 :     RENDERBUFFER_HEIGHT = 36163U,
        1463                 :     RENDERBUFFER_INTERNAL_FORMAT = 36164U,
        1464                 :     RENDERBUFFER_RED_SIZE = 36176U,
        1465                 :     RENDERBUFFER_GREEN_SIZE = 36177U,
        1466                 :     RENDERBUFFER_BLUE_SIZE = 36178U,
        1467                 :     RENDERBUFFER_ALPHA_SIZE = 36179U,
        1468                 :     RENDERBUFFER_DEPTH_SIZE = 36180U,
        1469                 :     RENDERBUFFER_STENCIL_SIZE = 36181U,
        1470                 :     FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048U,
        1471                 :     FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049U,
        1472                 :     FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050U,
        1473                 :     FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051U,
        1474                 :     COLOR_ATTACHMENT0 = 36064U,
        1475                 :     DEPTH_ATTACHMENT = 36096U,
        1476                 :     STENCIL_ATTACHMENT = 36128U,
        1477                 :     DEPTH_STENCIL_ATTACHMENT = 33306U,
        1478                 :     NONE = 0U,
        1479                 :     FRAMEBUFFER_COMPLETE = 36053U,
        1480                 :     FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054U,
        1481                 :     FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055U,
        1482                 :     FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057U,
        1483                 :     FRAMEBUFFER_UNSUPPORTED = 36061U,
        1484                 :     FRAMEBUFFER_BINDING = 36006U,
        1485                 :     RENDERBUFFER_BINDING = 36007U,
        1486                 :     MAX_RENDERBUFFER_SIZE = 34024U,
        1487                 :     INVALID_FRAMEBUFFER_OPERATION = 1286U,
        1488                 :     UNPACK_FLIP_Y_WEBGL = 37440U,
        1489                 :     UNPACK_PREMULTIPLY_ALPHA_WEBGL = 37441U,
        1490                 :     CONTEXT_LOST_WEBGL = 37442U,
        1491                 :     UNPACK_COLORSPACE_CONVERSION_WEBGL = 37443U,
        1492                 :     BROWSER_DEFAULT_WEBGL = 37444U
        1493                 :   };
        1494                 :
        1495                 :   /* readonly attribute nsIDOMHTMLCanvasElement canvas; */
        1496                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) = 0;
        1497                 :
        1498                 :   /* jsval getContextAttributes (); */
        1499                 :   NS_SCRIPTABLE NS_IMETHOD GetContextAttributes(JS::Value *_retval NS_OUTPARAM) = 0;
        1500                 :
        1501                 :   /* void activeTexture (in WebGLenum texture); */
        1502                 :   NS_SCRIPTABLE NS_IMETHOD ActiveTexture(WebGLenum texture) = 0;
        1503                 :
        1504                 :   /* void attachShader ([optional] in nsIWebGLProgram program, [optional] in nsIWebGLShader shader); */
        1505                 :   NS_SCRIPTABLE NS_IMETHOD AttachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) = 0;
        1506                 :
        1507                 :   /* void bindAttribLocation (in nsIWebGLProgram program, in WebGLuint index, in DOMString name); */
        1508                 :   NS_SCRIPTABLE NS_IMETHOD BindAttribLocation(nsIWebGLProgram *program, WebGLuint index, const nsAString & name) = 0;
        1509                 :
        1510                 :   /* void bindBuffer (in WebGLenum target, in nsIWebGLBuffer buffer); */
        1511                 :   NS_SCRIPTABLE NS_IMETHOD BindBuffer(WebGLenum target, nsIWebGLBuffer *buffer) = 0;
        1512                 :
        1513                 :   /* void bindFramebuffer (in WebGLenum target, in nsIWebGLFramebuffer framebuffer); */
        1514                 :   NS_SCRIPTABLE NS_IMETHOD BindFramebuffer(WebGLenum target, nsIWebGLFramebuffer *framebuffer) = 0;
        1515                 :
        1516                 :   /* void bindRenderbuffer (in WebGLenum target, in nsIWebGLRenderbuffer renderbuffer); */
        1517                 :   NS_SCRIPTABLE NS_IMETHOD BindRenderbuffer(WebGLenum target, nsIWebGLRenderbuffer *renderbuffer) = 0;
        1518                 :
        1519                 :   /* void bindTexture (in WebGLenum target, in nsIWebGLTexture texture); */
        1520                 :   NS_SCRIPTABLE NS_IMETHOD BindTexture(WebGLenum target, nsIWebGLTexture *texture) = 0;
        1521                 :
        1522                 :   /* void blendColor (in WebGLclampf red, in WebGLclampf green, in WebGLclampf blue, in WebGLclampf alpha); */
        1523                 :   NS_SCRIPTABLE NS_IMETHOD BlendColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) = 0;
        1524                 :
        1525                 :   /* void blendEquation (in WebGLenum mode); */
        1526                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquation(WebGLenum mode) = 0;
        1527                 :
        1528                 :   /* void blendEquationSeparate (in WebGLenum modeRGB, in WebGLenum modeAlpha); */
        1529                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquationSeparate(WebGLenum modeRGB, WebGLenum modeAlpha) = 0;
        1530                 :
        1531                 :   /* void blendFunc (in WebGLenum sfactor, in WebGLenum dfactor); */
        1532                 :   NS_SCRIPTABLE NS_IMETHOD BlendFunc(WebGLenum sfactor, WebGLenum dfactor) = 0;
        1533                 :
        1534                 :   /* void blendFuncSeparate (in WebGLenum srcRGB, in WebGLenum dstRGB, in WebGLenum srcAlpha, in WebGLenum dstAlpha); */
        1535                 :   NS_SCRIPTABLE NS_IMETHOD BlendFuncSeparate(WebGLenum srcRGB, WebGLenum dstRGB, WebGLenum srcAlpha, WebGLenum dstAlpha) = 0;
        1536                 :
        1537                 :   /* void bufferData ([optional] in long dummy); */
        1538                 :   NS_SCRIPTABLE NS_IMETHOD BufferData(PRInt32 dummy) = 0;
        1539                 :
        1540                 :   /* [noscript] void bufferData_size (in WebGLenum target, in WebGLsizei size, in WebGLenum usage); */
        1541                 :   NS_IMETHOD BufferData_size(WebGLenum target, WebGLsizei size, WebGLenum usage) = 0;
        1542                 :
        1543                 :   /* [noscript] void bufferData_buf (in WebGLenum target, in WebGLJSObjectPtr data, in WebGLenum usage); */
        1544                 :   NS_IMETHOD BufferData_buf(WebGLenum target, JSObject *data, WebGLenum usage) = 0;
        1545                 :
        1546                 :   /* [noscript] void bufferData_array (in WebGLenum target, in WebGLJSObjectPtr data, in WebGLenum usage); */
        1547                 :   NS_IMETHOD BufferData_array(WebGLenum target, JSObject *data, WebGLenum usage) = 0;
        1548                 :
        1549                 :   /* [noscript] void bufferData_null (); */
        1550                 :   NS_IMETHOD BufferData_null(void) = 0;
        1551                 :
        1552                 :   /* void bufferSubData ([optional] in long dummy); */
        1553                 :   NS_SCRIPTABLE NS_IMETHOD BufferSubData(PRInt32 dummy) = 0;
        1554                 :
        1555                 :   /* [noscript] void bufferSubData_buf (in WebGLenum target, in long offset, in WebGLJSObjectPtr data); */
        1556                 :   NS_IMETHOD BufferSubData_buf(WebGLenum target, PRInt32 offset, JSObject *data) = 0;
        1557                 :
        1558                 :   /* [noscript] void bufferSubData_array (in WebGLenum target, in long offset, in WebGLJSObjectPtr data); */
        1559                 :   NS_IMETHOD BufferSubData_array(WebGLenum target, PRInt32 offset, JSObject *data) = 0;
        1560                 :
        1561                 :   /* [noscript] void bufferSubData_null (); */
        1562                 :   NS_IMETHOD BufferSubData_null(void) = 0;
        1563                 :
        1564                 :   /* WebGLenum checkFramebufferStatus (in WebGLenum target); */
        1565                 :   NS_SCRIPTABLE NS_IMETHOD CheckFramebufferStatus(WebGLenum target, WebGLenum *_retval NS_OUTPARAM) = 0;
        1566                 :
        1567                 :   /* void clear (in WebGLbitfield mask); */
        1568                 :   NS_SCRIPTABLE NS_IMETHOD Clear(WebGLbitfield mask) = 0;
        1569                 :
        1570                 :   /* void clearColor (in WebGLclampf red, in WebGLclampf green, in WebGLclampf blue, in WebGLclampf alpha); */
        1571                 :   NS_SCRIPTABLE NS_IMETHOD ClearColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) = 0;
        1572                 :
        1573                 :   /* void clearDepth (in WebGLclampf depth); */
        1574                 :   NS_SCRIPTABLE NS_IMETHOD ClearDepth(WebGLclampf depth) = 0;
        1575                 :
        1576                 :   /* void clearStencil (in WebGLint s); */
        1577                 :   NS_SCRIPTABLE NS_IMETHOD ClearStencil(WebGLint s) = 0;
        1578                 :
        1579                 :   /* void colorMask (in WebGLboolean red, in WebGLboolean green, in WebGLboolean blue, in WebGLboolean alpha); */
        1580                 :   NS_SCRIPTABLE NS_IMETHOD ColorMask(WebGLboolean red, WebGLboolean green, WebGLboolean blue, WebGLboolean alpha) = 0;
        1581                 :
        1582                 :   /* void compileShader ([optional] in nsIWebGLShader shader); */
        1583                 :   NS_SCRIPTABLE NS_IMETHOD CompileShader(nsIWebGLShader *shader) = 0;
        1584                 :
        1585                 :   /* void compressedTexImage2D ([optional] in long dummy); */
        1586                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexImage2D(PRInt32 dummy) = 0;
        1587                 :
        1588                 :   /* [noscript] void compressedTexImage2D_array (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLJSObjectPtr pixels); */
        1589                 :   NS_IMETHOD CompressedTexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, JSObject *pixels) = 0;
        1590                 :
        1591                 :   /* void compressedTexSubImage2D ([optional] in long dummy); */
        1592                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexSubImage2D(PRInt32 dummy) = 0;
        1593                 :
        1594                 :   /* [noscript] void compressedTexSubImage2D_array (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLJSObjectPtr pixels); */
        1595                 :   NS_IMETHOD CompressedTexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, JSObject *pixels) = 0;
        1596                 :
        1597                 :   /* void copyTexImage2D (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height, in WebGLint border); */
        1598                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexImage2D(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLint border) = 0;
        1599                 :
        1600                 :   /* void copyTexSubImage2D (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        1601                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexSubImage2D(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) = 0;
        1602                 :
        1603                 :   /* nsIWebGLBuffer createBuffer (); */
        1604                 :   NS_SCRIPTABLE NS_IMETHOD CreateBuffer(nsIWebGLBuffer * *_retval NS_OUTPARAM) = 0;
        1605                 :
        1606                 :   /* nsIWebGLProgram createProgram (); */
        1607                 :   NS_SCRIPTABLE NS_IMETHOD CreateProgram(nsIWebGLProgram * *_retval NS_OUTPARAM) = 0;
        1608                 :
        1609                 :   /* nsIWebGLFramebuffer createFramebuffer (); */
        1610                 :   NS_SCRIPTABLE NS_IMETHOD CreateFramebuffer(nsIWebGLFramebuffer * *_retval NS_OUTPARAM) = 0;
        1611                 :
        1612                 :   /* nsIWebGLRenderbuffer createRenderbuffer (); */
        1613                 :   NS_SCRIPTABLE NS_IMETHOD CreateRenderbuffer(nsIWebGLRenderbuffer * *_retval NS_OUTPARAM) = 0;
        1614                 :
        1615                 :   /* nsIWebGLShader createShader (in WebGLenum type); */
        1616                 :   NS_SCRIPTABLE NS_IMETHOD CreateShader(WebGLenum type, nsIWebGLShader * *_retval NS_OUTPARAM) = 0;
        1617                 :
        1618                 :   /* nsIWebGLTexture createTexture (); */
        1619                 :   NS_SCRIPTABLE NS_IMETHOD CreateTexture(nsIWebGLTexture * *_retval NS_OUTPARAM) = 0;
        1620                 :
        1621                 :   /* void cullFace (in WebGLenum mode); */
        1622                 :   NS_SCRIPTABLE NS_IMETHOD CullFace(WebGLenum mode) = 0;
        1623                 :
        1624                 :   /* void deleteBuffer (in nsIWebGLBuffer buffer); */
        1625                 :   NS_SCRIPTABLE NS_IMETHOD DeleteBuffer(nsIWebGLBuffer *buffer) = 0;
        1626                 :
        1627                 :   /* void deleteProgram (in nsIWebGLProgram program); */
        1628                 :   NS_SCRIPTABLE NS_IMETHOD DeleteProgram(nsIWebGLProgram *program) = 0;
        1629                 :
        1630                 :   /* void deleteFramebuffer (in nsIWebGLFramebuffer framebuffer); */
        1631                 :   NS_SCRIPTABLE NS_IMETHOD DeleteFramebuffer(nsIWebGLFramebuffer *framebuffer) = 0;
        1632                 :
        1633                 :   /* void deleteRenderbuffer (in nsIWebGLRenderbuffer renderbuffer); */
        1634                 :   NS_SCRIPTABLE NS_IMETHOD DeleteRenderbuffer(nsIWebGLRenderbuffer *renderbuffer) = 0;
        1635                 :
        1636                 :   /* void deleteShader (in nsIWebGLShader shader); */
        1637                 :   NS_SCRIPTABLE NS_IMETHOD DeleteShader(nsIWebGLShader *shader) = 0;
        1638                 :
        1639                 :   /* void deleteTexture (in nsIWebGLTexture texture); */
        1640                 :   NS_SCRIPTABLE NS_IMETHOD DeleteTexture(nsIWebGLTexture *texture) = 0;
        1641                 :
        1642                 :   /* void depthFunc (in WebGLenum func); */
        1643                 :   NS_SCRIPTABLE NS_IMETHOD DepthFunc(WebGLenum func) = 0;
        1644                 :
        1645                 :   /* void depthMask (in WebGLboolean flag); */
        1646                 :   NS_SCRIPTABLE NS_IMETHOD DepthMask(WebGLboolean flag) = 0;
        1647                 :
        1648                 :   /* void depthRange (in WebGLclampf zNear, in WebGLclampf zFar); */
        1649                 :   NS_SCRIPTABLE NS_IMETHOD DepthRange(WebGLclampf zNear, WebGLclampf zFar) = 0;
        1650                 :
        1651                 :   /* void detachShader (in nsIWebGLProgram program, in nsIWebGLShader shader); */
        1652                 :   NS_SCRIPTABLE NS_IMETHOD DetachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) = 0;
        1653                 :
        1654                 :   /* void disable (in WebGLenum cap); */
        1655                 :   NS_SCRIPTABLE NS_IMETHOD Disable(WebGLenum cap) = 0;
        1656                 :
        1657                 :   /* void disableVertexAttribArray (in WebGLuint index); */
        1658                 :   NS_SCRIPTABLE NS_IMETHOD DisableVertexAttribArray(WebGLuint index) = 0;
        1659                 :
        1660                 :   /* void drawArrays (in WebGLenum mode, in WebGLint first, in WebGLsizei count); */
        1661                 :   NS_SCRIPTABLE NS_IMETHOD DrawArrays(WebGLenum mode, WebGLint first, WebGLsizei count) = 0;
        1662                 :
        1663                 :   /* void drawElements (in WebGLenum mode, in WebGLsizei count, in WebGLenum type, in WebGLint offset); */
        1664                 :   NS_SCRIPTABLE NS_IMETHOD DrawElements(WebGLenum mode, WebGLsizei count, WebGLenum type, WebGLint offset) = 0;
        1665                 :
        1666                 :   /* void enable (in WebGLenum cap); */
        1667                 :   NS_SCRIPTABLE NS_IMETHOD Enable(WebGLenum cap) = 0;
        1668                 :
        1669                 :   /* void enableVertexAttribArray (in WebGLuint index); */
        1670                 :   NS_SCRIPTABLE NS_IMETHOD EnableVertexAttribArray(WebGLuint index) = 0;
        1671                 :
        1672                 :   /* void finish (); */
        1673                 :   NS_SCRIPTABLE NS_IMETHOD Finish(void) = 0;
        1674                 :
        1675                 :   /* void flush (); */
        1676                 :   NS_SCRIPTABLE NS_IMETHOD Flush(void) = 0;
        1677                 :
        1678                 :   /* void framebufferRenderbuffer (in WebGLenum target, in WebGLenum attachment, in WebGLenum renderbuffertarget, in nsIWebGLRenderbuffer renderbuffer); */
        1679                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferRenderbuffer(WebGLenum target, WebGLenum attachment, WebGLenum renderbuffertarget, nsIWebGLRenderbuffer *renderbuffer) = 0;
        1680                 :
        1681                 :   /* void framebufferTexture2D (in WebGLenum target, in WebGLenum attachment, in WebGLenum textarget, in nsIWebGLTexture texture, in WebGLint level); */
        1682                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferTexture2D(WebGLenum target, WebGLenum attachment, WebGLenum textarget, nsIWebGLTexture *texture, WebGLint level) = 0;
        1683                 :
        1684                 :   /* void frontFace (in WebGLenum mode); */
        1685                 :   NS_SCRIPTABLE NS_IMETHOD FrontFace(WebGLenum mode) = 0;
        1686                 :
        1687                 :   /* void generateMipmap (in WebGLenum target); */
        1688                 :   NS_SCRIPTABLE NS_IMETHOD GenerateMipmap(WebGLenum target) = 0;
        1689                 :
        1690                 :   /* nsIWebGLActiveInfo getActiveAttrib (in nsIWebGLProgram program, in PRUint32 index); */
        1691                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveAttrib(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) = 0;
        1692                 :
        1693                 :   /* nsIWebGLActiveInfo getActiveUniform (in nsIWebGLProgram program, in PRUint32 index); */
        1694                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveUniform(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) = 0;
        1695                 :
        1696                 :   /* nsIVariant getAttachedShaders (in nsIWebGLProgram program); */
        1697                 :   NS_SCRIPTABLE NS_IMETHOD GetAttachedShaders(nsIWebGLProgram *program, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1698                 :
        1699                 :   /* WebGLint getAttribLocation (in nsIWebGLProgram program, in DOMString name); */
        1700                 :   NS_SCRIPTABLE NS_IMETHOD GetAttribLocation(nsIWebGLProgram *program, const nsAString & name, WebGLint *_retval NS_OUTPARAM) = 0;
        1701                 :
        1702                 :   /* nsIVariant getParameter (in WebGLenum pname); */
        1703                 :   NS_SCRIPTABLE NS_IMETHOD GetParameter(WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1704                 :
        1705                 :   /* nsIVariant getBufferParameter (in WebGLenum target, in WebGLenum pname); */
        1706                 :   NS_SCRIPTABLE NS_IMETHOD GetBufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1707                 :
        1708                 :   /* WebGLenum getError (); */
        1709                 :   NS_SCRIPTABLE NS_IMETHOD GetError(WebGLenum *_retval NS_OUTPARAM) = 0;
        1710                 :
        1711                 :   /* nsIVariant getFramebufferAttachmentParameter (in WebGLenum target, in WebGLenum attachment, in WebGLenum pname); */
        1712                 :   NS_SCRIPTABLE NS_IMETHOD GetFramebufferAttachmentParameter(WebGLenum target, WebGLenum attachment, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1713                 :
        1714                 :   /* nsIVariant getProgramParameter (in nsIWebGLProgram program, in WebGLenum pname); */
        1715                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramParameter(nsIWebGLProgram *program, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1716                 :
        1717                 :   /* DOMString getProgramInfoLog (in nsIWebGLProgram program); */
        1718                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramInfoLog(nsIWebGLProgram *program, nsAString & _retval NS_OUTPARAM) = 0;
        1719                 :
        1720                 :   /* nsIVariant getRenderbufferParameter (in WebGLenum target, in WebGLenum pname); */
        1721                 :   NS_SCRIPTABLE NS_IMETHOD GetRenderbufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1722                 :
        1723                 :   /* nsIVariant getShaderParameter (in nsIWebGLShader shader, in WebGLenum pname); */
        1724                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderParameter(nsIWebGLShader *shader, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1725                 :
        1726                 :   /* DOMString getShaderInfoLog (in nsIWebGLShader shader); */
        1727                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderInfoLog(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) = 0;
        1728                 :
        1729                 :   /* nsIWebGLShaderPrecisionFormat getShaderPrecisionFormat (in WebGLenum shadertype, in WebGLenum precisiontype); */
        1730                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderPrecisionFormat(WebGLenum shadertype, WebGLenum precisiontype, nsIWebGLShaderPrecisionFormat * *_retval NS_OUTPARAM) = 0;
        1731                 :
        1732                 :   /* DOMString getShaderSource (in nsIWebGLShader shader); */
        1733                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderSource(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) = 0;
        1734                 :
        1735                 :   /* nsIVariant getTexParameter (in WebGLenum target, in WebGLenum pname); */
        1736                 :   NS_SCRIPTABLE NS_IMETHOD GetTexParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1737                 :
        1738                 :   /* nsIVariant getUniform (in nsIWebGLProgram program, in nsIWebGLUniformLocation location); */
        1739                 :   NS_SCRIPTABLE NS_IMETHOD GetUniform(nsIWebGLProgram *program, nsIWebGLUniformLocation *location, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1740                 :
        1741                 :   /* nsIWebGLUniformLocation getUniformLocation (in nsIWebGLProgram program, in DOMString name); */
        1742                 :   NS_SCRIPTABLE NS_IMETHOD GetUniformLocation(nsIWebGLProgram *program, const nsAString & name, nsIWebGLUniformLocation * *_retval NS_OUTPARAM) = 0;
        1743                 :
        1744                 :   /* nsIVariant getVertexAttrib (in WebGLuint index, in WebGLenum pname); */
        1745                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttrib(WebGLuint index, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) = 0;
        1746                 :
        1747                 :   /* WebGLuint getVertexAttribOffset (in WebGLuint index, in WebGLenum pname); */
        1748                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttribOffset(WebGLuint index, WebGLenum pname, WebGLuint *_retval NS_OUTPARAM) = 0;
        1749                 :
        1750                 :   /* void hint (in WebGLenum target, in WebGLenum mode); */
        1751                 :   NS_SCRIPTABLE NS_IMETHOD Hint(WebGLenum target, WebGLenum mode) = 0;
        1752                 :
        1753                 :   /* WebGLboolean isBuffer (in nsIWebGLBuffer buffer); */
        1754                 :   NS_SCRIPTABLE NS_IMETHOD IsBuffer(nsIWebGLBuffer *buffer, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1755                 :
        1756                 :   /* WebGLboolean isFramebuffer (in nsIWebGLFramebuffer framebuffer); */
        1757                 :   NS_SCRIPTABLE NS_IMETHOD IsFramebuffer(nsIWebGLFramebuffer *framebuffer, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1758                 :
        1759                 :   /* WebGLboolean isProgram (in nsIWebGLProgram program); */
        1760                 :   NS_SCRIPTABLE NS_IMETHOD IsProgram(nsIWebGLProgram *program, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1761                 :
        1762                 :   /* WebGLboolean isRenderbuffer (in nsIWebGLRenderbuffer renderbuffer); */
        1763                 :   NS_SCRIPTABLE NS_IMETHOD IsRenderbuffer(nsIWebGLRenderbuffer *renderbuffer, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1764                 :
        1765                 :   /* WebGLboolean isShader (in nsIWebGLShader shader); */
        1766                 :   NS_SCRIPTABLE NS_IMETHOD IsShader(nsIWebGLShader *shader, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1767                 :
        1768                 :   /* WebGLboolean isTexture (in nsIWebGLTexture texture); */
        1769                 :   NS_SCRIPTABLE NS_IMETHOD IsTexture(nsIWebGLTexture *texture, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1770                 :
        1771                 :   /* WebGLboolean isEnabled (in WebGLenum cap); */
        1772                 :   NS_SCRIPTABLE NS_IMETHOD IsEnabled(WebGLenum cap, WebGLboolean *_retval NS_OUTPARAM) = 0;
        1773                 :
        1774                 :   /* void lineWidth (in WebGLfloat width); */
        1775                 :   NS_SCRIPTABLE NS_IMETHOD LineWidth(WebGLfloat width) = 0;
        1776                 :
        1777                 :   /* void linkProgram ([optional] in nsIWebGLProgram program); */
        1778                 :   NS_SCRIPTABLE NS_IMETHOD LinkProgram(nsIWebGLProgram *program) = 0;
        1779                 :
        1780                 :   /* void pixelStorei (in WebGLenum pname, in WebGLint param); */
        1781                 :   NS_SCRIPTABLE NS_IMETHOD PixelStorei(WebGLenum pname, WebGLint param) = 0;
        1782                 :
        1783                 :   /* void polygonOffset (in WebGLfloat factor, in WebGLfloat units); */
        1784                 :   NS_SCRIPTABLE NS_IMETHOD PolygonOffset(WebGLfloat factor, WebGLfloat units) = 0;
        1785                 :
        1786                 :   /* void readPixels ([optional] in long dummy); */
        1787                 :   NS_SCRIPTABLE NS_IMETHOD ReadPixels(PRInt32 dummy) = 0;
        1788                 :
        1789                 :   /* [noscript] void readPixels_array (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        1790                 :   NS_IMETHOD ReadPixels_array(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) = 0;
        1791                 :
        1792                 :   /* void renderbufferStorage (in WebGLenum target, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height); */
        1793                 :   NS_SCRIPTABLE NS_IMETHOD RenderbufferStorage(WebGLenum target, WebGLenum internalformat, WebGLsizei width, WebGLsizei height) = 0;
        1794                 :
        1795                 :   /* void sampleCoverage (in WebGLclampf value, in WebGLboolean invert); */
        1796                 :   NS_SCRIPTABLE NS_IMETHOD SampleCoverage(WebGLclampf value, WebGLboolean invert) = 0;
        1797                 :
        1798                 :   /* void scissor (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        1799                 :   NS_SCRIPTABLE NS_IMETHOD Scissor(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) = 0;
        1800                 :
        1801                 :   /* void shaderSource ([optional] in nsIWebGLShader shader, [optional] in DOMString source); */
        1802                 :   NS_SCRIPTABLE NS_IMETHOD ShaderSource(nsIWebGLShader *shader, const nsAString & source) = 0;
        1803                 :
        1804                 :   /* void stencilFunc (in WebGLenum func, in WebGLint ref, in WebGLuint mask); */
        1805                 :   NS_SCRIPTABLE NS_IMETHOD StencilFunc(WebGLenum func, WebGLint ref, WebGLuint mask) = 0;
        1806                 :
        1807                 :   /* void stencilFuncSeparate (in WebGLenum face, in WebGLenum func, in WebGLint ref, in WebGLuint mask); */
        1808                 :   NS_SCRIPTABLE NS_IMETHOD StencilFuncSeparate(WebGLenum face, WebGLenum func, WebGLint ref, WebGLuint mask) = 0;
        1809                 :
        1810                 :   /* void stencilMask (in WebGLuint mask); */
        1811                 :   NS_SCRIPTABLE NS_IMETHOD StencilMask(WebGLuint mask) = 0;
        1812                 :
        1813                 :   /* void stencilMaskSeparate (in WebGLenum face, in WebGLuint mask); */
        1814                 :   NS_SCRIPTABLE NS_IMETHOD StencilMaskSeparate(WebGLenum face, WebGLuint mask) = 0;
        1815                 :
        1816                 :   /* void stencilOp (in WebGLenum fail, in WebGLenum zfail, in WebGLenum zpass); */
        1817                 :   NS_SCRIPTABLE NS_IMETHOD StencilOp(WebGLenum fail, WebGLenum zfail, WebGLenum zpass) = 0;
        1818                 :
        1819                 :   /* void stencilOpSeparate (in WebGLenum face, in WebGLenum fail, in WebGLenum zfail, in WebGLenum zpass); */
        1820                 :   NS_SCRIPTABLE NS_IMETHOD StencilOpSeparate(WebGLenum face, WebGLenum fail, WebGLenum zfail, WebGLenum zpass) = 0;
        1821                 :
        1822                 :   /* void texImage2D ([optional] in long dummy); */
        1823                 :   NS_SCRIPTABLE NS_IMETHOD TexImage2D(PRInt32 dummy) = 0;
        1824                 :
        1825                 :   /* [noscript] void texImage2D_array (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        1826                 :   NS_IMETHOD TexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) = 0;
        1827                 :
        1828                 :   /* [noscript] void texImage2D_imageData (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        1829                 :   NS_IMETHOD TexImage2D_imageData(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) = 0;
        1830                 :
        1831                 :   /* [noscript] void texImage2D_dom (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLenum format, in WebGLenum type, in Element element); */
        1832                 :   NS_IMETHOD TexImage2D_dom(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) = 0;
        1833                 :
        1834                 :   /* void texSubImage2D ([optional] in long dummy); */
        1835                 :   NS_SCRIPTABLE NS_IMETHOD TexSubImage2D(PRInt32 dummy) = 0;
        1836                 :
        1837                 :   /* [noscript] void texSubImage2D_array (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        1838                 :   NS_IMETHOD TexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) = 0;
        1839                 :
        1840                 :   /* [noscript] void texSubImage2D_imageData (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        1841                 :   NS_IMETHOD TexSubImage2D_imageData(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) = 0;
        1842                 :
        1843                 :   /* [noscript] void texSubImage2D_dom (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLenum format, in WebGLenum type, in Element element); */
        1844                 :   NS_IMETHOD TexSubImage2D_dom(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) = 0;
        1845                 :
        1846                 :   /* void texParameterf (in WebGLenum target, in WebGLenum pname, in WebGLfloat param); */
        1847                 :   NS_SCRIPTABLE NS_IMETHOD TexParameterf(WebGLenum target, WebGLenum pname, WebGLfloat param) = 0;
        1848                 :
        1849                 :   /* void texParameteri (in WebGLenum target, in WebGLenum pname, in WebGLint param); */
        1850                 :   NS_SCRIPTABLE NS_IMETHOD TexParameteri(WebGLenum target, WebGLenum pname, WebGLint param) = 0;
        1851                 :
        1852                 :   /* void uniform1f (in nsIWebGLUniformLocation location, in WebGLfloat x); */
        1853                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1f(nsIWebGLUniformLocation *location, WebGLfloat x) = 0;
        1854                 :
        1855                 :   /* void uniform1i (in nsIWebGLUniformLocation location, in WebGLint x); */
        1856                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1i(nsIWebGLUniformLocation *location, WebGLint x) = 0;
        1857                 :
        1858                 :   /* void uniform2f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y); */
        1859                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y) = 0;
        1860                 :
        1861                 :   /* void uniform2i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y); */
        1862                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y) = 0;
        1863                 :
        1864                 :   /* void uniform3f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z); */
        1865                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z) = 0;
        1866                 :
        1867                 :   /* void uniform3i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y, in WebGLint z); */
        1868                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z) = 0;
        1869                 :
        1870                 :   /* void uniform4f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z, in WebGLfloat w); */
        1871                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) = 0;
        1872                 :
        1873                 :   /* void uniform4i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y, in WebGLint z, in WebGLint w); */
        1874                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z, WebGLint w) = 0;
        1875                 :
        1876                 :   /* void uniform1fv ([optional] in long dummy); */
        1877                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1fv(PRInt32 dummy) = 0;
        1878                 :
        1879                 :   /* void uniform1iv ([optional] in long dummy); */
        1880                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1iv(PRInt32 dummy) = 0;
        1881                 :
        1882                 :   /* void uniform2fv ([optional] in long dummy); */
        1883                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2fv(PRInt32 dummy) = 0;
        1884                 :
        1885                 :   /* void uniform2iv ([optional] in long dummy); */
        1886                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2iv(PRInt32 dummy) = 0;
        1887                 :
        1888                 :   /* void uniform3fv ([optional] in long dummy); */
        1889                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3fv(PRInt32 dummy) = 0;
        1890                 :
        1891                 :   /* void uniform3iv ([optional] in long dummy); */
        1892                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3iv(PRInt32 dummy) = 0;
        1893                 :
        1894                 :   /* void uniform4fv ([optional] in long dummy); */
        1895                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4fv(PRInt32 dummy) = 0;
        1896                 :
        1897                 :   /* void uniform4iv ([optional] in long dummy); */
        1898                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4iv(PRInt32 dummy) = 0;
        1899                 :
        1900                 :   /* [noscript] void uniform1fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1901                 :   NS_IMETHOD Uniform1fv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1902                 :
        1903                 :   /* [noscript] void uniform1iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1904                 :   NS_IMETHOD Uniform1iv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1905                 :
        1906                 :   /* [noscript] void uniform2fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1907                 :   NS_IMETHOD Uniform2fv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1908                 :
        1909                 :   /* [noscript] void uniform2iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1910                 :   NS_IMETHOD Uniform2iv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1911                 :
        1912                 :   /* [noscript] void uniform3fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1913                 :   NS_IMETHOD Uniform3fv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1914                 :
        1915                 :   /* [noscript] void uniform3iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1916                 :   NS_IMETHOD Uniform3iv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1917                 :
        1918                 :   /* [noscript] void uniform4fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1919                 :   NS_IMETHOD Uniform4fv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1920                 :
        1921                 :   /* [noscript] void uniform4iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        1922                 :   NS_IMETHOD Uniform4iv_array(nsIWebGLUniformLocation *location, JSObject *v) = 0;
        1923                 :
        1924                 :   /* void uniformMatrix2fv ([optional] in long dummy); */
        1925                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix2fv(PRInt32 dummy) = 0;
        1926                 :
        1927                 :   /* void uniformMatrix3fv ([optional] in long dummy); */
        1928                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix3fv(PRInt32 dummy) = 0;
        1929                 :
        1930                 :   /* void uniformMatrix4fv ([optional] in long dummy); */
        1931                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix4fv(PRInt32 dummy) = 0;
        1932                 :
        1933                 :   /* [noscript] void uniformMatrix2fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        1934                 :   NS_IMETHOD UniformMatrix2fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) = 0;
        1935                 :
        1936                 :   /* [noscript] void uniformMatrix3fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        1937                 :   NS_IMETHOD UniformMatrix3fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) = 0;
        1938                 :
        1939                 :   /* [noscript] void uniformMatrix4fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        1940                 :   NS_IMETHOD UniformMatrix4fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) = 0;
        1941                 :
        1942                 :   /* void useProgram (in nsIWebGLProgram program); */
        1943                 :   NS_SCRIPTABLE NS_IMETHOD UseProgram(nsIWebGLProgram *program) = 0;
        1944                 :
        1945                 :   /* void validateProgram (in nsIWebGLProgram program); */
        1946                 :   NS_SCRIPTABLE NS_IMETHOD ValidateProgram(nsIWebGLProgram *program) = 0;
        1947                 :
        1948                 :   /* void vertexAttrib1f (in WebGLuint indx, in WebGLfloat x); */
        1949                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1f(WebGLuint indx, WebGLfloat x) = 0;
        1950                 :
        1951                 :   /* void vertexAttrib2f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y); */
        1952                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2f(WebGLuint indx, WebGLfloat x, WebGLfloat y) = 0;
        1953                 :
        1954                 :   /* void vertexAttrib3f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z); */
        1955                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z) = 0;
        1956                 :
        1957                 :   /* void vertexAttrib4f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z, in WebGLfloat w); */
        1958                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) = 0;
        1959                 :
        1960                 :   /* void vertexAttrib1fv ([optional] in long dummy); */
        1961                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1fv(PRInt32 dummy) = 0;
        1962                 :
        1963                 :   /* void vertexAttrib2fv ([optional] in long dummy); */
        1964                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2fv(PRInt32 dummy) = 0;
        1965                 :
        1966                 :   /* void vertexAttrib3fv ([optional] in long dummy); */
        1967                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3fv(PRInt32 dummy) = 0;
        1968                 :
        1969                 :   /* void vertexAttrib4fv ([optional] in long dummy); */
        1970                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4fv(PRInt32 dummy) = 0;
        1971                 :
        1972                 :   /* [noscript] void vertexAttrib1fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        1973                 :   NS_IMETHOD VertexAttrib1fv_array(WebGLuint indx, JSObject *values) = 0;
        1974                 :
        1975                 :   /* [noscript] void vertexAttrib2fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        1976                 :   NS_IMETHOD VertexAttrib2fv_array(WebGLuint indx, JSObject *values) = 0;
        1977                 :
        1978                 :   /* [noscript] void vertexAttrib3fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        1979                 :   NS_IMETHOD VertexAttrib3fv_array(WebGLuint indx, JSObject *values) = 0;
        1980                 :
        1981                 :   /* [noscript] void vertexAttrib4fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        1982                 :   NS_IMETHOD VertexAttrib4fv_array(WebGLuint indx, JSObject *values) = 0;
        1983                 :
        1984                 :   /* void vertexAttribPointer (in WebGLuint idx, in WebGLint size, in WebGLenum type, in WebGLboolean normalized, in WebGLsizei stride, in WebGLsizeiptr offset); */
        1985                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttribPointer(WebGLuint idx, WebGLint size, WebGLenum type, WebGLboolean normalized, WebGLsizei stride, WebGLsizeiptr offset) = 0;
        1986                 :
        1987                 :   /* void viewport (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        1988                 :   NS_SCRIPTABLE NS_IMETHOD Viewport(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) = 0;
        1989                 :
        1990                 :   /* [noscript] DOMString mozGetUnderlyingParamString (in WebGLenum pname); */
        1991                 :   NS_IMETHOD MozGetUnderlyingParamString(WebGLenum pname, nsAString & _retval NS_OUTPARAM) = 0;
        1992                 :
        1993                 :   /* nsIWebGLExtension getExtension (in DOMString name); */
        1994                 :   NS_SCRIPTABLE NS_IMETHOD GetExtension(const nsAString & name, nsIWebGLExtension * *_retval NS_OUTPARAM) = 0;
        1995                 :
        1996                 :   /* nsIVariant getSupportedExtensions (); */
        1997                 :   NS_SCRIPTABLE NS_IMETHOD GetSupportedExtensions(nsIVariant * *_retval NS_OUTPARAM) = 0;
        1998                 :
        1999                 :   /* WebGLboolean isContextLost (); */
        2000                 :   NS_SCRIPTABLE NS_IMETHOD IsContextLost(WebGLboolean *_retval NS_OUTPARAM) = 0;
        2001                 :
        2002                 :   /* readonly attribute WebGLsizei drawingBufferWidth; */
        2003                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferWidth(WebGLsizei *aDrawingBufferWidth) = 0;
        2004                 :
        2005                 :   /* readonly attribute WebGLsizei drawingBufferHeight; */
        2006                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferHeight(WebGLsizei *aDrawingBufferHeight) = 0;
        2007                 :
        2008                 : };
        2009                 :
        2010                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMWebGLRenderingContext, NS_IDOMWEBGLRENDERINGCONTEXT_IID)
        2011                 :
        2012                 : /* Use this macro when declaring classes that implement this interface. */
        2013                 : #define NS_DECL_NSIDOMWEBGLRENDERINGCONTEXT \
        2014                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas); \
        2015                 :   NS_SCRIPTABLE NS_IMETHOD GetContextAttributes(JS::Value *_retval NS_OUTPARAM); \
        2016                 :   NS_SCRIPTABLE NS_IMETHOD ActiveTexture(WebGLenum texture); \
        2017                 :   NS_SCRIPTABLE NS_IMETHOD AttachShader(nsIWebGLProgram *program, nsIWebGLShader *shader); \
        2018                 :   NS_SCRIPTABLE NS_IMETHOD BindAttribLocation(nsIWebGLProgram *program, WebGLuint index, const nsAString & name); \
        2019                 :   NS_SCRIPTABLE NS_IMETHOD BindBuffer(WebGLenum target, nsIWebGLBuffer *buffer); \
        2020                 :   NS_SCRIPTABLE NS_IMETHOD BindFramebuffer(WebGLenum target, nsIWebGLFramebuffer *framebuffer); \
        2021                 :   NS_SCRIPTABLE NS_IMETHOD BindRenderbuffer(WebGLenum target, nsIWebGLRenderbuffer *renderbuffer); \
        2022                 :   NS_SCRIPTABLE NS_IMETHOD BindTexture(WebGLenum target, nsIWebGLTexture *texture); \
        2023                 :   NS_SCRIPTABLE NS_IMETHOD BlendColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha); \
        2024                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquation(WebGLenum mode); \
        2025                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquationSeparate(WebGLenum modeRGB, WebGLenum modeAlpha); \
        2026                 :   NS_SCRIPTABLE NS_IMETHOD BlendFunc(WebGLenum sfactor, WebGLenum dfactor); \
        2027                 :   NS_SCRIPTABLE NS_IMETHOD BlendFuncSeparate(WebGLenum srcRGB, WebGLenum dstRGB, WebGLenum srcAlpha, WebGLenum dstAlpha); \
        2028                 :   NS_SCRIPTABLE NS_IMETHOD BufferData(PRInt32 dummy); \
        2029                 :   NS_IMETHOD BufferData_size(WebGLenum target, WebGLsizei size, WebGLenum usage); \
        2030                 :   NS_IMETHOD BufferData_buf(WebGLenum target, JSObject *data, WebGLenum usage); \
        2031                 :   NS_IMETHOD BufferData_array(WebGLenum target, JSObject *data, WebGLenum usage); \
        2032                 :   NS_IMETHOD BufferData_null(void); \
        2033                 :   NS_SCRIPTABLE NS_IMETHOD BufferSubData(PRInt32 dummy); \
        2034                 :   NS_IMETHOD BufferSubData_buf(WebGLenum target, PRInt32 offset, JSObject *data); \
        2035                 :   NS_IMETHOD BufferSubData_array(WebGLenum target, PRInt32 offset, JSObject *data); \
        2036                 :   NS_IMETHOD BufferSubData_null(void); \
        2037                 :   NS_SCRIPTABLE NS_IMETHOD CheckFramebufferStatus(WebGLenum target, WebGLenum *_retval NS_OUTPARAM); \
        2038                 :   NS_SCRIPTABLE NS_IMETHOD Clear(WebGLbitfield mask); \
        2039                 :   NS_SCRIPTABLE NS_IMETHOD ClearColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha); \
        2040                 :   NS_SCRIPTABLE NS_IMETHOD ClearDepth(WebGLclampf depth); \
        2041                 :   NS_SCRIPTABLE NS_IMETHOD ClearStencil(WebGLint s); \
        2042                 :   NS_SCRIPTABLE NS_IMETHOD ColorMask(WebGLboolean red, WebGLboolean green, WebGLboolean blue, WebGLboolean alpha); \
        2043                 :   NS_SCRIPTABLE NS_IMETHOD CompileShader(nsIWebGLShader *shader); \
        2044                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexImage2D(PRInt32 dummy); \
        2045                 :   NS_IMETHOD CompressedTexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, JSObject *pixels); \
        2046                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexSubImage2D(PRInt32 dummy); \
        2047                 :   NS_IMETHOD CompressedTexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, JSObject *pixels); \
        2048                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexImage2D(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLint border); \
        2049                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexSubImage2D(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height); \
        2050                 :   NS_SCRIPTABLE NS_IMETHOD CreateBuffer(nsIWebGLBuffer * *_retval NS_OUTPARAM); \
        2051                 :   NS_SCRIPTABLE NS_IMETHOD CreateProgram(nsIWebGLProgram * *_retval NS_OUTPARAM); \
        2052                 :   NS_SCRIPTABLE NS_IMETHOD CreateFramebuffer(nsIWebGLFramebuffer * *_retval NS_OUTPARAM); \
        2053                 :   NS_SCRIPTABLE NS_IMETHOD CreateRenderbuffer(nsIWebGLRenderbuffer * *_retval NS_OUTPARAM); \
        2054                 :   NS_SCRIPTABLE NS_IMETHOD CreateShader(WebGLenum type, nsIWebGLShader * *_retval NS_OUTPARAM); \
        2055                 :   NS_SCRIPTABLE NS_IMETHOD CreateTexture(nsIWebGLTexture * *_retval NS_OUTPARAM); \
        2056                 :   NS_SCRIPTABLE NS_IMETHOD CullFace(WebGLenum mode); \
        2057                 :   NS_SCRIPTABLE NS_IMETHOD DeleteBuffer(nsIWebGLBuffer *buffer); \
        2058                 :   NS_SCRIPTABLE NS_IMETHOD DeleteProgram(nsIWebGLProgram *program); \
        2059                 :   NS_SCRIPTABLE NS_IMETHOD DeleteFramebuffer(nsIWebGLFramebuffer *framebuffer); \
        2060                 :   NS_SCRIPTABLE NS_IMETHOD DeleteRenderbuffer(nsIWebGLRenderbuffer *renderbuffer); \
        2061                 :   NS_SCRIPTABLE NS_IMETHOD DeleteShader(nsIWebGLShader *shader); \
        2062                 :   NS_SCRIPTABLE NS_IMETHOD DeleteTexture(nsIWebGLTexture *texture); \
        2063                 :   NS_SCRIPTABLE NS_IMETHOD DepthFunc(WebGLenum func); \
        2064                 :   NS_SCRIPTABLE NS_IMETHOD DepthMask(WebGLboolean flag); \
        2065                 :   NS_SCRIPTABLE NS_IMETHOD DepthRange(WebGLclampf zNear, WebGLclampf zFar); \
        2066                 :   NS_SCRIPTABLE NS_IMETHOD DetachShader(nsIWebGLProgram *program, nsIWebGLShader *shader); \
        2067                 :   NS_SCRIPTABLE NS_IMETHOD Disable(WebGLenum cap); \
        2068                 :   NS_SCRIPTABLE NS_IMETHOD DisableVertexAttribArray(WebGLuint index); \
        2069                 :   NS_SCRIPTABLE NS_IMETHOD DrawArrays(WebGLenum mode, WebGLint first, WebGLsizei count); \
        2070                 :   NS_SCRIPTABLE NS_IMETHOD DrawElements(WebGLenum mode, WebGLsizei count, WebGLenum type, WebGLint offset); \
        2071                 :   NS_SCRIPTABLE NS_IMETHOD Enable(WebGLenum cap); \
        2072                 :   NS_SCRIPTABLE NS_IMETHOD EnableVertexAttribArray(WebGLuint index); \
        2073                 :   NS_SCRIPTABLE NS_IMETHOD Finish(void); \
        2074                 :   NS_SCRIPTABLE NS_IMETHOD Flush(void); \
        2075                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferRenderbuffer(WebGLenum target, WebGLenum attachment, WebGLenum renderbuffertarget, nsIWebGLRenderbuffer *renderbuffer); \
        2076                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferTexture2D(WebGLenum target, WebGLenum attachment, WebGLenum textarget, nsIWebGLTexture *texture, WebGLint level); \
        2077                 :   NS_SCRIPTABLE NS_IMETHOD FrontFace(WebGLenum mode); \
        2078                 :   NS_SCRIPTABLE NS_IMETHOD GenerateMipmap(WebGLenum target); \
        2079                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveAttrib(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM); \
        2080                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveUniform(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM); \
        2081                 :   NS_SCRIPTABLE NS_IMETHOD GetAttachedShaders(nsIWebGLProgram *program, nsIVariant * *_retval NS_OUTPARAM); \
        2082                 :   NS_SCRIPTABLE NS_IMETHOD GetAttribLocation(nsIWebGLProgram *program, const nsAString & name, WebGLint *_retval NS_OUTPARAM); \
        2083                 :   NS_SCRIPTABLE NS_IMETHOD GetParameter(WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2084                 :   NS_SCRIPTABLE NS_IMETHOD GetBufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2085                 :   NS_SCRIPTABLE NS_IMETHOD GetError(WebGLenum *_retval NS_OUTPARAM); \
        2086                 :   NS_SCRIPTABLE NS_IMETHOD GetFramebufferAttachmentParameter(WebGLenum target, WebGLenum attachment, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2087                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramParameter(nsIWebGLProgram *program, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2088                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramInfoLog(nsIWebGLProgram *program, nsAString & _retval NS_OUTPARAM); \
        2089                 :   NS_SCRIPTABLE NS_IMETHOD GetRenderbufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2090                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderParameter(nsIWebGLShader *shader, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2091                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderInfoLog(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM); \
        2092                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderPrecisionFormat(WebGLenum shadertype, WebGLenum precisiontype, nsIWebGLShaderPrecisionFormat * *_retval NS_OUTPARAM); \
        2093                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderSource(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM); \
        2094                 :   NS_SCRIPTABLE NS_IMETHOD GetTexParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2095                 :   NS_SCRIPTABLE NS_IMETHOD GetUniform(nsIWebGLProgram *program, nsIWebGLUniformLocation *location, nsIVariant * *_retval NS_OUTPARAM); \
        2096                 :   NS_SCRIPTABLE NS_IMETHOD GetUniformLocation(nsIWebGLProgram *program, const nsAString & name, nsIWebGLUniformLocation * *_retval NS_OUTPARAM); \
        2097                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttrib(WebGLuint index, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM); \
        2098                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttribOffset(WebGLuint index, WebGLenum pname, WebGLuint *_retval NS_OUTPARAM); \
        2099                 :   NS_SCRIPTABLE NS_IMETHOD Hint(WebGLenum target, WebGLenum mode); \
        2100                 :   NS_SCRIPTABLE NS_IMETHOD IsBuffer(nsIWebGLBuffer *buffer, WebGLboolean *_retval NS_OUTPARAM); \
        2101                 :   NS_SCRIPTABLE NS_IMETHOD IsFramebuffer(nsIWebGLFramebuffer *framebuffer, WebGLboolean *_retval NS_OUTPARAM); \
        2102                 :   NS_SCRIPTABLE NS_IMETHOD IsProgram(nsIWebGLProgram *program, WebGLboolean *_retval NS_OUTPARAM); \
        2103                 :   NS_SCRIPTABLE NS_IMETHOD IsRenderbuffer(nsIWebGLRenderbuffer *renderbuffer, WebGLboolean *_retval NS_OUTPARAM); \
        2104                 :   NS_SCRIPTABLE NS_IMETHOD IsShader(nsIWebGLShader *shader, WebGLboolean *_retval NS_OUTPARAM); \
        2105                 :   NS_SCRIPTABLE NS_IMETHOD IsTexture(nsIWebGLTexture *texture, WebGLboolean *_retval NS_OUTPARAM); \
        2106                 :   NS_SCRIPTABLE NS_IMETHOD IsEnabled(WebGLenum cap, WebGLboolean *_retval NS_OUTPARAM); \
        2107                 :   NS_SCRIPTABLE NS_IMETHOD LineWidth(WebGLfloat width); \
        2108                 :   NS_SCRIPTABLE NS_IMETHOD LinkProgram(nsIWebGLProgram *program); \
        2109                 :   NS_SCRIPTABLE NS_IMETHOD PixelStorei(WebGLenum pname, WebGLint param); \
        2110                 :   NS_SCRIPTABLE NS_IMETHOD PolygonOffset(WebGLfloat factor, WebGLfloat units); \
        2111                 :   NS_SCRIPTABLE NS_IMETHOD ReadPixels(PRInt32 dummy); \
        2112                 :   NS_IMETHOD ReadPixels_array(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels); \
        2113                 :   NS_SCRIPTABLE NS_IMETHOD RenderbufferStorage(WebGLenum target, WebGLenum internalformat, WebGLsizei width, WebGLsizei height); \
        2114                 :   NS_SCRIPTABLE NS_IMETHOD SampleCoverage(WebGLclampf value, WebGLboolean invert); \
        2115                 :   NS_SCRIPTABLE NS_IMETHOD Scissor(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height); \
        2116                 :   NS_SCRIPTABLE NS_IMETHOD ShaderSource(nsIWebGLShader *shader, const nsAString & source); \
        2117                 :   NS_SCRIPTABLE NS_IMETHOD StencilFunc(WebGLenum func, WebGLint ref, WebGLuint mask); \
        2118                 :   NS_SCRIPTABLE NS_IMETHOD StencilFuncSeparate(WebGLenum face, WebGLenum func, WebGLint ref, WebGLuint mask); \
        2119                 :   NS_SCRIPTABLE NS_IMETHOD StencilMask(WebGLuint mask); \
        2120                 :   NS_SCRIPTABLE NS_IMETHOD StencilMaskSeparate(WebGLenum face, WebGLuint mask); \
        2121                 :   NS_SCRIPTABLE NS_IMETHOD StencilOp(WebGLenum fail, WebGLenum zfail, WebGLenum zpass); \
        2122                 :   NS_SCRIPTABLE NS_IMETHOD StencilOpSeparate(WebGLenum face, WebGLenum fail, WebGLenum zfail, WebGLenum zpass); \
        2123                 :   NS_SCRIPTABLE NS_IMETHOD TexImage2D(PRInt32 dummy); \
        2124                 :   NS_IMETHOD TexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels); \
        2125                 :   NS_IMETHOD TexImage2D_imageData(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels); \
        2126                 :   NS_IMETHOD TexImage2D_dom(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLenum format, WebGLenum type, mozilla::dom::Element *element); \
        2127                 :   NS_SCRIPTABLE NS_IMETHOD TexSubImage2D(PRInt32 dummy); \
        2128                 :   NS_IMETHOD TexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels); \
        2129                 :   NS_IMETHOD TexSubImage2D_imageData(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels); \
        2130                 :   NS_IMETHOD TexSubImage2D_dom(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLenum format, WebGLenum type, mozilla::dom::Element *element); \
        2131                 :   NS_SCRIPTABLE NS_IMETHOD TexParameterf(WebGLenum target, WebGLenum pname, WebGLfloat param); \
        2132                 :   NS_SCRIPTABLE NS_IMETHOD TexParameteri(WebGLenum target, WebGLenum pname, WebGLint param); \
        2133                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1f(nsIWebGLUniformLocation *location, WebGLfloat x); \
        2134                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1i(nsIWebGLUniformLocation *location, WebGLint x); \
        2135                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y); \
        2136                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y); \
        2137                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z); \
        2138                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z); \
        2139                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w); \
        2140                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z, WebGLint w); \
        2141                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1fv(PRInt32 dummy); \
        2142                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1iv(PRInt32 dummy); \
        2143                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2fv(PRInt32 dummy); \
        2144                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2iv(PRInt32 dummy); \
        2145                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3fv(PRInt32 dummy); \
        2146                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3iv(PRInt32 dummy); \
        2147                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4fv(PRInt32 dummy); \
        2148                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4iv(PRInt32 dummy); \
        2149                 :   NS_IMETHOD Uniform1fv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2150                 :   NS_IMETHOD Uniform1iv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2151                 :   NS_IMETHOD Uniform2fv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2152                 :   NS_IMETHOD Uniform2iv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2153                 :   NS_IMETHOD Uniform3fv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2154                 :   NS_IMETHOD Uniform3iv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2155                 :   NS_IMETHOD Uniform4fv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2156                 :   NS_IMETHOD Uniform4iv_array(nsIWebGLUniformLocation *location, JSObject *v); \
        2157                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix2fv(PRInt32 dummy); \
        2158                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix3fv(PRInt32 dummy); \
        2159                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix4fv(PRInt32 dummy); \
        2160                 :   NS_IMETHOD UniformMatrix2fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value); \
        2161                 :   NS_IMETHOD UniformMatrix3fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value); \
        2162                 :   NS_IMETHOD UniformMatrix4fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value); \
        2163                 :   NS_SCRIPTABLE NS_IMETHOD UseProgram(nsIWebGLProgram *program); \
        2164                 :   NS_SCRIPTABLE NS_IMETHOD ValidateProgram(nsIWebGLProgram *program); \
        2165                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1f(WebGLuint indx, WebGLfloat x); \
        2166                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2f(WebGLuint indx, WebGLfloat x, WebGLfloat y); \
        2167                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z); \
        2168                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w); \
        2169                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1fv(PRInt32 dummy); \
        2170                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2fv(PRInt32 dummy); \
        2171                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3fv(PRInt32 dummy); \
        2172                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4fv(PRInt32 dummy); \
        2173                 :   NS_IMETHOD VertexAttrib1fv_array(WebGLuint indx, JSObject *values); \
        2174                 :   NS_IMETHOD VertexAttrib2fv_array(WebGLuint indx, JSObject *values); \
        2175                 :   NS_IMETHOD VertexAttrib3fv_array(WebGLuint indx, JSObject *values); \
        2176                 :   NS_IMETHOD VertexAttrib4fv_array(WebGLuint indx, JSObject *values); \
        2177                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttribPointer(WebGLuint idx, WebGLint size, WebGLenum type, WebGLboolean normalized, WebGLsizei stride, WebGLsizeiptr offset); \
        2178                 :   NS_SCRIPTABLE NS_IMETHOD Viewport(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height); \
        2179                 :   NS_IMETHOD MozGetUnderlyingParamString(WebGLenum pname, nsAString & _retval NS_OUTPARAM); \
        2180                 :   NS_SCRIPTABLE NS_IMETHOD GetExtension(const nsAString & name, nsIWebGLExtension * *_retval NS_OUTPARAM); \
        2181                 :   NS_SCRIPTABLE NS_IMETHOD GetSupportedExtensions(nsIVariant * *_retval NS_OUTPARAM); \
        2182                 :   NS_SCRIPTABLE NS_IMETHOD IsContextLost(WebGLboolean *_retval NS_OUTPARAM); \
        2183                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferWidth(WebGLsizei *aDrawingBufferWidth); \
        2184                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferHeight(WebGLsizei *aDrawingBufferHeight);
        2185                 :
        2186                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
        2187                 : #define NS_FORWARD_NSIDOMWEBGLRENDERINGCONTEXT(_to) \
        2188                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) { return _to GetCanvas(aCanvas); } \
        2189                 :   NS_SCRIPTABLE NS_IMETHOD GetContextAttributes(JS::Value *_retval NS_OUTPARAM) { return _to GetContextAttributes(_retval); } \
        2190                 :   NS_SCRIPTABLE NS_IMETHOD ActiveTexture(WebGLenum texture) { return _to ActiveTexture(texture); } \
        2191                 :   NS_SCRIPTABLE NS_IMETHOD AttachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) { return _to AttachShader(program, shader); } \
        2192                 :   NS_SCRIPTABLE NS_IMETHOD BindAttribLocation(nsIWebGLProgram *program, WebGLuint index, const nsAString & name) { return _to BindAttribLocation(program, index, name); } \
        2193                 :   NS_SCRIPTABLE NS_IMETHOD BindBuffer(WebGLenum target, nsIWebGLBuffer *buffer) { return _to BindBuffer(target, buffer); } \
        2194                 :   NS_SCRIPTABLE NS_IMETHOD BindFramebuffer(WebGLenum target, nsIWebGLFramebuffer *framebuffer) { return _to BindFramebuffer(target, framebuffer); } \
        2195                 :   NS_SCRIPTABLE NS_IMETHOD BindRenderbuffer(WebGLenum target, nsIWebGLRenderbuffer *renderbuffer) { return _to BindRenderbuffer(target, renderbuffer); } \
        2196                 :   NS_SCRIPTABLE NS_IMETHOD BindTexture(WebGLenum target, nsIWebGLTexture *texture) { return _to BindTexture(target, texture); } \
        2197                 :   NS_SCRIPTABLE NS_IMETHOD BlendColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) { return _to BlendColor(red, green, blue, alpha); } \
        2198                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquation(WebGLenum mode) { return _to BlendEquation(mode); } \
        2199                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquationSeparate(WebGLenum modeRGB, WebGLenum modeAlpha) { return _to BlendEquationSeparate(modeRGB, modeAlpha); } \
        2200                 :   NS_SCRIPTABLE NS_IMETHOD BlendFunc(WebGLenum sfactor, WebGLenum dfactor) { return _to BlendFunc(sfactor, dfactor); } \
        2201                 :   NS_SCRIPTABLE NS_IMETHOD BlendFuncSeparate(WebGLenum srcRGB, WebGLenum dstRGB, WebGLenum srcAlpha, WebGLenum dstAlpha) { return _to BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); } \
        2202                 :   NS_SCRIPTABLE NS_IMETHOD BufferData(PRInt32 dummy) { return _to BufferData(dummy); } \
        2203                 :   NS_IMETHOD BufferData_size(WebGLenum target, WebGLsizei size, WebGLenum usage) { return _to BufferData_size(target, size, usage); } \
        2204                 :   NS_IMETHOD BufferData_buf(WebGLenum target, JSObject *data, WebGLenum usage) { return _to BufferData_buf(target, data, usage); } \
        2205                 :   NS_IMETHOD BufferData_array(WebGLenum target, JSObject *data, WebGLenum usage) { return _to BufferData_array(target, data, usage); } \
        2206                 :   NS_IMETHOD BufferData_null(void) { return _to BufferData_null(); } \
        2207                 :   NS_SCRIPTABLE NS_IMETHOD BufferSubData(PRInt32 dummy) { return _to BufferSubData(dummy); } \
        2208                 :   NS_IMETHOD BufferSubData_buf(WebGLenum target, PRInt32 offset, JSObject *data) { return _to BufferSubData_buf(target, offset, data); } \
        2209                 :   NS_IMETHOD BufferSubData_array(WebGLenum target, PRInt32 offset, JSObject *data) { return _to BufferSubData_array(target, offset, data); } \
        2210                 :   NS_IMETHOD BufferSubData_null(void) { return _to BufferSubData_null(); } \
        2211                 :   NS_SCRIPTABLE NS_IMETHOD CheckFramebufferStatus(WebGLenum target, WebGLenum *_retval NS_OUTPARAM) { return _to CheckFramebufferStatus(target, _retval); } \
        2212                 :   NS_SCRIPTABLE NS_IMETHOD Clear(WebGLbitfield mask) { return _to Clear(mask); } \
        2213                 :   NS_SCRIPTABLE NS_IMETHOD ClearColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) { return _to ClearColor(red, green, blue, alpha); } \
        2214                 :   NS_SCRIPTABLE NS_IMETHOD ClearDepth(WebGLclampf depth) { return _to ClearDepth(depth); } \
        2215                 :   NS_SCRIPTABLE NS_IMETHOD ClearStencil(WebGLint s) { return _to ClearStencil(s); } \
        2216                 :   NS_SCRIPTABLE NS_IMETHOD ColorMask(WebGLboolean red, WebGLboolean green, WebGLboolean blue, WebGLboolean alpha) { return _to ColorMask(red, green, blue, alpha); } \
        2217                 :   NS_SCRIPTABLE NS_IMETHOD CompileShader(nsIWebGLShader *shader) { return _to CompileShader(shader); } \
        2218                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexImage2D(PRInt32 dummy) { return _to CompressedTexImage2D(dummy); } \
        2219                 :   NS_IMETHOD CompressedTexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, JSObject *pixels) { return _to CompressedTexImage2D_array(target, level, internalformat, width, height, border, pixels); } \
        2220                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexSubImage2D(PRInt32 dummy) { return _to CompressedTexSubImage2D(dummy); } \
        2221                 :   NS_IMETHOD CompressedTexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, JSObject *pixels) { return _to CompressedTexSubImage2D_array(target, level, xoffset, yoffset, width, height, format, pixels); } \
        2222                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexImage2D(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLint border) { return _to CopyTexImage2D(target, level, internalformat, x, y, width, height, border); } \
        2223                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexSubImage2D(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return _to CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); } \
        2224                 :   NS_SCRIPTABLE NS_IMETHOD CreateBuffer(nsIWebGLBuffer * *_retval NS_OUTPARAM) { return _to CreateBuffer(_retval); } \
        2225                 :   NS_SCRIPTABLE NS_IMETHOD CreateProgram(nsIWebGLProgram * *_retval NS_OUTPARAM) { return _to CreateProgram(_retval); } \
        2226                 :   NS_SCRIPTABLE NS_IMETHOD CreateFramebuffer(nsIWebGLFramebuffer * *_retval NS_OUTPARAM) { return _to CreateFramebuffer(_retval); } \
        2227                 :   NS_SCRIPTABLE NS_IMETHOD CreateRenderbuffer(nsIWebGLRenderbuffer * *_retval NS_OUTPARAM) { return _to CreateRenderbuffer(_retval); } \
        2228                 :   NS_SCRIPTABLE NS_IMETHOD CreateShader(WebGLenum type, nsIWebGLShader * *_retval NS_OUTPARAM) { return _to CreateShader(type, _retval); } \
        2229                 :   NS_SCRIPTABLE NS_IMETHOD CreateTexture(nsIWebGLTexture * *_retval NS_OUTPARAM) { return _to CreateTexture(_retval); } \
        2230                 :   NS_SCRIPTABLE NS_IMETHOD CullFace(WebGLenum mode) { return _to CullFace(mode); } \
        2231                 :   NS_SCRIPTABLE NS_IMETHOD DeleteBuffer(nsIWebGLBuffer *buffer) { return _to DeleteBuffer(buffer); } \
        2232                 :   NS_SCRIPTABLE NS_IMETHOD DeleteProgram(nsIWebGLProgram *program) { return _to DeleteProgram(program); } \
        2233                 :   NS_SCRIPTABLE NS_IMETHOD DeleteFramebuffer(nsIWebGLFramebuffer *framebuffer) { return _to DeleteFramebuffer(framebuffer); } \
        2234                 :   NS_SCRIPTABLE NS_IMETHOD DeleteRenderbuffer(nsIWebGLRenderbuffer *renderbuffer) { return _to DeleteRenderbuffer(renderbuffer); } \
        2235                 :   NS_SCRIPTABLE NS_IMETHOD DeleteShader(nsIWebGLShader *shader) { return _to DeleteShader(shader); } \
        2236                 :   NS_SCRIPTABLE NS_IMETHOD DeleteTexture(nsIWebGLTexture *texture) { return _to DeleteTexture(texture); } \
        2237                 :   NS_SCRIPTABLE NS_IMETHOD DepthFunc(WebGLenum func) { return _to DepthFunc(func); } \
        2238                 :   NS_SCRIPTABLE NS_IMETHOD DepthMask(WebGLboolean flag) { return _to DepthMask(flag); } \
        2239                 :   NS_SCRIPTABLE NS_IMETHOD DepthRange(WebGLclampf zNear, WebGLclampf zFar) { return _to DepthRange(zNear, zFar); } \
        2240                 :   NS_SCRIPTABLE NS_IMETHOD DetachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) { return _to DetachShader(program, shader); } \
        2241                 :   NS_SCRIPTABLE NS_IMETHOD Disable(WebGLenum cap) { return _to Disable(cap); } \
        2242                 :   NS_SCRIPTABLE NS_IMETHOD DisableVertexAttribArray(WebGLuint index) { return _to DisableVertexAttribArray(index); } \
        2243                 :   NS_SCRIPTABLE NS_IMETHOD DrawArrays(WebGLenum mode, WebGLint first, WebGLsizei count) { return _to DrawArrays(mode, first, count); } \
        2244                 :   NS_SCRIPTABLE NS_IMETHOD DrawElements(WebGLenum mode, WebGLsizei count, WebGLenum type, WebGLint offset) { return _to DrawElements(mode, count, type, offset); } \
        2245                 :   NS_SCRIPTABLE NS_IMETHOD Enable(WebGLenum cap) { return _to Enable(cap); } \
        2246                 :   NS_SCRIPTABLE NS_IMETHOD EnableVertexAttribArray(WebGLuint index) { return _to EnableVertexAttribArray(index); } \
        2247                 :   NS_SCRIPTABLE NS_IMETHOD Finish(void) { return _to Finish(); } \
        2248                 :   NS_SCRIPTABLE NS_IMETHOD Flush(void) { return _to Flush(); } \
        2249                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferRenderbuffer(WebGLenum target, WebGLenum attachment, WebGLenum renderbuffertarget, nsIWebGLRenderbuffer *renderbuffer) { return _to FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer); } \
        2250                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferTexture2D(WebGLenum target, WebGLenum attachment, WebGLenum textarget, nsIWebGLTexture *texture, WebGLint level) { return _to FramebufferTexture2D(target, attachment, textarget, texture, level); } \
        2251                 :   NS_SCRIPTABLE NS_IMETHOD FrontFace(WebGLenum mode) { return _to FrontFace(mode); } \
        2252                 :   NS_SCRIPTABLE NS_IMETHOD GenerateMipmap(WebGLenum target) { return _to GenerateMipmap(target); } \
        2253                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveAttrib(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) { return _to GetActiveAttrib(program, index, _retval); } \
        2254                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveUniform(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) { return _to GetActiveUniform(program, index, _retval); } \
        2255                 :   NS_SCRIPTABLE NS_IMETHOD GetAttachedShaders(nsIWebGLProgram *program, nsIVariant * *_retval NS_OUTPARAM) { return _to GetAttachedShaders(program, _retval); } \
        2256                 :   NS_SCRIPTABLE NS_IMETHOD GetAttribLocation(nsIWebGLProgram *program, const nsAString & name, WebGLint *_retval NS_OUTPARAM) { return _to GetAttribLocation(program, name, _retval); } \
        2257                 :   NS_SCRIPTABLE NS_IMETHOD GetParameter(WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetParameter(pname, _retval); } \
        2258                 :   NS_SCRIPTABLE NS_IMETHOD GetBufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetBufferParameter(target, pname, _retval); } \
        2259                 :   NS_SCRIPTABLE NS_IMETHOD GetError(WebGLenum *_retval NS_OUTPARAM) { return _to GetError(_retval); } \
        2260                 :   NS_SCRIPTABLE NS_IMETHOD GetFramebufferAttachmentParameter(WebGLenum target, WebGLenum attachment, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetFramebufferAttachmentParameter(target, attachment, pname, _retval); } \
        2261                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramParameter(nsIWebGLProgram *program, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetProgramParameter(program, pname, _retval); } \
        2262                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramInfoLog(nsIWebGLProgram *program, nsAString & _retval NS_OUTPARAM) { return _to GetProgramInfoLog(program, _retval); } \
        2263                 :   NS_SCRIPTABLE NS_IMETHOD GetRenderbufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetRenderbufferParameter(target, pname, _retval); } \
        2264                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderParameter(nsIWebGLShader *shader, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetShaderParameter(shader, pname, _retval); } \
        2265                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderInfoLog(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) { return _to GetShaderInfoLog(shader, _retval); } \
        2266                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderPrecisionFormat(WebGLenum shadertype, WebGLenum precisiontype, nsIWebGLShaderPrecisionFormat * *_retval NS_OUTPARAM) { return _to GetShaderPrecisionFormat(shadertype, precisiontype, _retval); } \
        2267                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderSource(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) { return _to GetShaderSource(shader, _retval); } \
        2268                 :   NS_SCRIPTABLE NS_IMETHOD GetTexParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetTexParameter(target, pname, _retval); } \
        2269                 :   NS_SCRIPTABLE NS_IMETHOD GetUniform(nsIWebGLProgram *program, nsIWebGLUniformLocation *location, nsIVariant * *_retval NS_OUTPARAM) { return _to GetUniform(program, location, _retval); } \
        2270                 :   NS_SCRIPTABLE NS_IMETHOD GetUniformLocation(nsIWebGLProgram *program, const nsAString & name, nsIWebGLUniformLocation * *_retval NS_OUTPARAM) { return _to GetUniformLocation(program, name, _retval); } \
        2271                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttrib(WebGLuint index, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return _to GetVertexAttrib(index, pname, _retval); } \
        2272                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttribOffset(WebGLuint index, WebGLenum pname, WebGLuint *_retval NS_OUTPARAM) { return _to GetVertexAttribOffset(index, pname, _retval); } \
        2273                 :   NS_SCRIPTABLE NS_IMETHOD Hint(WebGLenum target, WebGLenum mode) { return _to Hint(target, mode); } \
        2274                 :   NS_SCRIPTABLE NS_IMETHOD IsBuffer(nsIWebGLBuffer *buffer, WebGLboolean *_retval NS_OUTPARAM) { return _to IsBuffer(buffer, _retval); } \
        2275                 :   NS_SCRIPTABLE NS_IMETHOD IsFramebuffer(nsIWebGLFramebuffer *framebuffer, WebGLboolean *_retval NS_OUTPARAM) { return _to IsFramebuffer(framebuffer, _retval); } \
        2276                 :   NS_SCRIPTABLE NS_IMETHOD IsProgram(nsIWebGLProgram *program, WebGLboolean *_retval NS_OUTPARAM) { return _to IsProgram(program, _retval); } \
        2277                 :   NS_SCRIPTABLE NS_IMETHOD IsRenderbuffer(nsIWebGLRenderbuffer *renderbuffer, WebGLboolean *_retval NS_OUTPARAM) { return _to IsRenderbuffer(renderbuffer, _retval); } \
        2278                 :   NS_SCRIPTABLE NS_IMETHOD IsShader(nsIWebGLShader *shader, WebGLboolean *_retval NS_OUTPARAM) { return _to IsShader(shader, _retval); } \
        2279                 :   NS_SCRIPTABLE NS_IMETHOD IsTexture(nsIWebGLTexture *texture, WebGLboolean *_retval NS_OUTPARAM) { return _to IsTexture(texture, _retval); } \
        2280                 :   NS_SCRIPTABLE NS_IMETHOD IsEnabled(WebGLenum cap, WebGLboolean *_retval NS_OUTPARAM) { return _to IsEnabled(cap, _retval); } \
        2281                 :   NS_SCRIPTABLE NS_IMETHOD LineWidth(WebGLfloat width) { return _to LineWidth(width); } \
        2282                 :   NS_SCRIPTABLE NS_IMETHOD LinkProgram(nsIWebGLProgram *program) { return _to LinkProgram(program); } \
        2283                 :   NS_SCRIPTABLE NS_IMETHOD PixelStorei(WebGLenum pname, WebGLint param) { return _to PixelStorei(pname, param); } \
        2284                 :   NS_SCRIPTABLE NS_IMETHOD PolygonOffset(WebGLfloat factor, WebGLfloat units) { return _to PolygonOffset(factor, units); } \
        2285                 :   NS_SCRIPTABLE NS_IMETHOD ReadPixels(PRInt32 dummy) { return _to ReadPixels(dummy); } \
        2286                 :   NS_IMETHOD ReadPixels_array(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return _to ReadPixels_array(x, y, width, height, format, type, pixels); } \
        2287                 :   NS_SCRIPTABLE NS_IMETHOD RenderbufferStorage(WebGLenum target, WebGLenum internalformat, WebGLsizei width, WebGLsizei height) { return _to RenderbufferStorage(target, internalformat, width, height); } \
        2288                 :   NS_SCRIPTABLE NS_IMETHOD SampleCoverage(WebGLclampf value, WebGLboolean invert) { return _to SampleCoverage(value, invert); } \
        2289                 :   NS_SCRIPTABLE NS_IMETHOD Scissor(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return _to Scissor(x, y, width, height); } \
        2290                 :   NS_SCRIPTABLE NS_IMETHOD ShaderSource(nsIWebGLShader *shader, const nsAString & source) { return _to ShaderSource(shader, source); } \
        2291                 :   NS_SCRIPTABLE NS_IMETHOD StencilFunc(WebGLenum func, WebGLint ref, WebGLuint mask) { return _to StencilFunc(func, ref, mask); } \
        2292                 :   NS_SCRIPTABLE NS_IMETHOD StencilFuncSeparate(WebGLenum face, WebGLenum func, WebGLint ref, WebGLuint mask) { return _to StencilFuncSeparate(face, func, ref, mask); } \
        2293                 :   NS_SCRIPTABLE NS_IMETHOD StencilMask(WebGLuint mask) { return _to StencilMask(mask); } \
        2294                 :   NS_SCRIPTABLE NS_IMETHOD StencilMaskSeparate(WebGLenum face, WebGLuint mask) { return _to StencilMaskSeparate(face, mask); } \
        2295                 :   NS_SCRIPTABLE NS_IMETHOD StencilOp(WebGLenum fail, WebGLenum zfail, WebGLenum zpass) { return _to StencilOp(fail, zfail, zpass); } \
        2296                 :   NS_SCRIPTABLE NS_IMETHOD StencilOpSeparate(WebGLenum face, WebGLenum fail, WebGLenum zfail, WebGLenum zpass) { return _to StencilOpSeparate(face, fail, zfail, zpass); } \
        2297                 :   NS_SCRIPTABLE NS_IMETHOD TexImage2D(PRInt32 dummy) { return _to TexImage2D(dummy); } \
        2298                 :   NS_IMETHOD TexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) { return _to TexImage2D_array(target, level, internalformat, width, height, border, format, type, pixels); } \
        2299                 :   NS_IMETHOD TexImage2D_imageData(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) { return _to TexImage2D_imageData(target, level, internalformat, width, height, border, format, type, pixels); } \
        2300                 :   NS_IMETHOD TexImage2D_dom(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) { return _to TexImage2D_dom(target, level, internalformat, format, type, element); } \
        2301                 :   NS_SCRIPTABLE NS_IMETHOD TexSubImage2D(PRInt32 dummy) { return _to TexSubImage2D(dummy); } \
        2302                 :   NS_IMETHOD TexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return _to TexSubImage2D_array(target, level, xoffset, yoffset, width, height, format, type, pixels); } \
        2303                 :   NS_IMETHOD TexSubImage2D_imageData(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return _to TexSubImage2D_imageData(target, level, xoffset, yoffset, width, height, format, type, pixels); } \
        2304                 :   NS_IMETHOD TexSubImage2D_dom(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) { return _to TexSubImage2D_dom(target, level, xoffset, yoffset, format, type, element); } \
        2305                 :   NS_SCRIPTABLE NS_IMETHOD TexParameterf(WebGLenum target, WebGLenum pname, WebGLfloat param) { return _to TexParameterf(target, pname, param); } \
        2306                 :   NS_SCRIPTABLE NS_IMETHOD TexParameteri(WebGLenum target, WebGLenum pname, WebGLint param) { return _to TexParameteri(target, pname, param); } \
        2307                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1f(nsIWebGLUniformLocation *location, WebGLfloat x) { return _to Uniform1f(location, x); } \
        2308                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1i(nsIWebGLUniformLocation *location, WebGLint x) { return _to Uniform1i(location, x); } \
        2309                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y) { return _to Uniform2f(location, x, y); } \
        2310                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y) { return _to Uniform2i(location, x, y); } \
        2311                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z) { return _to Uniform3f(location, x, y, z); } \
        2312                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z) { return _to Uniform3i(location, x, y, z); } \
        2313                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) { return _to Uniform4f(location, x, y, z, w); } \
        2314                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z, WebGLint w) { return _to Uniform4i(location, x, y, z, w); } \
        2315                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1fv(PRInt32 dummy) { return _to Uniform1fv(dummy); } \
        2316                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1iv(PRInt32 dummy) { return _to Uniform1iv(dummy); } \
        2317                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2fv(PRInt32 dummy) { return _to Uniform2fv(dummy); } \
        2318                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2iv(PRInt32 dummy) { return _to Uniform2iv(dummy); } \
        2319                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3fv(PRInt32 dummy) { return _to Uniform3fv(dummy); } \
        2320                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3iv(PRInt32 dummy) { return _to Uniform3iv(dummy); } \
        2321                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4fv(PRInt32 dummy) { return _to Uniform4fv(dummy); } \
        2322                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4iv(PRInt32 dummy) { return _to Uniform4iv(dummy); } \
        2323                 :   NS_IMETHOD Uniform1fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform1fv_array(location, v); } \
        2324                 :   NS_IMETHOD Uniform1iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform1iv_array(location, v); } \
        2325                 :   NS_IMETHOD Uniform2fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform2fv_array(location, v); } \
        2326                 :   NS_IMETHOD Uniform2iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform2iv_array(location, v); } \
        2327                 :   NS_IMETHOD Uniform3fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform3fv_array(location, v); } \
        2328                 :   NS_IMETHOD Uniform3iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform3iv_array(location, v); } \
        2329                 :   NS_IMETHOD Uniform4fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform4fv_array(location, v); } \
        2330                 :   NS_IMETHOD Uniform4iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return _to Uniform4iv_array(location, v); } \
        2331                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix2fv(PRInt32 dummy) { return _to UniformMatrix2fv(dummy); } \
        2332                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix3fv(PRInt32 dummy) { return _to UniformMatrix3fv(dummy); } \
        2333                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix4fv(PRInt32 dummy) { return _to UniformMatrix4fv(dummy); } \
        2334                 :   NS_IMETHOD UniformMatrix2fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return _to UniformMatrix2fv_array(location, transpose, value); } \
        2335                 :   NS_IMETHOD UniformMatrix3fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return _to UniformMatrix3fv_array(location, transpose, value); } \
        2336                 :   NS_IMETHOD UniformMatrix4fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return _to UniformMatrix4fv_array(location, transpose, value); } \
        2337                 :   NS_SCRIPTABLE NS_IMETHOD UseProgram(nsIWebGLProgram *program) { return _to UseProgram(program); } \
        2338                 :   NS_SCRIPTABLE NS_IMETHOD ValidateProgram(nsIWebGLProgram *program) { return _to ValidateProgram(program); } \
        2339                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1f(WebGLuint indx, WebGLfloat x) { return _to VertexAttrib1f(indx, x); } \
        2340                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2f(WebGLuint indx, WebGLfloat x, WebGLfloat y) { return _to VertexAttrib2f(indx, x, y); } \
        2341                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z) { return _to VertexAttrib3f(indx, x, y, z); } \
        2342                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) { return _to VertexAttrib4f(indx, x, y, z, w); } \
        2343                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1fv(PRInt32 dummy) { return _to VertexAttrib1fv(dummy); } \
        2344                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2fv(PRInt32 dummy) { return _to VertexAttrib2fv(dummy); } \
        2345                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3fv(PRInt32 dummy) { return _to VertexAttrib3fv(dummy); } \
        2346                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4fv(PRInt32 dummy) { return _to VertexAttrib4fv(dummy); } \
        2347                 :   NS_IMETHOD VertexAttrib1fv_array(WebGLuint indx, JSObject *values) { return _to VertexAttrib1fv_array(indx, values); } \
        2348                 :   NS_IMETHOD VertexAttrib2fv_array(WebGLuint indx, JSObject *values) { return _to VertexAttrib2fv_array(indx, values); } \
        2349                 :   NS_IMETHOD VertexAttrib3fv_array(WebGLuint indx, JSObject *values) { return _to VertexAttrib3fv_array(indx, values); } \
        2350                 :   NS_IMETHOD VertexAttrib4fv_array(WebGLuint indx, JSObject *values) { return _to VertexAttrib4fv_array(indx, values); } \
        2351                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttribPointer(WebGLuint idx, WebGLint size, WebGLenum type, WebGLboolean normalized, WebGLsizei stride, WebGLsizeiptr offset) { return _to VertexAttribPointer(idx, size, type, normalized, stride, offset); } \
        2352                 :   NS_SCRIPTABLE NS_IMETHOD Viewport(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return _to Viewport(x, y, width, height); } \
        2353                 :   NS_IMETHOD MozGetUnderlyingParamString(WebGLenum pname, nsAString & _retval NS_OUTPARAM) { return _to MozGetUnderlyingParamString(pname, _retval); } \
        2354                 :   NS_SCRIPTABLE NS_IMETHOD GetExtension(const nsAString & name, nsIWebGLExtension * *_retval NS_OUTPARAM) { return _to GetExtension(name, _retval); } \
        2355                 :   NS_SCRIPTABLE NS_IMETHOD GetSupportedExtensions(nsIVariant * *_retval NS_OUTPARAM) { return _to GetSupportedExtensions(_retval); } \
        2356                 :   NS_SCRIPTABLE NS_IMETHOD IsContextLost(WebGLboolean *_retval NS_OUTPARAM) { return _to IsContextLost(_retval); } \
        2357                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferWidth(WebGLsizei *aDrawingBufferWidth) { return _to GetDrawingBufferWidth(aDrawingBufferWidth); } \
        2358                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferHeight(WebGLsizei *aDrawingBufferHeight) { return _to GetDrawingBufferHeight(aDrawingBufferHeight); }
        2359                 :
        2360                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
        2361                 : #define NS_FORWARD_SAFE_NSIDOMWEBGLRENDERINGCONTEXT(_to) \
        2362                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCanvas(aCanvas); } \
        2363                 :   NS_SCRIPTABLE NS_IMETHOD GetContextAttributes(JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContextAttributes(_retval); } \
        2364                 :   NS_SCRIPTABLE NS_IMETHOD ActiveTexture(WebGLenum texture) { return !_to ? NS_ERROR_NULL_POINTER : _to->ActiveTexture(texture); } \
        2365                 :   NS_SCRIPTABLE NS_IMETHOD AttachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) { return !_to ? NS_ERROR_NULL_POINTER : _to->AttachShader(program, shader); } \
        2366                 :   NS_SCRIPTABLE NS_IMETHOD BindAttribLocation(nsIWebGLProgram *program, WebGLuint index, const nsAString & name) { return !_to ? NS_ERROR_NULL_POINTER : _to->BindAttribLocation(program, index, name); } \
        2367                 :   NS_SCRIPTABLE NS_IMETHOD BindBuffer(WebGLenum target, nsIWebGLBuffer *buffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->BindBuffer(target, buffer); } \
        2368                 :   NS_SCRIPTABLE NS_IMETHOD BindFramebuffer(WebGLenum target, nsIWebGLFramebuffer *framebuffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->BindFramebuffer(target, framebuffer); } \
        2369                 :   NS_SCRIPTABLE NS_IMETHOD BindRenderbuffer(WebGLenum target, nsIWebGLRenderbuffer *renderbuffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->BindRenderbuffer(target, renderbuffer); } \
        2370                 :   NS_SCRIPTABLE NS_IMETHOD BindTexture(WebGLenum target, nsIWebGLTexture *texture) { return !_to ? NS_ERROR_NULL_POINTER : _to->BindTexture(target, texture); } \
        2371                 :   NS_SCRIPTABLE NS_IMETHOD BlendColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->BlendColor(red, green, blue, alpha); } \
        2372                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquation(WebGLenum mode) { return !_to ? NS_ERROR_NULL_POINTER : _to->BlendEquation(mode); } \
        2373                 :   NS_SCRIPTABLE NS_IMETHOD BlendEquationSeparate(WebGLenum modeRGB, WebGLenum modeAlpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->BlendEquationSeparate(modeRGB, modeAlpha); } \
        2374                 :   NS_SCRIPTABLE NS_IMETHOD BlendFunc(WebGLenum sfactor, WebGLenum dfactor) { return !_to ? NS_ERROR_NULL_POINTER : _to->BlendFunc(sfactor, dfactor); } \
        2375                 :   NS_SCRIPTABLE NS_IMETHOD BlendFuncSeparate(WebGLenum srcRGB, WebGLenum dstRGB, WebGLenum srcAlpha, WebGLenum dstAlpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); } \
        2376                 :   NS_SCRIPTABLE NS_IMETHOD BufferData(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferData(dummy); } \
        2377                 :   NS_IMETHOD BufferData_size(WebGLenum target, WebGLsizei size, WebGLenum usage) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferData_size(target, size, usage); } \
        2378                 :   NS_IMETHOD BufferData_buf(WebGLenum target, JSObject *data, WebGLenum usage) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferData_buf(target, data, usage); } \
        2379                 :   NS_IMETHOD BufferData_array(WebGLenum target, JSObject *data, WebGLenum usage) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferData_array(target, data, usage); } \
        2380                 :   NS_IMETHOD BufferData_null(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferData_null(); } \
        2381                 :   NS_SCRIPTABLE NS_IMETHOD BufferSubData(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferSubData(dummy); } \
        2382                 :   NS_IMETHOD BufferSubData_buf(WebGLenum target, PRInt32 offset, JSObject *data) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferSubData_buf(target, offset, data); } \
        2383                 :   NS_IMETHOD BufferSubData_array(WebGLenum target, PRInt32 offset, JSObject *data) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferSubData_array(target, offset, data); } \
        2384                 :   NS_IMETHOD BufferSubData_null(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->BufferSubData_null(); } \
        2385                 :   NS_SCRIPTABLE NS_IMETHOD CheckFramebufferStatus(WebGLenum target, WebGLenum *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckFramebufferStatus(target, _retval); } \
        2386                 :   NS_SCRIPTABLE NS_IMETHOD Clear(WebGLbitfield mask) { return !_to ? NS_ERROR_NULL_POINTER : _to->Clear(mask); } \
        2387                 :   NS_SCRIPTABLE NS_IMETHOD ClearColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearColor(red, green, blue, alpha); } \
        2388                 :   NS_SCRIPTABLE NS_IMETHOD ClearDepth(WebGLclampf depth) { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearDepth(depth); } \
        2389                 :   NS_SCRIPTABLE NS_IMETHOD ClearStencil(WebGLint s) { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearStencil(s); } \
        2390                 :   NS_SCRIPTABLE NS_IMETHOD ColorMask(WebGLboolean red, WebGLboolean green, WebGLboolean blue, WebGLboolean alpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->ColorMask(red, green, blue, alpha); } \
        2391                 :   NS_SCRIPTABLE NS_IMETHOD CompileShader(nsIWebGLShader *shader) { return !_to ? NS_ERROR_NULL_POINTER : _to->CompileShader(shader); } \
        2392                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexImage2D(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->CompressedTexImage2D(dummy); } \
        2393                 :   NS_IMETHOD CompressedTexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->CompressedTexImage2D_array(target, level, internalformat, width, height, border, pixels); } \
        2394                 :   NS_SCRIPTABLE NS_IMETHOD CompressedTexSubImage2D(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->CompressedTexSubImage2D(dummy); } \
        2395                 :   NS_IMETHOD CompressedTexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->CompressedTexSubImage2D_array(target, level, xoffset, yoffset, width, height, format, pixels); } \
        2396                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexImage2D(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLint border) { return !_to ? NS_ERROR_NULL_POINTER : _to->CopyTexImage2D(target, level, internalformat, x, y, width, height, border); } \
        2397                 :   NS_SCRIPTABLE NS_IMETHOD CopyTexSubImage2D(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return !_to ? NS_ERROR_NULL_POINTER : _to->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); } \
        2398                 :   NS_SCRIPTABLE NS_IMETHOD CreateBuffer(nsIWebGLBuffer * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateBuffer(_retval); } \
        2399                 :   NS_SCRIPTABLE NS_IMETHOD CreateProgram(nsIWebGLProgram * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateProgram(_retval); } \
        2400                 :   NS_SCRIPTABLE NS_IMETHOD CreateFramebuffer(nsIWebGLFramebuffer * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateFramebuffer(_retval); } \
        2401                 :   NS_SCRIPTABLE NS_IMETHOD CreateRenderbuffer(nsIWebGLRenderbuffer * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateRenderbuffer(_retval); } \
        2402                 :   NS_SCRIPTABLE NS_IMETHOD CreateShader(WebGLenum type, nsIWebGLShader * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateShader(type, _retval); } \
        2403                 :   NS_SCRIPTABLE NS_IMETHOD CreateTexture(nsIWebGLTexture * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateTexture(_retval); } \
        2404                 :   NS_SCRIPTABLE NS_IMETHOD CullFace(WebGLenum mode) { return !_to ? NS_ERROR_NULL_POINTER : _to->CullFace(mode); } \
        2405                 :   NS_SCRIPTABLE NS_IMETHOD DeleteBuffer(nsIWebGLBuffer *buffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteBuffer(buffer); } \
        2406                 :   NS_SCRIPTABLE NS_IMETHOD DeleteProgram(nsIWebGLProgram *program) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteProgram(program); } \
        2407                 :   NS_SCRIPTABLE NS_IMETHOD DeleteFramebuffer(nsIWebGLFramebuffer *framebuffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteFramebuffer(framebuffer); } \
        2408                 :   NS_SCRIPTABLE NS_IMETHOD DeleteRenderbuffer(nsIWebGLRenderbuffer *renderbuffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteRenderbuffer(renderbuffer); } \
        2409                 :   NS_SCRIPTABLE NS_IMETHOD DeleteShader(nsIWebGLShader *shader) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteShader(shader); } \
        2410                 :   NS_SCRIPTABLE NS_IMETHOD DeleteTexture(nsIWebGLTexture *texture) { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteTexture(texture); } \
        2411                 :   NS_SCRIPTABLE NS_IMETHOD DepthFunc(WebGLenum func) { return !_to ? NS_ERROR_NULL_POINTER : _to->DepthFunc(func); } \
        2412                 :   NS_SCRIPTABLE NS_IMETHOD DepthMask(WebGLboolean flag) { return !_to ? NS_ERROR_NULL_POINTER : _to->DepthMask(flag); } \
        2413                 :   NS_SCRIPTABLE NS_IMETHOD DepthRange(WebGLclampf zNear, WebGLclampf zFar) { return !_to ? NS_ERROR_NULL_POINTER : _to->DepthRange(zNear, zFar); } \
        2414                 :   NS_SCRIPTABLE NS_IMETHOD DetachShader(nsIWebGLProgram *program, nsIWebGLShader *shader) { return !_to ? NS_ERROR_NULL_POINTER : _to->DetachShader(program, shader); } \
        2415                 :   NS_SCRIPTABLE NS_IMETHOD Disable(WebGLenum cap) { return !_to ? NS_ERROR_NULL_POINTER : _to->Disable(cap); } \
        2416                 :   NS_SCRIPTABLE NS_IMETHOD DisableVertexAttribArray(WebGLuint index) { return !_to ? NS_ERROR_NULL_POINTER : _to->DisableVertexAttribArray(index); } \
        2417                 :   NS_SCRIPTABLE NS_IMETHOD DrawArrays(WebGLenum mode, WebGLint first, WebGLsizei count) { return !_to ? NS_ERROR_NULL_POINTER : _to->DrawArrays(mode, first, count); } \
        2418                 :   NS_SCRIPTABLE NS_IMETHOD DrawElements(WebGLenum mode, WebGLsizei count, WebGLenum type, WebGLint offset) { return !_to ? NS_ERROR_NULL_POINTER : _to->DrawElements(mode, count, type, offset); } \
        2419                 :   NS_SCRIPTABLE NS_IMETHOD Enable(WebGLenum cap) { return !_to ? NS_ERROR_NULL_POINTER : _to->Enable(cap); } \
        2420                 :   NS_SCRIPTABLE NS_IMETHOD EnableVertexAttribArray(WebGLuint index) { return !_to ? NS_ERROR_NULL_POINTER : _to->EnableVertexAttribArray(index); } \
        2421                 :   NS_SCRIPTABLE NS_IMETHOD Finish(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Finish(); } \
        2422                 :   NS_SCRIPTABLE NS_IMETHOD Flush(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Flush(); } \
        2423                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferRenderbuffer(WebGLenum target, WebGLenum attachment, WebGLenum renderbuffertarget, nsIWebGLRenderbuffer *renderbuffer) { return !_to ? NS_ERROR_NULL_POINTER : _to->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer); } \
        2424                 :   NS_SCRIPTABLE NS_IMETHOD FramebufferTexture2D(WebGLenum target, WebGLenum attachment, WebGLenum textarget, nsIWebGLTexture *texture, WebGLint level) { return !_to ? NS_ERROR_NULL_POINTER : _to->FramebufferTexture2D(target, attachment, textarget, texture, level); } \
        2425                 :   NS_SCRIPTABLE NS_IMETHOD FrontFace(WebGLenum mode) { return !_to ? NS_ERROR_NULL_POINTER : _to->FrontFace(mode); } \
        2426                 :   NS_SCRIPTABLE NS_IMETHOD GenerateMipmap(WebGLenum target) { return !_to ? NS_ERROR_NULL_POINTER : _to->GenerateMipmap(target); } \
        2427                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveAttrib(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetActiveAttrib(program, index, _retval); } \
        2428                 :   NS_SCRIPTABLE NS_IMETHOD GetActiveUniform(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetActiveUniform(program, index, _retval); } \
        2429                 :   NS_SCRIPTABLE NS_IMETHOD GetAttachedShaders(nsIWebGLProgram *program, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachedShaders(program, _retval); } \
        2430                 :   NS_SCRIPTABLE NS_IMETHOD GetAttribLocation(nsIWebGLProgram *program, const nsAString & name, WebGLint *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttribLocation(program, name, _retval); } \
        2431                 :   NS_SCRIPTABLE NS_IMETHOD GetParameter(WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetParameter(pname, _retval); } \
        2432                 :   NS_SCRIPTABLE NS_IMETHOD GetBufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBufferParameter(target, pname, _retval); } \
        2433                 :   NS_SCRIPTABLE NS_IMETHOD GetError(WebGLenum *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetError(_retval); } \
        2434                 :   NS_SCRIPTABLE NS_IMETHOD GetFramebufferAttachmentParameter(WebGLenum target, WebGLenum attachment, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFramebufferAttachmentParameter(target, attachment, pname, _retval); } \
        2435                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramParameter(nsIWebGLProgram *program, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProgramParameter(program, pname, _retval); } \
        2436                 :   NS_SCRIPTABLE NS_IMETHOD GetProgramInfoLog(nsIWebGLProgram *program, nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProgramInfoLog(program, _retval); } \
        2437                 :   NS_SCRIPTABLE NS_IMETHOD GetRenderbufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRenderbufferParameter(target, pname, _retval); } \
        2438                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderParameter(nsIWebGLShader *shader, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShaderParameter(shader, pname, _retval); } \
        2439                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderInfoLog(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShaderInfoLog(shader, _retval); } \
        2440                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderPrecisionFormat(WebGLenum shadertype, WebGLenum precisiontype, nsIWebGLShaderPrecisionFormat * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShaderPrecisionFormat(shadertype, precisiontype, _retval); } \
        2441                 :   NS_SCRIPTABLE NS_IMETHOD GetShaderSource(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShaderSource(shader, _retval); } \
        2442                 :   NS_SCRIPTABLE NS_IMETHOD GetTexParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTexParameter(target, pname, _retval); } \
        2443                 :   NS_SCRIPTABLE NS_IMETHOD GetUniform(nsIWebGLProgram *program, nsIWebGLUniformLocation *location, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUniform(program, location, _retval); } \
        2444                 :   NS_SCRIPTABLE NS_IMETHOD GetUniformLocation(nsIWebGLProgram *program, const nsAString & name, nsIWebGLUniformLocation * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUniformLocation(program, name, _retval); } \
        2445                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttrib(WebGLuint index, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetVertexAttrib(index, pname, _retval); } \
        2446                 :   NS_SCRIPTABLE NS_IMETHOD GetVertexAttribOffset(WebGLuint index, WebGLenum pname, WebGLuint *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetVertexAttribOffset(index, pname, _retval); } \
        2447                 :   NS_SCRIPTABLE NS_IMETHOD Hint(WebGLenum target, WebGLenum mode) { return !_to ? NS_ERROR_NULL_POINTER : _to->Hint(target, mode); } \
        2448                 :   NS_SCRIPTABLE NS_IMETHOD IsBuffer(nsIWebGLBuffer *buffer, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsBuffer(buffer, _retval); } \
        2449                 :   NS_SCRIPTABLE NS_IMETHOD IsFramebuffer(nsIWebGLFramebuffer *framebuffer, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsFramebuffer(framebuffer, _retval); } \
        2450                 :   NS_SCRIPTABLE NS_IMETHOD IsProgram(nsIWebGLProgram *program, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsProgram(program, _retval); } \
        2451                 :   NS_SCRIPTABLE NS_IMETHOD IsRenderbuffer(nsIWebGLRenderbuffer *renderbuffer, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsRenderbuffer(renderbuffer, _retval); } \
        2452                 :   NS_SCRIPTABLE NS_IMETHOD IsShader(nsIWebGLShader *shader, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsShader(shader, _retval); } \
        2453                 :   NS_SCRIPTABLE NS_IMETHOD IsTexture(nsIWebGLTexture *texture, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsTexture(texture, _retval); } \
        2454                 :   NS_SCRIPTABLE NS_IMETHOD IsEnabled(WebGLenum cap, WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsEnabled(cap, _retval); } \
        2455                 :   NS_SCRIPTABLE NS_IMETHOD LineWidth(WebGLfloat width) { return !_to ? NS_ERROR_NULL_POINTER : _to->LineWidth(width); } \
        2456                 :   NS_SCRIPTABLE NS_IMETHOD LinkProgram(nsIWebGLProgram *program) { return !_to ? NS_ERROR_NULL_POINTER : _to->LinkProgram(program); } \
        2457                 :   NS_SCRIPTABLE NS_IMETHOD PixelStorei(WebGLenum pname, WebGLint param) { return !_to ? NS_ERROR_NULL_POINTER : _to->PixelStorei(pname, param); } \
        2458                 :   NS_SCRIPTABLE NS_IMETHOD PolygonOffset(WebGLfloat factor, WebGLfloat units) { return !_to ? NS_ERROR_NULL_POINTER : _to->PolygonOffset(factor, units); } \
        2459                 :   NS_SCRIPTABLE NS_IMETHOD ReadPixels(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->ReadPixels(dummy); } \
        2460                 :   NS_IMETHOD ReadPixels_array(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->ReadPixels_array(x, y, width, height, format, type, pixels); } \
        2461                 :   NS_SCRIPTABLE NS_IMETHOD RenderbufferStorage(WebGLenum target, WebGLenum internalformat, WebGLsizei width, WebGLsizei height) { return !_to ? NS_ERROR_NULL_POINTER : _to->RenderbufferStorage(target, internalformat, width, height); } \
        2462                 :   NS_SCRIPTABLE NS_IMETHOD SampleCoverage(WebGLclampf value, WebGLboolean invert) { return !_to ? NS_ERROR_NULL_POINTER : _to->SampleCoverage(value, invert); } \
        2463                 :   NS_SCRIPTABLE NS_IMETHOD Scissor(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return !_to ? NS_ERROR_NULL_POINTER : _to->Scissor(x, y, width, height); } \
        2464                 :   NS_SCRIPTABLE NS_IMETHOD ShaderSource(nsIWebGLShader *shader, const nsAString & source) { return !_to ? NS_ERROR_NULL_POINTER : _to->ShaderSource(shader, source); } \
        2465                 :   NS_SCRIPTABLE NS_IMETHOD StencilFunc(WebGLenum func, WebGLint ref, WebGLuint mask) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilFunc(func, ref, mask); } \
        2466                 :   NS_SCRIPTABLE NS_IMETHOD StencilFuncSeparate(WebGLenum face, WebGLenum func, WebGLint ref, WebGLuint mask) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilFuncSeparate(face, func, ref, mask); } \
        2467                 :   NS_SCRIPTABLE NS_IMETHOD StencilMask(WebGLuint mask) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilMask(mask); } \
        2468                 :   NS_SCRIPTABLE NS_IMETHOD StencilMaskSeparate(WebGLenum face, WebGLuint mask) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilMaskSeparate(face, mask); } \
        2469                 :   NS_SCRIPTABLE NS_IMETHOD StencilOp(WebGLenum fail, WebGLenum zfail, WebGLenum zpass) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilOp(fail, zfail, zpass); } \
        2470                 :   NS_SCRIPTABLE NS_IMETHOD StencilOpSeparate(WebGLenum face, WebGLenum fail, WebGLenum zfail, WebGLenum zpass) { return !_to ? NS_ERROR_NULL_POINTER : _to->StencilOpSeparate(face, fail, zfail, zpass); } \
        2471                 :   NS_SCRIPTABLE NS_IMETHOD TexImage2D(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexImage2D(dummy); } \
        2472                 :   NS_IMETHOD TexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexImage2D_array(target, level, internalformat, width, height, border, format, type, pixels); } \
        2473                 :   NS_IMETHOD TexImage2D_imageData(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexImage2D_imageData(target, level, internalformat, width, height, border, format, type, pixels); } \
        2474                 :   NS_IMETHOD TexImage2D_dom(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexImage2D_dom(target, level, internalformat, format, type, element); } \
        2475                 :   NS_SCRIPTABLE NS_IMETHOD TexSubImage2D(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexSubImage2D(dummy); } \
        2476                 :   NS_IMETHOD TexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexSubImage2D_array(target, level, xoffset, yoffset, width, height, format, type, pixels); } \
        2477                 :   NS_IMETHOD TexSubImage2D_imageData(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexSubImage2D_imageData(target, level, xoffset, yoffset, width, height, format, type, pixels); } \
        2478                 :   NS_IMETHOD TexSubImage2D_dom(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLenum format, WebGLenum type, mozilla::dom::Element *element) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexSubImage2D_dom(target, level, xoffset, yoffset, format, type, element); } \
        2479                 :   NS_SCRIPTABLE NS_IMETHOD TexParameterf(WebGLenum target, WebGLenum pname, WebGLfloat param) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexParameterf(target, pname, param); } \
        2480                 :   NS_SCRIPTABLE NS_IMETHOD TexParameteri(WebGLenum target, WebGLenum pname, WebGLint param) { return !_to ? NS_ERROR_NULL_POINTER : _to->TexParameteri(target, pname, param); } \
        2481                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1f(nsIWebGLUniformLocation *location, WebGLfloat x) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1f(location, x); } \
        2482                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1i(nsIWebGLUniformLocation *location, WebGLint x) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1i(location, x); } \
        2483                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2f(location, x, y); } \
        2484                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2i(location, x, y); } \
        2485                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3f(location, x, y, z); } \
        2486                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3i(location, x, y, z); } \
        2487                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4f(location, x, y, z, w); } \
        2488                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z, WebGLint w) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4i(location, x, y, z, w); } \
        2489                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1fv(dummy); } \
        2490                 :   NS_SCRIPTABLE NS_IMETHOD Uniform1iv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1iv(dummy); } \
        2491                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2fv(dummy); } \
        2492                 :   NS_SCRIPTABLE NS_IMETHOD Uniform2iv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2iv(dummy); } \
        2493                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3fv(dummy); } \
        2494                 :   NS_SCRIPTABLE NS_IMETHOD Uniform3iv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3iv(dummy); } \
        2495                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4fv(dummy); } \
        2496                 :   NS_SCRIPTABLE NS_IMETHOD Uniform4iv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4iv(dummy); } \
        2497                 :   NS_IMETHOD Uniform1fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1fv_array(location, v); } \
        2498                 :   NS_IMETHOD Uniform1iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform1iv_array(location, v); } \
        2499                 :   NS_IMETHOD Uniform2fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2fv_array(location, v); } \
        2500                 :   NS_IMETHOD Uniform2iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform2iv_array(location, v); } \
        2501                 :   NS_IMETHOD Uniform3fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3fv_array(location, v); } \
        2502                 :   NS_IMETHOD Uniform3iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform3iv_array(location, v); } \
        2503                 :   NS_IMETHOD Uniform4fv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4fv_array(location, v); } \
        2504                 :   NS_IMETHOD Uniform4iv_array(nsIWebGLUniformLocation *location, JSObject *v) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uniform4iv_array(location, v); } \
        2505                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix2fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix2fv(dummy); } \
        2506                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix3fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix3fv(dummy); } \
        2507                 :   NS_SCRIPTABLE NS_IMETHOD UniformMatrix4fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix4fv(dummy); } \
        2508                 :   NS_IMETHOD UniformMatrix2fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix2fv_array(location, transpose, value); } \
        2509                 :   NS_IMETHOD UniformMatrix3fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix3fv_array(location, transpose, value); } \
        2510                 :   NS_IMETHOD UniformMatrix4fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value) { return !_to ? NS_ERROR_NULL_POINTER : _to->UniformMatrix4fv_array(location, transpose, value); } \
        2511                 :   NS_SCRIPTABLE NS_IMETHOD UseProgram(nsIWebGLProgram *program) { return !_to ? NS_ERROR_NULL_POINTER : _to->UseProgram(program); } \
        2512                 :   NS_SCRIPTABLE NS_IMETHOD ValidateProgram(nsIWebGLProgram *program) { return !_to ? NS_ERROR_NULL_POINTER : _to->ValidateProgram(program); } \
        2513                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1f(WebGLuint indx, WebGLfloat x) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib1f(indx, x); } \
        2514                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2f(WebGLuint indx, WebGLfloat x, WebGLfloat y) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib2f(indx, x, y); } \
        2515                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib3f(indx, x, y, z); } \
        2516                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib4f(indx, x, y, z, w); } \
        2517                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib1fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib1fv(dummy); } \
        2518                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib2fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib2fv(dummy); } \
        2519                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib3fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib3fv(dummy); } \
        2520                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttrib4fv(PRInt32 dummy) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib4fv(dummy); } \
        2521                 :   NS_IMETHOD VertexAttrib1fv_array(WebGLuint indx, JSObject *values) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib1fv_array(indx, values); } \
        2522                 :   NS_IMETHOD VertexAttrib2fv_array(WebGLuint indx, JSObject *values) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib2fv_array(indx, values); } \
        2523                 :   NS_IMETHOD VertexAttrib3fv_array(WebGLuint indx, JSObject *values) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib3fv_array(indx, values); } \
        2524                 :   NS_IMETHOD VertexAttrib4fv_array(WebGLuint indx, JSObject *values) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttrib4fv_array(indx, values); } \
        2525                 :   NS_SCRIPTABLE NS_IMETHOD VertexAttribPointer(WebGLuint idx, WebGLint size, WebGLenum type, WebGLboolean normalized, WebGLsizei stride, WebGLsizeiptr offset) { return !_to ? NS_ERROR_NULL_POINTER : _to->VertexAttribPointer(idx, size, type, normalized, stride, offset); } \
        2526                 :   NS_SCRIPTABLE NS_IMETHOD Viewport(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height) { return !_to ? NS_ERROR_NULL_POINTER : _to->Viewport(x, y, width, height); } \
        2527                 :   NS_IMETHOD MozGetUnderlyingParamString(WebGLenum pname, nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MozGetUnderlyingParamString(pname, _retval); } \
        2528                 :   NS_SCRIPTABLE NS_IMETHOD GetExtension(const nsAString & name, nsIWebGLExtension * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetExtension(name, _retval); } \
        2529                 :   NS_SCRIPTABLE NS_IMETHOD GetSupportedExtensions(nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSupportedExtensions(_retval); } \
        2530                 :   NS_SCRIPTABLE NS_IMETHOD IsContextLost(WebGLboolean *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsContextLost(_retval); } \
        2531                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferWidth(WebGLsizei *aDrawingBufferWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDrawingBufferWidth(aDrawingBufferWidth); } \
        2532                 :   NS_SCRIPTABLE NS_IMETHOD GetDrawingBufferHeight(WebGLsizei *aDrawingBufferHeight) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDrawingBufferHeight(aDrawingBufferHeight); }
        2533                 :
        2534                 : #if 0
        2535                 : /* Use the code below as a template for the implementation class for this interface. */
        2536                 :
        2537                 : /* Header file */
        2538                 : class nsDOMWebGLRenderingContext : public nsIDOMWebGLRenderingContext
        2539                 : {
        2540                 : public:
        2541                 :   NS_DECL_ISUPPORTS
        2542                 :   NS_DECL_NSIDOMWEBGLRENDERINGCONTEXT
        2543                 :
        2544                 :   nsDOMWebGLRenderingContext();
        2545                 :
        2546                 : private:
        2547                 :   ~nsDOMWebGLRenderingContext();
        2548                 :
        2549                 : protected:
        2550                 :   /* additional members */
        2551                 : };
        2552                 :
        2553                 : /* Implementation file */
        2554                 : NS_IMPL_ISUPPORTS1(nsDOMWebGLRenderingContext, nsIDOMWebGLRenderingContext)
        2555                 :
        2556                 : nsDOMWebGLRenderingContext::nsDOMWebGLRenderingContext()
        2557                 : {
        2558                 :   /* member initializers and constructor code */
        2559                 : }
        2560                 :
        2561                 : nsDOMWebGLRenderingContext::~nsDOMWebGLRenderingContext()
        2562                 : {
        2563                 :   /* destructor code */
        2564                 : }
        2565                 :
        2566                 : /* readonly attribute nsIDOMHTMLCanvasElement canvas; */
        2567                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas)
        2568                 : {
        2569                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2570                 : }
        2571                 :
        2572                 : /* jsval getContextAttributes (); */
        2573                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetContextAttributes(JS::Value *_retval NS_OUTPARAM)
        2574                 : {
        2575                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2576                 : }
        2577                 :
        2578                 : /* void activeTexture (in WebGLenum texture); */
        2579                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ActiveTexture(WebGLenum texture)
        2580                 : {
        2581                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2582                 : }
        2583                 :
        2584                 : /* void attachShader ([optional] in nsIWebGLProgram program, [optional] in nsIWebGLShader shader); */
        2585                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::AttachShader(nsIWebGLProgram *program, nsIWebGLShader *shader)
        2586                 : {
        2587                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2588                 : }
        2589                 :
        2590                 : /* void bindAttribLocation (in nsIWebGLProgram program, in WebGLuint index, in DOMString name); */
        2591                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BindAttribLocation(nsIWebGLProgram *program, WebGLuint index, const nsAString & name)
        2592                 : {
        2593                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2594                 : }
        2595                 :
        2596                 : /* void bindBuffer (in WebGLenum target, in nsIWebGLBuffer buffer); */
        2597                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BindBuffer(WebGLenum target, nsIWebGLBuffer *buffer)
        2598                 : {
        2599                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2600                 : }
        2601                 :
        2602                 : /* void bindFramebuffer (in WebGLenum target, in nsIWebGLFramebuffer framebuffer); */
        2603                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BindFramebuffer(WebGLenum target, nsIWebGLFramebuffer *framebuffer)
        2604                 : {
        2605                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2606                 : }
        2607                 :
        2608                 : /* void bindRenderbuffer (in WebGLenum target, in nsIWebGLRenderbuffer renderbuffer); */
        2609                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BindRenderbuffer(WebGLenum target, nsIWebGLRenderbuffer *renderbuffer)
        2610                 : {
        2611                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2612                 : }
        2613                 :
        2614                 : /* void bindTexture (in WebGLenum target, in nsIWebGLTexture texture); */
        2615                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BindTexture(WebGLenum target, nsIWebGLTexture *texture)
        2616                 : {
        2617                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2618                 : }
        2619                 :
        2620                 : /* void blendColor (in WebGLclampf red, in WebGLclampf green, in WebGLclampf blue, in WebGLclampf alpha); */
        2621                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BlendColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha)
        2622                 : {
        2623                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2624                 : }
        2625                 :
        2626                 : /* void blendEquation (in WebGLenum mode); */
        2627                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BlendEquation(WebGLenum mode)
        2628                 : {
        2629                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2630                 : }
        2631                 :
        2632                 : /* void blendEquationSeparate (in WebGLenum modeRGB, in WebGLenum modeAlpha); */
        2633                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BlendEquationSeparate(WebGLenum modeRGB, WebGLenum modeAlpha)
        2634                 : {
        2635                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2636                 : }
        2637                 :
        2638                 : /* void blendFunc (in WebGLenum sfactor, in WebGLenum dfactor); */
        2639                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BlendFunc(WebGLenum sfactor, WebGLenum dfactor)
        2640                 : {
        2641                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2642                 : }
        2643                 :
        2644                 : /* void blendFuncSeparate (in WebGLenum srcRGB, in WebGLenum dstRGB, in WebGLenum srcAlpha, in WebGLenum dstAlpha); */
        2645                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BlendFuncSeparate(WebGLenum srcRGB, WebGLenum dstRGB, WebGLenum srcAlpha, WebGLenum dstAlpha)
        2646                 : {
        2647                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2648                 : }
        2649                 :
        2650                 : /* void bufferData ([optional] in long dummy); */
        2651                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferData(PRInt32 dummy)
        2652                 : {
        2653                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2654                 : }
        2655                 :
        2656                 : /* [noscript] void bufferData_size (in WebGLenum target, in WebGLsizei size, in WebGLenum usage); */
        2657                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferData_size(WebGLenum target, WebGLsizei size, WebGLenum usage)
        2658                 : {
        2659                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2660                 : }
        2661                 :
        2662                 : /* [noscript] void bufferData_buf (in WebGLenum target, in WebGLJSObjectPtr data, in WebGLenum usage); */
        2663                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferData_buf(WebGLenum target, JSObject *data, WebGLenum usage)
        2664                 : {
        2665                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2666                 : }
        2667                 :
        2668                 : /* [noscript] void bufferData_array (in WebGLenum target, in WebGLJSObjectPtr data, in WebGLenum usage); */
        2669                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferData_array(WebGLenum target, JSObject *data, WebGLenum usage)
        2670                 : {
        2671                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2672                 : }
        2673                 :
        2674                 : /* [noscript] void bufferData_null (); */
        2675                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferData_null()
        2676                 : {
        2677                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2678                 : }
        2679                 :
        2680                 : /* void bufferSubData ([optional] in long dummy); */
        2681                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferSubData(PRInt32 dummy)
        2682                 : {
        2683                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2684                 : }
        2685                 :
        2686                 : /* [noscript] void bufferSubData_buf (in WebGLenum target, in long offset, in WebGLJSObjectPtr data); */
        2687                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferSubData_buf(WebGLenum target, PRInt32 offset, JSObject *data)
        2688                 : {
        2689                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2690                 : }
        2691                 :
        2692                 : /* [noscript] void bufferSubData_array (in WebGLenum target, in long offset, in WebGLJSObjectPtr data); */
        2693                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferSubData_array(WebGLenum target, PRInt32 offset, JSObject *data)
        2694                 : {
        2695                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2696                 : }
        2697                 :
        2698                 : /* [noscript] void bufferSubData_null (); */
        2699                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::BufferSubData_null()
        2700                 : {
        2701                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2702                 : }
        2703                 :
        2704                 : /* WebGLenum checkFramebufferStatus (in WebGLenum target); */
        2705                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CheckFramebufferStatus(WebGLenum target, WebGLenum *_retval NS_OUTPARAM)
        2706                 : {
        2707                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2708                 : }
        2709                 :
        2710                 : /* void clear (in WebGLbitfield mask); */
        2711                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Clear(WebGLbitfield mask)
        2712                 : {
        2713                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2714                 : }
        2715                 :
        2716                 : /* void clearColor (in WebGLclampf red, in WebGLclampf green, in WebGLclampf blue, in WebGLclampf alpha); */
        2717                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ClearColor(WebGLclampf red, WebGLclampf green, WebGLclampf blue, WebGLclampf alpha)
        2718                 : {
        2719                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2720                 : }
        2721                 :
        2722                 : /* void clearDepth (in WebGLclampf depth); */
        2723                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ClearDepth(WebGLclampf depth)
        2724                 : {
        2725                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2726                 : }
        2727                 :
        2728                 : /* void clearStencil (in WebGLint s); */
        2729                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ClearStencil(WebGLint s)
        2730                 : {
        2731                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2732                 : }
        2733                 :
        2734                 : /* void colorMask (in WebGLboolean red, in WebGLboolean green, in WebGLboolean blue, in WebGLboolean alpha); */
        2735                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ColorMask(WebGLboolean red, WebGLboolean green, WebGLboolean blue, WebGLboolean alpha)
        2736                 : {
        2737                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2738                 : }
        2739                 :
        2740                 : /* void compileShader ([optional] in nsIWebGLShader shader); */
        2741                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CompileShader(nsIWebGLShader *shader)
        2742                 : {
        2743                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2744                 : }
        2745                 :
        2746                 : /* void compressedTexImage2D ([optional] in long dummy); */
        2747                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CompressedTexImage2D(PRInt32 dummy)
        2748                 : {
        2749                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2750                 : }
        2751                 :
        2752                 : /* [noscript] void compressedTexImage2D_array (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLJSObjectPtr pixels); */
        2753                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CompressedTexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, JSObject *pixels)
        2754                 : {
        2755                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2756                 : }
        2757                 :
        2758                 : /* void compressedTexSubImage2D ([optional] in long dummy); */
        2759                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CompressedTexSubImage2D(PRInt32 dummy)
        2760                 : {
        2761                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2762                 : }
        2763                 :
        2764                 : /* [noscript] void compressedTexSubImage2D_array (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLJSObjectPtr pixels); */
        2765                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CompressedTexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, JSObject *pixels)
        2766                 : {
        2767                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2768                 : }
        2769                 :
        2770                 : /* void copyTexImage2D (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height, in WebGLint border); */
        2771                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CopyTexImage2D(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLint border)
        2772                 : {
        2773                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2774                 : }
        2775                 :
        2776                 : /* void copyTexSubImage2D (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        2777                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CopyTexSubImage2D(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height)
        2778                 : {
        2779                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2780                 : }
        2781                 :
        2782                 : /* nsIWebGLBuffer createBuffer (); */
        2783                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateBuffer(nsIWebGLBuffer * *_retval NS_OUTPARAM)
        2784                 : {
        2785                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2786                 : }
        2787                 :
        2788                 : /* nsIWebGLProgram createProgram (); */
        2789                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateProgram(nsIWebGLProgram * *_retval NS_OUTPARAM)
        2790                 : {
        2791                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2792                 : }
        2793                 :
        2794                 : /* nsIWebGLFramebuffer createFramebuffer (); */
        2795                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateFramebuffer(nsIWebGLFramebuffer * *_retval NS_OUTPARAM)
        2796                 : {
        2797                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2798                 : }
        2799                 :
        2800                 : /* nsIWebGLRenderbuffer createRenderbuffer (); */
        2801                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateRenderbuffer(nsIWebGLRenderbuffer * *_retval NS_OUTPARAM)
        2802                 : {
        2803                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2804                 : }
        2805                 :
        2806                 : /* nsIWebGLShader createShader (in WebGLenum type); */
        2807                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateShader(WebGLenum type, nsIWebGLShader * *_retval NS_OUTPARAM)
        2808                 : {
        2809                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2810                 : }
        2811                 :
        2812                 : /* nsIWebGLTexture createTexture (); */
        2813                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CreateTexture(nsIWebGLTexture * *_retval NS_OUTPARAM)
        2814                 : {
        2815                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2816                 : }
        2817                 :
        2818                 : /* void cullFace (in WebGLenum mode); */
        2819                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::CullFace(WebGLenum mode)
        2820                 : {
        2821                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2822                 : }
        2823                 :
        2824                 : /* void deleteBuffer (in nsIWebGLBuffer buffer); */
        2825                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteBuffer(nsIWebGLBuffer *buffer)
        2826                 : {
        2827                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2828                 : }
        2829                 :
        2830                 : /* void deleteProgram (in nsIWebGLProgram program); */
        2831                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteProgram(nsIWebGLProgram *program)
        2832                 : {
        2833                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2834                 : }
        2835                 :
        2836                 : /* void deleteFramebuffer (in nsIWebGLFramebuffer framebuffer); */
        2837                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteFramebuffer(nsIWebGLFramebuffer *framebuffer)
        2838                 : {
        2839                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2840                 : }
        2841                 :
        2842                 : /* void deleteRenderbuffer (in nsIWebGLRenderbuffer renderbuffer); */
        2843                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteRenderbuffer(nsIWebGLRenderbuffer *renderbuffer)
        2844                 : {
        2845                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2846                 : }
        2847                 :
        2848                 : /* void deleteShader (in nsIWebGLShader shader); */
        2849                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteShader(nsIWebGLShader *shader)
        2850                 : {
        2851                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2852                 : }
        2853                 :
        2854                 : /* void deleteTexture (in nsIWebGLTexture texture); */
        2855                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DeleteTexture(nsIWebGLTexture *texture)
        2856                 : {
        2857                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2858                 : }
        2859                 :
        2860                 : /* void depthFunc (in WebGLenum func); */
        2861                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DepthFunc(WebGLenum func)
        2862                 : {
        2863                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2864                 : }
        2865                 :
        2866                 : /* void depthMask (in WebGLboolean flag); */
        2867                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DepthMask(WebGLboolean flag)
        2868                 : {
        2869                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2870                 : }
        2871                 :
        2872                 : /* void depthRange (in WebGLclampf zNear, in WebGLclampf zFar); */
        2873                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DepthRange(WebGLclampf zNear, WebGLclampf zFar)
        2874                 : {
        2875                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2876                 : }
        2877                 :
        2878                 : /* void detachShader (in nsIWebGLProgram program, in nsIWebGLShader shader); */
        2879                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DetachShader(nsIWebGLProgram *program, nsIWebGLShader *shader)
        2880                 : {
        2881                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2882                 : }
        2883                 :
        2884                 : /* void disable (in WebGLenum cap); */
        2885                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Disable(WebGLenum cap)
        2886                 : {
        2887                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2888                 : }
        2889                 :
        2890                 : /* void disableVertexAttribArray (in WebGLuint index); */
        2891                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DisableVertexAttribArray(WebGLuint index)
        2892                 : {
        2893                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2894                 : }
        2895                 :
        2896                 : /* void drawArrays (in WebGLenum mode, in WebGLint first, in WebGLsizei count); */
        2897                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DrawArrays(WebGLenum mode, WebGLint first, WebGLsizei count)
        2898                 : {
        2899                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2900                 : }
        2901                 :
        2902                 : /* void drawElements (in WebGLenum mode, in WebGLsizei count, in WebGLenum type, in WebGLint offset); */
        2903                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::DrawElements(WebGLenum mode, WebGLsizei count, WebGLenum type, WebGLint offset)
        2904                 : {
        2905                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2906                 : }
        2907                 :
        2908                 : /* void enable (in WebGLenum cap); */
        2909                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Enable(WebGLenum cap)
        2910                 : {
        2911                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2912                 : }
        2913                 :
        2914                 : /* void enableVertexAttribArray (in WebGLuint index); */
        2915                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::EnableVertexAttribArray(WebGLuint index)
        2916                 : {
        2917                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2918                 : }
        2919                 :
        2920                 : /* void finish (); */
        2921                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Finish()
        2922                 : {
        2923                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2924                 : }
        2925                 :
        2926                 : /* void flush (); */
        2927                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Flush()
        2928                 : {
        2929                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2930                 : }
        2931                 :
        2932                 : /* void framebufferRenderbuffer (in WebGLenum target, in WebGLenum attachment, in WebGLenum renderbuffertarget, in nsIWebGLRenderbuffer renderbuffer); */
        2933                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::FramebufferRenderbuffer(WebGLenum target, WebGLenum attachment, WebGLenum renderbuffertarget, nsIWebGLRenderbuffer *renderbuffer)
        2934                 : {
        2935                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2936                 : }
        2937                 :
        2938                 : /* void framebufferTexture2D (in WebGLenum target, in WebGLenum attachment, in WebGLenum textarget, in nsIWebGLTexture texture, in WebGLint level); */
        2939                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::FramebufferTexture2D(WebGLenum target, WebGLenum attachment, WebGLenum textarget, nsIWebGLTexture *texture, WebGLint level)
        2940                 : {
        2941                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2942                 : }
        2943                 :
        2944                 : /* void frontFace (in WebGLenum mode); */
        2945                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::FrontFace(WebGLenum mode)
        2946                 : {
        2947                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2948                 : }
        2949                 :
        2950                 : /* void generateMipmap (in WebGLenum target); */
        2951                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GenerateMipmap(WebGLenum target)
        2952                 : {
        2953                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2954                 : }
        2955                 :
        2956                 : /* nsIWebGLActiveInfo getActiveAttrib (in nsIWebGLProgram program, in PRUint32 index); */
        2957                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetActiveAttrib(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM)
        2958                 : {
        2959                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2960                 : }
        2961                 :
        2962                 : /* nsIWebGLActiveInfo getActiveUniform (in nsIWebGLProgram program, in PRUint32 index); */
        2963                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetActiveUniform(nsIWebGLProgram *program, PRUint32 index, nsIWebGLActiveInfo * *_retval NS_OUTPARAM)
        2964                 : {
        2965                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2966                 : }
        2967                 :
        2968                 : /* nsIVariant getAttachedShaders (in nsIWebGLProgram program); */
        2969                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetAttachedShaders(nsIWebGLProgram *program, nsIVariant * *_retval NS_OUTPARAM)
        2970                 : {
        2971                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2972                 : }
        2973                 :
        2974                 : /* WebGLint getAttribLocation (in nsIWebGLProgram program, in DOMString name); */
        2975                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetAttribLocation(nsIWebGLProgram *program, const nsAString & name, WebGLint *_retval NS_OUTPARAM)
        2976                 : {
        2977                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2978                 : }
        2979                 :
        2980                 : /* nsIVariant getParameter (in WebGLenum pname); */
        2981                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetParameter(WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        2982                 : {
        2983                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2984                 : }
        2985                 :
        2986                 : /* nsIVariant getBufferParameter (in WebGLenum target, in WebGLenum pname); */
        2987                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetBufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        2988                 : {
        2989                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2990                 : }
        2991                 :
        2992                 : /* WebGLenum getError (); */
        2993                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetError(WebGLenum *_retval NS_OUTPARAM)
        2994                 : {
        2995                 :     return NS_ERROR_NOT_IMPLEMENTED;
        2996                 : }
        2997                 :
        2998                 : /* nsIVariant getFramebufferAttachmentParameter (in WebGLenum target, in WebGLenum attachment, in WebGLenum pname); */
        2999                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetFramebufferAttachmentParameter(WebGLenum target, WebGLenum attachment, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3000                 : {
        3001                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3002                 : }
        3003                 :
        3004                 : /* nsIVariant getProgramParameter (in nsIWebGLProgram program, in WebGLenum pname); */
        3005                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetProgramParameter(nsIWebGLProgram *program, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3006                 : {
        3007                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3008                 : }
        3009                 :
        3010                 : /* DOMString getProgramInfoLog (in nsIWebGLProgram program); */
        3011                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetProgramInfoLog(nsIWebGLProgram *program, nsAString & _retval NS_OUTPARAM)
        3012                 : {
        3013                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3014                 : }
        3015                 :
        3016                 : /* nsIVariant getRenderbufferParameter (in WebGLenum target, in WebGLenum pname); */
        3017                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetRenderbufferParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3018                 : {
        3019                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3020                 : }
        3021                 :
        3022                 : /* nsIVariant getShaderParameter (in nsIWebGLShader shader, in WebGLenum pname); */
        3023                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetShaderParameter(nsIWebGLShader *shader, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3024                 : {
        3025                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3026                 : }
        3027                 :
        3028                 : /* DOMString getShaderInfoLog (in nsIWebGLShader shader); */
        3029                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetShaderInfoLog(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM)
        3030                 : {
        3031                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3032                 : }
        3033                 :
        3034                 : /* nsIWebGLShaderPrecisionFormat getShaderPrecisionFormat (in WebGLenum shadertype, in WebGLenum precisiontype); */
        3035                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetShaderPrecisionFormat(WebGLenum shadertype, WebGLenum precisiontype, nsIWebGLShaderPrecisionFormat * *_retval NS_OUTPARAM)
        3036                 : {
        3037                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3038                 : }
        3039                 :
        3040                 : /* DOMString getShaderSource (in nsIWebGLShader shader); */
        3041                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetShaderSource(nsIWebGLShader *shader, nsAString & _retval NS_OUTPARAM)
        3042                 : {
        3043                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3044                 : }
        3045                 :
        3046                 : /* nsIVariant getTexParameter (in WebGLenum target, in WebGLenum pname); */
        3047                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetTexParameter(WebGLenum target, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3048                 : {
        3049                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3050                 : }
        3051                 :
        3052                 : /* nsIVariant getUniform (in nsIWebGLProgram program, in nsIWebGLUniformLocation location); */
        3053                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetUniform(nsIWebGLProgram *program, nsIWebGLUniformLocation *location, nsIVariant * *_retval NS_OUTPARAM)
        3054                 : {
        3055                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3056                 : }
        3057                 :
        3058                 : /* nsIWebGLUniformLocation getUniformLocation (in nsIWebGLProgram program, in DOMString name); */
        3059                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetUniformLocation(nsIWebGLProgram *program, const nsAString & name, nsIWebGLUniformLocation * *_retval NS_OUTPARAM)
        3060                 : {
        3061                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3062                 : }
        3063                 :
        3064                 : /* nsIVariant getVertexAttrib (in WebGLuint index, in WebGLenum pname); */
        3065                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetVertexAttrib(WebGLuint index, WebGLenum pname, nsIVariant * *_retval NS_OUTPARAM)
        3066                 : {
        3067                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3068                 : }
        3069                 :
        3070                 : /* WebGLuint getVertexAttribOffset (in WebGLuint index, in WebGLenum pname); */
        3071                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetVertexAttribOffset(WebGLuint index, WebGLenum pname, WebGLuint *_retval NS_OUTPARAM)
        3072                 : {
        3073                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3074                 : }
        3075                 :
        3076                 : /* void hint (in WebGLenum target, in WebGLenum mode); */
        3077                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Hint(WebGLenum target, WebGLenum mode)
        3078                 : {
        3079                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3080                 : }
        3081                 :
        3082                 : /* WebGLboolean isBuffer (in nsIWebGLBuffer buffer); */
        3083                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsBuffer(nsIWebGLBuffer *buffer, WebGLboolean *_retval NS_OUTPARAM)
        3084                 : {
        3085                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3086                 : }
        3087                 :
        3088                 : /* WebGLboolean isFramebuffer (in nsIWebGLFramebuffer framebuffer); */
        3089                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsFramebuffer(nsIWebGLFramebuffer *framebuffer, WebGLboolean *_retval NS_OUTPARAM)
        3090                 : {
        3091                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3092                 : }
        3093                 :
        3094                 : /* WebGLboolean isProgram (in nsIWebGLProgram program); */
        3095                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsProgram(nsIWebGLProgram *program, WebGLboolean *_retval NS_OUTPARAM)
        3096                 : {
        3097                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3098                 : }
        3099                 :
        3100                 : /* WebGLboolean isRenderbuffer (in nsIWebGLRenderbuffer renderbuffer); */
        3101                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsRenderbuffer(nsIWebGLRenderbuffer *renderbuffer, WebGLboolean *_retval NS_OUTPARAM)
        3102                 : {
        3103                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3104                 : }
        3105                 :
        3106                 : /* WebGLboolean isShader (in nsIWebGLShader shader); */
        3107                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsShader(nsIWebGLShader *shader, WebGLboolean *_retval NS_OUTPARAM)
        3108                 : {
        3109                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3110                 : }
        3111                 :
        3112                 : /* WebGLboolean isTexture (in nsIWebGLTexture texture); */
        3113                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsTexture(nsIWebGLTexture *texture, WebGLboolean *_retval NS_OUTPARAM)
        3114                 : {
        3115                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3116                 : }
        3117                 :
        3118                 : /* WebGLboolean isEnabled (in WebGLenum cap); */
        3119                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsEnabled(WebGLenum cap, WebGLboolean *_retval NS_OUTPARAM)
        3120                 : {
        3121                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3122                 : }
        3123                 :
        3124                 : /* void lineWidth (in WebGLfloat width); */
        3125                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::LineWidth(WebGLfloat width)
        3126                 : {
        3127                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3128                 : }
        3129                 :
        3130                 : /* void linkProgram ([optional] in nsIWebGLProgram program); */
        3131                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::LinkProgram(nsIWebGLProgram *program)
        3132                 : {
        3133                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3134                 : }
        3135                 :
        3136                 : /* void pixelStorei (in WebGLenum pname, in WebGLint param); */
        3137                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::PixelStorei(WebGLenum pname, WebGLint param)
        3138                 : {
        3139                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3140                 : }
        3141                 :
        3142                 : /* void polygonOffset (in WebGLfloat factor, in WebGLfloat units); */
        3143                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::PolygonOffset(WebGLfloat factor, WebGLfloat units)
        3144                 : {
        3145                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3146                 : }
        3147                 :
        3148                 : /* void readPixels ([optional] in long dummy); */
        3149                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ReadPixels(PRInt32 dummy)
        3150                 : {
        3151                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3152                 : }
        3153                 :
        3154                 : /* [noscript] void readPixels_array (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        3155                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ReadPixels_array(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels)
        3156                 : {
        3157                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3158                 : }
        3159                 :
        3160                 : /* void renderbufferStorage (in WebGLenum target, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height); */
        3161                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::RenderbufferStorage(WebGLenum target, WebGLenum internalformat, WebGLsizei width, WebGLsizei height)
        3162                 : {
        3163                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3164                 : }
        3165                 :
        3166                 : /* void sampleCoverage (in WebGLclampf value, in WebGLboolean invert); */
        3167                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::SampleCoverage(WebGLclampf value, WebGLboolean invert)
        3168                 : {
        3169                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3170                 : }
        3171                 :
        3172                 : /* void scissor (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        3173                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Scissor(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height)
        3174                 : {
        3175                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3176                 : }
        3177                 :
        3178                 : /* void shaderSource ([optional] in nsIWebGLShader shader, [optional] in DOMString source); */
        3179                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ShaderSource(nsIWebGLShader *shader, const nsAString & source)
        3180                 : {
        3181                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3182                 : }
        3183                 :
        3184                 : /* void stencilFunc (in WebGLenum func, in WebGLint ref, in WebGLuint mask); */
        3185                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilFunc(WebGLenum func, WebGLint ref, WebGLuint mask)
        3186                 : {
        3187                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3188                 : }
        3189                 :
        3190                 : /* void stencilFuncSeparate (in WebGLenum face, in WebGLenum func, in WebGLint ref, in WebGLuint mask); */
        3191                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilFuncSeparate(WebGLenum face, WebGLenum func, WebGLint ref, WebGLuint mask)
        3192                 : {
        3193                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3194                 : }
        3195                 :
        3196                 : /* void stencilMask (in WebGLuint mask); */
        3197                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilMask(WebGLuint mask)
        3198                 : {
        3199                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3200                 : }
        3201                 :
        3202                 : /* void stencilMaskSeparate (in WebGLenum face, in WebGLuint mask); */
        3203                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilMaskSeparate(WebGLenum face, WebGLuint mask)
        3204                 : {
        3205                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3206                 : }
        3207                 :
        3208                 : /* void stencilOp (in WebGLenum fail, in WebGLenum zfail, in WebGLenum zpass); */
        3209                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilOp(WebGLenum fail, WebGLenum zfail, WebGLenum zpass)
        3210                 : {
        3211                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3212                 : }
        3213                 :
        3214                 : /* void stencilOpSeparate (in WebGLenum face, in WebGLenum fail, in WebGLenum zfail, in WebGLenum zpass); */
        3215                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::StencilOpSeparate(WebGLenum face, WebGLenum fail, WebGLenum zfail, WebGLenum zpass)
        3216                 : {
        3217                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3218                 : }
        3219                 :
        3220                 : /* void texImage2D ([optional] in long dummy); */
        3221                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexImage2D(PRInt32 dummy)
        3222                 : {
        3223                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3224                 : }
        3225                 :
        3226                 : /* [noscript] void texImage2D_array (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        3227                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexImage2D_array(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels)
        3228                 : {
        3229                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3230                 : }
        3231                 :
        3232                 : /* [noscript] void texImage2D_imageData (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLsizei width, in WebGLsizei height, in WebGLint border, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        3233                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexImage2D_imageData(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLsizei width, WebGLsizei height, WebGLint border, WebGLenum format, WebGLenum type, JSObject *pixels)
        3234                 : {
        3235                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3236                 : }
        3237                 :
        3238                 : /* [noscript] void texImage2D_dom (in WebGLenum target, in WebGLint level, in WebGLenum internalformat, in WebGLenum format, in WebGLenum type, in Element element); */
        3239                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexImage2D_dom(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLenum format, WebGLenum type, mozilla::dom::Element *element)
        3240                 : {
        3241                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3242                 : }
        3243                 :
        3244                 : /* void texSubImage2D ([optional] in long dummy); */
        3245                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexSubImage2D(PRInt32 dummy)
        3246                 : {
        3247                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3248                 : }
        3249                 :
        3250                 : /* [noscript] void texSubImage2D_array (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        3251                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexSubImage2D_array(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels)
        3252                 : {
        3253                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3254                 : }
        3255                 :
        3256                 : /* [noscript] void texSubImage2D_imageData (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLsizei width, in WebGLsizei height, in WebGLenum format, in WebGLenum type, in WebGLJSObjectPtr pixels); */
        3257                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexSubImage2D_imageData(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLsizei width, WebGLsizei height, WebGLenum format, WebGLenum type, JSObject *pixels)
        3258                 : {
        3259                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3260                 : }
        3261                 :
        3262                 : /* [noscript] void texSubImage2D_dom (in WebGLenum target, in WebGLint level, in WebGLint xoffset, in WebGLint yoffset, in WebGLenum format, in WebGLenum type, in Element element); */
        3263                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexSubImage2D_dom(WebGLenum target, WebGLint level, WebGLint xoffset, WebGLint yoffset, WebGLenum format, WebGLenum type, mozilla::dom::Element *element)
        3264                 : {
        3265                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3266                 : }
        3267                 :
        3268                 : /* void texParameterf (in WebGLenum target, in WebGLenum pname, in WebGLfloat param); */
        3269                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexParameterf(WebGLenum target, WebGLenum pname, WebGLfloat param)
        3270                 : {
        3271                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3272                 : }
        3273                 :
        3274                 : /* void texParameteri (in WebGLenum target, in WebGLenum pname, in WebGLint param); */
        3275                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::TexParameteri(WebGLenum target, WebGLenum pname, WebGLint param)
        3276                 : {
        3277                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3278                 : }
        3279                 :
        3280                 : /* void uniform1f (in nsIWebGLUniformLocation location, in WebGLfloat x); */
        3281                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1f(nsIWebGLUniformLocation *location, WebGLfloat x)
        3282                 : {
        3283                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3284                 : }
        3285                 :
        3286                 : /* void uniform1i (in nsIWebGLUniformLocation location, in WebGLint x); */
        3287                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1i(nsIWebGLUniformLocation *location, WebGLint x)
        3288                 : {
        3289                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3290                 : }
        3291                 :
        3292                 : /* void uniform2f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y); */
        3293                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y)
        3294                 : {
        3295                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3296                 : }
        3297                 :
        3298                 : /* void uniform2i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y); */
        3299                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y)
        3300                 : {
        3301                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3302                 : }
        3303                 :
        3304                 : /* void uniform3f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z); */
        3305                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z)
        3306                 : {
        3307                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3308                 : }
        3309                 :
        3310                 : /* void uniform3i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y, in WebGLint z); */
        3311                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z)
        3312                 : {
        3313                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3314                 : }
        3315                 :
        3316                 : /* void uniform4f (in nsIWebGLUniformLocation location, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z, in WebGLfloat w); */
        3317                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4f(nsIWebGLUniformLocation *location, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w)
        3318                 : {
        3319                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3320                 : }
        3321                 :
        3322                 : /* void uniform4i (in nsIWebGLUniformLocation location, in WebGLint x, in WebGLint y, in WebGLint z, in WebGLint w); */
        3323                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4i(nsIWebGLUniformLocation *location, WebGLint x, WebGLint y, WebGLint z, WebGLint w)
        3324                 : {
        3325                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3326                 : }
        3327                 :
        3328                 : /* void uniform1fv ([optional] in long dummy); */
        3329                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1fv(PRInt32 dummy)
        3330                 : {
        3331                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3332                 : }
        3333                 :
        3334                 : /* void uniform1iv ([optional] in long dummy); */
        3335                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1iv(PRInt32 dummy)
        3336                 : {
        3337                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3338                 : }
        3339                 :
        3340                 : /* void uniform2fv ([optional] in long dummy); */
        3341                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2fv(PRInt32 dummy)
        3342                 : {
        3343                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3344                 : }
        3345                 :
        3346                 : /* void uniform2iv ([optional] in long dummy); */
        3347                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2iv(PRInt32 dummy)
        3348                 : {
        3349                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3350                 : }
        3351                 :
        3352                 : /* void uniform3fv ([optional] in long dummy); */
        3353                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3fv(PRInt32 dummy)
        3354                 : {
        3355                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3356                 : }
        3357                 :
        3358                 : /* void uniform3iv ([optional] in long dummy); */
        3359                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3iv(PRInt32 dummy)
        3360                 : {
        3361                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3362                 : }
        3363                 :
        3364                 : /* void uniform4fv ([optional] in long dummy); */
        3365                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4fv(PRInt32 dummy)
        3366                 : {
        3367                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3368                 : }
        3369                 :
        3370                 : /* void uniform4iv ([optional] in long dummy); */
        3371                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4iv(PRInt32 dummy)
        3372                 : {
        3373                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3374                 : }
        3375                 :
        3376                 : /* [noscript] void uniform1fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3377                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1fv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3378                 : {
        3379                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3380                 : }
        3381                 :
        3382                 : /* [noscript] void uniform1iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3383                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform1iv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3384                 : {
        3385                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3386                 : }
        3387                 :
        3388                 : /* [noscript] void uniform2fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3389                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2fv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3390                 : {
        3391                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3392                 : }
        3393                 :
        3394                 : /* [noscript] void uniform2iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3395                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform2iv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3396                 : {
        3397                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3398                 : }
        3399                 :
        3400                 : /* [noscript] void uniform3fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3401                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3fv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3402                 : {
        3403                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3404                 : }
        3405                 :
        3406                 : /* [noscript] void uniform3iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3407                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform3iv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3408                 : {
        3409                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3410                 : }
        3411                 :
        3412                 : /* [noscript] void uniform4fv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3413                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4fv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3414                 : {
        3415                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3416                 : }
        3417                 :
        3418                 : /* [noscript] void uniform4iv_array (in nsIWebGLUniformLocation location, in WebGLJSObjectPtr v); */
        3419                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Uniform4iv_array(nsIWebGLUniformLocation *location, JSObject *v)
        3420                 : {
        3421                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3422                 : }
        3423                 :
        3424                 : /* void uniformMatrix2fv ([optional] in long dummy); */
        3425                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix2fv(PRInt32 dummy)
        3426                 : {
        3427                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3428                 : }
        3429                 :
        3430                 : /* void uniformMatrix3fv ([optional] in long dummy); */
        3431                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix3fv(PRInt32 dummy)
        3432                 : {
        3433                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3434                 : }
        3435                 :
        3436                 : /* void uniformMatrix4fv ([optional] in long dummy); */
        3437                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix4fv(PRInt32 dummy)
        3438                 : {
        3439                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3440                 : }
        3441                 :
        3442                 : /* [noscript] void uniformMatrix2fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        3443                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix2fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value)
        3444                 : {
        3445                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3446                 : }
        3447                 :
        3448                 : /* [noscript] void uniformMatrix3fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        3449                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix3fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value)
        3450                 : {
        3451                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3452                 : }
        3453                 :
        3454                 : /* [noscript] void uniformMatrix4fv_array (in nsIWebGLUniformLocation location, in WebGLboolean transpose, in WebGLJSObjectPtr value); */
        3455                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UniformMatrix4fv_array(nsIWebGLUniformLocation *location, WebGLboolean transpose, JSObject *value)
        3456                 : {
        3457                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3458                 : }
        3459                 :
        3460                 : /* void useProgram (in nsIWebGLProgram program); */
        3461                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::UseProgram(nsIWebGLProgram *program)
        3462                 : {
        3463                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3464                 : }
        3465                 :
        3466                 : /* void validateProgram (in nsIWebGLProgram program); */
        3467                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::ValidateProgram(nsIWebGLProgram *program)
        3468                 : {
        3469                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3470                 : }
        3471                 :
        3472                 : /* void vertexAttrib1f (in WebGLuint indx, in WebGLfloat x); */
        3473                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib1f(WebGLuint indx, WebGLfloat x)
        3474                 : {
        3475                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3476                 : }
        3477                 :
        3478                 : /* void vertexAttrib2f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y); */
        3479                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib2f(WebGLuint indx, WebGLfloat x, WebGLfloat y)
        3480                 : {
        3481                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3482                 : }
        3483                 :
        3484                 : /* void vertexAttrib3f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z); */
        3485                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib3f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z)
        3486                 : {
        3487                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3488                 : }
        3489                 :
        3490                 : /* void vertexAttrib4f (in WebGLuint indx, in WebGLfloat x, in WebGLfloat y, in WebGLfloat z, in WebGLfloat w); */
        3491                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib4f(WebGLuint indx, WebGLfloat x, WebGLfloat y, WebGLfloat z, WebGLfloat w)
        3492                 : {
        3493                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3494                 : }
        3495                 :
        3496                 : /* void vertexAttrib1fv ([optional] in long dummy); */
        3497                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib1fv(PRInt32 dummy)
        3498                 : {
        3499                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3500                 : }
        3501                 :
        3502                 : /* void vertexAttrib2fv ([optional] in long dummy); */
        3503                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib2fv(PRInt32 dummy)
        3504                 : {
        3505                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3506                 : }
        3507                 :
        3508                 : /* void vertexAttrib3fv ([optional] in long dummy); */
        3509                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib3fv(PRInt32 dummy)
        3510                 : {
        3511                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3512                 : }
        3513                 :
        3514                 : /* void vertexAttrib4fv ([optional] in long dummy); */
        3515                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib4fv(PRInt32 dummy)
        3516                 : {
        3517                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3518                 : }
        3519                 :
        3520                 : /* [noscript] void vertexAttrib1fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        3521                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib1fv_array(WebGLuint indx, JSObject *values)
        3522                 : {
        3523                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3524                 : }
        3525                 :
        3526                 : /* [noscript] void vertexAttrib2fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        3527                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib2fv_array(WebGLuint indx, JSObject *values)
        3528                 : {
        3529                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3530                 : }
        3531                 :
        3532                 : /* [noscript] void vertexAttrib3fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        3533                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib3fv_array(WebGLuint indx, JSObject *values)
        3534                 : {
        3535                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3536                 : }
        3537                 :
        3538                 : /* [noscript] void vertexAttrib4fv_array (in WebGLuint indx, in WebGLJSObjectPtr values); */
        3539                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttrib4fv_array(WebGLuint indx, JSObject *values)
        3540                 : {
        3541                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3542                 : }
        3543                 :
        3544                 : /* void vertexAttribPointer (in WebGLuint idx, in WebGLint size, in WebGLenum type, in WebGLboolean normalized, in WebGLsizei stride, in WebGLsizeiptr offset); */
        3545                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::VertexAttribPointer(WebGLuint idx, WebGLint size, WebGLenum type, WebGLboolean normalized, WebGLsizei stride, WebGLsizeiptr offset)
        3546                 : {
        3547                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3548                 : }
        3549                 :
        3550                 : /* void viewport (in WebGLint x, in WebGLint y, in WebGLsizei width, in WebGLsizei height); */
        3551                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::Viewport(WebGLint x, WebGLint y, WebGLsizei width, WebGLsizei height)
        3552                 : {
        3553                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3554                 : }
        3555                 :
        3556                 : /* [noscript] DOMString mozGetUnderlyingParamString (in WebGLenum pname); */
        3557                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::MozGetUnderlyingParamString(WebGLenum pname, nsAString & _retval NS_OUTPARAM)
        3558                 : {
        3559                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3560                 : }
        3561                 :
        3562                 : /* nsIWebGLExtension getExtension (in DOMString name); */
        3563                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetExtension(const nsAString & name, nsIWebGLExtension * *_retval NS_OUTPARAM)
        3564                 : {
        3565                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3566                 : }
        3567                 :
        3568                 : /* nsIVariant getSupportedExtensions (); */
        3569                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetSupportedExtensions(nsIVariant * *_retval NS_OUTPARAM)
        3570                 : {
        3571                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3572                 : }
        3573                 :
        3574                 : /* WebGLboolean isContextLost (); */
        3575                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::IsContextLost(WebGLboolean *_retval NS_OUTPARAM)
        3576                 : {
        3577                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3578                 : }
        3579                 :
        3580                 : /* readonly attribute WebGLsizei drawingBufferWidth; */
        3581                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetDrawingBufferWidth(WebGLsizei *aDrawingBufferWidth)
        3582                 : {
        3583                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3584                 : }
        3585                 :
        3586                 : /* readonly attribute WebGLsizei drawingBufferHeight; */
        3587                 : NS_IMETHODIMP nsDOMWebGLRenderingContext::GetDrawingBufferHeight(WebGLsizei *aDrawingBufferHeight)
        3588                 : {
        3589                 :     return NS_ERROR_NOT_IMPLEMENTED;
        3590                 : }
        3591                 :
        3592                 : /* End of implementation class template. */
        3593                 : #endif
        3594                 :
        3595                 :
        3596                 : #endif /* __gen_nsIDOMWebGLRenderingContext_h__ */

Generated by: LCOV version 1.7