gecko-dev/dom/workers/WorkerDebugger.h
Tarek Ziadé 90bafd1f42 Bug 1452580 - remove RELEASE_OR_BETA defines for PerformanceCounter usage - r=baku,erahm,farre
PerformanceCounters are currently disabled in two ways:

- a preference that's off by default "dom.performance.enable_scheduler_timing"
- calls made only for nightly using #ifndef RELEASE_OR_BETA

In order to simplify the code, let's remove the #ifndef and rely only on the pref.
That will also allows us to use the feature in every version going forward.

The performance will not be impacted since the current code is already using
the (cached) pref value to determine if the counters are used.

MozReview-Commit-ID: 47t2M1O13aH

--HG--
extra : rebase_source : e129e1829f1dc37c019e50e156474c4876d6d6cb
2018-04-24 22:03:06 +02:00

71 lines
1.7 KiB
C++

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_dom_workers_WorkerDebugger_h
#define mozilla_dom_workers_WorkerDebugger_h
#include "mozilla/dom/DOMTypes.h"
#include "mozilla/dom/WorkerCommon.h"
#include "nsIWorkerDebugger.h"
namespace mozilla {
namespace dom {
class WorkerPrivate;
class WorkerDebugger : public nsIWorkerDebugger
{
class ReportDebuggerErrorRunnable;
class PostDebuggerMessageRunnable;
WorkerPrivate* mWorkerPrivate;
bool mIsInitialized;
nsTArray<nsCOMPtr<nsIWorkerDebuggerListener>> mListeners;
public:
explicit WorkerDebugger(WorkerPrivate* aWorkerPrivate);
NS_DECL_ISUPPORTS
NS_DECL_NSIWORKERDEBUGGER
void
AssertIsOnParentThread();
void
Close();
void
PostMessageToDebugger(const nsAString& aMessage);
void
ReportErrorToDebugger(const nsAString& aFilename, uint32_t aLineno,
const nsAString& aMessage);
/*
* Sends back a PerformanceInfo struct from the counters
* in mWorkerPrivate. Counters are reset to zero after this call.
*/
PerformanceInfo
ReportPerformanceInfo();
private:
virtual
~WorkerDebugger();
void
PostMessageToDebuggerOnMainThread(const nsAString& aMessage);
void
ReportErrorToDebuggerOnMainThread(const nsAString& aFilename,
uint32_t aLineno,
const nsAString& aMessage);
};
} // dom namespace
} // mozilla namespace
#endif // mozilla_dom_workers_WorkerDebugger_h