/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIDOMSVGFilters.idl
 */

#ifndef __gen_nsIDOMSVGFilters_h__
#define __gen_nsIDOMSVGFilters_h__


#ifndef __gen_nsIDOMSVGElement_h__
#include "nsIDOMSVGElement.h"
#endif

#ifndef __gen_nsIDOMSVGStylable_h__
#include "nsIDOMSVGStylable.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIDOMSVGAnimatedLength; /* forward declaration */

class nsIDOMSVGAnimatedString; /* forward declaration */

class nsIDOMSVGAnimatedNumber; /* forward declaration */

class nsIDOMSVGAnimatedEnumeration; /* forward declaration */

class nsIDOMSVGAnimatedNumberList; /* forward declaration */


/* starting interface:    nsIDOMSVGFilterPrimitiveStandardAttributes */
#define NS_IDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES_IID_STR "ab68567a-b830-4c46-9f2f-a28513a9e980"

#define NS_IDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES_IID \
  {0xab68567a, 0xb830, 0x4c46, \
    { 0x9f, 0x2f, 0xa2, 0x85, 0x13, 0xa9, 0xe9, 0x80 }}

class NS_NO_VTABLE nsIDOMSVGFilterPrimitiveStandardAttributes : public nsIDOMSVGElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES_IID)

  /* readonly attribute nsIDOMSVGAnimatedLength x; */
  NS_IMETHOD GetX(nsIDOMSVGAnimatedLength * *aX) = 0;

  /* readonly attribute nsIDOMSVGAnimatedLength y; */
  NS_IMETHOD GetY(nsIDOMSVGAnimatedLength * *aY) = 0;

  /* readonly attribute nsIDOMSVGAnimatedLength width; */
  NS_IMETHOD GetWidth(nsIDOMSVGAnimatedLength * *aWidth) = 0;

  /* readonly attribute nsIDOMSVGAnimatedLength height; */
  NS_IMETHOD GetHeight(nsIDOMSVGAnimatedLength * *aHeight) = 0;

  /* readonly attribute nsIDOMSVGAnimatedString result; */
  NS_IMETHOD GetResult(nsIDOMSVGAnimatedString * *aResult) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFilterPrimitiveStandardAttributes, NS_IDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES \
  NS_IMETHOD GetX(nsIDOMSVGAnimatedLength * *aX); \
  NS_IMETHOD GetY(nsIDOMSVGAnimatedLength * *aY); \
  NS_IMETHOD GetWidth(nsIDOMSVGAnimatedLength * *aWidth); \
  NS_IMETHOD GetHeight(nsIDOMSVGAnimatedLength * *aHeight); \
  NS_IMETHOD GetResult(nsIDOMSVGAnimatedString * *aResult); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES(_to) \
  NS_IMETHOD GetX(nsIDOMSVGAnimatedLength * *aX) { return _to GetX(aX); } \
  NS_IMETHOD GetY(nsIDOMSVGAnimatedLength * *aY) { return _to GetY(aY); } \
  NS_IMETHOD GetWidth(nsIDOMSVGAnimatedLength * *aWidth) { return _to GetWidth(aWidth); } \
  NS_IMETHOD GetHeight(nsIDOMSVGAnimatedLength * *aHeight) { return _to GetHeight(aHeight); } \
  NS_IMETHOD GetResult(nsIDOMSVGAnimatedString * *aResult) { return _to GetResult(aResult); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES(_to) \
  NS_IMETHOD GetX(nsIDOMSVGAnimatedLength * *aX) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetX(aX); } \
  NS_IMETHOD GetY(nsIDOMSVGAnimatedLength * *aY) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetY(aY); } \
  NS_IMETHOD GetWidth(nsIDOMSVGAnimatedLength * *aWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWidth(aWidth); } \
  NS_IMETHOD GetHeight(nsIDOMSVGAnimatedLength * *aHeight) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHeight(aHeight); } \
  NS_IMETHOD GetResult(nsIDOMSVGAnimatedString * *aResult) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetResult(aResult); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFilterPrimitiveStandardAttributes : public nsIDOMSVGFilterPrimitiveStandardAttributes
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES

  nsDOMSVGFilterPrimitiveStandardAttributes();

private:
  ~nsDOMSVGFilterPrimitiveStandardAttributes();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFilterPrimitiveStandardAttributes, nsIDOMSVGFilterPrimitiveStandardAttributes)

