org.eclipse.viatra.query.runtime.base.api.profiler

## Class BaseIndexProfiler

- java.lang.Object
- - org.eclipse.viatra.query.runtime.base.api.profiler.BaseIndexProfiler

-     public class BaseIndexProfiler
      extends java.lang.Object

  An index profiler can be attached to an existing navigation helper instance to access the profiling data and control the profiler itself. If the NavigationHelper was not started in profiling mode, the profiler cannot be initialized.
  Since:
    2.3

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BaseIndexProfiler(NavigationHelper navigationHelper)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getNotificationCount()` Returns the number of external request (e.g.
    `long` | `getTotalMeasuredTimeInMS()` Return the total time base index profiler recorded for reacting to model operations.
    `boolean` | `isEnabled()` Returns whether the profiler is turned on (e.g.
    `void` | `resetMeasurement()` Resets all measurements to 0, regardless whether the profiler is enabled or not.
    `void` | `setEnabled(boolean isEnabled)` Enables the base index profiling (e.g.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BaseIndexProfiler

          public BaseIndexProfiler(NavigationHelper navigationHelper)

      Throws:
        `java.lang.IllegalArgumentException` - if the profiler cannot be attached to the base index instance

  - ### Method Detail

    - #### getNotificationCount

          public long getNotificationCount()

      Returns the number of external request (e.g. model changes) the profiler recorded.

    - #### getTotalMeasuredTimeInMS

          public long getTotalMeasuredTimeInMS()

      Return the total time base index profiler recorded for reacting to model operations.

    - #### isEnabled

          public boolean isEnabled()

      Returns whether the profiler is turned on (e.g. measured values are increased).

    - #### setEnabled

          public void setEnabled(boolean isEnabled)

      Enables the base index profiling (e.g. measured values are increased)

    - #### resetMeasurement

          public void resetMeasurement()

      Resets all measurements to 0, regardless whether the profiler is enabled or not. Note: The behavior of the profiler is undefined when the measurements are reset while an EMF notification is being processed and the profiler is enabled.