/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM e:/builds/moz2_slave/m-cen-w32-xr/build/dom/interfaces/apps/nsIDOMApplicationRegistry.idl
 */

#ifndef __gen_nsIDOMApplicationRegistry_h__
#define __gen_nsIDOMApplicationRegistry_h__


#ifndef __gen_domstubs_h__
#include "domstubs.h"
#endif

#include "jspubtd.h"

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    mozIDOMApplicationRegistryError */
#define MOZIDOMAPPLICATIONREGISTRYERROR_IID_STR "e0c271cb-266b-48c9-a7e4-96590b445c26"

#define MOZIDOMAPPLICATIONREGISTRYERROR_IID \
  {0xe0c271cb, 0x266b, 0x48c9, \
    { 0xa7, 0xe4, 0x96, 0x59, 0x0b, 0x44, 0x5c, 0x26 }}

class NS_NO_VTABLE NS_SCRIPTABLE mozIDOMApplicationRegistryError : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(MOZIDOMAPPLICATIONREGISTRYERROR_IID)

  enum {
    DENIED = 1U,
    PERMISSION_DENIED = 2U,
    MANIFEST_URL_ERROR = 3U,
    NETWORK_ERROR = 4U,
    MANIFEST_PARSE_ERROR = 5U,
    INVALID_MANIFEST = 6U
  };

  /* readonly attribute short code; */
  NS_SCRIPTABLE NS_IMETHOD GetCode(PRInt16 *aCode) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(mozIDOMApplicationRegistryError, MOZIDOMAPPLICATIONREGISTRYERROR_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_MOZIDOMAPPLICATIONREGISTRYERROR \
  NS_SCRIPTABLE NS_IMETHOD GetCode(PRInt16 *aCode); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_MOZIDOMAPPLICATIONREGISTRYERROR(_to) \
  NS_SCRIPTABLE NS_IMETHOD GetCode(PRInt16 *aCode) { return _to GetCode(aCode); } 

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

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

/* Header file */
class _MYCLASS_ : public mozIDOMApplicationRegistryError
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_MOZIDOMAPPLICATIONREGISTRYERROR

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, mozIDOMApplicationRegistryError)

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

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

/* readonly attribute short code; */
NS_IMETHODIMP _MYCLASS_::GetCode(PRInt16 *aCode)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    mozIDOMApplication */
#define MOZIDOMAPPLICATION_IID_STR "a6856a3d-dece-43ce-89b9-72dba07f4246"

#define MOZIDOMAPPLICATION_IID \
  {0xa6856a3d, 0xdece, 0x43ce, \
    { 0x89, 0xb9, 0x72, 0xdb, 0xa0, 0x7f, 0x42, 0x46 }}

