Package ghidra.features.bsim.gui.search.results

# Class BSimExecutablesSummaryModel

java.lang.Object
javax.swing.table.AbstractTableModel
docking.widgets.table.AbstractGTableModel<ExecutableResult>
docking.widgets.table.AbstractSortedTableModel<ExecutableResult>
docking.widgets.table.GDynamicColumnTableModel<ExecutableResult,Program>
docking.widgets.table.threaded.ThreadedTableModel<ExecutableResult,Program>
ghidra.util.table.GhidraProgramTableModel<ExecutableResult>
ghidra.features.bsim.gui.search.results.BSimExecutablesSummaryModel

All Implemented Interfaces:
  `ConfigurableColumnTableModel`, `DynamicColumnTableModel<ExecutableResult>`, `RowObjectFilterModel<ExecutableResult>`, `RowObjectTableModel<ExecutableResult>`, `SelectionStorage<ExecutableResult>`, `SortedTableModel`, `VariableColumnTableModel`, `ProgramTableModel`, `Serializable`, `EventListener`, `ChangeListener`, `TableModel`

public class BSimExecutablesSummaryModel extends GhidraProgramTableModel<ExecutableResult>
Table model built by aggregating or "summing" the columns of rows from the QueryResultModel. QueryResultModel rows represent functions contained in specific executables. This model groups function rows from the same executable and produces a single row for that executable. Columns are populated roughly: CountColumn is the number of functions in the group SignificanceColumn is the sum of the individual function significances in the group All the other columns are inherited from properties of the single executable used to define the group of functions. ExecutableNameMatch name of the executable ExecutableCategoryMatch a category associated with the executable ExecutableDateMatch date associated with the executable ArchitectureMatch architecture CompilerMatch compiler RepoColumn repository containing the executable

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class docking.widgets.table.threaded.ThreadedTableModel

  `ThreadedTableModel.IncrementalLoadJobListener`

