Class TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,DATA_SOURCE>

java.lang.Object
docking.widgets.table.TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,DATA_SOURCE>
Type Parameters:
ROW_TYPE - The row type of a given table model
EXPECTED_ROW_TYPE - The row type expected by dynamic columns.
All Implemented Interfaces:
ExtensionPoint
Direct Known Subclasses:
ProgramLocationTableRowMapper, ReferenceEndpointToAddressTableRowMapper, ReferenceEndpointToFunctionTableRowMapper, ReferenceEndpointToProgramLocationTableRowMapper, ReferenceEndpointToReferenceTableRowMapper

public abstract class TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,DATA_SOURCE> extends Object implements ExtensionPoint
NOTE: ALL TableRowMapper CLASSES MUST END IN "TableRowMapper". If not, the ClassSearcher will not find them. An interface that allows implementors to map an object of one type to another. This is useful for table models that have row types that are easily converted to other more generic types.

This interface is an ExtensionPoint so that once created, they will be ingested automatically by Ghidra. Once discovered, these mappers will be used to provide dynamic columns to to tables with row types that match ROW_TYPE.

See Also:
  • Constructor Details

    • TableRowMapper

      public TableRowMapper()
  • Method Details

    • getSourceType

      public final Class<ROW_TYPE> getSourceType()
    • getDestinationType

      public final Class<EXPECTED_ROW_TYPE> getDestinationType()
    • createMappedTableColumn

      public <COLUMN_TYPE> DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE> createMappedTableColumn(DynamicTableColumn<EXPECTED_ROW_TYPE,COLUMN_TYPE,DATA_SOURCE> destinationColumn)
      Creates a table column that will create a table column that knows how to map the given ROW_TYPE to the type of the column passed in, the EXPECTED_ROW_TYPE.
      Type Parameters:
      COLUMN_TYPE - The column type of the given and created columns
      Parameters:
      destinationColumn - The existing column, which is based upon EXPECTED_ROW_TYPE, that we want to be able to use with the type we have, the ROW_TYPE.
    • map

      public abstract EXPECTED_ROW_TYPE map(ROW_TYPE rowObject, DATA_SOURCE data, ServiceProvider serviceProvider)