Memory Analyzer is an Eclipse application for solving memory problems in user applications based on a snapshot of the contents of the heap. It has several extension points for adding additional function. The main arrangement of plug-ins is

- `org.eclipse.mat.report` provides report building capabilities.
  1. query extension point
  2. rendering extension point
  3. report extension point
  - `org.eclipse.mat.api` allows access to data from the snapshot, such as objects and classes. It also holds the standard queries.
    1. snapshot factory extension point
    2. trigger heap dump extension point
    3. name resolver extension point for object describing
    4. request resolver extension point
    5. thread resolver extension point
    6. ticketResolver extension point
    - `org.eclipse.mat.parser` controls the parsing of a heap dump into a snapshot, and holds the implementations of the snapshot objects and indexes.
      1. parser extension point
      - `org.eclipse.mat.dtfj` parses IBM DTFJ based dumps.
        1. Calls DTFJ extensions from IBM using the DTFJ API extension point from IBM
      - `org.eclipse.mat.hprof` parses HPROF based dumps.
        1. HPROF enhancement extension point
    - `org.eclipse.mat.ibmdump` creates dumps from other IBM VMs running on the system on request for analysis by MAT.
    - `org.eclipse.mat.jdt` links classes in the snapshot to class source code in the IDE.
    - `org.eclipse.mat.chart` controls the generation of pie charts.
      - `org.eclipse.mat.chartui` also depends on `org.eclipse.mat.ui` displays pie charts.
    - `org.eclipse.mat.ui`
      1. contributions to the editor tool bar extension point
      2. new panes for results extension point