- ## Field Summary

  ### Fields inherited from class ghidra.util.table.GhidraProgramTableModel

  `program`

  ### Fields inherited from class docking.widgets.table.threaded.ThreadedTableModel

  `allData, filteredData`

  ### Fields inherited from class docking.widgets.table.GDynamicColumnTableModel

  `columnSettings, serviceProvider, tableColumns`

  ### Fields inherited from class docking.widgets.table.AbstractSortedTableModel

  `hasEverSorted`

  ### Fields inherited from class docking.widgets.table.AbstractGTableModel

  `isDisposed, WIDTH_UNDEFINED`

  ### Fields inherited from class javax.swing.table.AbstractTableModel

  `listenerList`

  ### Fields inherited from interface docking.widgets.table.RowObjectFilterModel

  `SUB_FILTERING_DISABLED_PROPERTY`

  ### Fields inherited from interface docking.widgets.table.SortedTableModel

  `ASCENDING_ORDER, DESCENDING_ORDER`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected TableColumnDescriptor<ExecutableResult>`
  `createTableColumnDescriptor()`
  `protected void`
  `doLoad(Accumulator<ExecutableResult> accumulator, TaskMonitor monitor)`
  The basic method that all children must implement.
  `ProgramLocation`
  `getProgramLocation(int row, int column)`
  Returns a program location corresponding the given row and column.
  `ProgramSelection`
  `getProgramSelection(int[] rows)`
  Returns a program selection corresponding to the specified row index array.

  ### Methods inherited from class ghidra.util.table.GhidraProgramTableModel

  `dispose, getAddress, getAddress, getDataSource, getProgram, getProgramForRow, setProgram`

  ### Methods inherited from class docking.widgets.table.threaded.ThreadedTableModel

  `addInitialLoadListener, addInitialLoadListener, addObject, addThreadedTableModelListener, backgroundWorkCancelled, cancelAllUpdates, clearData, createAccumulator, createIncrementalLoadJob, createSortComparator, doFilter, fireTableChanged, getAddRemoveStrategy, getAllData, getModelData, getModelIndex, getModelRow, getName, getRowCount, getRowObjects, getTableFilter, getUnfilteredData, getUnfilteredIndexForRowObject, getUnfilteredRowCount, getUnfilteredRowObjectForIndex, getValueAt, getViewIndex, getViewRow, hasFilter, initializeSorting, isBusy, isFiltered, isLoadIncrementally, reFilter, reload, removeObject, removeThreadedTableModelListener, reSort, setIncrementalTaskMonitor, setModelState, setTableFilter, sort, startInitialLoad, updateNow, updateObject`

  ### Methods inherited from class docking.widgets.table.GDynamicColumnTableModel

  `addTableColumn, addTableColumn, addTableColumns, addTableColumns, createSortComparatorForColumn, disposeDynamicColumnData, getColumn, getColumnClass, getColumnCount, getColumnDescription, getColumnDisplayName, getColumnIndex, getColumnIndex, getColumnName, getColumnSettings, getColumnSettingsDefinitions, getColumnValueForRow, getDefaultColumnCount, getHeaderRenderer, getMaxLines, getPreferredColumnWidth, getRenderer, getTableColumnDescriptor, getUniqueIdentifier, isDefaultColumn, isSortable, isVisibleByDefault, loadDiscoveredTableColumns, reloadColumns, removeTableColumn, removeTableColumns, setAllColumnSettings, stateChanged`

  ### Methods inherited from class docking.widgets.table.AbstractSortedTableModel

  `addSortListener, cleanupTableSortState, createSortingContext, getIndexForRowObject, getIndexForRowObject, getPendingSortState, getPrimarySortColumnIndex, getRowIndex, getRowObject, getTableSortState, isSorted, isSortPending, notifyModelSorted, setDefaultTableSortState, setTableSortState, sortCompleted`

  ### Methods inherited from class docking.widgets.table.AbstractGTableModel

  `getLastSelectedObjects, isDisposed, refresh, setLastSelectedObjects`

  ### Methods inherited from class javax.swing.table.AbstractTableModel

  `addTableModelListener, findColumn, fireTableCellUpdated, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt`

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

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

  ### Methods inherited from interface docking.widgets.table.RowObjectTableModel

  `fireTableDataChanged, getColumnValueForRow, getRowIndex, getRowObject`

  ### Methods inherited from interface javax.swing.table.TableModel

  `addTableModelListener, getColumnClass, getColumnCount, getColumnName, isCellEditable, removeTableModelListener, setValueAt`

- ## Method Details

  - ### createTableColumnDescriptor

    protected TableColumnDescriptor<ExecutableResult> createTableColumnDescriptor()
    Overrides:
      `createTableColumnDescriptor` in class `GhidraProgramTableModel<ExecutableResult>`

  - ### doLoad

    protected void doLoad(Accumulator<ExecutableResult> accumulator, TaskMonitor monitor) throws CancelledException
    Description copied from class: `ThreadedTableModel`
    The basic method that all children must implement. This is where children load their data.
    Specified by:
      `doLoad` in class `ThreadedTableModel<ExecutableResult,Program>`
    Parameters:
      `accumulator` - the datastructure into which you should incrementally place you table row data
      `monitor` - the task monitor to check for cancellations and to update progress
    Throws:
      `CancelledException` - if the task monitor has been cancelled and a call is made to `monitor.checkCancelled();`.

  - ### getProgramLocation

    public ProgramLocation getProgramLocation(int row, int column)
    Description copied from interface: `ProgramTableModel`
    Returns a program location corresponding the given row and column.

    Motivation: Given a table that has a column that contains addresses. If the user clicks on this column, then it would be nice to have the CodeBrowser navigate to this address.

    Specified by:
      `getProgramLocation` in interface `ProgramTableModel`
    Overrides:
      `getProgramLocation` in class `GhidraProgramTableModel<ExecutableResult>`
    Parameters:
      `row` - the row
      `column` - the column in the model's index
    Returns:
      a program location corresponding the given row and column

  - ### getProgramSelection

    public ProgramSelection getProgramSelection(int[] rows)
    Description copied from interface: `ProgramTableModel`
    Returns a program selection corresponding to the specified row index array. This array will contain the currently selected rows.
    Specified by:
      `getProgramSelection` in interface `ProgramTableModel`
    Overrides:
      `getProgramSelection` in class `GhidraProgramTableModel<ExecutableResult>`
    Parameters:
      `rows` - the currently selected rows.
    Returns:
      a program selection