8.8.1.1.1.2.5. Clock

interface Clock()
disable()

Disable the profile clock.

session.clock.disable();
Return type:

void

disableAutoReset()

Disable Auto-Reset mode for the profile clock.

session.clock.disableAutoReset();
Return type:

void

enable()

Enable the profile clock.

session.clock.enable();
Return type:

void

enableAutoReset()

Enable Auto-Reset mode for the profile clock.

session.clock.enableAutoReset();
Return type:

void

getCurrentEvent()

Get the currently configured profile clock event.

const event = session.clock.getCurrentEvent();
if (event) {
  console.log(`The clock is currently profiling ${event.name}`);
} else {
  console.log(`The clock is not currently profiling an event`);
}
Returns:

The currently configured profile clock event.

Return type:

ClockEvent | null

getEvents()

Get a list of all available profile clock events.

const events = session.clock.getEvents();
for (const event of events) {
   console.log(`${event.id}: ${event.name}`);
}
Returns:

A list of all available profile clock events.

Return type:

ClockEvent[]

read()

Read the current value of the profile clock counter.

const count = session.clock.read();
Returns:

The current value of the profile clock.

Return type:

bigint | number | string

reset()

Reset the profile clock counter to zero.

session.clock.reset();
Return type:

void

setCurrentEvent(event: number | string)

Configure the profile clock to profile/count a particular event.

// by id
session.clock.setCurrentEvent(1);
// by name (this is just an example, events differ by target)
session.clock.setCurrentEvent("CPU.discontinuity.branch");
Parameters:
  • event (number | string) -- The id or name of the event to profile.

Return type:

void