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

          Line data    Source code
       1             : /*
       2             :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsITelemetry.idl
       3             :  */
       4             : 
       5             : #ifndef __gen_nsITelemetry_h__
       6             : #define __gen_nsITelemetry_h__
       7             : 
       8             : 
       9             : #ifndef __gen_nsISupports_h__
      10             : #include "nsISupports.h"
      11             : #endif
      12             : 
      13             : #ifndef __gen_nsIFile_h__
      14             : #include "nsIFile.h"
      15             : #endif
      16             : 
      17             : #include "js/Value.h"
      18             : 
      19             : /* For IDL files that don't want to include root IDL files. */
      20             : #ifndef NS_NO_VTABLE
      21             : #define NS_NO_VTABLE
      22             : #endif
      23             : 
      24             : /* starting interface:    nsIFetchTelemetryDataCallback */
      25             : #define NS_IFETCHTELEMETRYDATACALLBACK_IID_STR "3d3b9075-5549-4244-9c08-b64fefa1dd60"
      26             : 
      27             : #define NS_IFETCHTELEMETRYDATACALLBACK_IID \
      28             :   {0x3d3b9075, 0x5549, 0x4244, \
      29             :     { 0x9c, 0x08, 0xb6, 0x4f, 0xef, 0xa1, 0xdd, 0x60 }}
      30             : 
      31             : class NS_NO_VTABLE nsIFetchTelemetryDataCallback : public nsISupports {
      32             :  public:
      33             : 
      34             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IFETCHTELEMETRYDATACALLBACK_IID)
      35             : 
      36             :   /* void complete (); */
      37             :   NS_IMETHOD Complete(void) = 0;
      38             : 
      39             : };
      40             : 
      41             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIFetchTelemetryDataCallback, NS_IFETCHTELEMETRYDATACALLBACK_IID)
      42             : 
      43             : /* Use this macro when declaring classes that implement this interface. */
      44             : #define NS_DECL_NSIFETCHTELEMETRYDATACALLBACK \
      45             :   NS_IMETHOD Complete(void) override; 
      46             : 
      47             : /* Use this macro when declaring the members of this interface when the
      48             :    class doesn't implement the interface. This is useful for forwarding. */
      49             : #define NS_DECL_NON_VIRTUAL_NSIFETCHTELEMETRYDATACALLBACK \
      50             :   nsresult Complete(void); 
      51             : 
      52             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
      53             : #define NS_FORWARD_NSIFETCHTELEMETRYDATACALLBACK(_to) \
      54             :   NS_IMETHOD Complete(void) override { return _to Complete(); } 
      55             : 
      56             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
      57             : #define NS_FORWARD_SAFE_NSIFETCHTELEMETRYDATACALLBACK(_to) \
      58             :   NS_IMETHOD Complete(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Complete(); } 
      59             : 
      60             : #if 0
      61             : /* Use the code below as a template for the implementation class for this interface. */
      62             : 
      63             : /* Header file */
      64             : class nsFetchTelemetryDataCallback : public nsIFetchTelemetryDataCallback
      65             : {
      66             : public:
      67             :   NS_DECL_ISUPPORTS
      68             :   NS_DECL_NSIFETCHTELEMETRYDATACALLBACK
      69             : 
      70             :   nsFetchTelemetryDataCallback();
      71             : 
      72             : private:
      73             :   ~nsFetchTelemetryDataCallback();
      74             : 
      75             : protected:
      76             :   /* additional members */
      77             : };
      78             : 
      79             : /* Implementation file */
      80             : NS_IMPL_ISUPPORTS(nsFetchTelemetryDataCallback, nsIFetchTelemetryDataCallback)
      81             : 
      82             : nsFetchTelemetryDataCallback::nsFetchTelemetryDataCallback()
      83             : {
      84             :   /* member initializers and constructor code */
      85             : }
      86             : 
      87             : nsFetchTelemetryDataCallback::~nsFetchTelemetryDataCallback()
      88             : {
      89             :   /* destructor code */
      90             : }
      91             : 
      92             : /* void complete (); */
      93             : NS_IMETHODIMP nsFetchTelemetryDataCallback::Complete()
      94             : {
      95             :     return NS_ERROR_NOT_IMPLEMENTED;
      96             : }
      97             : 
      98             : /* End of implementation class template. */
      99             : #endif
     100             : 
     101             : 
     102             : /* starting interface:    nsITelemetry */
     103             : #define NS_ITELEMETRY_IID_STR "273d2dd0-6c63-475a-b864-cb65160a1909"
     104             : 
     105             : #define NS_ITELEMETRY_IID \
     106             :   {0x273d2dd0, 0x6c63, 0x475a, \
     107             :     { 0xb8, 0x64, 0xcb, 0x65, 0x16, 0x0a, 0x19, 0x09 }}
     108             : 
     109           3 : class NS_NO_VTABLE nsITelemetry : public nsISupports {
     110             :  public:
     111             : 
     112             :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_ITELEMETRY_IID)
     113             : 
     114             :   enum {
     115             :     HISTOGRAM_EXPONENTIAL = 0U,
     116             :     HISTOGRAM_LINEAR = 1U,
     117             :     HISTOGRAM_BOOLEAN = 2U,
     118             :     HISTOGRAM_FLAG = 3U,
     119             :     HISTOGRAM_COUNT = 4U,
     120             :     HISTOGRAM_CATEGORICAL = 5U,
     121             :     SCALAR_COUNT = 0U,
     122             :     SCALAR_STRING = 1U,
     123             :     SCALAR_BOOLEAN = 2U,
     124             :     DATASET_RELEASE_CHANNEL_OPTOUT = 0U,
     125             :     DATASET_RELEASE_CHANNEL_OPTIN = 1U
     126             :   };
     127             : 
     128             :   /* [implicit_jscontext] readonly attribute jsval histogramSnapshots; */
     129             :   NS_IMETHOD GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots) = 0;
     130             : 
     131             :   /* [implicit_jscontext] jsval snapshotSubsessionHistograms ([optional] in boolean clear); */
     132             :   NS_IMETHOD SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval) = 0;
     133             : 
     134             :   /* readonly attribute uint32_t lastShutdownDuration; */
     135             :   NS_IMETHOD GetLastShutdownDuration(uint32_t *aLastShutdownDuration) = 0;
     136             : 
     137             :   /* readonly attribute uint32_t failedProfileLockCount; */
     138             :   NS_IMETHOD GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount) = 0;
     139             : 
     140             :   /* [implicit_jscontext] readonly attribute jsval slowSQL; */
     141             :   NS_IMETHOD GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL) = 0;
     142             : 
     143             :   /* [implicit_jscontext] readonly attribute jsval debugSlowSQL; */
     144             :   NS_IMETHOD GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL) = 0;
     145             : 
     146             :   /* [implicit_jscontext] readonly attribute jsval webrtcStats; */
     147             :   NS_IMETHOD GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats) = 0;
     148             : 
     149             :   /* readonly attribute uint32_t maximalNumberOfConcurrentThreads; */
     150             :   NS_IMETHOD GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads) = 0;
     151             : 
     152             :   /* [implicit_jscontext] readonly attribute jsval chromeHangs; */
     153             :   NS_IMETHOD GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs) = 0;
     154             : 
     155             :   /* void captureStack (in ACString name); */
     156             :   NS_IMETHOD CaptureStack(const nsACString & name) = 0;
     157             : 
     158             :   /* [implicit_jscontext] jsval snapshotCapturedStacks ([optional] in boolean clear); */
     159             :   NS_IMETHOD SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval) = 0;
     160             : 
     161             :   /* [implicit_jscontext] nsISupports getLoadedModules (); */
     162             :   NS_IMETHOD GetLoadedModules(JSContext* cx, nsISupports * *_retval) = 0;
     163             : 
     164             :   /* [implicit_jscontext] readonly attribute jsval threadHangStats; */
     165             :   NS_IMETHOD GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats) = 0;
     166             : 
     167             :   /* [implicit_jscontext] readonly attribute jsval lateWrites; */
     168             :   NS_IMETHOD GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites) = 0;
     169             : 
     170             :   /* void registeredHistograms (in uint32_t dataset, out uint32_t count, [array, size_is (count), retval] out string histograms); */
     171             :   NS_IMETHOD RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms) = 0;
     172             : 
     173             :   /* [implicit_jscontext] jsval getHistogramById (in ACString id); */
     174             :   NS_IMETHOD GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) = 0;
     175             : 
     176             :   /* [implicit_jscontext] readonly attribute jsval keyedHistogramSnapshots; */
     177             :   NS_IMETHOD GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots) = 0;
     178             : 
     179             :   /* void registeredKeyedHistograms (in uint32_t dataset, out uint32_t count, [array, size_is (count), retval] out string histograms); */
     180             :   NS_IMETHOD RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms) = 0;
     181             : 
     182             :   /* [implicit_jscontext] jsval getKeyedHistogramById (in ACString id); */
     183             :   NS_IMETHOD GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) = 0;
     184             : 
     185             :   /* attribute boolean canRecordBase; */
     186             :   NS_IMETHOD GetCanRecordBase(bool *aCanRecordBase) = 0;
     187             :   NS_IMETHOD SetCanRecordBase(bool aCanRecordBase) = 0;
     188             : 
     189             :   /* attribute boolean canRecordExtended; */
     190             :   NS_IMETHOD GetCanRecordExtended(bool *aCanRecordExtended) = 0;
     191             :   NS_IMETHOD SetCanRecordExtended(bool aCanRecordExtended) = 0;
     192             : 
     193             :   /* readonly attribute boolean isOfficialTelemetry; */
     194             :   NS_IMETHOD GetIsOfficialTelemetry(bool *aIsOfficialTelemetry) = 0;
     195             : 
     196             :   /* void setHistogramRecordingEnabled (in ACString id, in boolean enabled); */
     197             :   NS_IMETHOD SetHistogramRecordingEnabled(const nsACString & id, bool enabled) = 0;
     198             : 
     199             :   /* void asyncFetchTelemetryData (in nsIFetchTelemetryDataCallback aCallback); */
     200             :   NS_IMETHOD AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback) = 0;
     201             : 
     202             :   /* [implicit_jscontext] readonly attribute jsval fileIOReports; */
     203             :   NS_IMETHOD GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports) = 0;
     204             : 
     205             :   /* double msSinceProcessStart (); */
     206             :   NS_IMETHOD MsSinceProcessStart(double *_retval) = 0;
     207             : 
     208             :   /* double msSystemNow (); */
     209             :   NS_IMETHOD MsSystemNow(double *_retval) = 0;
     210             : 
     211             :   /* [implicit_jscontext] void scalarAdd (in ACString aName, in jsval aValue); */
     212             :   NS_IMETHOD ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) = 0;
     213             : 
     214             :   /* [implicit_jscontext] void scalarSet (in ACString aName, in jsval aValue); */
     215             :   NS_IMETHOD ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) = 0;
     216             : 
     217             :   /* [implicit_jscontext] void scalarSetMaximum (in ACString aName, in jsval aValue); */
     218             :   NS_IMETHOD ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) = 0;
     219             : 
     220             :   /* [implicit_jscontext,optional_argc] jsval snapshotScalars (in uint32_t aDataset, [optional] in boolean aClear); */
     221             :   NS_IMETHOD SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) = 0;
     222             : 
     223             :   /* [implicit_jscontext] void keyedScalarAdd (in ACString aName, in AString aKey, in jsval aValue); */
     224             :   NS_IMETHOD KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) = 0;
     225             : 
     226             :   /* [implicit_jscontext] void keyedScalarSet (in ACString aName, in AString aKey, in jsval aValue); */
     227             :   NS_IMETHOD KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) = 0;
     228             : 
     229             :   /* [implicit_jscontext] void keyedScalarSetMaximum (in ACString aName, in AString aKey, in jsval aValue); */
     230             :   NS_IMETHOD KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) = 0;
     231             : 
     232             :   /* [implicit_jscontext,optional_argc] jsval snapshotKeyedScalars (in uint32_t aDataset, [optional] in boolean aClear); */
     233             :   NS_IMETHOD SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) = 0;
     234             : 
     235             :   /* void clearScalars (); */
     236             :   NS_IMETHOD ClearScalars(void) = 0;
     237             : 
     238             :   /* void flushBatchedChildTelemetry (); */
     239             :   NS_IMETHOD FlushBatchedChildTelemetry(void) = 0;
     240             : 
     241             :   /* [implicit_jscontext,optional_argc] void recordEvent (in ACString aCategory, in ACString aMethod, in ACString aObject, [optional] in jsval aValue, [optional] in jsval extra); */
     242             :   NS_IMETHOD RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc) = 0;
     243             : 
     244             :   /* void setEventRecordingEnabled (in ACString aCategory, in boolean aEnabled); */
     245             :   NS_IMETHOD SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled) = 0;
     246             : 
     247             :   /* [implicit_jscontext,optional_argc] jsval snapshotBuiltinEvents (in uint32_t aDataset, [optional] in boolean aClear); */
     248             :   NS_IMETHOD SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) = 0;
     249             : 
     250             :   /* void clearEvents (); */
     251             :   NS_IMETHOD ClearEvents(void) = 0;
     252             : 
     253             : };
     254             : 
     255             :   NS_DEFINE_STATIC_IID_ACCESSOR(nsITelemetry, NS_ITELEMETRY_IID)
     256             : 
     257             : /* Use this macro when declaring classes that implement this interface. */
     258             : #define NS_DECL_NSITELEMETRY \
     259             :   NS_IMETHOD GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots) override; \
     260             :   NS_IMETHOD SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override; \
     261             :   NS_IMETHOD GetLastShutdownDuration(uint32_t *aLastShutdownDuration) override; \
     262             :   NS_IMETHOD GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount) override; \
     263             :   NS_IMETHOD GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL) override; \
     264             :   NS_IMETHOD GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL) override; \
     265             :   NS_IMETHOD GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats) override; \
     266             :   NS_IMETHOD GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads) override; \
     267             :   NS_IMETHOD GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs) override; \
     268             :   NS_IMETHOD CaptureStack(const nsACString & name) override; \
     269             :   NS_IMETHOD SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override; \
     270             :   NS_IMETHOD GetLoadedModules(JSContext* cx, nsISupports * *_retval) override; \
     271             :   NS_IMETHOD GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats) override; \
     272             :   NS_IMETHOD GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites) override; \
     273             :   NS_IMETHOD RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override; \
     274             :   NS_IMETHOD GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override; \
     275             :   NS_IMETHOD GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots) override; \
     276             :   NS_IMETHOD RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override; \
     277             :   NS_IMETHOD GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override; \
     278             :   NS_IMETHOD GetCanRecordBase(bool *aCanRecordBase) override; \
     279             :   NS_IMETHOD SetCanRecordBase(bool aCanRecordBase) override; \
     280             :   NS_IMETHOD GetCanRecordExtended(bool *aCanRecordExtended) override; \
     281             :   NS_IMETHOD SetCanRecordExtended(bool aCanRecordExtended) override; \
     282             :   NS_IMETHOD GetIsOfficialTelemetry(bool *aIsOfficialTelemetry) override; \
     283             :   NS_IMETHOD SetHistogramRecordingEnabled(const nsACString & id, bool enabled) override; \
     284             :   NS_IMETHOD AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback) override; \
     285             :   NS_IMETHOD GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports) override; \
     286             :   NS_IMETHOD MsSinceProcessStart(double *_retval) override; \
     287             :   NS_IMETHOD MsSystemNow(double *_retval) override; \
     288             :   NS_IMETHOD ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override; \
     289             :   NS_IMETHOD ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override; \
     290             :   NS_IMETHOD ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override; \
     291             :   NS_IMETHOD SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override; \
     292             :   NS_IMETHOD KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override; \
     293             :   NS_IMETHOD KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override; \
     294             :   NS_IMETHOD KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override; \
     295             :   NS_IMETHOD SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override; \
     296             :   NS_IMETHOD ClearScalars(void) override; \
     297             :   NS_IMETHOD FlushBatchedChildTelemetry(void) override; \
     298             :   NS_IMETHOD RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc) override; \
     299             :   NS_IMETHOD SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled) override; \
     300             :   NS_IMETHOD SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override; \
     301             :   NS_IMETHOD ClearEvents(void) override; 
     302             : 
     303             : /* Use this macro when declaring the members of this interface when the
     304             :    class doesn't implement the interface. This is useful for forwarding. */
     305             : #define NS_DECL_NON_VIRTUAL_NSITELEMETRY \
     306             :   nsresult GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots); \
     307             :   nsresult SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval); \
     308             :   nsresult GetLastShutdownDuration(uint32_t *aLastShutdownDuration); \
     309             :   nsresult GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount); \
     310             :   nsresult GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL); \
     311             :   nsresult GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL); \
     312             :   nsresult GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats); \
     313             :   nsresult GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads); \
     314             :   nsresult GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs); \
     315             :   nsresult CaptureStack(const nsACString & name); \
     316             :   nsresult SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval); \
     317             :   nsresult GetLoadedModules(JSContext* cx, nsISupports * *_retval); \
     318             :   nsresult GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats); \
     319             :   nsresult GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites); \
     320             :   nsresult RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms); \
     321             :   nsresult GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval); \
     322             :   nsresult GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots); \
     323             :   nsresult RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms); \
     324             :   nsresult GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval); \
     325             :   nsresult GetCanRecordBase(bool *aCanRecordBase); \
     326             :   nsresult SetCanRecordBase(bool aCanRecordBase); \
     327             :   nsresult GetCanRecordExtended(bool *aCanRecordExtended); \
     328             :   nsresult SetCanRecordExtended(bool aCanRecordExtended); \
     329             :   nsresult GetIsOfficialTelemetry(bool *aIsOfficialTelemetry); \
     330             :   nsresult SetHistogramRecordingEnabled(const nsACString & id, bool enabled); \
     331             :   nsresult AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback); \
     332             :   nsresult GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports); \
     333             :   nsresult MsSinceProcessStart(double *_retval); \
     334             :   nsresult MsSystemNow(double *_retval); \
     335             :   nsresult ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx); \
     336             :   nsresult ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx); \
     337             :   nsresult ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx); \
     338             :   nsresult SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval); \
     339             :   nsresult KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx); \
     340             :   nsresult KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx); \
     341             :   nsresult KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx); \
     342             :   nsresult SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval); \
     343             :   nsresult ClearScalars(void); \
     344             :   nsresult FlushBatchedChildTelemetry(void); \
     345             :   nsresult RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc); \
     346             :   nsresult SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled); \
     347             :   nsresult SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval); \
     348             :   nsresult ClearEvents(void); 
     349             : 
     350             : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     351             : #define NS_FORWARD_NSITELEMETRY(_to) \
     352             :   NS_IMETHOD GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots) override { return _to GetHistogramSnapshots(cx, aHistogramSnapshots); } \
     353             :   NS_IMETHOD SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override { return _to SnapshotSubsessionHistograms(clear, cx, _retval); } \
     354             :   NS_IMETHOD GetLastShutdownDuration(uint32_t *aLastShutdownDuration) override { return _to GetLastShutdownDuration(aLastShutdownDuration); } \
     355             :   NS_IMETHOD GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount) override { return _to GetFailedProfileLockCount(aFailedProfileLockCount); } \
     356             :   NS_IMETHOD GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL) override { return _to GetSlowSQL(cx, aSlowSQL); } \
     357             :   NS_IMETHOD GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL) override { return _to GetDebugSlowSQL(cx, aDebugSlowSQL); } \
     358             :   NS_IMETHOD GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats) override { return _to GetWebrtcStats(cx, aWebrtcStats); } \
     359             :   NS_IMETHOD GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads) override { return _to GetMaximalNumberOfConcurrentThreads(aMaximalNumberOfConcurrentThreads); } \
     360             :   NS_IMETHOD GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs) override { return _to GetChromeHangs(cx, aChromeHangs); } \
     361             :   NS_IMETHOD CaptureStack(const nsACString & name) override { return _to CaptureStack(name); } \
     362             :   NS_IMETHOD SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override { return _to SnapshotCapturedStacks(clear, cx, _retval); } \
     363             :   NS_IMETHOD GetLoadedModules(JSContext* cx, nsISupports * *_retval) override { return _to GetLoadedModules(cx, _retval); } \
     364             :   NS_IMETHOD GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats) override { return _to GetThreadHangStats(cx, aThreadHangStats); } \
     365             :   NS_IMETHOD GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites) override { return _to GetLateWrites(cx, aLateWrites); } \
     366             :   NS_IMETHOD RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override { return _to RegisteredHistograms(dataset, count, histograms); } \
     367             :   NS_IMETHOD GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetHistogramById(id, cx, _retval); } \
     368             :   NS_IMETHOD GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots) override { return _to GetKeyedHistogramSnapshots(cx, aKeyedHistogramSnapshots); } \
     369             :   NS_IMETHOD RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override { return _to RegisteredKeyedHistograms(dataset, count, histograms); } \
     370             :   NS_IMETHOD GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetKeyedHistogramById(id, cx, _retval); } \
     371             :   NS_IMETHOD GetCanRecordBase(bool *aCanRecordBase) override { return _to GetCanRecordBase(aCanRecordBase); } \
     372             :   NS_IMETHOD SetCanRecordBase(bool aCanRecordBase) override { return _to SetCanRecordBase(aCanRecordBase); } \
     373             :   NS_IMETHOD GetCanRecordExtended(bool *aCanRecordExtended) override { return _to GetCanRecordExtended(aCanRecordExtended); } \
     374             :   NS_IMETHOD SetCanRecordExtended(bool aCanRecordExtended) override { return _to SetCanRecordExtended(aCanRecordExtended); } \
     375             :   NS_IMETHOD GetIsOfficialTelemetry(bool *aIsOfficialTelemetry) override { return _to GetIsOfficialTelemetry(aIsOfficialTelemetry); } \
     376             :   NS_IMETHOD SetHistogramRecordingEnabled(const nsACString & id, bool enabled) override { return _to SetHistogramRecordingEnabled(id, enabled); } \
     377             :   NS_IMETHOD AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback) override { return _to AsyncFetchTelemetryData(aCallback); } \
     378             :   NS_IMETHOD GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports) override { return _to GetFileIOReports(cx, aFileIOReports); } \
     379             :   NS_IMETHOD MsSinceProcessStart(double *_retval) override { return _to MsSinceProcessStart(_retval); } \
     380             :   NS_IMETHOD MsSystemNow(double *_retval) override { return _to MsSystemNow(_retval); } \
     381             :   NS_IMETHOD ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return _to ScalarAdd(aName, aValue, cx); } \
     382             :   NS_IMETHOD ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return _to ScalarSet(aName, aValue, cx); } \
     383             :   NS_IMETHOD ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return _to ScalarSetMaximum(aName, aValue, cx); } \
     384             :   NS_IMETHOD SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return _to SnapshotScalars(aDataset, aClear, cx, _argc, _retval); } \
     385             :   NS_IMETHOD KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return _to KeyedScalarAdd(aName, aKey, aValue, cx); } \
     386             :   NS_IMETHOD KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return _to KeyedScalarSet(aName, aKey, aValue, cx); } \
     387             :   NS_IMETHOD KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return _to KeyedScalarSetMaximum(aName, aKey, aValue, cx); } \
     388             :   NS_IMETHOD SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return _to SnapshotKeyedScalars(aDataset, aClear, cx, _argc, _retval); } \
     389             :   NS_IMETHOD ClearScalars(void) override { return _to ClearScalars(); } \
     390             :   NS_IMETHOD FlushBatchedChildTelemetry(void) override { return _to FlushBatchedChildTelemetry(); } \
     391             :   NS_IMETHOD RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc) override { return _to RecordEvent(aCategory, aMethod, aObject, aValue, extra, cx, _argc); } \
     392             :   NS_IMETHOD SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled) override { return _to SetEventRecordingEnabled(aCategory, aEnabled); } \
     393             :   NS_IMETHOD SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return _to SnapshotBuiltinEvents(aDataset, aClear, cx, _argc, _retval); } \
     394             :   NS_IMETHOD ClearEvents(void) override { return _to ClearEvents(); } 
     395             : 
     396             : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     397             : #define NS_FORWARD_SAFE_NSITELEMETRY(_to) \
     398             :   NS_IMETHOD GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHistogramSnapshots(cx, aHistogramSnapshots); } \
     399             :   NS_IMETHOD SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SnapshotSubsessionHistograms(clear, cx, _retval); } \
     400             :   NS_IMETHOD GetLastShutdownDuration(uint32_t *aLastShutdownDuration) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLastShutdownDuration(aLastShutdownDuration); } \
     401             :   NS_IMETHOD GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFailedProfileLockCount(aFailedProfileLockCount); } \
     402             :   NS_IMETHOD GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSlowSQL(cx, aSlowSQL); } \
     403             :   NS_IMETHOD GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDebugSlowSQL(cx, aDebugSlowSQL); } \
     404             :   NS_IMETHOD GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWebrtcStats(cx, aWebrtcStats); } \
     405             :   NS_IMETHOD GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMaximalNumberOfConcurrentThreads(aMaximalNumberOfConcurrentThreads); } \
     406             :   NS_IMETHOD GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetChromeHangs(cx, aChromeHangs); } \
     407             :   NS_IMETHOD CaptureStack(const nsACString & name) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CaptureStack(name); } \
     408             :   NS_IMETHOD SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SnapshotCapturedStacks(clear, cx, _retval); } \
     409             :   NS_IMETHOD GetLoadedModules(JSContext* cx, nsISupports * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLoadedModules(cx, _retval); } \
     410             :   NS_IMETHOD GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetThreadHangStats(cx, aThreadHangStats); } \
     411             :   NS_IMETHOD GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLateWrites(cx, aLateWrites); } \
     412             :   NS_IMETHOD RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RegisteredHistograms(dataset, count, histograms); } \
     413             :   NS_IMETHOD GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHistogramById(id, cx, _retval); } \
     414             :   NS_IMETHOD GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetKeyedHistogramSnapshots(cx, aKeyedHistogramSnapshots); } \
     415             :   NS_IMETHOD RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RegisteredKeyedHistograms(dataset, count, histograms); } \
     416             :   NS_IMETHOD GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetKeyedHistogramById(id, cx, _retval); } \
     417             :   NS_IMETHOD GetCanRecordBase(bool *aCanRecordBase) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCanRecordBase(aCanRecordBase); } \
     418             :   NS_IMETHOD SetCanRecordBase(bool aCanRecordBase) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCanRecordBase(aCanRecordBase); } \
     419             :   NS_IMETHOD GetCanRecordExtended(bool *aCanRecordExtended) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCanRecordExtended(aCanRecordExtended); } \
     420             :   NS_IMETHOD SetCanRecordExtended(bool aCanRecordExtended) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCanRecordExtended(aCanRecordExtended); } \
     421             :   NS_IMETHOD GetIsOfficialTelemetry(bool *aIsOfficialTelemetry) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsOfficialTelemetry(aIsOfficialTelemetry); } \
     422             :   NS_IMETHOD SetHistogramRecordingEnabled(const nsACString & id, bool enabled) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetHistogramRecordingEnabled(id, enabled); } \
     423             :   NS_IMETHOD AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AsyncFetchTelemetryData(aCallback); } \
     424             :   NS_IMETHOD GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFileIOReports(cx, aFileIOReports); } \
     425             :   NS_IMETHOD MsSinceProcessStart(double *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MsSinceProcessStart(_retval); } \
     426             :   NS_IMETHOD MsSystemNow(double *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MsSystemNow(_retval); } \
     427             :   NS_IMETHOD ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ScalarAdd(aName, aValue, cx); } \
     428             :   NS_IMETHOD ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ScalarSet(aName, aValue, cx); } \
     429             :   NS_IMETHOD ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ScalarSetMaximum(aName, aValue, cx); } \
     430             :   NS_IMETHOD SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SnapshotScalars(aDataset, aClear, cx, _argc, _retval); } \
     431             :   NS_IMETHOD KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->KeyedScalarAdd(aName, aKey, aValue, cx); } \
     432             :   NS_IMETHOD KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->KeyedScalarSet(aName, aKey, aValue, cx); } \
     433             :   NS_IMETHOD KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->KeyedScalarSetMaximum(aName, aKey, aValue, cx); } \
     434             :   NS_IMETHOD SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SnapshotKeyedScalars(aDataset, aClear, cx, _argc, _retval); } \
     435             :   NS_IMETHOD ClearScalars(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearScalars(); } \
     436             :   NS_IMETHOD FlushBatchedChildTelemetry(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->FlushBatchedChildTelemetry(); } \
     437             :   NS_IMETHOD RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RecordEvent(aCategory, aMethod, aObject, aValue, extra, cx, _argc); } \
     438             :   NS_IMETHOD SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetEventRecordingEnabled(aCategory, aEnabled); } \
     439             :   NS_IMETHOD SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SnapshotBuiltinEvents(aDataset, aClear, cx, _argc, _retval); } \
     440             :   NS_IMETHOD ClearEvents(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearEvents(); } 
     441             : 
     442             : #if 0
     443             : /* Use the code below as a template for the implementation class for this interface. */
     444             : 
     445             : /* Header file */
     446             : class nsTelemetry : public nsITelemetry
     447             : {
     448             : public:
     449             :   NS_DECL_ISUPPORTS
     450             :   NS_DECL_NSITELEMETRY
     451             : 
     452             :   nsTelemetry();
     453             : 
     454             : private:
     455             :   ~nsTelemetry();
     456             : 
     457             : protected:
     458             :   /* additional members */
     459             : };
     460             : 
     461             : /* Implementation file */
     462             : NS_IMPL_ISUPPORTS(nsTelemetry, nsITelemetry)
     463             : 
     464             : nsTelemetry::nsTelemetry()
     465             : {
     466             :   /* member initializers and constructor code */
     467             : }
     468             : 
     469             : nsTelemetry::~nsTelemetry()
     470             : {
     471             :   /* destructor code */
     472             : }
     473             : 
     474             : /* [implicit_jscontext] readonly attribute jsval histogramSnapshots; */
     475             : NS_IMETHODIMP nsTelemetry::GetHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aHistogramSnapshots)
     476             : {
     477             :     return NS_ERROR_NOT_IMPLEMENTED;
     478             : }
     479             : 
     480             : /* [implicit_jscontext] jsval snapshotSubsessionHistograms ([optional] in boolean clear); */
     481             : NS_IMETHODIMP nsTelemetry::SnapshotSubsessionHistograms(bool clear, JSContext* cx, JS::MutableHandleValue _retval)
     482             : {
     483             :     return NS_ERROR_NOT_IMPLEMENTED;
     484             : }
     485             : 
     486             : /* readonly attribute uint32_t lastShutdownDuration; */
     487             : NS_IMETHODIMP nsTelemetry::GetLastShutdownDuration(uint32_t *aLastShutdownDuration)
     488             : {
     489             :     return NS_ERROR_NOT_IMPLEMENTED;
     490             : }
     491             : 
     492             : /* readonly attribute uint32_t failedProfileLockCount; */
     493             : NS_IMETHODIMP nsTelemetry::GetFailedProfileLockCount(uint32_t *aFailedProfileLockCount)
     494             : {
     495             :     return NS_ERROR_NOT_IMPLEMENTED;
     496             : }
     497             : 
     498             : /* [implicit_jscontext] readonly attribute jsval slowSQL; */
     499             : NS_IMETHODIMP nsTelemetry::GetSlowSQL(JSContext* cx, JS::MutableHandleValue aSlowSQL)
     500             : {
     501             :     return NS_ERROR_NOT_IMPLEMENTED;
     502             : }
     503             : 
     504             : /* [implicit_jscontext] readonly attribute jsval debugSlowSQL; */
     505             : NS_IMETHODIMP nsTelemetry::GetDebugSlowSQL(JSContext* cx, JS::MutableHandleValue aDebugSlowSQL)
     506             : {
     507             :     return NS_ERROR_NOT_IMPLEMENTED;
     508             : }
     509             : 
     510             : /* [implicit_jscontext] readonly attribute jsval webrtcStats; */
     511             : NS_IMETHODIMP nsTelemetry::GetWebrtcStats(JSContext* cx, JS::MutableHandleValue aWebrtcStats)
     512             : {
     513             :     return NS_ERROR_NOT_IMPLEMENTED;
     514             : }
     515             : 
     516             : /* readonly attribute uint32_t maximalNumberOfConcurrentThreads; */
     517             : NS_IMETHODIMP nsTelemetry::GetMaximalNumberOfConcurrentThreads(uint32_t *aMaximalNumberOfConcurrentThreads)
     518             : {
     519             :     return NS_ERROR_NOT_IMPLEMENTED;
     520             : }
     521             : 
     522             : /* [implicit_jscontext] readonly attribute jsval chromeHangs; */
     523             : NS_IMETHODIMP nsTelemetry::GetChromeHangs(JSContext* cx, JS::MutableHandleValue aChromeHangs)
     524             : {
     525             :     return NS_ERROR_NOT_IMPLEMENTED;
     526             : }
     527             : 
     528             : /* void captureStack (in ACString name); */
     529             : NS_IMETHODIMP nsTelemetry::CaptureStack(const nsACString & name)
     530             : {
     531             :     return NS_ERROR_NOT_IMPLEMENTED;
     532             : }
     533             : 
     534             : /* [implicit_jscontext] jsval snapshotCapturedStacks ([optional] in boolean clear); */
     535             : NS_IMETHODIMP nsTelemetry::SnapshotCapturedStacks(bool clear, JSContext* cx, JS::MutableHandleValue _retval)
     536             : {
     537             :     return NS_ERROR_NOT_IMPLEMENTED;
     538             : }
     539             : 
     540             : /* [implicit_jscontext] nsISupports getLoadedModules (); */
     541             : NS_IMETHODIMP nsTelemetry::GetLoadedModules(JSContext* cx, nsISupports * *_retval)
     542             : {
     543             :     return NS_ERROR_NOT_IMPLEMENTED;
     544             : }
     545             : 
     546             : /* [implicit_jscontext] readonly attribute jsval threadHangStats; */
     547             : NS_IMETHODIMP nsTelemetry::GetThreadHangStats(JSContext* cx, JS::MutableHandleValue aThreadHangStats)
     548             : {
     549             :     return NS_ERROR_NOT_IMPLEMENTED;
     550             : }
     551             : 
     552             : /* [implicit_jscontext] readonly attribute jsval lateWrites; */
     553             : NS_IMETHODIMP nsTelemetry::GetLateWrites(JSContext* cx, JS::MutableHandleValue aLateWrites)
     554             : {
     555             :     return NS_ERROR_NOT_IMPLEMENTED;
     556             : }
     557             : 
     558             : /* void registeredHistograms (in uint32_t dataset, out uint32_t count, [array, size_is (count), retval] out string histograms); */
     559             : NS_IMETHODIMP nsTelemetry::RegisteredHistograms(uint32_t dataset, uint32_t *count, char * **histograms)
     560             : {
     561             :     return NS_ERROR_NOT_IMPLEMENTED;
     562             : }
     563             : 
     564             : /* [implicit_jscontext] jsval getHistogramById (in ACString id); */
     565             : NS_IMETHODIMP nsTelemetry::GetHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval)
     566             : {
     567             :     return NS_ERROR_NOT_IMPLEMENTED;
     568             : }
     569             : 
     570             : /* [implicit_jscontext] readonly attribute jsval keyedHistogramSnapshots; */
     571             : NS_IMETHODIMP nsTelemetry::GetKeyedHistogramSnapshots(JSContext* cx, JS::MutableHandleValue aKeyedHistogramSnapshots)
     572             : {
     573             :     return NS_ERROR_NOT_IMPLEMENTED;
     574             : }
     575             : 
     576             : /* void registeredKeyedHistograms (in uint32_t dataset, out uint32_t count, [array, size_is (count), retval] out string histograms); */
     577             : NS_IMETHODIMP nsTelemetry::RegisteredKeyedHistograms(uint32_t dataset, uint32_t *count, char * **histograms)
     578             : {
     579             :     return NS_ERROR_NOT_IMPLEMENTED;
     580             : }
     581             : 
     582             : /* [implicit_jscontext] jsval getKeyedHistogramById (in ACString id); */
     583             : NS_IMETHODIMP nsTelemetry::GetKeyedHistogramById(const nsACString & id, JSContext* cx, JS::MutableHandleValue _retval)
     584             : {
     585             :     return NS_ERROR_NOT_IMPLEMENTED;
     586             : }
     587             : 
     588             : /* attribute boolean canRecordBase; */
     589             : NS_IMETHODIMP nsTelemetry::GetCanRecordBase(bool *aCanRecordBase)
     590             : {
     591             :     return NS_ERROR_NOT_IMPLEMENTED;
     592             : }
     593             : NS_IMETHODIMP nsTelemetry::SetCanRecordBase(bool aCanRecordBase)
     594             : {
     595             :     return NS_ERROR_NOT_IMPLEMENTED;
     596             : }
     597             : 
     598             : /* attribute boolean canRecordExtended; */
     599             : NS_IMETHODIMP nsTelemetry::GetCanRecordExtended(bool *aCanRecordExtended)
     600             : {
     601             :     return NS_ERROR_NOT_IMPLEMENTED;
     602             : }
     603             : NS_IMETHODIMP nsTelemetry::SetCanRecordExtended(bool aCanRecordExtended)
     604             : {
     605             :     return NS_ERROR_NOT_IMPLEMENTED;
     606             : }
     607             : 
     608             : /* readonly attribute boolean isOfficialTelemetry; */
     609             : NS_IMETHODIMP nsTelemetry::GetIsOfficialTelemetry(bool *aIsOfficialTelemetry)
     610             : {
     611             :     return NS_ERROR_NOT_IMPLEMENTED;
     612             : }
     613             : 
     614             : /* void setHistogramRecordingEnabled (in ACString id, in boolean enabled); */
     615             : NS_IMETHODIMP nsTelemetry::SetHistogramRecordingEnabled(const nsACString & id, bool enabled)
     616             : {
     617             :     return NS_ERROR_NOT_IMPLEMENTED;
     618             : }
     619             : 
     620             : /* void asyncFetchTelemetryData (in nsIFetchTelemetryDataCallback aCallback); */
     621             : NS_IMETHODIMP nsTelemetry::AsyncFetchTelemetryData(nsIFetchTelemetryDataCallback *aCallback)
     622             : {
     623             :     return NS_ERROR_NOT_IMPLEMENTED;
     624             : }
     625             : 
     626             : /* [implicit_jscontext] readonly attribute jsval fileIOReports; */
     627             : NS_IMETHODIMP nsTelemetry::GetFileIOReports(JSContext* cx, JS::MutableHandleValue aFileIOReports)
     628             : {
     629             :     return NS_ERROR_NOT_IMPLEMENTED;
     630             : }
     631             : 
     632             : /* double msSinceProcessStart (); */
     633             : NS_IMETHODIMP nsTelemetry::MsSinceProcessStart(double *_retval)
     634             : {
     635             :     return NS_ERROR_NOT_IMPLEMENTED;
     636             : }
     637             : 
     638             : /* double msSystemNow (); */
     639             : NS_IMETHODIMP nsTelemetry::MsSystemNow(double *_retval)
     640             : {
     641             :     return NS_ERROR_NOT_IMPLEMENTED;
     642             : }
     643             : 
     644             : /* [implicit_jscontext] void scalarAdd (in ACString aName, in jsval aValue); */
     645             : NS_IMETHODIMP nsTelemetry::ScalarAdd(const nsACString & aName, JS::HandleValue aValue, JSContext* cx)
     646             : {
     647             :     return NS_ERROR_NOT_IMPLEMENTED;
     648             : }
     649             : 
     650             : /* [implicit_jscontext] void scalarSet (in ACString aName, in jsval aValue); */
     651             : NS_IMETHODIMP nsTelemetry::ScalarSet(const nsACString & aName, JS::HandleValue aValue, JSContext* cx)
     652             : {
     653             :     return NS_ERROR_NOT_IMPLEMENTED;
     654             : }
     655             : 
     656             : /* [implicit_jscontext] void scalarSetMaximum (in ACString aName, in jsval aValue); */
     657             : NS_IMETHODIMP nsTelemetry::ScalarSetMaximum(const nsACString & aName, JS::HandleValue aValue, JSContext* cx)
     658             : {
     659             :     return NS_ERROR_NOT_IMPLEMENTED;
     660             : }
     661             : 
     662             : /* [implicit_jscontext,optional_argc] jsval snapshotScalars (in uint32_t aDataset, [optional] in boolean aClear); */
     663             : NS_IMETHODIMP nsTelemetry::SnapshotScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval)
     664             : {
     665             :     return NS_ERROR_NOT_IMPLEMENTED;
     666             : }
     667             : 
     668             : /* [implicit_jscontext] void keyedScalarAdd (in ACString aName, in AString aKey, in jsval aValue); */
     669             : NS_IMETHODIMP nsTelemetry::KeyedScalarAdd(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx)
     670             : {
     671             :     return NS_ERROR_NOT_IMPLEMENTED;
     672             : }
     673             : 
     674             : /* [implicit_jscontext] void keyedScalarSet (in ACString aName, in AString aKey, in jsval aValue); */
     675             : NS_IMETHODIMP nsTelemetry::KeyedScalarSet(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx)
     676             : {
     677             :     return NS_ERROR_NOT_IMPLEMENTED;
     678             : }
     679             : 
     680             : /* [implicit_jscontext] void keyedScalarSetMaximum (in ACString aName, in AString aKey, in jsval aValue); */
     681             : NS_IMETHODIMP nsTelemetry::KeyedScalarSetMaximum(const nsACString & aName, const nsAString & aKey, JS::HandleValue aValue, JSContext* cx)
     682             : {
     683             :     return NS_ERROR_NOT_IMPLEMENTED;
     684             : }
     685             : 
     686             : /* [implicit_jscontext,optional_argc] jsval snapshotKeyedScalars (in uint32_t aDataset, [optional] in boolean aClear); */
     687             : NS_IMETHODIMP nsTelemetry::SnapshotKeyedScalars(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval)
     688             : {
     689             :     return NS_ERROR_NOT_IMPLEMENTED;
     690             : }
     691             : 
     692             : /* void clearScalars (); */
     693             : NS_IMETHODIMP nsTelemetry::ClearScalars()
     694             : {
     695             :     return NS_ERROR_NOT_IMPLEMENTED;
     696             : }
     697             : 
     698             : /* void flushBatchedChildTelemetry (); */
     699             : NS_IMETHODIMP nsTelemetry::FlushBatchedChildTelemetry()
     700             : {
     701             :     return NS_ERROR_NOT_IMPLEMENTED;
     702             : }
     703             : 
     704             : /* [implicit_jscontext,optional_argc] void recordEvent (in ACString aCategory, in ACString aMethod, in ACString aObject, [optional] in jsval aValue, [optional] in jsval extra); */
     705             : NS_IMETHODIMP nsTelemetry::RecordEvent(const nsACString & aCategory, const nsACString & aMethod, const nsACString & aObject, JS::HandleValue aValue, JS::HandleValue extra, JSContext* cx, uint8_t _argc)
     706             : {
     707             :     return NS_ERROR_NOT_IMPLEMENTED;
     708             : }
     709             : 
     710             : /* void setEventRecordingEnabled (in ACString aCategory, in boolean aEnabled); */
     711             : NS_IMETHODIMP nsTelemetry::SetEventRecordingEnabled(const nsACString & aCategory, bool aEnabled)
     712             : {
     713             :     return NS_ERROR_NOT_IMPLEMENTED;
     714             : }
     715             : 
     716             : /* [implicit_jscontext,optional_argc] jsval snapshotBuiltinEvents (in uint32_t aDataset, [optional] in boolean aClear); */
     717             : NS_IMETHODIMP nsTelemetry::SnapshotBuiltinEvents(uint32_t aDataset, bool aClear, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval)
     718             : {
     719             :     return NS_ERROR_NOT_IMPLEMENTED;
     720             : }
     721             : 
     722             : /* void clearEvents (); */
     723             : NS_IMETHODIMP nsTelemetry::ClearEvents()
     724             : {
     725             :     return NS_ERROR_NOT_IMPLEMENTED;
     726             : }
     727             : 
     728             : /* End of implementation class template. */
     729             : #endif
     730             : 
     731             : 
     732             : #endif /* __gen_nsITelemetry_h__ */

Generated by: LCOV version 1.13