class NS_NO_VTABLE NS_SCRIPTABLE mozIDOMApplication : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(MOZIDOMAPPLICATION_IID)

  /* readonly attribute jsval manifest; */
  NS_SCRIPTABLE NS_IMETHOD GetManifest(JS::Value *aManifest) = 0;

  /* readonly attribute DOMString receipt; */
  NS_SCRIPTABLE NS_IMETHOD GetReceipt(nsAString & aReceipt) = 0;

  /* readonly attribute DOMString origin; */
  NS_SCRIPTABLE NS_IMETHOD GetOrigin(nsAString & aOrigin) = 0;

  /* readonly attribute DOMString installOrigin; */
  NS_SCRIPTABLE NS_IMETHOD GetInstallOrigin(nsAString & aInstallOrigin) = 0;

  /* readonly attribute unsigned long installTime; */
  NS_SCRIPTABLE NS_IMETHOD GetInstallTime(PRUint32 *aInstallTime) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(mozIDOMApplication, MOZIDOMAPPLICATION_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_MOZIDOMAPPLICATION \
  NS_SCRIPTABLE NS_IMETHOD GetManifest(JS::Value *aManifest); \
  NS_SCRIPTABLE NS_IMETHOD GetReceipt(nsAString & aReceipt); \
  NS_SCRIPTABLE NS_IMETHOD GetOrigin(nsAString & aOrigin); \
  NS_SCRIPTABLE NS_IMETHOD GetInstallOrigin(nsAString & aInstallOrigin); \
  NS_SCRIPTABLE NS_IMETHOD GetInstallTime(PRUint32 *aInstallTime); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_MOZIDOMAPPLICATION(_to) \
  NS_SCRIPTABLE NS_IMETHOD GetManifest(JS::Value *aManifest) { return _to GetManifest(aManifest); } \
  NS_SCRIPTABLE NS_IMETHOD GetReceipt(nsAString & aReceipt) { return _to GetReceipt(aReceipt); } \
  NS_SCRIPTABLE NS_IMETHOD GetOrigin(nsAString & aOrigin) { return _to GetOrigin(aOrigin); } \
  NS_SCRIPTABLE NS_IMETHOD GetInstallOrigin(nsAString & aInstallOrigin) { return _to GetInstallOrigin(aInstallOrigin); } \
  NS_SCRIPTABLE NS_IMETHOD GetInstallTime(PRUint32 *aInstallTime) { return _to GetInstallTime(aInstallTime); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_MOZIDOMAPPLICATION(_to) \
  NS_SCRIPTABLE NS_IMETHOD GetManifest(JS::Value *aManifest) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetManifest(aManifest); } \
  NS_SCRIPTABLE NS_IMETHOD GetReceipt(nsAString & aReceipt) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReceipt(aReceipt); } \
  NS_SCRIPTABLE NS_IMETHOD GetOrigin(nsAString & aOrigin) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOrigin(aOrigin); } \
  NS_SCRIPTABLE NS_IMETHOD GetInstallOrigin(nsAString & aInstallOrigin) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInstallOrigin(aInstallOrigin); } \
  NS_SCRIPTABLE NS_IMETHOD GetInstallTime(PRUint32 *aInstallTime) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInstallTime(aInstallTime); } 

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

/* Header file */
class _MYCLASS_ : public mozIDOMApplication
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_MOZIDOMAPPLICATION

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, mozIDOMApplication)

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

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

/* readonly attribute jsval manifest; */
NS_IMETHODIMP _MYCLASS_::GetManifest(JS::Value *aManifest)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute DOMString receipt; */
NS_IMETHODIMP _MYCLASS_::GetReceipt(nsAString & aReceipt)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute DOMString origin; */
NS_IMETHODIMP _MYCLASS_::GetOrigin(nsAString & aOrigin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute DOMString installOrigin; */
NS_IMETHODIMP _MYCLASS_::GetInstallOrigin(nsAString & aInstallOrigin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute unsigned long installTime; */
NS_IMETHODIMP _MYCLASS_::GetInstallTime(PRUint32 *aInstallTime)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    mozIDOMApplicationRegistryEnumerateCallback */
#define MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK_IID_STR "be170df5-9154-463b-9197-10a6195eba52"

#define MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK_IID \
  {0xbe170df5, 0x9154, 0x463b, \
    { 0x91, 0x97, 0x10, 0xa6, 0x19, 0x5e, 0xba, 0x52 }}

class NS_NO_VTABLE NS_SCRIPTABLE mozIDOMApplicationRegistryEnumerateCallback : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK_IID)

  /* void handleEvent ([array, size_is (count)] in mozIDOMApplication apps, in unsigned long count); */
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplication **apps, PRUint32 count) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(mozIDOMApplicationRegistryEnumerateCallback, MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK \
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplication **apps, PRUint32 count); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK(_to) \
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplication **apps, PRUint32 count) { return _to HandleEvent(apps, count); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK(_to) \
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplication **apps, PRUint32 count) { return !_to ? NS_ERROR_NULL_POINTER : _to->HandleEvent(apps, count); } 

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

