Copy as Markdown
Other Tools
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/netwerk/base/nsIClassOfService.idl
*/
#ifndef __gen_nsIClassOfService_h__
#define __gen_nsIClassOfService_h__
#include "nsISupports.h"
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
namespace mozilla::net {
class ClassOfService;
}
namespace mozilla::dom {
enum class FetchPriority: uint8_t;
}
/* starting interface: nsIClassOfService */
#define NS_ICLASSOFSERVICE_IID_STR "1ccb58ec-5e07-4cf9-a30d-ac5490d23b41"
#define NS_ICLASSOFSERVICE_IID \
{0x1ccb58ec, 0x5e07, 0x4cf9, \
{ 0xa3, 0x0d, 0xac, 0x54, 0x90, 0xd2, 0x3b, 0x41 }}
class NS_NO_VTABLE nsIClassOfService : public nsISupports {
public:
NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICLASSOFSERVICE_IID)
/* Used by ToJSValue to check which scriptable interface is implemented. */
using ScriptableInterfaceType = nsIClassOfService;
/* attribute unsigned long classFlags; */
NS_IMETHOD GetClassFlags(uint32_t *aClassFlags) = 0;
NS_IMETHOD SetClassFlags(uint32_t aClassFlags) = 0;
/* attribute boolean incremental; */
NS_IMETHOD GetIncremental(bool *aIncremental) = 0;
NS_IMETHOD SetIncremental(bool aIncremental) = 0;
/* void clearClassFlags (in unsigned long flags); */
NS_IMETHOD ClearClassFlags(uint32_t flags) = 0;
/* void addClassFlags (in unsigned long flags); */
NS_IMETHOD AddClassFlags(uint32_t flags) = 0;
/* [noscript] void setClassOfService (in ClassOfService s); */
NS_IMETHOD SetClassOfService(mozilla::net::ClassOfService s) = 0;
enum FetchPriority : uint8_t {
FETCHPRIORITY_UNSET = 0,
FETCHPRIORITY_LOW = 1,
FETCHPRIORITY_AUTO = 2,
FETCHPRIORITY_HIGH = 3,
};
/* attribute nsIClassOfService_FetchPriority fetchPriority; */
NS_IMETHOD GetFetchPriority(nsIClassOfService::FetchPriority *aFetchPriority) = 0;
NS_IMETHOD SetFetchPriority(nsIClassOfService::FetchPriority aFetchPriority) = 0;
/* [nostdcall,notxpcom] void setFetchPriorityDOM (in FetchPriorityDOM aPriority); */
virtual void SetFetchPriorityDOM(mozilla::dom::FetchPriority aPriority) = 0;
enum {
Leader = 1U,
Follower = 2U,
Speculative = 4U,
Background = 8U,
Unblocked = 16U,
Throttleable = 32U,
UrgentStart = 64U,
DontThrottle = 128U,
Tail = 256U,
TailAllowed = 512U,
TailForbidden = 1024U
};
};
NS_DEFINE_STATIC_IID_ACCESSOR(nsIClassOfService, NS_ICLASSOFSERVICE_IID)
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSICLASSOFSERVICE \
NS_IMETHOD GetClassFlags(uint32_t *aClassFlags) override; \
NS_IMETHOD SetClassFlags(uint32_t aClassFlags) override; \
NS_IMETHOD GetIncremental(bool *aIncremental) override; \
NS_IMETHOD SetIncremental(bool aIncremental) override; \
NS_IMETHOD ClearClassFlags(uint32_t flags) override; \
NS_IMETHOD AddClassFlags(uint32_t flags) override; \
NS_IMETHOD SetClassOfService(mozilla::net::ClassOfService s) override; \
NS_IMETHOD GetFetchPriority(nsIClassOfService::FetchPriority *aFetchPriority) override; \
NS_IMETHOD SetFetchPriority(nsIClassOfService::FetchPriority aFetchPriority) override; \
virtual void SetFetchPriorityDOM(mozilla::dom::FetchPriority aPriority) 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_NSICLASSOFSERVICE \
nsresult GetClassFlags(uint32_t *aClassFlags); \
nsresult SetClassFlags(uint32_t aClassFlags); \
nsresult GetIncremental(bool *aIncremental); \
nsresult SetIncremental(bool aIncremental); \
nsresult ClearClassFlags(uint32_t flags); \
nsresult AddClassFlags(uint32_t flags); \
nsresult SetClassOfService(mozilla::net::ClassOfService s); \
nsresult GetFetchPriority(nsIClassOfService::FetchPriority *aFetchPriority); \
nsresult SetFetchPriority(nsIClassOfService::FetchPriority aFetchPriority); \
void SetFetchPriorityDOM(mozilla::dom::FetchPriority aPriority); \
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSICLASSOFSERVICE(_to) \
NS_IMETHOD GetClassFlags(uint32_t *aClassFlags) override { return _to GetClassFlags(aClassFlags); } \
NS_IMETHOD SetClassFlags(uint32_t aClassFlags) override { return _to SetClassFlags(aClassFlags); } \
NS_IMETHOD GetIncremental(bool *aIncremental) override { return _to GetIncremental(aIncremental); } \
NS_IMETHOD SetIncremental(bool aIncremental) override { return _to SetIncremental(aIncremental); } \
NS_IMETHOD ClearClassFlags(uint32_t flags) override { return _to ClearClassFlags(flags); } \
NS_IMETHOD AddClassFlags(uint32_t flags) override { return _to AddClassFlags(flags); } \
NS_IMETHOD SetClassOfService(mozilla::net::ClassOfService s) override { return _to SetClassOfService(s); } \
NS_IMETHOD GetFetchPriority(nsIClassOfService::FetchPriority *aFetchPriority) override { return _to GetFetchPriority(aFetchPriority); } \
NS_IMETHOD SetFetchPriority(nsIClassOfService::FetchPriority aFetchPriority) override { return _to SetFetchPriority(aFetchPriority); } \
virtual void SetFetchPriorityDOM(mozilla::dom::FetchPriority aPriority) override { return _to SetFetchPriorityDOM(aPriority); } \
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSICLASSOFSERVICE(_to) \
NS_IMETHOD GetClassFlags(uint32_t *aClassFlags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassFlags(aClassFlags); } \
NS_IMETHOD SetClassFlags(uint32_t aClassFlags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetClassFlags(aClassFlags); } \
NS_IMETHOD GetIncremental(bool *aIncremental) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIncremental(aIncremental); } \
NS_IMETHOD SetIncremental(bool aIncremental) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIncremental(aIncremental); } \
NS_IMETHOD ClearClassFlags(uint32_t flags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearClassFlags(flags); } \
NS_IMETHOD AddClassFlags(uint32_t flags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddClassFlags(flags); } \
NS_IMETHOD SetClassOfService(mozilla::net::ClassOfService s) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetClassOfService(s); } \
NS_IMETHOD GetFetchPriority(nsIClassOfService::FetchPriority *aFetchPriority) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFetchPriority(aFetchPriority); } \
NS_IMETHOD SetFetchPriority(nsIClassOfService::FetchPriority aFetchPriority) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFetchPriority(aFetchPriority); } \
virtual void SetFetchPriorityDOM(mozilla::dom::FetchPriority aPriority) override; \
#endif /* __gen_nsIClassOfService_h__ */