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

#ifndef __gen_calIRecurrenceInfo_h__
#define __gen_calIRecurrenceInfo_h__


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

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

class calIDateTime; /* forward declaration */

class calIRecurrenceItem; /* forward declaration */

class calIIcalProperty; /* forward declaration */


/* starting interface:    calIRecurrenceInfo */
#define CALIRECURRENCEINFO_IID_STR "8ca5db89-2583-4f0c-b845-4a6d2f229efd"

#define CALIRECURRENCEINFO_IID \
  {0x8ca5db89, 0x2583, 0x4f0c, \
    { 0xb8, 0x45, 0x4a, 0x6d, 0x2f, 0x22, 0x9e, 0xfd }}

class NS_NO_VTABLE calIRecurrenceInfo : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(CALIRECURRENCEINFO_IID)

  /* readonly attribute boolean isMutable; */
  NS_IMETHOD GetIsMutable(bool *aIsMutable) = 0;

  /* void makeImmutable (); */
  NS_IMETHOD MakeImmutable(void) = 0;

  /* calIRecurrenceInfo clone (); */
  NS_IMETHOD Clone(calIRecurrenceInfo * *_retval) = 0;

  /* attribute calIItemBase item; */
  NS_IMETHOD GetItem(calIItemBase * *aItem) = 0;
  NS_IMETHOD SetItem(calIItemBase *aItem) = 0;

  /* void onStartDateChange (in calIDateTime aNewStartTime, in calIDateTime aOldStartTime); */
  NS_IMETHOD OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime) = 0;

  /* void onIdChange (in AUTF8String aNewId); */
  NS_IMETHOD OnIdChange(const nsACString & aNewId) = 0;

  /* void getRecurrenceItems (out unsigned long aCount, [array, size_is (aCount), retval] out calIRecurrenceItem aItems); */
  NS_IMETHOD GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems) = 0;

  /* void setRecurrenceItems (in unsigned long aCount, [array, size_is (aCount)] in calIRecurrenceItem aItems); */
  NS_IMETHOD SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems) = 0;

  /* unsigned long countRecurrenceItems (); */
  NS_IMETHOD CountRecurrenceItems(uint32_t *_retval) = 0;

  /* void clearRecurrenceItems (); */
  NS_IMETHOD ClearRecurrenceItems(void) = 0;

  /* void appendRecurrenceItem (in calIRecurrenceItem aItem); */
  NS_IMETHOD AppendRecurrenceItem(calIRecurrenceItem *aItem) = 0;

  /* calIRecurrenceItem getRecurrenceItemAt (in unsigned long aIndex); */
  NS_IMETHOD GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval) = 0;

  /* void deleteRecurrenceItemAt (in unsigned long aIndex); */
  NS_IMETHOD DeleteRecurrenceItemAt(uint32_t aIndex) = 0;

  /* void deleteRecurrenceItem (in calIRecurrenceItem aItem); */
  NS_IMETHOD DeleteRecurrenceItem(calIRecurrenceItem *aItem) = 0;

  /* void insertRecurrenceItemAt (in calIRecurrenceItem aItem, in unsigned long aIndex); */
  NS_IMETHOD InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex) = 0;

  /* readonly attribute boolean isFinite; */
  NS_IMETHOD GetIsFinite(bool *aIsFinite) = 0;

  /* void removeOccurrenceAt (in calIDateTime aRecurrenceId); */
  NS_IMETHOD RemoveOccurrenceAt(calIDateTime *aRecurrenceId) = 0;

  /* void restoreOccurrenceAt (in calIDateTime aRecurrenceId); */
  NS_IMETHOD RestoreOccurrenceAt(calIDateTime *aRecurrenceId) = 0;

  /* void modifyException (in calIItemBase anItem, in boolean aTakeOverOwnership); */
  NS_IMETHOD ModifyException(calIItemBase *anItem, bool aTakeOverOwnership) = 0;

  /* calIItemBase getExceptionFor (in calIDateTime aRecurrenceId); */
  NS_IMETHOD GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) = 0;

  /* void removeExceptionFor (in calIDateTime aRecurrenceId); */
  NS_IMETHOD RemoveExceptionFor(calIDateTime *aRecurrenceId) = 0;

  /* void getExceptionIds (out unsigned long aCount, [array, size_is (aCount), retval] out calIDateTime aIds); */
  NS_IMETHOD GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds) = 0;

  /* calIItemBase getOccurrenceFor (in calIDateTime aRecurrenceId); */
  NS_IMETHOD GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) = 0;

  /* calIItemBase getNextOccurrence (in calIDateTime aTime); */
  NS_IMETHOD GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval) = 0;

  /* calIItemBase getPreviousOccurrence (in calIDateTime aTime); */
  NS_IMETHOD GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval) = 0;

  /* void getOccurrenceDates (in calIDateTime aRangeStart, in calIDateTime aRangeEnd, in unsigned long aMaxCount, out unsigned long aCount, [array, size_is (aCount), retval] out calIDateTime aDates); */
  NS_IMETHOD GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates) = 0;

  /* void getOccurrences (in calIDateTime aRangeStart, in calIDateTime aRangeEnd, in unsigned long aMaxCount, out unsigned long aCount, [array, size_is (aCount), retval] out calIItemBase aItems); */
  NS_IMETHOD GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(calIRecurrenceInfo, CALIRECURRENCEINFO_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_CALIRECURRENCEINFO \
  NS_IMETHOD GetIsMutable(bool *aIsMutable) override; \
  NS_IMETHOD MakeImmutable(void) override; \
  NS_IMETHOD Clone(calIRecurrenceInfo * *_retval) override; \
  NS_IMETHOD GetItem(calIItemBase * *aItem) override; \
  NS_IMETHOD SetItem(calIItemBase *aItem) override; \
  NS_IMETHOD OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime) override; \
  NS_IMETHOD OnIdChange(const nsACString & aNewId) override; \
  NS_IMETHOD GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems) override; \
  NS_IMETHOD SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems) override; \
  NS_IMETHOD CountRecurrenceItems(uint32_t *_retval) override; \
  NS_IMETHOD ClearRecurrenceItems(void) override; \
  NS_IMETHOD AppendRecurrenceItem(calIRecurrenceItem *aItem) override; \
  NS_IMETHOD GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval) override; \
  NS_IMETHOD DeleteRecurrenceItemAt(uint32_t aIndex) override; \
  NS_IMETHOD DeleteRecurrenceItem(calIRecurrenceItem *aItem) override; \
  NS_IMETHOD InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex) override; \
  NS_IMETHOD GetIsFinite(bool *aIsFinite) override; \
  NS_IMETHOD RemoveOccurrenceAt(calIDateTime *aRecurrenceId) override; \
  NS_IMETHOD RestoreOccurrenceAt(calIDateTime *aRecurrenceId) override; \
  NS_IMETHOD ModifyException(calIItemBase *anItem, bool aTakeOverOwnership) override; \
  NS_IMETHOD GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override; \
  NS_IMETHOD RemoveExceptionFor(calIDateTime *aRecurrenceId) override; \
  NS_IMETHOD GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds) override; \
  NS_IMETHOD GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override; \
  NS_IMETHOD GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override; \
  NS_IMETHOD GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override; \
  NS_IMETHOD GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates) override; \
  NS_IMETHOD GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_CALIRECURRENCEINFO \
  NS_METHOD GetIsMutable(bool *aIsMutable); \
  NS_METHOD MakeImmutable(void); \
  NS_METHOD Clone(calIRecurrenceInfo * *_retval); \
  NS_METHOD GetItem(calIItemBase * *aItem); \
  NS_METHOD SetItem(calIItemBase *aItem); \
  NS_METHOD OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime); \
  NS_METHOD OnIdChange(const nsACString & aNewId); \
  NS_METHOD GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems); \
  NS_METHOD SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems); \
  NS_METHOD CountRecurrenceItems(uint32_t *_retval); \
  NS_METHOD ClearRecurrenceItems(void); \
  NS_METHOD AppendRecurrenceItem(calIRecurrenceItem *aItem); \
  NS_METHOD GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval); \
  NS_METHOD DeleteRecurrenceItemAt(uint32_t aIndex); \
  NS_METHOD DeleteRecurrenceItem(calIRecurrenceItem *aItem); \
  NS_METHOD InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex); \
  NS_METHOD GetIsFinite(bool *aIsFinite); \
  NS_METHOD RemoveOccurrenceAt(calIDateTime *aRecurrenceId); \
  NS_METHOD RestoreOccurrenceAt(calIDateTime *aRecurrenceId); \
  NS_METHOD ModifyException(calIItemBase *anItem, bool aTakeOverOwnership); \
  NS_METHOD GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval); \
  NS_METHOD RemoveExceptionFor(calIDateTime *aRecurrenceId); \
  NS_METHOD GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds); \
  NS_METHOD GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval); \
  NS_METHOD GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval); \
  NS_METHOD GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval); \
  NS_METHOD GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates); \
  NS_METHOD GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_CALIRECURRENCEINFO(_to) \
  NS_IMETHOD GetIsMutable(bool *aIsMutable) override { return _to GetIsMutable(aIsMutable); } \
  NS_IMETHOD MakeImmutable(void) override { return _to MakeImmutable(); } \
  NS_IMETHOD Clone(calIRecurrenceInfo * *_retval) override { return _to Clone(_retval); } \
  NS_IMETHOD GetItem(calIItemBase * *aItem) override { return _to GetItem(aItem); } \
  NS_IMETHOD SetItem(calIItemBase *aItem) override { return _to SetItem(aItem); } \
  NS_IMETHOD OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime) override { return _to OnStartDateChange(aNewStartTime, aOldStartTime); } \
  NS_IMETHOD OnIdChange(const nsACString & aNewId) override { return _to OnIdChange(aNewId); } \
  NS_IMETHOD GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems) override { return _to GetRecurrenceItems(aCount, aItems); } \
  NS_IMETHOD SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems) override { return _to SetRecurrenceItems(aCount, aItems); } \
  NS_IMETHOD CountRecurrenceItems(uint32_t *_retval) override { return _to CountRecurrenceItems(_retval); } \
  NS_IMETHOD ClearRecurrenceItems(void) override { return _to ClearRecurrenceItems(); } \
  NS_IMETHOD AppendRecurrenceItem(calIRecurrenceItem *aItem) override { return _to AppendRecurrenceItem(aItem); } \
  NS_IMETHOD GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval) override { return _to GetRecurrenceItemAt(aIndex, _retval); } \
  NS_IMETHOD DeleteRecurrenceItemAt(uint32_t aIndex) override { return _to DeleteRecurrenceItemAt(aIndex); } \
  NS_IMETHOD DeleteRecurrenceItem(calIRecurrenceItem *aItem) override { return _to DeleteRecurrenceItem(aItem); } \
  NS_IMETHOD InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex) override { return _to InsertRecurrenceItemAt(aItem, aIndex); } \
  NS_IMETHOD GetIsFinite(bool *aIsFinite) override { return _to GetIsFinite(aIsFinite); } \
  NS_IMETHOD RemoveOccurrenceAt(calIDateTime *aRecurrenceId) override { return _to RemoveOccurrenceAt(aRecurrenceId); } \
  NS_IMETHOD RestoreOccurrenceAt(calIDateTime *aRecurrenceId) override { return _to RestoreOccurrenceAt(aRecurrenceId); } \
  NS_IMETHOD ModifyException(calIItemBase *anItem, bool aTakeOverOwnership) override { return _to ModifyException(anItem, aTakeOverOwnership); } \
  NS_IMETHOD GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override { return _to GetExceptionFor(aRecurrenceId, _retval); } \
  NS_IMETHOD RemoveExceptionFor(calIDateTime *aRecurrenceId) override { return _to RemoveExceptionFor(aRecurrenceId); } \
  NS_IMETHOD GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds) override { return _to GetExceptionIds(aCount, aIds); } \
  NS_IMETHOD GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override { return _to GetOccurrenceFor(aRecurrenceId, _retval); } \
  NS_IMETHOD GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override { return _to GetNextOccurrence(aTime, _retval); } \
  NS_IMETHOD GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override { return _to GetPreviousOccurrence(aTime, _retval); } \
  NS_IMETHOD GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates) override { return _to GetOccurrenceDates(aRangeStart, aRangeEnd, aMaxCount, aCount, aDates); } \
  NS_IMETHOD GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems) override { return _to GetOccurrences(aRangeStart, aRangeEnd, aMaxCount, aCount, aItems); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_CALIRECURRENCEINFO(_to) \
  NS_IMETHOD GetIsMutable(bool *aIsMutable) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsMutable(aIsMutable); } \
  NS_IMETHOD MakeImmutable(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MakeImmutable(); } \
  NS_IMETHOD Clone(calIRecurrenceInfo * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Clone(_retval); } \
  NS_IMETHOD GetItem(calIItemBase * *aItem) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetItem(aItem); } \
  NS_IMETHOD SetItem(calIItemBase *aItem) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetItem(aItem); } \
  NS_IMETHOD OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->OnStartDateChange(aNewStartTime, aOldStartTime); } \
  NS_IMETHOD OnIdChange(const nsACString & aNewId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->OnIdChange(aNewId); } \
  NS_IMETHOD GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRecurrenceItems(aCount, aItems); } \
  NS_IMETHOD SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetRecurrenceItems(aCount, aItems); } \
  NS_IMETHOD CountRecurrenceItems(uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CountRecurrenceItems(_retval); } \
  NS_IMETHOD ClearRecurrenceItems(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearRecurrenceItems(); } \
  NS_IMETHOD AppendRecurrenceItem(calIRecurrenceItem *aItem) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AppendRecurrenceItem(aItem); } \
  NS_IMETHOD GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRecurrenceItemAt(aIndex, _retval); } \
  NS_IMETHOD DeleteRecurrenceItemAt(uint32_t aIndex) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteRecurrenceItemAt(aIndex); } \
  NS_IMETHOD DeleteRecurrenceItem(calIRecurrenceItem *aItem) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteRecurrenceItem(aItem); } \
  NS_IMETHOD InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex) override { return !_to ? NS_ERROR_NULL_POINTER : _to->InsertRecurrenceItemAt(aItem, aIndex); } \
  NS_IMETHOD GetIsFinite(bool *aIsFinite) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsFinite(aIsFinite); } \
  NS_IMETHOD RemoveOccurrenceAt(calIDateTime *aRecurrenceId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveOccurrenceAt(aRecurrenceId); } \
  NS_IMETHOD RestoreOccurrenceAt(calIDateTime *aRecurrenceId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RestoreOccurrenceAt(aRecurrenceId); } \
  NS_IMETHOD ModifyException(calIItemBase *anItem, bool aTakeOverOwnership) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ModifyException(anItem, aTakeOverOwnership); } \
  NS_IMETHOD GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetExceptionFor(aRecurrenceId, _retval); } \
  NS_IMETHOD RemoveExceptionFor(calIDateTime *aRecurrenceId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveExceptionFor(aRecurrenceId); } \
  NS_IMETHOD GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetExceptionIds(aCount, aIds); } \
  NS_IMETHOD GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOccurrenceFor(aRecurrenceId, _retval); } \
  NS_IMETHOD GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNextOccurrence(aTime, _retval); } \
  NS_IMETHOD GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPreviousOccurrence(aTime, _retval); } \
  NS_IMETHOD GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOccurrenceDates(aRangeStart, aRangeEnd, aMaxCount, aCount, aDates); } \
  NS_IMETHOD GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOccurrences(aRangeStart, aRangeEnd, aMaxCount, aCount, aItems); } 

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