nsDOMSVGFilterPrimitiveStandardAttributes::nsDOMSVGFilterPrimitiveStandardAttributes()
{
  /* member initializers and constructor code */
}

nsDOMSVGFilterPrimitiveStandardAttributes::~nsDOMSVGFilterPrimitiveStandardAttributes()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedLength x; */
NS_IMETHODIMP nsDOMSVGFilterPrimitiveStandardAttributes::GetX(nsIDOMSVGAnimatedLength * *aX)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedLength y; */
NS_IMETHODIMP nsDOMSVGFilterPrimitiveStandardAttributes::GetY(nsIDOMSVGAnimatedLength * *aY)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedLength width; */
NS_IMETHODIMP nsDOMSVGFilterPrimitiveStandardAttributes::GetWidth(nsIDOMSVGAnimatedLength * *aWidth)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedLength height; */
NS_IMETHODIMP nsDOMSVGFilterPrimitiveStandardAttributes::GetHeight(nsIDOMSVGAnimatedLength * *aHeight)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedString result; */
NS_IMETHODIMP nsDOMSVGFilterPrimitiveStandardAttributes::GetResult(nsIDOMSVGAnimatedString * *aResult)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEGaussianBlurElement */
#define NS_IDOMSVGFEGAUSSIANBLURELEMENT_IID_STR "43ff8d42-3380-4dbd-a916-7c2daa3ed7f4"

#define NS_IDOMSVGFEGAUSSIANBLURELEMENT_IID \
  {0x43ff8d42, 0x3380, 0x4dbd, \
    { 0xa9, 0x16, 0x7c, 0x2d, 0xaa, 0x3e, 0xd7, 0xf4 }}

class NS_NO_VTABLE nsIDOMSVGFEGaussianBlurElement : public nsIDOMSVGFilterPrimitiveStandardAttributes {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEGAUSSIANBLURELEMENT_IID)

  /* readonly attribute nsIDOMSVGAnimatedString in1; */
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber stdDeviationX; */
  NS_IMETHOD GetStdDeviationX(nsIDOMSVGAnimatedNumber * *aStdDeviationX) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber stdDeviationY; */
  NS_IMETHOD GetStdDeviationY(nsIDOMSVGAnimatedNumber * *aStdDeviationY) = 0;

  /* void setStdDeviation (in float stdDeviationX, in float stdDeviationY); */
  NS_IMETHOD SetStdDeviation(float stdDeviationX, float stdDeviationY) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEGaussianBlurElement, NS_IDOMSVGFEGAUSSIANBLURELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEGAUSSIANBLURELEMENT \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1); \
  NS_IMETHOD GetStdDeviationX(nsIDOMSVGAnimatedNumber * *aStdDeviationX); \
  NS_IMETHOD GetStdDeviationY(nsIDOMSVGAnimatedNumber * *aStdDeviationY); \
  NS_IMETHOD SetStdDeviation(float stdDeviationX, float stdDeviationY); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEGAUSSIANBLURELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return _to GetIn1(aIn1); } \
  NS_IMETHOD GetStdDeviationX(nsIDOMSVGAnimatedNumber * *aStdDeviationX) { return _to GetStdDeviationX(aStdDeviationX); } \
  NS_IMETHOD GetStdDeviationY(nsIDOMSVGAnimatedNumber * *aStdDeviationY) { return _to GetStdDeviationY(aStdDeviationY); } \
  NS_IMETHOD SetStdDeviation(float stdDeviationX, float stdDeviationY) { return _to SetStdDeviation(stdDeviationX, stdDeviationY); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEGAUSSIANBLURELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIn1(aIn1); } \
  NS_IMETHOD GetStdDeviationX(nsIDOMSVGAnimatedNumber * *aStdDeviationX) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStdDeviationX(aStdDeviationX); } \
  NS_IMETHOD GetStdDeviationY(nsIDOMSVGAnimatedNumber * *aStdDeviationY) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStdDeviationY(aStdDeviationY); } \
  NS_IMETHOD SetStdDeviation(float stdDeviationX, float stdDeviationY) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStdDeviation(stdDeviationX, stdDeviationY); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEGaussianBlurElement : public nsIDOMSVGFEGaussianBlurElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEGAUSSIANBLURELEMENT

  nsDOMSVGFEGaussianBlurElement();

