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-06-02 Functions: 14 0 0.0 %

       1                 : /*
       2                 :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM /builds/slave/m-beta-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