/* Header file */
class _MYCLASS_ : public mozIDOMApplicationRegistryEnumerateCallback
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_MOZIDOMAPPLICATIONREGISTRYENUMERATECALLBACK

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, mozIDOMApplicationRegistryEnumerateCallback)

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

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

/* void handleEvent ([array, size_is (count)] in mozIDOMApplication apps, in unsigned long count); */
NS_IMETHODIMP _MYCLASS_::HandleEvent(mozIDOMApplication **apps, PRUint32 count)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    mozIDOMApplicationRegistryErrorCallback */
#define MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK_IID_STR "ae0ed33d-35cf-443a-837b-a6cebf16bd49"

#define MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK_IID \
  {0xae0ed33d, 0x35cf, 0x443a, \
    { 0x83, 0x7b, 0xa6, 0xce, 0xbf, 0x16, 0xbd, 0x49 }}

class NS_NO_VTABLE NS_SCRIPTABLE mozIDOMApplicationRegistryErrorCallback : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK_IID)

  /* void handleEvent (in mozIDOMApplicationRegistryError error); */
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplicationRegistryError *error) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(mozIDOMApplicationRegistryErrorCallback, MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK \
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplicationRegistryError *error); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK(_to) \
  NS_SCRIPTABLE NS_IMETHOD HandleEvent(mozIDOMApplicationRegistryError *error) { return _to HandleEvent(error); } 

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

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

/* Header file */
class _MYCLASS_ : public mozIDOMApplicationRegistryErrorCallback
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_MOZIDOMAPPLICATIONREGISTRYERRORCALLBACK

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, mozIDOMApplicationRegistryErrorCallback)

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

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

/* void handleEvent (in mozIDOMApplicationRegistryError error); */
NS_IMETHODIMP _MYCLASS_::HandleEvent(mozIDOMApplicationRegistryError *error)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    mozIDOMApplicationRegistry */
#define MOZIDOMAPPLICATIONREGISTRY_IID_STR "ac63c0ba-1f33-4e3e-b9aa-6a3243a9adba"

#define MOZIDOMAPPLICATIONREGISTRY_IID \
  {0xac63c0ba, 0x1f33, 0x4e3e, \
    { 0xb9, 0xaa, 0x6a, 0x32, 0x43, 0xa9, 0xad, 0xba }}