private:
  ~nsDOMSVGFEGaussianBlurElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEGaussianBlurElement, nsIDOMSVGFEGaussianBlurElement)

nsDOMSVGFEGaussianBlurElement::nsDOMSVGFEGaussianBlurElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEGaussianBlurElement::~nsDOMSVGFEGaussianBlurElement()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedString in1; */
NS_IMETHODIMP nsDOMSVGFEGaussianBlurElement::GetIn1(nsIDOMSVGAnimatedString * *aIn1)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber stdDeviationX; */
NS_IMETHODIMP nsDOMSVGFEGaussianBlurElement::GetStdDeviationX(nsIDOMSVGAnimatedNumber * *aStdDeviationX)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber stdDeviationY; */
NS_IMETHODIMP nsDOMSVGFEGaussianBlurElement::GetStdDeviationY(nsIDOMSVGAnimatedNumber * *aStdDeviationY)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setStdDeviation (in float stdDeviationX, in float stdDeviationY); */
NS_IMETHODIMP nsDOMSVGFEGaussianBlurElement::SetStdDeviation(float stdDeviationX, float stdDeviationY)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEComponentTransferElement */
#define NS_IDOMSVGFECOMPONENTTRANSFERELEMENT_IID_STR "4de6b44a-f909-4948-bc43-5ee2ca6de55b"

#define NS_IDOMSVGFECOMPONENTTRANSFERELEMENT_IID \
  {0x4de6b44a, 0xf909, 0x4948, \
    { 0xbc, 0x43, 0x5e, 0xe2, 0xca, 0x6d, 0xe5, 0x5b }}

class NS_NO_VTABLE nsIDOMSVGFEComponentTransferElement : public nsIDOMSVGFilterPrimitiveStandardAttributes {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFECOMPONENTTRANSFERELEMENT_IID)

  /* readonly attribute nsIDOMSVGAnimatedString in1; */
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEComponentTransferElement, NS_IDOMSVGFECOMPONENTTRANSFERELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFECOMPONENTTRANSFERELEMENT \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFECOMPONENTTRANSFERELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return _to GetIn1(aIn1); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFECOMPONENTTRANSFERELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIn1(aIn1); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEComponentTransferElement : public nsIDOMSVGFEComponentTransferElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFECOMPONENTTRANSFERELEMENT

  nsDOMSVGFEComponentTransferElement();

private:
  ~nsDOMSVGFEComponentTransferElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEComponentTransferElement, nsIDOMSVGFEComponentTransferElement)

nsDOMSVGFEComponentTransferElement::nsDOMSVGFEComponentTransferElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEComponentTransferElement::~nsDOMSVGFEComponentTransferElement()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedString in1; */
NS_IMETHODIMP nsDOMSVGFEComponentTransferElement::GetIn1(nsIDOMSVGAnimatedString * *aIn1)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGComponentTransferFunctionElement */
#define NS_IDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT_IID_STR "dfdb8833-0e7d-407d-acac-18e563ea94e8"

#define NS_IDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT_IID \
  {0xdfdb8833, 0x0e7d, 0x407d, \
    { 0xac, 0xac, 0x18, 0xe5, 0x63, 0xea, 0x94, 0xe8 }}

