## org.eclipse.m2m.atl.profiler.core
Class ATLProfiler

    java.lang.Object
      java.util.Observable
          org.eclipse.m2m.atl.profiler.core.ATLProfiler

    public final class ATLProfiler

extends java.util.Observable

ATLProfiler is a component that dispatch ATL debugging information to ATLModelHandler & ProfilerModelHandler. This class is used by the ProflingDebugger class.

See Also:
  `ATLModelHandler`, `ProfilerModelHandler`

Method Summary
`static ATLProfiler` `getInstance()` Singleton access.
`void` `initProfiler(org.eclipse.emf.ecore.EObject model)` Prepare atl & profiler model handlers with the ATL model.
`void` `interceptEnter(IStackFrame frame)` Intercept the beginning of an operation execution.
`void` `interceptError(IStackFrame frame, java.lang.String msg, java.lang.Throwable e)` Intercept errors.
`void` `interceptLeave(IStackFrame frame)` Intercept the exiting of an operation execution.
`void` `interceptStep(IStackFrame frame)` Intercept simple instruction execution.
`void` `interceptTerminated()` Intercept execution end.
`void` `printProfilingSummary()` Print short profiling summary.

Methods inherited from class java.util.Observable
`addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### getInstance

    public static ATLProfiler getInstance()

  Singleton access.

  Returns:
    the `ATLProfiler` singleton

### initProfiler

    public void initProfiler(org.eclipse.emf.ecore.EObject model)

  Prepare atl & profiler model handlers with the ATL model.

  Parameters:
    `model` - the ATL model

### interceptEnter

    public void interceptEnter(IStackFrame frame)

  Intercept the beginning of an operation execution.
  Delegate operation creation to `ProfilerModelHandler`.
  Create entry in the operation registry (`ProfilerModelHandler`).

  Parameters:
    `frame` - the stack frame

### interceptLeave

    public void interceptLeave(IStackFrame frame)

  Intercept the exiting of an operation execution.
  Delegate operation closure to `ProfilerModelHandler`.
  Check entry in the operation registry.

  Parameters:
    `frame` - the stack frame

### interceptStep

    public void interceptStep(IStackFrame frame)

  Intercept simple instruction execution.
  Delegate step creation to `ProfilerModelHandler`.

  Parameters:
    `frame` - the stack frame

### interceptError

    public void interceptError(IStackFrame frame,
                               java.lang.String msg,
                               java.lang.Throwable e)

  Intercept errors.

  Parameters:
    `frame` - the stack frame
    `msg` - (message)
    `e` - (stacktrace)

### interceptTerminated

    public void interceptTerminated()

  Intercept execution end.
  Close last operation and notify profiler model to listeners components.

### printProfilingSummary

    public void printProfilingSummary()

  Print short profiling summary.

Copyright 2007 IBM Corporation and others. All Rights Reserved.