class NS_NO_VTABLE NS_SCRIPTABLE mozIDOMApplicationRegistry : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(MOZIDOMAPPLICATIONREGISTRY_IID)

  /* void install (in DOMString manifestUrl, [optional] in DOMString receipt); */
  NS_SCRIPTABLE NS_IMETHOD Install(const nsAString & manifestUrl, const nsAString & receipt) = 0;

  /* void uninstall (in DOMString origin); */
  NS_SCRIPTABLE NS_IMETHOD Uninstall(const nsAString & origin) = 0;

  /* void enumerate (in mozIDOMApplicationRegistryEnumerateCallback success, [optional] in mozIDOMApplicationRegistryErrorCallback error); */
  NS_SCRIPTABLE NS_IMETHOD Enumerate(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) = 0;

  /* void enumerateAll (in mozIDOMApplicationRegistryEnumerateCallback success, [optional] in mozIDOMApplicationRegistryErrorCallback error); */
  NS_SCRIPTABLE NS_IMETHOD EnumerateAll(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) = 0;

  /* void launch (in DOMString origin); */
  NS_SCRIPTABLE NS_IMETHOD Launch(const nsAString & origin) = 0;

  /* attribute nsIDOMEventListener oninstall; */
  NS_SCRIPTABLE NS_IMETHOD GetOninstall(nsIDOMEventListener * *aOninstall) = 0;
  NS_SCRIPTABLE NS_IMETHOD SetOninstall(nsIDOMEventListener *aOninstall) = 0;

  /* attribute nsIDOMEventListener onuninstall; */
  NS_SCRIPTABLE NS_IMETHOD GetOnuninstall(nsIDOMEventListener * *aOnuninstall) = 0;
  NS_SCRIPTABLE NS_IMETHOD SetOnuninstall(nsIDOMEventListener *aOnuninstall) = 0;

  /* attribute nsIDOMEventListener onerror; */
  NS_SCRIPTABLE NS_IMETHOD GetOnerror(nsIDOMEventListener * *aOnerror) = 0;
  NS_SCRIPTABLE NS_IMETHOD SetOnerror(nsIDOMEventListener *aOnerror) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(mozIDOMApplicationRegistry, MOZIDOMAPPLICATIONREGISTRY_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_MOZIDOMAPPLICATIONREGISTRY \
  NS_SCRIPTABLE NS_IMETHOD Install(const nsAString & manifestUrl, const nsAString & receipt); \
  NS_SCRIPTABLE NS_IMETHOD Uninstall(const nsAString & origin); \
  NS_SCRIPTABLE NS_IMETHOD Enumerate(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error); \
  NS_SCRIPTABLE NS_IMETHOD EnumerateAll(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error); \
  NS_SCRIPTABLE NS_IMETHOD Launch(const nsAString & origin); \
  NS_SCRIPTABLE NS_IMETHOD GetOninstall(nsIDOMEventListener * *aOninstall); \
  NS_SCRIPTABLE NS_IMETHOD SetOninstall(nsIDOMEventListener *aOninstall); \
  NS_SCRIPTABLE NS_IMETHOD GetOnuninstall(nsIDOMEventListener * *aOnuninstall); \
  NS_SCRIPTABLE NS_IMETHOD SetOnuninstall(nsIDOMEventListener *aOnuninstall); \
  NS_SCRIPTABLE NS_IMETHOD GetOnerror(nsIDOMEventListener * *aOnerror); \
  NS_SCRIPTABLE NS_IMETHOD SetOnerror(nsIDOMEventListener *aOnerror); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_MOZIDOMAPPLICATIONREGISTRY(_to) \
  NS_SCRIPTABLE NS_IMETHOD Install(const nsAString & manifestUrl, const nsAString & receipt) { return _to Install(manifestUrl, receipt); } \
  NS_SCRIPTABLE NS_IMETHOD Uninstall(const nsAString & origin) { return _to Uninstall(origin); } \
  NS_SCRIPTABLE NS_IMETHOD Enumerate(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) { return _to Enumerate(success, error); } \
  NS_SCRIPTABLE NS_IMETHOD EnumerateAll(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) { return _to EnumerateAll(success, error); } \
  NS_SCRIPTABLE NS_IMETHOD Launch(const nsAString & origin) { return _to Launch(origin); } \
  NS_SCRIPTABLE NS_IMETHOD GetOninstall(nsIDOMEventListener * *aOninstall) { return _to GetOninstall(aOninstall); } \
  NS_SCRIPTABLE NS_IMETHOD SetOninstall(nsIDOMEventListener *aOninstall) { return _to SetOninstall(aOninstall); } \
  NS_SCRIPTABLE NS_IMETHOD GetOnuninstall(nsIDOMEventListener * *aOnuninstall) { return _to GetOnuninstall(aOnuninstall); } \
  NS_SCRIPTABLE NS_IMETHOD SetOnuninstall(nsIDOMEventListener *aOnuninstall) { return _to SetOnuninstall(aOnuninstall); } \
  NS_SCRIPTABLE NS_IMETHOD GetOnerror(nsIDOMEventListener * *aOnerror) { return _to GetOnerror(aOnerror); } \
  NS_SCRIPTABLE NS_IMETHOD SetOnerror(nsIDOMEventListener *aOnerror) { return _to SetOnerror(aOnerror); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_MOZIDOMAPPLICATIONREGISTRY(_to) \
  NS_SCRIPTABLE NS_IMETHOD Install(const nsAString & manifestUrl, const nsAString & receipt) { return !_to ? NS_ERROR_NULL_POINTER : _to->Install(manifestUrl, receipt); } \
  NS_SCRIPTABLE NS_IMETHOD Uninstall(const nsAString & origin) { return !_to ? NS_ERROR_NULL_POINTER : _to->Uninstall(origin); } \
  NS_SCRIPTABLE NS_IMETHOD Enumerate(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) { return !_to ? NS_ERROR_NULL_POINTER : _to->Enumerate(success, error); } \
  NS_SCRIPTABLE NS_IMETHOD EnumerateAll(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error) { return !_to ? NS_ERROR_NULL_POINTER : _to->EnumerateAll(success, error); } \
  NS_SCRIPTABLE NS_IMETHOD Launch(const nsAString & origin) { return !_to ? NS_ERROR_NULL_POINTER : _to->Launch(origin); } \
  NS_SCRIPTABLE NS_IMETHOD GetOninstall(nsIDOMEventListener * *aOninstall) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOninstall(aOninstall); } \
  NS_SCRIPTABLE NS_IMETHOD SetOninstall(nsIDOMEventListener *aOninstall) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOninstall(aOninstall); } \
  NS_SCRIPTABLE NS_IMETHOD GetOnuninstall(nsIDOMEventListener * *aOnuninstall) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOnuninstall(aOnuninstall); } \
  NS_SCRIPTABLE NS_IMETHOD SetOnuninstall(nsIDOMEventListener *aOnuninstall) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOnuninstall(aOnuninstall); } \
  NS_SCRIPTABLE NS_IMETHOD GetOnerror(nsIDOMEventListener * *aOnerror) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOnerror(aOnerror); } \
  NS_SCRIPTABLE NS_IMETHOD SetOnerror(nsIDOMEventListener *aOnerror) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOnerror(aOnerror); } 

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