class NS_NO_VTABLE nsIDOMSVGComponentTransferFunctionElement : public nsIDOMSVGElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT_IID)

  enum { SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0U };

  enum { SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1U };

  enum { SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2U };

  enum { SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3U };

  enum { SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4U };

  enum { SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5U };

  /* readonly attribute nsIDOMSVGAnimatedEnumeration type; */
  NS_IMETHOD GetType(nsIDOMSVGAnimatedEnumeration * *aType) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumberList tableValues; */
  NS_IMETHOD GetTableValues(nsIDOMSVGAnimatedNumberList * *aTableValues) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber slope; */
  NS_IMETHOD GetSlope(nsIDOMSVGAnimatedNumber * *aSlope) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber intercept; */
  NS_IMETHOD GetIntercept(nsIDOMSVGAnimatedNumber * *aIntercept) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber amplitude; */
  NS_IMETHOD GetAmplitude(nsIDOMSVGAnimatedNumber * *aAmplitude) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber exponent; */
  NS_IMETHOD GetExponent(nsIDOMSVGAnimatedNumber * *aExponent) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber offset; */
  NS_IMETHOD GetOffset(nsIDOMSVGAnimatedNumber * *aOffset) = 0;

  /* [noscript] void GenerateLookupTable (out PRUint8 aTable); */
  NS_IMETHOD GenerateLookupTable(PRUint8 *aTable) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGComponentTransferFunctionElement, NS_IDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT \
  NS_IMETHOD GetType(nsIDOMSVGAnimatedEnumeration * *aType); \
  NS_IMETHOD GetTableValues(nsIDOMSVGAnimatedNumberList * *aTableValues); \
  NS_IMETHOD GetSlope(nsIDOMSVGAnimatedNumber * *aSlope); \
  NS_IMETHOD GetIntercept(nsIDOMSVGAnimatedNumber * *aIntercept); \
  NS_IMETHOD GetAmplitude(nsIDOMSVGAnimatedNumber * *aAmplitude); \
  NS_IMETHOD GetExponent(nsIDOMSVGAnimatedNumber * *aExponent); \
  NS_IMETHOD GetOffset(nsIDOMSVGAnimatedNumber * *aOffset); \
  NS_IMETHOD GenerateLookupTable(PRUint8 *aTable); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT(_to) \
  NS_IMETHOD GetType(nsIDOMSVGAnimatedEnumeration * *aType) { return _to GetType(aType); } \
  NS_IMETHOD GetTableValues(nsIDOMSVGAnimatedNumberList * *aTableValues) { return _to GetTableValues(aTableValues); } \
  NS_IMETHOD GetSlope(nsIDOMSVGAnimatedNumber * *aSlope) { return _to GetSlope(aSlope); } \
  NS_IMETHOD GetIntercept(nsIDOMSVGAnimatedNumber * *aIntercept) { return _to GetIntercept(aIntercept); } \
  NS_IMETHOD GetAmplitude(nsIDOMSVGAnimatedNumber * *aAmplitude) { return _to GetAmplitude(aAmplitude); } \
  NS_IMETHOD GetExponent(nsIDOMSVGAnimatedNumber * *aExponent) { return _to GetExponent(aExponent); } \
  NS_IMETHOD GetOffset(nsIDOMSVGAnimatedNumber * *aOffset) { return _to GetOffset(aOffset); } \
  NS_IMETHOD GenerateLookupTable(PRUint8 *aTable) { return _to GenerateLookupTable(aTable); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT(_to) \
  NS_IMETHOD GetType(nsIDOMSVGAnimatedEnumeration * *aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } \
  NS_IMETHOD GetTableValues(nsIDOMSVGAnimatedNumberList * *aTableValues) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTableValues(aTableValues); } \
  NS_IMETHOD GetSlope(nsIDOMSVGAnimatedNumber * *aSlope) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSlope(aSlope); } \
  NS_IMETHOD GetIntercept(nsIDOMSVGAnimatedNumber * *aIntercept) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIntercept(aIntercept); } \
  NS_IMETHOD GetAmplitude(nsIDOMSVGAnimatedNumber * *aAmplitude) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAmplitude(aAmplitude); } \
  NS_IMETHOD GetExponent(nsIDOMSVGAnimatedNumber * *aExponent) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetExponent(aExponent); } \
  NS_IMETHOD GetOffset(nsIDOMSVGAnimatedNumber * *aOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOffset(aOffset); } \
  NS_IMETHOD GenerateLookupTable(PRUint8 *aTable) { return !_to ? NS_ERROR_NULL_POINTER : _to->GenerateLookupTable(aTable); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGComponentTransferFunctionElement : public nsIDOMSVGComponentTransferFunctionElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGCOMPONENTTRANSFERFUNCTIONELEMENT

  nsDOMSVGComponentTransferFunctionElement();

private:
  ~nsDOMSVGComponentTransferFunctionElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGComponentTransferFunctionElement, nsIDOMSVGComponentTransferFunctionElement)

