Class DBTraceObjectValueNode
- All Implemented Interfaces:
ValueBox,BoundedShape<ValueBox>,BoundingShape<ValueBox>,HyperBox<ghidra.trace.database.target.ValueTriple,ValueBox>
-
Nested Class Summary
Nested classes/interfaces inherited from class ghidra.util.database.spatial.DBTreeNodeRecord
DBTreeNodeRecord.NodeType -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final byteprotected static final byteprotected static final intprotected static final byteprotected static final byteprotected static final intprotected final DBTraceObjectValueRStarTreeFields inherited from class ghidra.program.database.DatabaseObject
key -
Constructor Summary
ConstructorsConstructorDescriptionDBTraceObjectValueNode(DBTraceObjectValueRStarTree tree, DBCachedObjectStore<?> store, DBRecord record) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidfresh(boolean created) Extension point: Called when the object's fields are populated.protected intGet the number of direct descendants of this nodeprotected intGet the total number of data entries in this sub-tree For data entries, this is 1.longgetShape()protected DBTreeNodeRecord.NodeTypegetType()ghidra.trace.database.target.ValueTriplelCorner()protected voidsetChildCount(int childCount) protected voidsetDataCount(int dataCount) voidsetParentKey(long parentKey) voidprotected voidghidra.trace.database.target.ValueTripleuCorner()Methods inherited from class ghidra.util.database.spatial.DBTreeNodeRecord
toStringMethods inherited from class ghidra.util.database.DBAnnotatedObject
doRefresh, doUpdateAll, doUpdated, doWrite, getObjectKey, getTableName, isDeleted, refresh, refresh, update, update, update, updateMethods inherited from class ghidra.program.database.DatabaseObject
checkDeleted, checkIsValid, checkIsValid, getKey, isDeleted, isInvalid, keyChanged, setDeleted, setInvalid, validateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface ghidra.util.database.spatial.hyper.HyperBox
computeAreaIntersection, computeAreaUnionBounds, computeCentroidDistance, contains, doEquals, doHashCode, encloses, getArea, getCenter, getMargin, intersection, unionBoundsMethods inherited from interface ghidra.trace.database.target.ValueBox
description, immutable, space
-
Field Details
-
NODE_TYPE_MASK
protected static final byte NODE_TYPE_MASK- See Also:
-
NODE_TYPE_SHIFT
protected static final int NODE_TYPE_SHIFT- See Also:
-
NODE_TYPE_CLEAR
protected static final byte NODE_TYPE_CLEAR- See Also:
-
CHILD_COUNT_MASK
protected static final byte CHILD_COUNT_MASK- See Also:
-
CHILD_COUNT_SHIFT
protected static final int CHILD_COUNT_SHIFT- See Also:
-
CHILD_COUNT_CLEAR
protected static final byte CHILD_COUNT_CLEAR- See Also:
-
tree
-
-
Constructor Details
-
DBTraceObjectValueNode
public DBTraceObjectValueNode(DBTraceObjectValueRStarTree tree, DBCachedObjectStore<?> store, DBRecord record)
-
-
Method Details
-
fresh
Description copied from class:DBAnnotatedObjectExtension point: Called when the object's fields are populated.This provides an opportunity for the object to initialize any non-database-backed fields that depend on the database-backed fields. Note that its use may indicate a situation better solved by a custom
DBCachedObjectStoreFactory.DBFieldCodec. If both the database-backed and non-database-backed fields are used frequently, then a codec may not be indicated. If the database-backed fields are only used in this method or to encode another frequently-used field, then a codec is likely better.For a new object, the database-backed fields remain at their initial values. They will be saved after this method returns, so they may be further initialized with custom logic.
For an object loaded from the database, the database-backed fields are already populated from the record when this method is called. They are not automatically saved after this method returns. This method should not further initialize database-backed fields in this case.
- Overrides:
freshin classDBAnnotatedObject- Parameters:
created-truewhen object is being created, orfalsewhen it is being loaded.- Throws:
IOException- if further initialization fails.
-
lCorner
public ghidra.trace.database.target.ValueTriple lCorner() -
uCorner
public ghidra.trace.database.target.ValueTriple uCorner() -
getType
- Specified by:
getTypein classDBTreeNodeRecord<ValueBox>
-
setType
- Specified by:
setTypein classDBTreeNodeRecord<ValueBox>
-
getChildCount
protected int getChildCount()Description copied from class:DBTreeNodeRecordGet the number of direct descendants of this node- Specified by:
getChildCountin classDBTreeNodeRecord<ValueBox>- Returns:
- the child count
-
setChildCount
protected void setChildCount(int childCount) - Specified by:
setChildCountin classDBTreeNodeRecord<ValueBox>
-
getDataCount
protected int getDataCount()Description copied from class:DBTreeRecordGet the total number of data entries in this sub-tree For data entries, this is 1.- Specified by:
getDataCountin classDBTreeRecord<ValueBox,ValueBox> - Returns:
- the data count
-
setDataCount
protected void setDataCount(int dataCount) - Specified by:
setDataCountin classDBTreeNodeRecord<ValueBox>
-
getShape
- Specified by:
getShapein classDBTreeRecord<ValueBox,ValueBox>
-
setShape
- Specified by:
setShapein classDBTreeRecord<ValueBox,ValueBox>
-
getBounds
- Specified by:
getBoundsin interfaceBoundedShape<ValueBox>- Specified by:
getBoundsin interfaceValueBox- Specified by:
getBoundsin classDBTreeRecord<ValueBox,ValueBox>
-
getParentKey
public long getParentKey()- Specified by:
getParentKeyin classDBTreeRecord<ValueBox,ValueBox>
-
setParentKey
public void setParentKey(long parentKey) - Specified by:
setParentKeyin classDBTreeRecord<ValueBox,ValueBox>
-