/* Header file */
class _MYCLASS_ : public mozIDOMApplicationRegistry
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_MOZIDOMAPPLICATIONREGISTRY

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, mozIDOMApplicationRegistry)

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

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

/* void install (in DOMString manifestUrl, [optional] in DOMString receipt); */
NS_IMETHODIMP _MYCLASS_::Install(const nsAString & manifestUrl, const nsAString & receipt)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void uninstall (in DOMString origin); */
NS_IMETHODIMP _MYCLASS_::Uninstall(const nsAString & origin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void enumerate (in mozIDOMApplicationRegistryEnumerateCallback success, [optional] in mozIDOMApplicationRegistryErrorCallback error); */
NS_IMETHODIMP _MYCLASS_::Enumerate(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void enumerateAll (in mozIDOMApplicationRegistryEnumerateCallback success, [optional] in mozIDOMApplicationRegistryErrorCallback error); */
NS_IMETHODIMP _MYCLASS_::EnumerateAll(mozIDOMApplicationRegistryEnumerateCallback *success, mozIDOMApplicationRegistryErrorCallback *error)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void launch (in DOMString origin); */
NS_IMETHODIMP _MYCLASS_::Launch(const nsAString & origin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIDOMEventListener oninstall; */
NS_IMETHODIMP _MYCLASS_::GetOninstall(nsIDOMEventListener * *aOninstall)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP _MYCLASS_::SetOninstall(nsIDOMEventListener *aOninstall)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIDOMEventListener onuninstall; */
NS_IMETHODIMP _MYCLASS_::GetOnuninstall(nsIDOMEventListener * *aOnuninstall)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP _MYCLASS_::SetOnuninstall(nsIDOMEventListener *aOnuninstall)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIDOMEventListener onerror; */
NS_IMETHODIMP _MYCLASS_::GetOnerror(nsIDOMEventListener * *aOnerror)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP _MYCLASS_::SetOnerror(nsIDOMEventListener *aOnerror)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIDOMApplicationRegistry_h__ */