nsDOMSVGComponentTransferFunctionElement::nsDOMSVGComponentTransferFunctionElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGComponentTransferFunctionElement::~nsDOMSVGComponentTransferFunctionElement()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedEnumeration type; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetType(nsIDOMSVGAnimatedEnumeration * *aType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumberList tableValues; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetTableValues(nsIDOMSVGAnimatedNumberList * *aTableValues)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber slope; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetSlope(nsIDOMSVGAnimatedNumber * *aSlope)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber intercept; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetIntercept(nsIDOMSVGAnimatedNumber * *aIntercept)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber amplitude; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetAmplitude(nsIDOMSVGAnimatedNumber * *aAmplitude)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber exponent; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetExponent(nsIDOMSVGAnimatedNumber * *aExponent)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber offset; */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GetOffset(nsIDOMSVGAnimatedNumber * *aOffset)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void GenerateLookupTable (out PRUint8 aTable); */
NS_IMETHODIMP nsDOMSVGComponentTransferFunctionElement::GenerateLookupTable(PRUint8 *aTable)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEFuncRElement */
#define NS_IDOMSVGFEFUNCRELEMENT_IID_STR "85719a5d-9688-4c5f-bad5-c21847515200"

#define NS_IDOMSVGFEFUNCRELEMENT_IID \
  {0x85719a5d, 0x9688, 0x4c5f, \
    { 0xba, 0xd5, 0xc2, 0x18, 0x47, 0x51, 0x52, 0x00 }}

class NS_NO_VTABLE nsIDOMSVGFEFuncRElement : public nsIDOMSVGComponentTransferFunctionElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEFUNCRELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEFuncRElement, NS_IDOMSVGFEFUNCRELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEFUNCRELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEFUNCRELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEFUNCRELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEFuncRElement : public nsIDOMSVGFEFuncRElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEFUNCRELEMENT

  nsDOMSVGFEFuncRElement();

private:
  ~nsDOMSVGFEFuncRElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEFuncRElement, nsIDOMSVGFEFuncRElement)

nsDOMSVGFEFuncRElement::nsDOMSVGFEFuncRElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEFuncRElement::~nsDOMSVGFEFuncRElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEFuncGElement */
#define NS_IDOMSVGFEFUNCGELEMENT_IID_STR "28555e78-c6c2-4a98-af53-bfc2c6944295"

#define NS_IDOMSVGFEFUNCGELEMENT_IID \
  {0x28555e78, 0xc6c2, 0x4a98, \
    { 0xaf, 0x53, 0xbf, 0xc2, 0xc6, 0x94, 0x42, 0x95 }}

class NS_NO_VTABLE nsIDOMSVGFEFuncGElement : public nsIDOMSVGComponentTransferFunctionElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEFUNCGELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEFuncGElement, NS_IDOMSVGFEFUNCGELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEFUNCGELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEFUNCGELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEFUNCGELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEFuncGElement : public nsIDOMSVGFEFuncGElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEFUNCGELEMENT

  nsDOMSVGFEFuncGElement();

private:
  ~nsDOMSVGFEFuncGElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEFuncGElement, nsIDOMSVGFEFuncGElement)

nsDOMSVGFEFuncGElement::nsDOMSVGFEFuncGElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEFuncGElement::~nsDOMSVGFEFuncGElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEFuncBElement */
#define NS_IDOMSVGFEFUNCBELEMENT_IID_STR "8b139fe7-5d21-4af3-beda-414aa089b3fb"

#define NS_IDOMSVGFEFUNCBELEMENT_IID \
  {0x8b139fe7, 0x5d21, 0x4af3, \
    { 0xbe, 0xda, 0x41, 0x4a, 0xa0, 0x89, 0xb3, 0xfb }}

class NS_NO_VTABLE nsIDOMSVGFEFuncBElement : public nsIDOMSVGComponentTransferFunctionElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEFUNCBELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEFuncBElement, NS_IDOMSVGFEFUNCBELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEFUNCBELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEFUNCBELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEFUNCBELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEFuncBElement : public nsIDOMSVGFEFuncBElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEFUNCBELEMENT

  nsDOMSVGFEFuncBElement();

private:
  ~nsDOMSVGFEFuncBElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEFuncBElement, nsIDOMSVGFEFuncBElement)

nsDOMSVGFEFuncBElement::nsDOMSVGFEFuncBElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEFuncBElement::~nsDOMSVGFEFuncBElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEFuncAElement */
#define NS_IDOMSVGFEFUNCAELEMENT_IID_STR "fa48511c-283a-437f-9507-c309ac6f0f57"

