mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-28 03:17:31 +09:00
44 lines
1.5 KiB
Text
44 lines
1.5 KiB
Text
|
|
/* 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/. */
|
||
|
|
#include "nsISupports.idl"
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Simple stopwatch mechanism for determining the amount of wall-clock time and
|
||
|
|
* CPU time (user + system) that has elapsed. It is not fancy. It is either
|
||
|
|
* running or it is not. If you want coherent cpu and real time values, then
|
||
|
|
* you had better stop it first. It does not keep counting when stopped,
|
||
|
|
* although one could add a resumeRetroactive or something to accomplish that.
|
||
|
|
*/
|
||
|
|
[scriptable, uuid(7a671d6e-d48f-4a4f-b87e-644815a5e381)]
|
||
|
|
interface nsIStopwatch : nsISupports {
|
||
|
|
/**
|
||
|
|
* Start the stopwatch; all counters are reset to zero. If you want to
|
||
|
|
* keep the already accumulated values, use resume instead.
|
||
|
|
*/
|
||
|
|
void start();
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Stop the stopwatch.
|
||
|
|
*/
|
||
|
|
void stop();
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Resume the stopwatch without clearing the existing counters. Any time
|
||
|
|
* already accumulated on cpuTime/realTime will be kept.
|
||
|
|
*/
|
||
|
|
void resume();
|
||
|
|
|
||
|
|
/**
|
||
|
|
* The total CPU time (user + system) in seconds accumulated between calls to
|
||
|
|
* start/resume and stop. You have to stop the stopwatch to cause this value
|
||
|
|
* to update.
|
||
|
|
*/
|
||
|
|
readonly attribute double cpuTimeSeconds;
|
||
|
|
/**
|
||
|
|
* The total wall clock time in seconds accumulated between calls to
|
||
|
|
* start/resume and stop. You have to stop the stopwatch to cause this value
|
||
|
|
* to update.
|
||
|
|
*/
|
||
|
|
readonly attribute double realTimeSeconds;
|
||
|
|
};
|