/* Header file */
class _MYCLASS_ : public calIRecurrenceInfo
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_CALIRECURRENCEINFO

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(_MYCLASS_, calIRecurrenceInfo)

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

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

/* readonly attribute boolean isMutable; */
NS_IMETHODIMP _MYCLASS_::GetIsMutable(bool *aIsMutable)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void makeImmutable (); */
NS_IMETHODIMP _MYCLASS_::MakeImmutable()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIRecurrenceInfo clone (); */
NS_IMETHODIMP _MYCLASS_::Clone(calIRecurrenceInfo * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute calIItemBase item; */
NS_IMETHODIMP _MYCLASS_::GetItem(calIItemBase * *aItem)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP _MYCLASS_::SetItem(calIItemBase *aItem)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void onStartDateChange (in calIDateTime aNewStartTime, in calIDateTime aOldStartTime); */
NS_IMETHODIMP _MYCLASS_::OnStartDateChange(calIDateTime *aNewStartTime, calIDateTime *aOldStartTime)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void onIdChange (in AUTF8String aNewId); */
NS_IMETHODIMP _MYCLASS_::OnIdChange(const nsACString & aNewId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void getRecurrenceItems (out unsigned long aCount, [array, size_is (aCount), retval] out calIRecurrenceItem aItems); */
NS_IMETHODIMP _MYCLASS_::GetRecurrenceItems(uint32_t *aCount, calIRecurrenceItem * **aItems)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setRecurrenceItems (in unsigned long aCount, [array, size_is (aCount)] in calIRecurrenceItem aItems); */
NS_IMETHODIMP _MYCLASS_::SetRecurrenceItems(uint32_t aCount, calIRecurrenceItem **aItems)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* unsigned long countRecurrenceItems (); */
NS_IMETHODIMP _MYCLASS_::CountRecurrenceItems(uint32_t *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void clearRecurrenceItems (); */
NS_IMETHODIMP _MYCLASS_::ClearRecurrenceItems()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void appendRecurrenceItem (in calIRecurrenceItem aItem); */
NS_IMETHODIMP _MYCLASS_::AppendRecurrenceItem(calIRecurrenceItem *aItem)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIRecurrenceItem getRecurrenceItemAt (in unsigned long aIndex); */
NS_IMETHODIMP _MYCLASS_::GetRecurrenceItemAt(uint32_t aIndex, calIRecurrenceItem * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void deleteRecurrenceItemAt (in unsigned long aIndex); */
NS_IMETHODIMP _MYCLASS_::DeleteRecurrenceItemAt(uint32_t aIndex)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void deleteRecurrenceItem (in calIRecurrenceItem aItem); */
NS_IMETHODIMP _MYCLASS_::DeleteRecurrenceItem(calIRecurrenceItem *aItem)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void insertRecurrenceItemAt (in calIRecurrenceItem aItem, in unsigned long aIndex); */
NS_IMETHODIMP _MYCLASS_::InsertRecurrenceItemAt(calIRecurrenceItem *aItem, uint32_t aIndex)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean isFinite; */
NS_IMETHODIMP _MYCLASS_::GetIsFinite(bool *aIsFinite)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeOccurrenceAt (in calIDateTime aRecurrenceId); */
NS_IMETHODIMP _MYCLASS_::RemoveOccurrenceAt(calIDateTime *aRecurrenceId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void restoreOccurrenceAt (in calIDateTime aRecurrenceId); */
NS_IMETHODIMP _MYCLASS_::RestoreOccurrenceAt(calIDateTime *aRecurrenceId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void modifyException (in calIItemBase anItem, in boolean aTakeOverOwnership); */
NS_IMETHODIMP _MYCLASS_::ModifyException(calIItemBase *anItem, bool aTakeOverOwnership)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIItemBase getExceptionFor (in calIDateTime aRecurrenceId); */
NS_IMETHODIMP _MYCLASS_::GetExceptionFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeExceptionFor (in calIDateTime aRecurrenceId); */
NS_IMETHODIMP _MYCLASS_::RemoveExceptionFor(calIDateTime *aRecurrenceId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void getExceptionIds (out unsigned long aCount, [array, size_is (aCount), retval] out calIDateTime aIds); */
NS_IMETHODIMP _MYCLASS_::GetExceptionIds(uint32_t *aCount, calIDateTime * **aIds)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIItemBase getOccurrenceFor (in calIDateTime aRecurrenceId); */
NS_IMETHODIMP _MYCLASS_::GetOccurrenceFor(calIDateTime *aRecurrenceId, calIItemBase * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIItemBase getNextOccurrence (in calIDateTime aTime); */
NS_IMETHODIMP _MYCLASS_::GetNextOccurrence(calIDateTime *aTime, calIItemBase * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* calIItemBase getPreviousOccurrence (in calIDateTime aTime); */
NS_IMETHODIMP _MYCLASS_::GetPreviousOccurrence(calIDateTime *aTime, calIItemBase * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void getOccurrenceDates (in calIDateTime aRangeStart, in calIDateTime aRangeEnd, in unsigned long aMaxCount, out unsigned long aCount, [array, size_is (aCount), retval] out calIDateTime aDates); */
NS_IMETHODIMP _MYCLASS_::GetOccurrenceDates(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIDateTime * **aDates)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void getOccurrences (in calIDateTime aRangeStart, in calIDateTime aRangeEnd, in unsigned long aMaxCount, out unsigned long aCount, [array, size_is (aCount), retval] out calIItemBase aItems); */
NS_IMETHODIMP _MYCLASS_::GetOccurrences(calIDateTime *aRangeStart, calIDateTime *aRangeEnd, uint32_t aMaxCount, uint32_t *aCount, calIItemBase * **aItems)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_calIRecurrenceInfo_h__ */