#define NS_IDOMSVGFEFUNCAELEMENT_IID \
  {0xfa48511c, 0x283a, 0x437f, \
    { 0x95, 0x07, 0xc3, 0x09, 0xac, 0x6f, 0x0f, 0x57 }}

class NS_NO_VTABLE nsIDOMSVGFEFuncAElement : public nsIDOMSVGComponentTransferFunctionElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEFUNCAELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEFuncAElement, NS_IDOMSVGFEFUNCAELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEFUNCAELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEFUNCAELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEFUNCAELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEFuncAElement : public nsIDOMSVGFEFuncAElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEFUNCAELEMENT

  nsDOMSVGFEFuncAElement();

private:
  ~nsDOMSVGFEFuncAElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEFuncAElement, nsIDOMSVGFEFuncAElement)

nsDOMSVGFEFuncAElement::nsDOMSVGFEFuncAElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEFuncAElement::~nsDOMSVGFEFuncAElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEMergeElement */
#define NS_IDOMSVGFEMERGEELEMENT_IID_STR "b860512c-2547-4d1f-bb43-b57b54d39014"

#define NS_IDOMSVGFEMERGEELEMENT_IID \
  {0xb860512c, 0x2547, 0x4d1f, \
    { 0xbb, 0x43, 0xb5, 0x7b, 0x54, 0xd3, 0x90, 0x14 }}

class NS_NO_VTABLE nsIDOMSVGFEMergeElement : public nsIDOMSVGFilterPrimitiveStandardAttributes {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEMERGEELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEMergeElement, NS_IDOMSVGFEMERGEELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEMERGEELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEMERGEELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEMERGEELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEMergeElement : public nsIDOMSVGFEMergeElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEMERGEELEMENT

  nsDOMSVGFEMergeElement();

private:
  ~nsDOMSVGFEMergeElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEMergeElement, nsIDOMSVGFEMergeElement)

nsDOMSVGFEMergeElement::nsDOMSVGFEMergeElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEMergeElement::~nsDOMSVGFEMergeElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEMergeNodeElement */
#define NS_IDOMSVGFEMERGENODEELEMENT_IID_STR "540c3447-4b07-4bd3-84df-30f66b68df14"

#define NS_IDOMSVGFEMERGENODEELEMENT_IID \
  {0x540c3447, 0x4b07, 0x4bd3, \
    { 0x84, 0xdf, 0x30, 0xf6, 0x6b, 0x68, 0xdf, 0x14 }}

class NS_NO_VTABLE nsIDOMSVGFEMergeNodeElement : public nsIDOMSVGElement {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEMERGENODEELEMENT_IID)

  /* readonly attribute nsIDOMSVGAnimatedString in1; */
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEMergeNodeElement, NS_IDOMSVGFEMERGENODEELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEMERGENODEELEMENT \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEMERGENODEELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return _to GetIn1(aIn1); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEMERGENODEELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIn1(aIn1); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEMergeNodeElement : public nsIDOMSVGFEMergeNodeElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEMERGENODEELEMENT

  nsDOMSVGFEMergeNodeElement();

private:
  ~nsDOMSVGFEMergeNodeElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEMergeNodeElement, nsIDOMSVGFEMergeNodeElement)

nsDOMSVGFEMergeNodeElement::nsDOMSVGFEMergeNodeElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEMergeNodeElement::~nsDOMSVGFEMergeNodeElement()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedString in1; */
NS_IMETHODIMP nsDOMSVGFEMergeNodeElement::GetIn1(nsIDOMSVGAnimatedString * *aIn1)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEOffsetElement */
#define NS_IDOMSVGFEOFFSETELEMENT_IID_STR "c080f191-b22c-4fc0-85d5-a79dc3fa7ec8"

#define NS_IDOMSVGFEOFFSETELEMENT_IID \
  {0xc080f191, 0xb22c, 0x4fc0, \
    { 0x85, 0xd5, 0xa7, 0x9d, 0xc3, 0xfa, 0x7e, 0xc8 }}

