org.eclipse.mat.query

## Class ContextDerivedData

- java.lang.Object
- - org.eclipse.mat.query.ContextDerivedData

Direct Known Subclasses:
  RetainedSizeDerivedData

    public abstract class ContextDerivedData
    extends Object

Synthetic data columns

### Nested Class Summary

Nested Classes
`static interface` `ContextDerivedData.DerivedCalculator` A way of actually doing the calculations.
`static class` `ContextDerivedData.DerivedColumn` A column of data derived from the existing data.
`static class` `ContextDerivedData.DerivedOperation` A way of calculating the column values.

### Constructor Summary

Constructors
Constructor and Description
`ContextDerivedData()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract Column` `columnFor(ContextDerivedData.DerivedColumn derivedColumn, IResult result, ContextProvider provider)` Get a column ready to use, based on the derived column
`abstract ContextDerivedData.DerivedColumn[]` `getDerivedColumns()` Get all the derived columns for the current context (page) Do not modify the returned array.
`abstract String` `labelFor(ContextDerivedData.DerivedColumn derivedColumn, ContextProvider provider)` Get the label for the extra column
`ContextDerivedData.DerivedColumn` `lookup(ContextDerivedData.DerivedOperation operation)` Find the appropriate column for the requested operation

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

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

### Constructor Detail

#### ContextDerivedData

    public ContextDerivedData()

### Method Detail

#### getDerivedColumns

    public abstract ContextDerivedData.DerivedColumn[] getDerivedColumns()

Get all the derived columns for the current context (page) Do not modify the returned array.

Returns:
  an array of columns

#### labelFor

    public abstract String labelFor(ContextDerivedData.DerivedColumn derivedColumn,
                                    ContextProvider provider)

Get the label for the extra column

Parameters:
  `derivedColumn` - the extra column
  `provider` - how the column was generated
Returns:
  the label

#### columnFor

    public abstract Column columnFor(ContextDerivedData.DerivedColumn derivedColumn,
                                     IResult result,
                                     ContextProvider provider)

Get a column ready to use, based on the derived column

Parameters:
  `derivedColumn` - the extra column
  `result` - the original result to be enhanced
  `provider` - the provider of all the data
Returns:
  the column

#### lookup

    public final ContextDerivedData.DerivedColumn lookup(ContextDerivedData.DerivedOperation operation)

Find the appropriate column for the requested operation

Parameters:
  `operation` - the operation to generate the column values
Returns:
  the column