/* * DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/toolkit/components/timermanager/nsIUpdateTimerManager.idl */ #ifndef __gen_nsIUpdateTimerManager_h__ #define __gen_nsIUpdateTimerManager_h__ #include "nsISupports.h" #include "js/GCAnnotations.h" /* For IDL files that don't want to include root IDL files. */ #ifndef NS_NO_VTABLE #define NS_NO_VTABLE #endif class nsITimerCallback; /* forward declaration */ /* starting interface: nsIUpdateTimerManager */ #define NS_IUPDATETIMERMANAGER_IID_STR "0765c92c-6145-4253-9db4-594d8023087e" #define NS_IUPDATETIMERMANAGER_IID \ {0x0765c92c, 0x6145, 0x4253, \ { 0x9d, 0xb4, 0x59, 0x4d, 0x80, 0x23, 0x08, 0x7e }} class NS_NO_VTABLE MOZ_BINDING(binding_to, idl, class, XPIDL_nsIUpdateTimerManager) nsIUpdateTimerManager : public nsISupports { public: NS_INLINE_DECL_STATIC_IID(NS_IUPDATETIMERMANAGER_IID) /* Used by ToJSValue to check which scriptable interface is implemented. */ using ScriptableInterfaceType = nsIUpdateTimerManager; /* void registerTimer (in AString id, in nsITimerCallback callback, in unsigned long interval, [optional] in boolean skipFirst); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIUpdateTimerManager_registerTimer) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD RegisterTimer(const nsAString& id, nsITimerCallback *callback, uint32_t interval, bool skipFirst) = 0; /* void unregisterTimer (in AString id); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIUpdateTimerManager_unregisterTimer) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD UnregisterTimer(const nsAString& id) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSIUPDATETIMERMANAGER \ NS_IMETHOD RegisterTimer(const nsAString& id, nsITimerCallback *callback, uint32_t interval, bool skipFirst) override; \ NS_IMETHOD UnregisterTimer(const nsAString& id) 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_NSIUPDATETIMERMANAGER \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIUpdateTimerManager_registerTimer)\ nsresult RegisterTimer(const nsAString& id, nsITimerCallback *callback, uint32_t interval, bool skipFirst); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIUpdateTimerManager_unregisterTimer)\ nsresult UnregisterTimer(const nsAString& id); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSIUPDATETIMERMANAGER(_to) \ NS_IMETHOD RegisterTimer(const nsAString& id, nsITimerCallback *callback, uint32_t interval, bool skipFirst) override { return _to RegisterTimer(id, callback, interval, skipFirst); } \ NS_IMETHOD UnregisterTimer(const nsAString& id) override { return _to UnregisterTimer(id); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSIUPDATETIMERMANAGER(_to) \ NS_IMETHOD RegisterTimer(const nsAString& id, nsITimerCallback *callback, uint32_t interval, bool skipFirst) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RegisterTimer(id, callback, interval, skipFirst); } \ NS_IMETHOD UnregisterTimer(const nsAString& id) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnregisterTimer(id); } #endif /* __gen_nsIUpdateTimerManager_h__ */