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

#ifndef __gen_flockIPollingService_h__
#define __gen_flockIPollingService_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

#ifndef __gen_flockIError_h__
#include "flockIError.h"
#endif

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

/* starting interface:    flockIPollingListener */
#define FLOCKIPOLLINGLISTENER_IID_STR "c3e0af56-2e45-44c7-a490-71b7c53b4fcf"

#define FLOCKIPOLLINGLISTENER_IID \
  {0xc3e0af56, 0x2e45, 0x44c7, \
    { 0xa4, 0x90, 0x71, 0xb7, 0xc5, 0x3b, 0x4f, 0xcf }}

class NS_NO_VTABLE NS_SCRIPTABLE flockIPollingListener : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(FLOCKIPOLLINGLISTENER_IID)

  /* void onResult (); */
  NS_SCRIPTABLE NS_IMETHOD OnResult(void) = 0;

  /* void onError (in flockIError aFlockError); */
  NS_SCRIPTABLE NS_IMETHOD OnError(flockIError *aFlockError) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(flockIPollingListener, FLOCKIPOLLINGLISTENER_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_FLOCKIPOLLINGLISTENER \
  NS_SCRIPTABLE NS_IMETHOD OnResult(void); \
  NS_SCRIPTABLE NS_IMETHOD OnError(flockIError *aFlockError); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_FLOCKIPOLLINGLISTENER(_to) \
  NS_SCRIPTABLE NS_IMETHOD OnResult(void) { return _to OnResult(); } \
  NS_SCRIPTABLE NS_IMETHOD OnError(flockIError *aFlockError) { return _to OnError(aFlockError); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_FLOCKIPOLLINGLISTENER(_to) \
  NS_SCRIPTABLE NS_IMETHOD OnResult(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->OnResult(); } \
  NS_SCRIPTABLE NS_IMETHOD OnError(flockIError *aFlockError) { return !_to ? NS_ERROR_NULL_POINTER : _to->OnError(aFlockError); } 

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

/* Header file */
class _MYCLASS_ : public flockIPollingListener
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_FLOCKIPOLLINGLISTENER

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

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

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

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

/* void onResult (); */
NS_IMETHODIMP _MYCLASS_::OnResult()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void onError (in flockIError aFlockError); */
NS_IMETHODIMP _MYCLASS_::OnError(flockIError *aFlockError)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    flockIPollingService */
#define FLOCKIPOLLINGSERVICE_IID_STR "bfeb8424-2a12-4ffd-802a-b26b79b1ec2f"

#define FLOCKIPOLLINGSERVICE_IID \
  {0xbfeb8424, 0x2a12, 0x4ffd, \
    { 0x80, 0x2a, 0xb2, 0x6b, 0x79, 0xb1, 0xec, 0x2f }}

/**
 * @see flockIPollerService
 */
class NS_NO_VTABLE NS_SCRIPTABLE flockIPollingService : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(FLOCKIPOLLINGSERVICE_IID)

  /* void refresh (in AString aUrn, in flockIPollingListener aPollingListener); */
  NS_SCRIPTABLE NS_IMETHOD Refresh(const nsAString & aUrn, flockIPollingListener *aPollingListener) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(flockIPollingService, FLOCKIPOLLINGSERVICE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_FLOCKIPOLLINGSERVICE \
  NS_SCRIPTABLE NS_IMETHOD Refresh(const nsAString & aUrn, flockIPollingListener *aPollingListener); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_FLOCKIPOLLINGSERVICE(_to) \
  NS_SCRIPTABLE NS_IMETHOD Refresh(const nsAString & aUrn, flockIPollingListener *aPollingListener) { return _to Refresh(aUrn, aPollingListener); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_FLOCKIPOLLINGSERVICE(_to) \
  NS_SCRIPTABLE NS_IMETHOD Refresh(const nsAString & aUrn, flockIPollingListener *aPollingListener) { return !_to ? NS_ERROR_NULL_POINTER : _to->Refresh(aUrn, aPollingListener); } 

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

/* Header file */
class _MYCLASS_ : public flockIPollingService
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_FLOCKIPOLLINGSERVICE

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

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

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

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

/* void refresh (in AString aUrn, in flockIPollingListener aPollingListener); */
NS_IMETHODIMP _MYCLASS_::Refresh(const nsAString & aUrn, flockIPollingListener *aPollingListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_flockIPollingService_h__ */
