Package ghidra.util.database.spatial

# Class DBTreeDataRecord<DS extends BoundedShape<NS>,NS extends BoundingShape<NS>,T>

java.lang.Object
ghidra.program.database.DatabaseObject
ghidra.util.database.DBAnnotatedObject
ghidra.util.database.spatial.DBTreeRecord<DS,NS>
ghidra.util.database.spatial.DBTreeDataRecord<DS,NS,T>

Direct Known Subclasses:
  `DBTraceAddressSnapRangePropertyMapTree.AbstractDBTraceAddressSnapRangePropertyMapData`, `DBTraceObjectValueData`

public abstract class DBTreeDataRecord<DS extends BoundedShape<NS>,NS extends BoundingShape<NS>,T> extends DBTreeRecord<DS,NS>

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `protected static interface`
  `DBTreeDataRecord.RecordEntry<DS extends BoundedShape<NS>,NS extends BoundingShape<NS>,T>`

- ## Field Summary

  ### Fields inherited from class ghidra.program.database.DatabaseObject

  `key`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DBTreeDataRecord(DBCachedObjectStore<?> store, DBRecord record)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected DBTreeDataRecord.RecordEntry<DS,NS,T>`
  `asEntry()`
  `protected int`
  `getDataCount()`
  Get the total number of data entries in this sub-tree For data entries, this is 1.
  `protected abstract T`
  `getRecordValue()`
  Get the value of this record Note that the value is sometimes the record itself, i.e., this method returns `this`.
  `protected abstract void`
  `setRecordValue(T value)`
  Set the value of this record Note that the value is sometimes the record itself.
  `protected abstract boolean`
  `shapeEquals(DS shape)`
  `String`
  `toString()`

  ### Methods inherited from class ghidra.util.database.spatial.DBTreeRecord

  `getBounds, getParentKey, getShape, setParentKey, setShape`

  ### Methods inherited from class ghidra.util.database.DBAnnotatedObject

  `doRefresh, doUpdateAll, doUpdated, doWrite, fresh, getObjectKey, getTableName, isDeleted, refresh, refresh, update, update, update, update`

  ### Methods inherited from class ghidra.program.database.DatabaseObject

  `checkDeleted, checkIsValid, checkIsValid, getKey, isDeleted, isInvalid, keyChanged, setDeleted, setInvalid, validate`

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

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

- ## Constructor Details

  - ### DBTreeDataRecord

    public DBTreeDataRecord(DBCachedObjectStore<?> store, DBRecord record)

- ## Method Details

  - ### shapeEquals

    protected abstract boolean shapeEquals(DS shape)

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### setRecordValue

    protected abstract void setRecordValue(T value)
    Set the value of this record Note that the value is sometimes the record itself. In this case, this method expects `value` to be `null` and does nothing. See `SpatialMap.put(BoundedShape, Object)` for more details of this pattern.
    Parameters:
      `value` - the record's new value

  - ### getRecordValue

    protected abstract T getRecordValue()
    Get the value of this record Note that the value is sometimes the record itself, i.e., this method returns `this`. See `SpatialMap.put(BoundedShape, Object)` for more details of this pattern.
    Returns:
      the record's value

  - ### asEntry

    protected DBTreeDataRecord.RecordEntry<DS,NS,T> asEntry()

  - ### getDataCount

    protected int getDataCount()
    Description copied from class: `DBTreeRecord`
    Get the total number of data entries in this sub-tree For data entries, this is 1.
    Specified by:
      `getDataCount` in class `DBTreeRecord<DS extends BoundedShape<NS>,NS extends BoundingShape<NS>>`
    Returns:
      the data count