class NS_NO_VTABLE nsIDOMSVGFEOffsetElement : public nsIDOMSVGFilterPrimitiveStandardAttributes {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEOFFSETELEMENT_IID)

  /* readonly attribute nsIDOMSVGAnimatedString in1; */
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber dx; */
  NS_IMETHOD GetDx(nsIDOMSVGAnimatedNumber * *aDx) = 0;

  /* readonly attribute nsIDOMSVGAnimatedNumber dy; */
  NS_IMETHOD GetDy(nsIDOMSVGAnimatedNumber * *aDy) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEOffsetElement, NS_IDOMSVGFEOFFSETELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEOFFSETELEMENT \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1); \
  NS_IMETHOD GetDx(nsIDOMSVGAnimatedNumber * *aDx); \
  NS_IMETHOD GetDy(nsIDOMSVGAnimatedNumber * *aDy); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEOFFSETELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return _to GetIn1(aIn1); } \
  NS_IMETHOD GetDx(nsIDOMSVGAnimatedNumber * *aDx) { return _to GetDx(aDx); } \
  NS_IMETHOD GetDy(nsIDOMSVGAnimatedNumber * *aDy) { return _to GetDy(aDy); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEOFFSETELEMENT(_to) \
  NS_IMETHOD GetIn1(nsIDOMSVGAnimatedString * *aIn1) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIn1(aIn1); } \
  NS_IMETHOD GetDx(nsIDOMSVGAnimatedNumber * *aDx) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDx(aDx); } \
  NS_IMETHOD GetDy(nsIDOMSVGAnimatedNumber * *aDy) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDy(aDy); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEOffsetElement : public nsIDOMSVGFEOffsetElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEOFFSETELEMENT

  nsDOMSVGFEOffsetElement();

private:
  ~nsDOMSVGFEOffsetElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEOffsetElement, nsIDOMSVGFEOffsetElement)

nsDOMSVGFEOffsetElement::nsDOMSVGFEOffsetElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEOffsetElement::~nsDOMSVGFEOffsetElement()
{
  /* destructor code */
}

/* readonly attribute nsIDOMSVGAnimatedString in1; */
NS_IMETHODIMP nsDOMSVGFEOffsetElement::GetIn1(nsIDOMSVGAnimatedString * *aIn1)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber dx; */
NS_IMETHODIMP nsDOMSVGFEOffsetElement::GetDx(nsIDOMSVGAnimatedNumber * *aDx)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIDOMSVGAnimatedNumber dy; */
NS_IMETHODIMP nsDOMSVGFEOffsetElement::GetDy(nsIDOMSVGAnimatedNumber * *aDy)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIDOMSVGFEUnimplementedMOZElement */
#define NS_IDOMSVGFEUNIMPLEMENTEDMOZELEMENT_IID_STR "8698c635-26c7-468b-905e-494e8825d56b"

#define NS_IDOMSVGFEUNIMPLEMENTEDMOZELEMENT_IID \
  {0x8698c635, 0x26c7, 0x468b, \
    { 0x90, 0x5e, 0x49, 0x4e, 0x88, 0x25, 0xd5, 0x6b }}

class NS_NO_VTABLE nsIDOMSVGFEUnimplementedMOZElement : public nsIDOMSVGFilterPrimitiveStandardAttributes {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMSVGFEUNIMPLEMENTEDMOZELEMENT_IID)

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMSVGFEUnimplementedMOZElement, NS_IDOMSVGFEUNIMPLEMENTEDMOZELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMSVGFEUNIMPLEMENTEDMOZELEMENT \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMSVGFEUNIMPLEMENTEDMOZELEMENT(_to) \
  /* no methods! */

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMSVGFEUNIMPLEMENTEDMOZELEMENT(_to) \
  /* no methods! */

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDOMSVGFEUnimplementedMOZElement : public nsIDOMSVGFEUnimplementedMOZElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMSVGFEUNIMPLEMENTEDMOZELEMENT

  nsDOMSVGFEUnimplementedMOZElement();

private:
  ~nsDOMSVGFEUnimplementedMOZElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDOMSVGFEUnimplementedMOZElement, nsIDOMSVGFEUnimplementedMOZElement)

nsDOMSVGFEUnimplementedMOZElement::nsDOMSVGFEUnimplementedMOZElement()
{
  /* member initializers and constructor code */
}

nsDOMSVGFEUnimplementedMOZElement::~nsDOMSVGFEUnimplementedMOZElement()
{
  /* destructor code */
}

/* End of implementation class template. */
#endif


#endif /* __gen_nsIDOMSVGFilters_h__ */
