Package ghidra.util.table
Class ProgramLocationTableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE>
- java.lang.Object
-
- docking.widgets.table.TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,Program>
-
- ghidra.util.table.ProgramLocationTableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE>
-
- Type Parameters:
ROW_TYPE
- The row type of a given table modelEXPECTED_ROW_TYPE
- The row type expected by dynamic columns (e.g., ProgramLocations, Addresses, etc).
- All Implemented Interfaces:
ExtensionPoint
- Direct Known Subclasses:
AddressableRowObjectToAddressTableRowMapper
,AddressableRowObjectToFunctionTableRowMapper
,AddressableRowObjectToProgramLocationTableRowMapper
,AddressTableToAddressTableRowMapper
,AddressTableToProgramLocationTableRowMapper
,AddressToFunctionContainingTableRowMapper
,AddressToProgramLocationTableRowMapper
,AddressToSymbolTableRowMapper
,ProgramLocationToAddressTableRowMapper
,ProgramLocationToFunctionContainingTableRowMapper
,ProgramLocationToSymbolTableRowMapper
,ReferenceToReferenceAddressPairTableRowMapper
,SymbolToAddressTableRowMapper
,SymbolToProgramLocationTableRowMapper
public abstract class ProgramLocationTableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE> extends TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,Program>
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. For example, the Bookmarks table model's data is based upon Bookmark objects. Furthermore, those objects are easily converted to ProgramLocations and Addresses. By creating a mapper for the these types, the table model can now show dynamic columns that work on ProgramLocations and Addresses.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.
This column is an extension of
TableRowMapper
that has knowledge ofProgramLocationTableColumn
s, which means that it knows how to generateProgramLocation
s. This is the preferred mapper to use with tables that work on program data, as it means that the column works with navigation.- See Also:
AbstractDynamicTableColumn
,TableUtils
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface ghidra.util.classfinder.ExtensionPoint
ExtensionPoint.Exclude, ExtensionPoint.Util
-
-
Constructor Summary
Constructors Constructor Description ProgramLocationTableRowMapper()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <COLUMN_TYPE>
DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,Program>createMappedTableColumn(DynamicTableColumn<EXPECTED_ROW_TYPE,COLUMN_TYPE,Program> 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.-
Methods inherited from class docking.widgets.table.TableRowMapper
getDestinationType, getSourceType, map
-
-
-
-
Method Detail
-
createMappedTableColumn
public <COLUMN_TYPE> DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,Program> createMappedTableColumn(DynamicTableColumn<EXPECTED_ROW_TYPE,COLUMN_TYPE,Program> 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.- Overrides:
createMappedTableColumn
in classTableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,Program>
- 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.
-
-