LCOV - code coverage report
Current view: top level - obj-x86_64-pc-linux-gnu/dist/include - nsIPerformanceStats.h (source / functions) Hit Total Coverage
Test: output.info Lines: 0 6 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 6 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsIPerformanceStats.idl
       3             :  */
       4             : 
       5             : #ifndef __gen_nsIPerformanceStats_h__
       6             : #define __gen_nsIPerformanceStats_h__
       7             : 
       8             : 
       9             : #ifndef __gen_nsISupports_h__
      10             : #include "nsISupports.h"
      11             : #endif
      12             : 
      13             : #ifndef __gen_nsIArray_h__
      14             : #include "nsIArray.h"
      15             : #endif
      16             : 
      17             : #ifndef __gen_nsIDOMWindow_h__
      18             : #include "nsIDOMWindow.h"
      19             : #endif
      20             : 
      21             : #include "js/Value.h"
      22             : 
      23             : /* For IDL files that don't want to include root IDL files. */
      24             : #ifndef NS_NO_VTABLE
      25             : #define NS_NO_VTABLE
      26             : #endif
      27             : 
      28             : /* starting interface:    nsIPerformanceGroupDetails */
      29             : #define NS_IPERFORMANCEGROUPDETAILS_IID_STR "994c56be-939a-4f20-8364-124f6422d86a"
      30             : 
      31             : #define NS_IPERFORMANCEGROUPDETAILS_IID \
      32             :   {0x994c56be, 0x939a, 0x4f20, \
      33             :     { 0x83, 0x64, 0x12, 0x4f, 0x64, 0x22, 0xd8, 0x6a }}
      34             : 
      35           0 : class NS_NO_VTABLE nsIPerformanceGroupDetails : public nsISupports {
      36             :  public:
      37             : 
      38             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCEGROUPDETAILS_IID)
      39             : 
      40             :   /* readonly attribute AString groupId; */
      41             :   NS_IMETHOD GetGroupId(nsAString & aGroupId) = 0;
      42             : 
      43             :   /* readonly attribute AString name; */
      44             :   NS_IMETHOD GetName(nsAString & aName) = 0;
      45             : 
      46             :   /* readonly attribute uint64_t windowId; */
      47             :   NS_IMETHOD GetWindowId(uint64_t *aWindowId) = 0;
      48             : 
      49             :   /* readonly attribute bool isSystem; */
      50             :   NS_IMETHOD GetIsSystem(bool *aIsSystem) = 0;
      51             : 
      52             :   /* readonly attribute unsigned long long processId; */
      53             :   NS_IMETHOD GetProcessId(uint64_t *aProcessId) = 0;
      54             : 
      55             :   /* readonly attribute bool isContentProcess; */
      56             :   NS_IMETHOD GetIsContentProcess(bool *aIsContentProcess) = 0;
      57             : 
      58             : };
      59             : 
      60             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceGroupDetails, NS_IPERFORMANCEGROUPDETAILS_IID)
      61             : 
      62             : /* Use this macro when declaring classes that implement this interface. */
      63             : #define NS_DECL_NSIPERFORMANCEGROUPDETAILS \
      64             :   NS_IMETHOD GetGroupId(nsAString & aGroupId) override; \
      65             :   NS_IMETHOD GetName(nsAString & aName) override; \
      66             :   NS_IMETHOD GetWindowId(uint64_t *aWindowId) override; \
      67             :   NS_IMETHOD GetIsSystem(bool *aIsSystem) override; \
      68             :   NS_IMETHOD GetProcessId(uint64_t *aProcessId) override; \
      69             :   NS_IMETHOD GetIsContentProcess(bool *aIsContentProcess) override; 
      70             : 
      71             : /* Use this macro when declaring the members of this interface when the
      72             :    class doesn't implement the interface. This is useful for forwarding. */
      73             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCEGROUPDETAILS \
      74             :   nsresult GetGroupId(nsAString & aGroupId); \
      75             :   nsresult GetName(nsAString & aName); \
      76             :   nsresult GetWindowId(uint64_t *aWindowId); \
      77             :   nsresult GetIsSystem(bool *aIsSystem); \
      78             :   nsresult GetProcessId(uint64_t *aProcessId); \
      79             :   nsresult GetIsContentProcess(bool *aIsContentProcess); 
      80             : 
      81             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
      82             : #define NS_FORWARD_NSIPERFORMANCEGROUPDETAILS(_to) \
      83             :   NS_IMETHOD GetGroupId(nsAString & aGroupId) override { return _to GetGroupId(aGroupId); } \
      84             :   NS_IMETHOD GetName(nsAString & aName) override { return _to GetName(aName); } \
      85             :   NS_IMETHOD GetWindowId(uint64_t *aWindowId) override { return _to GetWindowId(aWindowId); } \
      86             :   NS_IMETHOD GetIsSystem(bool *aIsSystem) override { return _to GetIsSystem(aIsSystem); } \
      87             :   NS_IMETHOD GetProcessId(uint64_t *aProcessId) override { return _to GetProcessId(aProcessId); } \
      88             :   NS_IMETHOD GetIsContentProcess(bool *aIsContentProcess) override { return _to GetIsContentProcess(aIsContentProcess); } 
      89             : 
      90             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
      91             : #define NS_FORWARD_SAFE_NSIPERFORMANCEGROUPDETAILS(_to) \
      92             :   NS_IMETHOD GetGroupId(nsAString & aGroupId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGroupId(aGroupId); } \
      93             :   NS_IMETHOD GetName(nsAString & aName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
      94             :   NS_IMETHOD GetWindowId(uint64_t *aWindowId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWindowId(aWindowId); } \
      95             :   NS_IMETHOD GetIsSystem(bool *aIsSystem) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsSystem(aIsSystem); } \
      96             :   NS_IMETHOD GetProcessId(uint64_t *aProcessId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProcessId(aProcessId); } \
      97             :   NS_IMETHOD GetIsContentProcess(bool *aIsContentProcess) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsContentProcess(aIsContentProcess); } 
      98             : 
      99             : #if 0
     100             : /* Use the code below as a template for the implementation class for this interface. */
     101             : 
     102             : /* Header file */
     103             : class nsPerformanceGroupDetails : public nsIPerformanceGroupDetails
     104             : {
     105             : public:
     106             :   NS_DECL_ISUPPORTS
     107             :   NS_DECL_NSIPERFORMANCEGROUPDETAILS
     108             : 
     109             :   nsPerformanceGroupDetails();
     110             : 
     111             : private:
     112             :   ~nsPerformanceGroupDetails();
     113             : 
     114             : protected:
     115             :   /* additional members */
     116             : };
     117             : 
     118             : /* Implementation file */
     119             : NS_IMPL_ISUPPORTS(nsPerformanceGroupDetails, nsIPerformanceGroupDetails)
     120             : 
     121             : nsPerformanceGroupDetails::nsPerformanceGroupDetails()
     122             : {
     123             :   /* member initializers and constructor code */
     124             : }
     125             : 
     126             : nsPerformanceGroupDetails::~nsPerformanceGroupDetails()
     127             : {
     128             :   /* destructor code */
     129             : }
     130             : 
     131             : /* readonly attribute AString groupId; */
     132             : NS_IMETHODIMP nsPerformanceGroupDetails::GetGroupId(nsAString & aGroupId)
     133             : {
     134             :     return NS_ERROR_NOT_IMPLEMENTED;
     135             : }
     136             : 
     137             : /* readonly attribute AString name; */
     138             : NS_IMETHODIMP nsPerformanceGroupDetails::GetName(nsAString & aName)
     139             : {
     140             :     return NS_ERROR_NOT_IMPLEMENTED;
     141             : }
     142             : 
     143             : /* readonly attribute uint64_t windowId; */
     144             : NS_IMETHODIMP nsPerformanceGroupDetails::GetWindowId(uint64_t *aWindowId)
     145             : {
     146             :     return NS_ERROR_NOT_IMPLEMENTED;
     147             : }
     148             : 
     149             : /* readonly attribute bool isSystem; */
     150             : NS_IMETHODIMP nsPerformanceGroupDetails::GetIsSystem(bool *aIsSystem)
     151             : {
     152             :     return NS_ERROR_NOT_IMPLEMENTED;
     153             : }
     154             : 
     155             : /* readonly attribute unsigned long long processId; */
     156             : NS_IMETHODIMP nsPerformanceGroupDetails::GetProcessId(uint64_t *aProcessId)
     157             : {
     158             :     return NS_ERROR_NOT_IMPLEMENTED;
     159             : }
     160             : 
     161             : /* readonly attribute bool isContentProcess; */
     162             : NS_IMETHODIMP nsPerformanceGroupDetails::GetIsContentProcess(bool *aIsContentProcess)
     163             : {
     164             :     return NS_ERROR_NOT_IMPLEMENTED;
     165             : }
     166             : 
     167             : /* End of implementation class template. */
     168             : #endif
     169             : 
     170             : 
     171             : /* starting interface:    nsIPerformanceStats */
     172             : #define NS_IPERFORMANCESTATS_IID_STR "8a635d4b-aa56-466b-9a7d-9f91ca9405ef"
     173             : 
     174             : #define NS_IPERFORMANCESTATS_IID \
     175             :   {0x8a635d4b, 0xaa56, 0x466b, \
     176             :     { 0x9a, 0x7d, 0x9f, 0x91, 0xca, 0x94, 0x05, 0xef }}
     177             : 
     178           0 : class NS_NO_VTABLE nsIPerformanceStats : public nsIPerformanceGroupDetails {
     179             :  public:
     180             : 
     181             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCESTATS_IID)
     182             : 
     183             :   /* readonly attribute unsigned long long totalUserTime; */
     184             :   NS_IMETHOD GetTotalUserTime(uint64_t *aTotalUserTime) = 0;
     185             : 
     186             :   /* readonly attribute unsigned long long totalSystemTime; */
     187             :   NS_IMETHOD GetTotalSystemTime(uint64_t *aTotalSystemTime) = 0;
     188             : 
     189             :   /* readonly attribute unsigned long long totalCPOWTime; */
     190             :   NS_IMETHOD GetTotalCPOWTime(uint64_t *aTotalCPOWTime) = 0;
     191             : 
     192             :   /* readonly attribute unsigned long long ticks; */
     193             :   NS_IMETHOD GetTicks(uint64_t *aTicks) = 0;
     194             : 
     195             :   /* void getDurations ([optional] out unsigned long aCount, [array, size_is (aCount), retval] out unsigned long long aNumberOfOccurrences); */
     196             :   NS_IMETHOD GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences) = 0;
     197             : 
     198             : };
     199             : 
     200             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceStats, NS_IPERFORMANCESTATS_IID)
     201             : 
     202             : /* Use this macro when declaring classes that implement this interface. */
     203             : #define NS_DECL_NSIPERFORMANCESTATS \
     204             :   NS_IMETHOD GetTotalUserTime(uint64_t *aTotalUserTime) override; \
     205             :   NS_IMETHOD GetTotalSystemTime(uint64_t *aTotalSystemTime) override; \
     206             :   NS_IMETHOD GetTotalCPOWTime(uint64_t *aTotalCPOWTime) override; \
     207             :   NS_IMETHOD GetTicks(uint64_t *aTicks) override; \
     208             :   NS_IMETHOD GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences) override; 
     209             : 
     210             : /* Use this macro when declaring the members of this interface when the
     211             :    class doesn't implement the interface. This is useful for forwarding. */
     212             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCESTATS \
     213             :   nsresult GetTotalUserTime(uint64_t *aTotalUserTime); \
     214             :   nsresult GetTotalSystemTime(uint64_t *aTotalSystemTime); \
     215             :   nsresult GetTotalCPOWTime(uint64_t *aTotalCPOWTime); \
     216             :   nsresult GetTicks(uint64_t *aTicks); \
     217             :   nsresult GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences); 
     218             : 
     219             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     220             : #define NS_FORWARD_NSIPERFORMANCESTATS(_to) \
     221             :   NS_IMETHOD GetTotalUserTime(uint64_t *aTotalUserTime) override { return _to GetTotalUserTime(aTotalUserTime); } \
     222             :   NS_IMETHOD GetTotalSystemTime(uint64_t *aTotalSystemTime) override { return _to GetTotalSystemTime(aTotalSystemTime); } \
     223             :   NS_IMETHOD GetTotalCPOWTime(uint64_t *aTotalCPOWTime) override { return _to GetTotalCPOWTime(aTotalCPOWTime); } \
     224             :   NS_IMETHOD GetTicks(uint64_t *aTicks) override { return _to GetTicks(aTicks); } \
     225             :   NS_IMETHOD GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences) override { return _to GetDurations(aCount, aNumberOfOccurrences); } 
     226             : 
     227             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     228             : #define NS_FORWARD_SAFE_NSIPERFORMANCESTATS(_to) \
     229             :   NS_IMETHOD GetTotalUserTime(uint64_t *aTotalUserTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTotalUserTime(aTotalUserTime); } \
     230             :   NS_IMETHOD GetTotalSystemTime(uint64_t *aTotalSystemTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTotalSystemTime(aTotalSystemTime); } \
     231             :   NS_IMETHOD GetTotalCPOWTime(uint64_t *aTotalCPOWTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTotalCPOWTime(aTotalCPOWTime); } \
     232             :   NS_IMETHOD GetTicks(uint64_t *aTicks) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTicks(aTicks); } \
     233             :   NS_IMETHOD GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDurations(aCount, aNumberOfOccurrences); } 
     234             : 
     235             : #if 0
     236             : /* Use the code below as a template for the implementation class for this interface. */
     237             : 
     238             : /* Header file */
     239             : class nsPerformanceStats : public nsIPerformanceStats
     240             : {
     241             : public:
     242             :   NS_DECL_ISUPPORTS
     243             :   NS_DECL_NSIPERFORMANCESTATS
     244             : 
     245             :   nsPerformanceStats();
     246             : 
     247             : private:
     248             :   ~nsPerformanceStats();
     249             : 
     250             : protected:
     251             :   /* additional members */
     252             : };
     253             : 
     254             : /* Implementation file */
     255             : NS_IMPL_ISUPPORTS(nsPerformanceStats, nsIPerformanceStats)
     256             : 
     257             : nsPerformanceStats::nsPerformanceStats()
     258             : {
     259             :   /* member initializers and constructor code */
     260             : }
     261             : 
     262             : nsPerformanceStats::~nsPerformanceStats()
     263             : {
     264             :   /* destructor code */
     265             : }
     266             : 
     267             : /* readonly attribute unsigned long long totalUserTime; */
     268             : NS_IMETHODIMP nsPerformanceStats::GetTotalUserTime(uint64_t *aTotalUserTime)
     269             : {
     270             :     return NS_ERROR_NOT_IMPLEMENTED;
     271             : }
     272             : 
     273             : /* readonly attribute unsigned long long totalSystemTime; */
     274             : NS_IMETHODIMP nsPerformanceStats::GetTotalSystemTime(uint64_t *aTotalSystemTime)
     275             : {
     276             :     return NS_ERROR_NOT_IMPLEMENTED;
     277             : }
     278             : 
     279             : /* readonly attribute unsigned long long totalCPOWTime; */
     280             : NS_IMETHODIMP nsPerformanceStats::GetTotalCPOWTime(uint64_t *aTotalCPOWTime)
     281             : {
     282             :     return NS_ERROR_NOT_IMPLEMENTED;
     283             : }
     284             : 
     285             : /* readonly attribute unsigned long long ticks; */
     286             : NS_IMETHODIMP nsPerformanceStats::GetTicks(uint64_t *aTicks)
     287             : {
     288             :     return NS_ERROR_NOT_IMPLEMENTED;
     289             : }
     290             : 
     291             : /* void getDurations ([optional] out unsigned long aCount, [array, size_is (aCount), retval] out unsigned long long aNumberOfOccurrences); */
     292             : NS_IMETHODIMP nsPerformanceStats::GetDurations(uint32_t *aCount, uint64_t **aNumberOfOccurrences)
     293             : {
     294             :     return NS_ERROR_NOT_IMPLEMENTED;
     295             : }
     296             : 
     297             : /* End of implementation class template. */
     298             : #endif
     299             : 
     300             : 
     301             : /* starting interface:    nsIPerformanceSnapshot */
     302             : #define NS_IPERFORMANCESNAPSHOT_IID_STR "13cc235b-739e-4690-b0e3-d89cbe036a93"
     303             : 
     304             : #define NS_IPERFORMANCESNAPSHOT_IID \
     305             :   {0x13cc235b, 0x739e, 0x4690, \
     306             :     { 0xb0, 0xe3, 0xd8, 0x9c, 0xbe, 0x03, 0x6a, 0x93 }}
     307             : 
     308           0 : class NS_NO_VTABLE nsIPerformanceSnapshot : public nsISupports {
     309             :  public:
     310             : 
     311             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCESNAPSHOT_IID)
     312             : 
     313             :   /* nsIArray getComponentsData (); */
     314             :   NS_IMETHOD GetComponentsData(nsIArray * *_retval) = 0;
     315             : 
     316             :   /* nsIPerformanceStats getProcessData (); */
     317             :   NS_IMETHOD GetProcessData(nsIPerformanceStats * *_retval) = 0;
     318             : 
     319             : };
     320             : 
     321             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceSnapshot, NS_IPERFORMANCESNAPSHOT_IID)
     322             : 
     323             : /* Use this macro when declaring classes that implement this interface. */
     324             : #define NS_DECL_NSIPERFORMANCESNAPSHOT \
     325             :   NS_IMETHOD GetComponentsData(nsIArray * *_retval) override; \
     326             :   NS_IMETHOD GetProcessData(nsIPerformanceStats * *_retval) override; 
     327             : 
     328             : /* Use this macro when declaring the members of this interface when the
     329             :    class doesn't implement the interface. This is useful for forwarding. */
     330             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCESNAPSHOT \
     331             :   nsresult GetComponentsData(nsIArray * *_retval); \
     332             :   nsresult GetProcessData(nsIPerformanceStats * *_retval); 
     333             : 
     334             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     335             : #define NS_FORWARD_NSIPERFORMANCESNAPSHOT(_to) \
     336             :   NS_IMETHOD GetComponentsData(nsIArray * *_retval) override { return _to GetComponentsData(_retval); } \
     337             :   NS_IMETHOD GetProcessData(nsIPerformanceStats * *_retval) override { return _to GetProcessData(_retval); } 
     338             : 
     339             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     340             : #define NS_FORWARD_SAFE_NSIPERFORMANCESNAPSHOT(_to) \
     341             :   NS_IMETHOD GetComponentsData(nsIArray * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetComponentsData(_retval); } \
     342             :   NS_IMETHOD GetProcessData(nsIPerformanceStats * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProcessData(_retval); } 
     343             : 
     344             : #if 0
     345             : /* Use the code below as a template for the implementation class for this interface. */
     346             : 
     347             : /* Header file */
     348             : class nsPerformanceSnapshot : public nsIPerformanceSnapshot
     349             : {
     350             : public:
     351             :   NS_DECL_ISUPPORTS
     352             :   NS_DECL_NSIPERFORMANCESNAPSHOT
     353             : 
     354             :   nsPerformanceSnapshot();
     355             : 
     356             : private:
     357             :   ~nsPerformanceSnapshot();
     358             : 
     359             : protected:
     360             :   /* additional members */
     361             : };
     362             : 
     363             : /* Implementation file */
     364             : NS_IMPL_ISUPPORTS(nsPerformanceSnapshot, nsIPerformanceSnapshot)
     365             : 
     366             : nsPerformanceSnapshot::nsPerformanceSnapshot()
     367             : {
     368             :   /* member initializers and constructor code */
     369             : }
     370             : 
     371             : nsPerformanceSnapshot::~nsPerformanceSnapshot()
     372             : {
     373             :   /* destructor code */
     374             : }
     375             : 
     376             : /* nsIArray getComponentsData (); */
     377             : NS_IMETHODIMP nsPerformanceSnapshot::GetComponentsData(nsIArray * *_retval)
     378             : {
     379             :     return NS_ERROR_NOT_IMPLEMENTED;
     380             : }
     381             : 
     382             : /* nsIPerformanceStats getProcessData (); */
     383             : NS_IMETHODIMP nsPerformanceSnapshot::GetProcessData(nsIPerformanceStats * *_retval)
     384             : {
     385             :     return NS_ERROR_NOT_IMPLEMENTED;
     386             : }
     387             : 
     388             : /* End of implementation class template. */
     389             : #endif
     390             : 
     391             : 
     392             : /* starting interface:    nsIPerformanceAlert */
     393             : #define NS_IPERFORMANCEALERT_IID_STR "a85706ab-d703-4687-8865-78cd771eab93"
     394             : 
     395             : #define NS_IPERFORMANCEALERT_IID \
     396             :   {0xa85706ab, 0xd703, 0x4687, \
     397             :     { 0x88, 0x65, 0x78, 0xcd, 0x77, 0x1e, 0xab, 0x93 }}
     398             : 
     399           0 : class NS_NO_VTABLE nsIPerformanceAlert : public nsISupports {
     400             :  public:
     401             : 
     402             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCEALERT_IID)
     403             : 
     404             :   enum {
     405             :     REASON_SLOWDOWN = 1U,
     406             :     REASON_JANK_IN_ANIMATION = 2U,
     407             :     REASON_JANK_IN_INPUT = 4U
     408             :   };
     409             : 
     410             :   /* readonly attribute unsigned long reason; */
     411             :   NS_IMETHOD GetReason(uint32_t *aReason) = 0;
     412             : 
     413             :   /* readonly attribute unsigned long long highestJank; */
     414             :   NS_IMETHOD GetHighestJank(uint64_t *aHighestJank) = 0;
     415             : 
     416             :   /* readonly attribute unsigned long long highestCPOW; */
     417             :   NS_IMETHOD GetHighestCPOW(uint64_t *aHighestCPOW) = 0;
     418             : 
     419             : };
     420             : 
     421             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceAlert, NS_IPERFORMANCEALERT_IID)
     422             : 
     423             : /* Use this macro when declaring classes that implement this interface. */
     424             : #define NS_DECL_NSIPERFORMANCEALERT \
     425             :   NS_IMETHOD GetReason(uint32_t *aReason) override; \
     426             :   NS_IMETHOD GetHighestJank(uint64_t *aHighestJank) override; \
     427             :   NS_IMETHOD GetHighestCPOW(uint64_t *aHighestCPOW) override; 
     428             : 
     429             : /* Use this macro when declaring the members of this interface when the
     430             :    class doesn't implement the interface. This is useful for forwarding. */
     431             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCEALERT \
     432             :   nsresult GetReason(uint32_t *aReason); \
     433             :   nsresult GetHighestJank(uint64_t *aHighestJank); \
     434             :   nsresult GetHighestCPOW(uint64_t *aHighestCPOW); 
     435             : 
     436             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     437             : #define NS_FORWARD_NSIPERFORMANCEALERT(_to) \
     438             :   NS_IMETHOD GetReason(uint32_t *aReason) override { return _to GetReason(aReason); } \
     439             :   NS_IMETHOD GetHighestJank(uint64_t *aHighestJank) override { return _to GetHighestJank(aHighestJank); } \
     440             :   NS_IMETHOD GetHighestCPOW(uint64_t *aHighestCPOW) override { return _to GetHighestCPOW(aHighestCPOW); } 
     441             : 
     442             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     443             : #define NS_FORWARD_SAFE_NSIPERFORMANCEALERT(_to) \
     444             :   NS_IMETHOD GetReason(uint32_t *aReason) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReason(aReason); } \
     445             :   NS_IMETHOD GetHighestJank(uint64_t *aHighestJank) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHighestJank(aHighestJank); } \
     446             :   NS_IMETHOD GetHighestCPOW(uint64_t *aHighestCPOW) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHighestCPOW(aHighestCPOW); } 
     447             : 
     448             : #if 0
     449             : /* Use the code below as a template for the implementation class for this interface. */
     450             : 
     451             : /* Header file */
     452             : class nsPerformanceAlert : public nsIPerformanceAlert
     453             : {
     454             : public:
     455             :   NS_DECL_ISUPPORTS
     456             :   NS_DECL_NSIPERFORMANCEALERT
     457             : 
     458             :   nsPerformanceAlert();
     459             : 
     460             : private:
     461             :   ~nsPerformanceAlert();
     462             : 
     463             : protected:
     464             :   /* additional members */
     465             : };
     466             : 
     467             : /* Implementation file */
     468             : NS_IMPL_ISUPPORTS(nsPerformanceAlert, nsIPerformanceAlert)
     469             : 
     470             : nsPerformanceAlert::nsPerformanceAlert()
     471             : {
     472             :   /* member initializers and constructor code */
     473             : }
     474             : 
     475             : nsPerformanceAlert::~nsPerformanceAlert()
     476             : {
     477             :   /* destructor code */
     478             : }
     479             : 
     480             : /* readonly attribute unsigned long reason; */
     481             : NS_IMETHODIMP nsPerformanceAlert::GetReason(uint32_t *aReason)
     482             : {
     483             :     return NS_ERROR_NOT_IMPLEMENTED;
     484             : }
     485             : 
     486             : /* readonly attribute unsigned long long highestJank; */
     487             : NS_IMETHODIMP nsPerformanceAlert::GetHighestJank(uint64_t *aHighestJank)
     488             : {
     489             :     return NS_ERROR_NOT_IMPLEMENTED;
     490             : }
     491             : 
     492             : /* readonly attribute unsigned long long highestCPOW; */
     493             : NS_IMETHODIMP nsPerformanceAlert::GetHighestCPOW(uint64_t *aHighestCPOW)
     494             : {
     495             :     return NS_ERROR_NOT_IMPLEMENTED;
     496             : }
     497             : 
     498             : /* End of implementation class template. */
     499             : #endif
     500             : 
     501             : 
     502             : /* starting interface:    nsIPerformanceObserver */
     503             : #define NS_IPERFORMANCEOBSERVER_IID_STR "b746a929-3fec-420b-8ed8-c35d71995e05"
     504             : 
     505             : #define NS_IPERFORMANCEOBSERVER_IID \
     506             :   {0xb746a929, 0x3fec, 0x420b, \
     507             :     { 0x8e, 0xd8, 0xc3, 0x5d, 0x71, 0x99, 0x5e, 0x05 }}
     508             : 
     509             : class NS_NO_VTABLE nsIPerformanceObserver : public nsISupports {
     510             :  public:
     511             : 
     512             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCEOBSERVER_IID)
     513             : 
     514             :   /* void observe (in nsIPerformanceGroupDetails target, in nsIPerformanceAlert alert); */
     515             :   NS_IMETHOD Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert) = 0;
     516             : 
     517             : };
     518             : 
     519             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceObserver, NS_IPERFORMANCEOBSERVER_IID)
     520             : 
     521             : /* Use this macro when declaring classes that implement this interface. */
     522             : #define NS_DECL_NSIPERFORMANCEOBSERVER \
     523             :   NS_IMETHOD Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert) override; 
     524             : 
     525             : /* Use this macro when declaring the members of this interface when the
     526             :    class doesn't implement the interface. This is useful for forwarding. */
     527             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCEOBSERVER \
     528             :   nsresult Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert); 
     529             : 
     530             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     531             : #define NS_FORWARD_NSIPERFORMANCEOBSERVER(_to) \
     532             :   NS_IMETHOD Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert) override { return _to Observe(target, alert); } 
     533             : 
     534             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     535             : #define NS_FORWARD_SAFE_NSIPERFORMANCEOBSERVER(_to) \
     536             :   NS_IMETHOD Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Observe(target, alert); } 
     537             : 
     538             : #if 0
     539             : /* Use the code below as a template for the implementation class for this interface. */
     540             : 
     541             : /* Header file */
     542             : class nsPerformanceObserver : public nsIPerformanceObserver
     543             : {
     544             : public:
     545             :   NS_DECL_ISUPPORTS
     546             :   NS_DECL_NSIPERFORMANCEOBSERVER
     547             : 
     548             :   nsPerformanceObserver();
     549             : 
     550             : private:
     551             :   ~nsPerformanceObserver();
     552             : 
     553             : protected:
     554             :   /* additional members */
     555             : };
     556             : 
     557             : /* Implementation file */
     558             : NS_IMPL_ISUPPORTS(nsPerformanceObserver, nsIPerformanceObserver)
     559             : 
     560             : nsPerformanceObserver::nsPerformanceObserver()
     561             : {
     562             :   /* member initializers and constructor code */
     563             : }
     564             : 
     565             : nsPerformanceObserver::~nsPerformanceObserver()
     566             : {
     567             :   /* destructor code */
     568             : }
     569             : 
     570             : /* void observe (in nsIPerformanceGroupDetails target, in nsIPerformanceAlert alert); */
     571             : NS_IMETHODIMP nsPerformanceObserver::Observe(nsIPerformanceGroupDetails *target, nsIPerformanceAlert *alert)
     572             : {
     573             :     return NS_ERROR_NOT_IMPLEMENTED;
     574             : }
     575             : 
     576             : /* End of implementation class template. */
     577             : #endif
     578             : 
     579             : 
     580             : /* starting interface:    nsIPerformanceObservable */
     581             : #define NS_IPERFORMANCEOBSERVABLE_IID_STR "b85720d0-e328-4342-9e46-8ca1acf8c70e"
     582             : 
     583             : #define NS_IPERFORMANCEOBSERVABLE_IID \
     584             :   {0xb85720d0, 0xe328, 0x4342, \
     585             :     { 0x9e, 0x46, 0x8c, 0xa1, 0xac, 0xf8, 0xc7, 0x0e }}
     586             : 
     587           0 : class NS_NO_VTABLE nsIPerformanceObservable : public nsISupports {
     588             :  public:
     589             : 
     590             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCEOBSERVABLE_IID)
     591             : 
     592             :   /* readonly attribute nsIPerformanceGroupDetails target; */
     593             :   NS_IMETHOD GetTarget(nsIPerformanceGroupDetails * *aTarget) = 0;
     594             : 
     595             :   /* void addJankObserver (in nsIPerformanceObserver observer); */
     596             :   NS_IMETHOD AddJankObserver(nsIPerformanceObserver *observer) = 0;
     597             : 
     598             :   /* void removeJankObserver (in nsIPerformanceObserver observer); */
     599             :   NS_IMETHOD RemoveJankObserver(nsIPerformanceObserver *observer) = 0;
     600             : 
     601             : };
     602             : 
     603             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceObservable, NS_IPERFORMANCEOBSERVABLE_IID)
     604             : 
     605             : /* Use this macro when declaring classes that implement this interface. */
     606             : #define NS_DECL_NSIPERFORMANCEOBSERVABLE \
     607             :   NS_IMETHOD GetTarget(nsIPerformanceGroupDetails * *aTarget) override; \
     608             :   NS_IMETHOD AddJankObserver(nsIPerformanceObserver *observer) override; \
     609             :   NS_IMETHOD RemoveJankObserver(nsIPerformanceObserver *observer) override; 
     610             : 
     611             : /* Use this macro when declaring the members of this interface when the
     612             :    class doesn't implement the interface. This is useful for forwarding. */
     613             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCEOBSERVABLE \
     614             :   nsresult GetTarget(nsIPerformanceGroupDetails * *aTarget); \
     615             :   nsresult AddJankObserver(nsIPerformanceObserver *observer); \
     616             :   nsresult RemoveJankObserver(nsIPerformanceObserver *observer); 
     617             : 
     618             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     619             : #define NS_FORWARD_NSIPERFORMANCEOBSERVABLE(_to) \
     620             :   NS_IMETHOD GetTarget(nsIPerformanceGroupDetails * *aTarget) override { return _to GetTarget(aTarget); } \
     621             :   NS_IMETHOD AddJankObserver(nsIPerformanceObserver *observer) override { return _to AddJankObserver(observer); } \
     622             :   NS_IMETHOD RemoveJankObserver(nsIPerformanceObserver *observer) override { return _to RemoveJankObserver(observer); } 
     623             : 
     624             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     625             : #define NS_FORWARD_SAFE_NSIPERFORMANCEOBSERVABLE(_to) \
     626             :   NS_IMETHOD GetTarget(nsIPerformanceGroupDetails * *aTarget) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTarget(aTarget); } \
     627             :   NS_IMETHOD AddJankObserver(nsIPerformanceObserver *observer) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddJankObserver(observer); } \
     628             :   NS_IMETHOD RemoveJankObserver(nsIPerformanceObserver *observer) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveJankObserver(observer); } 
     629             : 
     630             : #if 0
     631             : /* Use the code below as a template for the implementation class for this interface. */
     632             : 
     633             : /* Header file */
     634             : class nsPerformanceObservable : public nsIPerformanceObservable
     635             : {
     636             : public:
     637             :   NS_DECL_ISUPPORTS
     638             :   NS_DECL_NSIPERFORMANCEOBSERVABLE
     639             : 
     640             :   nsPerformanceObservable();
     641             : 
     642             : private:
     643             :   ~nsPerformanceObservable();
     644             : 
     645             : protected:
     646             :   /* additional members */
     647             : };
     648             : 
     649             : /* Implementation file */
     650             : NS_IMPL_ISUPPORTS(nsPerformanceObservable, nsIPerformanceObservable)
     651             : 
     652             : nsPerformanceObservable::nsPerformanceObservable()
     653             : {
     654             :   /* member initializers and constructor code */
     655             : }
     656             : 
     657             : nsPerformanceObservable::~nsPerformanceObservable()
     658             : {
     659             :   /* destructor code */
     660             : }
     661             : 
     662             : /* readonly attribute nsIPerformanceGroupDetails target; */
     663             : NS_IMETHODIMP nsPerformanceObservable::GetTarget(nsIPerformanceGroupDetails * *aTarget)
     664             : {
     665             :     return NS_ERROR_NOT_IMPLEMENTED;
     666             : }
     667             : 
     668             : /* void addJankObserver (in nsIPerformanceObserver observer); */
     669             : NS_IMETHODIMP nsPerformanceObservable::AddJankObserver(nsIPerformanceObserver *observer)
     670             : {
     671             :     return NS_ERROR_NOT_IMPLEMENTED;
     672             : }
     673             : 
     674             : /* void removeJankObserver (in nsIPerformanceObserver observer); */
     675             : NS_IMETHODIMP nsPerformanceObservable::RemoveJankObserver(nsIPerformanceObserver *observer)
     676             : {
     677             :     return NS_ERROR_NOT_IMPLEMENTED;
     678             : }
     679             : 
     680             : /* End of implementation class template. */
     681             : #endif
     682             : 
     683             : 
     684             : /* starting interface:    nsIPerformanceStatsService */
     685             : #define NS_IPERFORMANCESTATSSERVICE_IID_STR "505bc42e-be38-4a53-baba-92cb33690cde"
     686             : 
     687             : #define NS_IPERFORMANCESTATSSERVICE_IID \
     688             :   {0x505bc42e, 0xbe38, 0x4a53, \
     689             :     { 0xba, 0xba, 0x92, 0xcb, 0x33, 0x69, 0x0c, 0xde }}
     690             : 
     691           0 : class NS_NO_VTABLE nsIPerformanceStatsService : public nsISupports {
     692             :  public:
     693             : 
     694             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERFORMANCESTATSSERVICE_IID)
     695             : 
     696             :   /* [implicit_jscontext] attribute bool isMonitoringCPOW; */
     697             :   NS_IMETHOD GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW) = 0;
     698             :   NS_IMETHOD SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW) = 0;
     699             : 
     700             :   /* [implicit_jscontext] attribute bool isMonitoringJank; */
     701             :   NS_IMETHOD GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank) = 0;
     702             :   NS_IMETHOD SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank) = 0;
     703             : 
     704             :   /* [implicit_jscontext] attribute bool isMonitoringPerCompartment; */
     705             :   NS_IMETHOD GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment) = 0;
     706             :   NS_IMETHOD SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment) = 0;
     707             : 
     708             :   /* [implicit_jscontext] nsIPerformanceSnapshot getSnapshot (); */
     709             :   NS_IMETHOD GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval) = 0;
     710             : 
     711             :   /* attribute unsigned long long jankAlertThreshold; */
     712             :   NS_IMETHOD GetJankAlertThreshold(uint64_t *aJankAlertThreshold) = 0;
     713             :   NS_IMETHOD SetJankAlertThreshold(uint64_t aJankAlertThreshold) = 0;
     714             : 
     715             :   /* attribute short animationJankLevelThreshold; */
     716             :   NS_IMETHOD GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold) = 0;
     717             :   NS_IMETHOD SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold) = 0;
     718             : 
     719             :   /* attribute unsigned long long userInputDelayThreshold; */
     720             :   NS_IMETHOD GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold) = 0;
     721             :   NS_IMETHOD SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold) = 0;
     722             : 
     723             :   /* attribute unsigned long jankAlertBufferingDelay; */
     724             :   NS_IMETHOD GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay) = 0;
     725             :   NS_IMETHOD SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay) = 0;
     726             : 
     727             :   /* nsIPerformanceObservable getObservableWindow (in unsigned long long windowId); */
     728             :   NS_IMETHOD GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval) = 0;
     729             : 
     730             : };
     731             : 
     732             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIPerformanceStatsService, NS_IPERFORMANCESTATSSERVICE_IID)
     733             : 
     734             : /* Use this macro when declaring classes that implement this interface. */
     735             : #define NS_DECL_NSIPERFORMANCESTATSSERVICE \
     736             :   NS_IMETHOD GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW) override; \
     737             :   NS_IMETHOD SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW) override; \
     738             :   NS_IMETHOD GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank) override; \
     739             :   NS_IMETHOD SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank) override; \
     740             :   NS_IMETHOD GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment) override; \
     741             :   NS_IMETHOD SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment) override; \
     742             :   NS_IMETHOD GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval) override; \
     743             :   NS_IMETHOD GetJankAlertThreshold(uint64_t *aJankAlertThreshold) override; \
     744             :   NS_IMETHOD SetJankAlertThreshold(uint64_t aJankAlertThreshold) override; \
     745             :   NS_IMETHOD GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold) override; \
     746             :   NS_IMETHOD SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold) override; \
     747             :   NS_IMETHOD GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold) override; \
     748             :   NS_IMETHOD SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold) override; \
     749             :   NS_IMETHOD GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay) override; \
     750             :   NS_IMETHOD SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay) override; \
     751             :   NS_IMETHOD GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval) override; 
     752             : 
     753             : /* Use this macro when declaring the members of this interface when the
     754             :    class doesn't implement the interface. This is useful for forwarding. */
     755             : #define NS_DECL_NON_VIRTUAL_NSIPERFORMANCESTATSSERVICE \
     756             :   nsresult GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW); \
     757             :   nsresult SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW); \
     758             :   nsresult GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank); \
     759             :   nsresult SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank); \
     760             :   nsresult GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment); \
     761             :   nsresult SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment); \
     762             :   nsresult GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval); \
     763             :   nsresult GetJankAlertThreshold(uint64_t *aJankAlertThreshold); \
     764             :   nsresult SetJankAlertThreshold(uint64_t aJankAlertThreshold); \
     765             :   nsresult GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold); \
     766             :   nsresult SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold); \
     767             :   nsresult GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold); \
     768             :   nsresult SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold); \
     769             :   nsresult GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay); \
     770             :   nsresult SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay); \
     771             :   nsresult GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval); 
     772             : 
     773             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     774             : #define NS_FORWARD_NSIPERFORMANCESTATSSERVICE(_to) \
     775             :   NS_IMETHOD GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW) override { return _to GetIsMonitoringCPOW(cx, aIsMonitoringCPOW); } \
     776             :   NS_IMETHOD SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW) override { return _to SetIsMonitoringCPOW(cx, aIsMonitoringCPOW); } \
     777             :   NS_IMETHOD GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank) override { return _to GetIsMonitoringJank(cx, aIsMonitoringJank); } \
     778             :   NS_IMETHOD SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank) override { return _to SetIsMonitoringJank(cx, aIsMonitoringJank); } \
     779             :   NS_IMETHOD GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment) override { return _to GetIsMonitoringPerCompartment(cx, aIsMonitoringPerCompartment); } \
     780             :   NS_IMETHOD SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment) override { return _to SetIsMonitoringPerCompartment(cx, aIsMonitoringPerCompartment); } \
     781             :   NS_IMETHOD GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval) override { return _to GetSnapshot(cx, _retval); } \
     782             :   NS_IMETHOD GetJankAlertThreshold(uint64_t *aJankAlertThreshold) override { return _to GetJankAlertThreshold(aJankAlertThreshold); } \
     783             :   NS_IMETHOD SetJankAlertThreshold(uint64_t aJankAlertThreshold) override { return _to SetJankAlertThreshold(aJankAlertThreshold); } \
     784             :   NS_IMETHOD GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold) override { return _to GetAnimationJankLevelThreshold(aAnimationJankLevelThreshold); } \
     785             :   NS_IMETHOD SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold) override { return _to SetAnimationJankLevelThreshold(aAnimationJankLevelThreshold); } \
     786             :   NS_IMETHOD GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold) override { return _to GetUserInputDelayThreshold(aUserInputDelayThreshold); } \
     787             :   NS_IMETHOD SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold) override { return _to SetUserInputDelayThreshold(aUserInputDelayThreshold); } \
     788             :   NS_IMETHOD GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay) override { return _to GetJankAlertBufferingDelay(aJankAlertBufferingDelay); } \
     789             :   NS_IMETHOD SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay) override { return _to SetJankAlertBufferingDelay(aJankAlertBufferingDelay); } \
     790             :   NS_IMETHOD GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval) override { return _to GetObservableWindow(windowId, _retval); } 
     791             : 
     792             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     793             : #define NS_FORWARD_SAFE_NSIPERFORMANCESTATSSERVICE(_to) \
     794             :   NS_IMETHOD GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsMonitoringCPOW(cx, aIsMonitoringCPOW); } \
     795             :   NS_IMETHOD SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIsMonitoringCPOW(cx, aIsMonitoringCPOW); } \
     796             :   NS_IMETHOD GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsMonitoringJank(cx, aIsMonitoringJank); } \
     797             :   NS_IMETHOD SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIsMonitoringJank(cx, aIsMonitoringJank); } \
     798             :   NS_IMETHOD GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsMonitoringPerCompartment(cx, aIsMonitoringPerCompartment); } \
     799             :   NS_IMETHOD SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIsMonitoringPerCompartment(cx, aIsMonitoringPerCompartment); } \
     800             :   NS_IMETHOD GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSnapshot(cx, _retval); } \
     801             :   NS_IMETHOD GetJankAlertThreshold(uint64_t *aJankAlertThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJankAlertThreshold(aJankAlertThreshold); } \
     802             :   NS_IMETHOD SetJankAlertThreshold(uint64_t aJankAlertThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetJankAlertThreshold(aJankAlertThreshold); } \
     803             :   NS_IMETHOD GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAnimationJankLevelThreshold(aAnimationJankLevelThreshold); } \
     804             :   NS_IMETHOD SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAnimationJankLevelThreshold(aAnimationJankLevelThreshold); } \
     805             :   NS_IMETHOD GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUserInputDelayThreshold(aUserInputDelayThreshold); } \
     806             :   NS_IMETHOD SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetUserInputDelayThreshold(aUserInputDelayThreshold); } \
     807             :   NS_IMETHOD GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJankAlertBufferingDelay(aJankAlertBufferingDelay); } \
     808             :   NS_IMETHOD SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetJankAlertBufferingDelay(aJankAlertBufferingDelay); } \
     809             :   NS_IMETHOD GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetObservableWindow(windowId, _retval); } 
     810             : 
     811             : #if 0
     812             : /* Use the code below as a template for the implementation class for this interface. */
     813             : 
     814             : /* Header file */
     815             : class nsPerformanceStatsService : public nsIPerformanceStatsService
     816             : {
     817             : public:
     818             :   NS_DECL_ISUPPORTS
     819             :   NS_DECL_NSIPERFORMANCESTATSSERVICE
     820             : 
     821             :   nsPerformanceStatsService();
     822             : 
     823             : private:
     824             :   ~nsPerformanceStatsService();
     825             : 
     826             : protected:
     827             :   /* additional members */
     828             : };
     829             : 
     830             : /* Implementation file */
     831             : NS_IMPL_ISUPPORTS(nsPerformanceStatsService, nsIPerformanceStatsService)
     832             : 
     833             : nsPerformanceStatsService::nsPerformanceStatsService()
     834             : {
     835             :   /* member initializers and constructor code */
     836             : }
     837             : 
     838             : nsPerformanceStatsService::~nsPerformanceStatsService()
     839             : {
     840             :   /* destructor code */
     841             : }
     842             : 
     843             : /* [implicit_jscontext] attribute bool isMonitoringCPOW; */
     844             : NS_IMETHODIMP nsPerformanceStatsService::GetIsMonitoringCPOW(JSContext* cx, bool *aIsMonitoringCPOW)
     845             : {
     846             :     return NS_ERROR_NOT_IMPLEMENTED;
     847             : }
     848             : NS_IMETHODIMP nsPerformanceStatsService::SetIsMonitoringCPOW(JSContext* cx, bool aIsMonitoringCPOW)
     849             : {
     850             :     return NS_ERROR_NOT_IMPLEMENTED;
     851             : }
     852             : 
     853             : /* [implicit_jscontext] attribute bool isMonitoringJank; */
     854             : NS_IMETHODIMP nsPerformanceStatsService::GetIsMonitoringJank(JSContext* cx, bool *aIsMonitoringJank)
     855             : {
     856             :     return NS_ERROR_NOT_IMPLEMENTED;
     857             : }
     858             : NS_IMETHODIMP nsPerformanceStatsService::SetIsMonitoringJank(JSContext* cx, bool aIsMonitoringJank)
     859             : {
     860             :     return NS_ERROR_NOT_IMPLEMENTED;
     861             : }
     862             : 
     863             : /* [implicit_jscontext] attribute bool isMonitoringPerCompartment; */
     864             : NS_IMETHODIMP nsPerformanceStatsService::GetIsMonitoringPerCompartment(JSContext* cx, bool *aIsMonitoringPerCompartment)
     865             : {
     866             :     return NS_ERROR_NOT_IMPLEMENTED;
     867             : }
     868             : NS_IMETHODIMP nsPerformanceStatsService::SetIsMonitoringPerCompartment(JSContext* cx, bool aIsMonitoringPerCompartment)
     869             : {
     870             :     return NS_ERROR_NOT_IMPLEMENTED;
     871             : }
     872             : 
     873             : /* [implicit_jscontext] nsIPerformanceSnapshot getSnapshot (); */
     874             : NS_IMETHODIMP nsPerformanceStatsService::GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *_retval)
     875             : {
     876             :     return NS_ERROR_NOT_IMPLEMENTED;
     877             : }
     878             : 
     879             : /* attribute unsigned long long jankAlertThreshold; */
     880             : NS_IMETHODIMP nsPerformanceStatsService::GetJankAlertThreshold(uint64_t *aJankAlertThreshold)
     881             : {
     882             :     return NS_ERROR_NOT_IMPLEMENTED;
     883             : }
     884             : NS_IMETHODIMP nsPerformanceStatsService::SetJankAlertThreshold(uint64_t aJankAlertThreshold)
     885             : {
     886             :     return NS_ERROR_NOT_IMPLEMENTED;
     887             : }
     888             : 
     889             : /* attribute short animationJankLevelThreshold; */
     890             : NS_IMETHODIMP nsPerformanceStatsService::GetAnimationJankLevelThreshold(int16_t *aAnimationJankLevelThreshold)
     891             : {
     892             :     return NS_ERROR_NOT_IMPLEMENTED;
     893             : }
     894             : NS_IMETHODIMP nsPerformanceStatsService::SetAnimationJankLevelThreshold(int16_t aAnimationJankLevelThreshold)
     895             : {
     896             :     return NS_ERROR_NOT_IMPLEMENTED;
     897             : }
     898             : 
     899             : /* attribute unsigned long long userInputDelayThreshold; */
     900             : NS_IMETHODIMP nsPerformanceStatsService::GetUserInputDelayThreshold(uint64_t *aUserInputDelayThreshold)
     901             : {
     902             :     return NS_ERROR_NOT_IMPLEMENTED;
     903             : }
     904             : NS_IMETHODIMP nsPerformanceStatsService::SetUserInputDelayThreshold(uint64_t aUserInputDelayThreshold)
     905             : {
     906             :     return NS_ERROR_NOT_IMPLEMENTED;
     907             : }
     908             : 
     909             : /* attribute unsigned long jankAlertBufferingDelay; */
     910             : NS_IMETHODIMP nsPerformanceStatsService::GetJankAlertBufferingDelay(uint32_t *aJankAlertBufferingDelay)
     911             : {
     912             :     return NS_ERROR_NOT_IMPLEMENTED;
     913             : }
     914             : NS_IMETHODIMP nsPerformanceStatsService::SetJankAlertBufferingDelay(uint32_t aJankAlertBufferingDelay)
     915             : {
     916             :     return NS_ERROR_NOT_IMPLEMENTED;
     917             : }
     918             : 
     919             : /* nsIPerformanceObservable getObservableWindow (in unsigned long long windowId); */
     920             : NS_IMETHODIMP nsPerformanceStatsService::GetObservableWindow(uint64_t windowId, nsIPerformanceObservable * *_retval)
     921             : {
     922             :     return NS_ERROR_NOT_IMPLEMENTED;
     923             : }
     924             : 
     925             : /* End of implementation class template. */
     926             : #endif
     927             : 
     928             : #define NS_TOOLKIT_PERFORMANCESTATSSERVICE_CID {0xfd7435d4, 0x9ec4, 0x4699, \
     929             :       {0xad, 0xd4, 0x1b, 0xe8, 0x3d, 0xd6, 0x8e, 0xf3} }
     930             : #define NS_TOOLKIT_PERFORMANCESTATSSERVICE_CONTRACTID "@mozilla.org/toolkit/performance-stats-service;1"
     931             : 
     932             : #endif /* __gen_nsIPerformanceStats_h__ */

Generated by: LCOV version 1.13