Package 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
Modifier and Type
Class
Description
`static interface`
`ContextDerivedData.DerivedCalculator`
A way of actually doing the calculations.
`static final class`
`ContextDerivedData.DerivedColumn`
A column of data derived from the existing data.
`static final class`
`ContextDerivedData.DerivedOperation`
A way of calculating the column values.

## Constructor Summary

Constructors
Constructor
Description
`ContextDerivedData()`

## Method Summary

Modifier and Type
Method
Description
`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
`final 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 Details

### ContextDerivedData

public ContextDerivedData()

## Method Details

### 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