Package ghidra.trace.database.listing

# Class DBTraceDataCompositeFieldComponent

java.lang.Object
ghidra.trace.database.listing.AbstractDBTraceDataComponent
ghidra.trace.database.listing.DBTraceDataCompositeFieldComponent

All Implemented Interfaces:
  `Settings`, `CodeUnit`, `Data`, `MemBuffer`, `MemBufferMixin`, `PropertySet`, `DBTraceCodeUnitAdapter`, `DBTraceDataAdapter`, `DBTraceDefinedDataAdapter`, `TraceCodeUnit`, `TraceData`, `DataAdapterFromDataType`, `DataAdapterFromSettings`, `DataAdapterMinimal`

public class DBTraceDataCompositeFieldComponent extends AbstractDBTraceDataComponent
The implementation of a field data component in a `DBTrace`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final DataTypeComponent`
  `dtc`

  ### Fields inherited from class ghidra.trace.database.listing.AbstractDBTraceDataComponent

  `address, baseDataType, componentCache, dataType, defaultSettings, index, length, level, maxAddress, parent, path, root`

  ### Fields inherited from interface ghidra.program.model.listing.CodeUnit

  `COMMENT_PROPERTY, DEFINED_DATA_PROPERTY, EOL_COMMENT, INSTRUCTION_PROPERTY, MNEMONIC, PLATE_COMMENT, POST_COMMENT, PRE_COMMENT, REPEATABLE_COMMENT, SPACE_PROPERTY`

  ### Fields inherited from interface ghidra.trace.util.DataAdapterMinimal

  `DATA_OP_INDEX, EMPTY_INT_ARRAY`

  ### Fields inherited from interface ghidra.trace.database.listing.DBTraceDataAdapter

  `EMPTY_STRING_ARRAY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DBTraceDataCompositeFieldComponent(DBTraceData root, DBTraceDefinedDataAdapter parent, Address address, DataTypeComponent dtc)`
  Create a field

- ## Method Summary

  Modifier and Type
  Method
  Description
  `TraceAddressSnapRange`
  `getBounds()`
  Get the bounds of this unit in space and time
  `String`
  `getFieldName()`
  Get the field name of this data item if it is "inside" another data item, otherwise return null.
  `String`
  `getFieldSyntax()`
  `AddressRange`
  `getRange()`
  Get the address range covered by this unit

  ### Methods inherited from class ghidra.trace.database.listing.AbstractDBTraceDataComponent

  `delete, doGetComponentCache, getAddress, getBaseDataType, getBytes, getComponentIndex, getComponentLevel, getComponentPath, getComponentPathName, getDataType, getDefaultSettings, getEndSnap, getLanguage, getLength, getLifespan, getMaxAddress, getParent, getParentOffset, getPathName, getPathName, getPlatform, getRoot, getRootOffset, getSettingsSpace, getStartSnap, getThread, getTrace, setEndSnap, toString`

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

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

  ### Methods inherited from interface ghidra.program.model.listing.CodeUnit

  `getComment, getCommentAsArray, setComment, setCommentAsArray`

  ### Methods inherited from interface ghidra.program.model.listing.Data

  `isImmutableSettings`

  ### Methods inherited from interface ghidra.trace.util.DataAdapterFromDataType

  `doToString, getAddress, getDefaultLabelPrefix, getDefaultValueRepresentation, getMnemonicString, getScalar, getValue, getValueClass, hasStringValue, isArray, isDynamic, isPointer, isStructure, isUnion`

  ### Methods inherited from interface ghidra.trace.util.DataAdapterFromSettings

  `isConstant, isVolatile, isWritable`

  ### Methods inherited from interface ghidra.trace.util.DataAdapterMinimal

  `getNumOperands, getPrimarySymbolOrDynamicName`

  ### Methods inherited from interface ghidra.trace.database.listing.DBTraceCodeUnitAdapter

  `addMnemonicReference, addOperandReference, compareTo, contains, getAddressSpace, getAddressString, getBytes, getBytesInCodeUnit, getComment, getCommentAsArray, getExternalReference, getIntProperty, getLabel, getMemory, getMinAddress, getMnemonicReferences, getObjectProperty, getOperandReferences, getPrimaryReference, getPrimarySymbol, getProgram, getProperty, getReferenceIteratorTo, getReferencesFrom, getStringProperty, getSymbols, getVoidProperty, hasProperty, isBigEndian, propertyNames, removeExternalReference, removeMnemonicReference, removeOperandReference, removeProperty, setComment, setCommentAsArray, setPrimaryMemoryReference, setProperty, setProperty, setProperty, setProperty, setProperty, setRegisterReference, setStackReference, setTypedProperty`

  ### Methods inherited from interface ghidra.trace.database.listing.DBTraceDataAdapter

  `addValueReference, clearAllSettings, clearSetting, getLong, getNames, getSettingsDefinition, getString, getValue, getValueReferences, hasMutability, isChangeAllowed, isEmpty, removeValueReference, setLong, setString, setValue`

  ### Methods inherited from interface ghidra.trace.database.listing.DBTraceDefinedDataAdapter

  `doGetComponent, getComponent, getComponent, getComponentAt, getComponentContaining, getComponentsContaining, getNumComponents, getPrimitiveAt, isDefined`

  ### Methods inherited from interface ghidra.program.model.mem.MemBuffer

  `getInputStream, getInputStream, getUnsignedByte, getUnsignedInt, getUnsignedShort, getVarLengthInt, getVarLengthUnsignedInt, isInitializedMemory`

  ### Methods inherited from interface ghidra.program.model.mem.MemBufferMixin

  `getBigInteger, getByte, getBytes, getBytesInFull, getInt, getLong, getShort`

  ### Methods inherited from interface ghidra.docking.settings.Settings

  `getSuggestedValues`

- ## Field Details

  - ### dtc

    protected final DataTypeComponent dtc

- ## Constructor Details

  - ### DBTraceDataCompositeFieldComponent

    public DBTraceDataCompositeFieldComponent(DBTraceData root, DBTraceDefinedDataAdapter parent, Address address, DataTypeComponent dtc)
    Create a field
    Parameters:
      `root` - the root data unit
      `parent` - the parent component, possibly the root
      `address` - the minimum address of this component
      `dtc` - the data type component, giving the index, data type, and length

- ## Method Details

  - ### getFieldName

    public String getFieldName()
    Description copied from interface: `Data`
    Get the field name of this data item if it is "inside" another data item, otherwise return null.
    Returns:
      the name of this data as known from some parent data item or null if this data item is not a component of another data item.

  - ### getFieldSyntax

    public String getFieldSyntax()
    Specified by:
      `getFieldSyntax` in class `AbstractDBTraceDataComponent`

  - ### getRange

    public AddressRange getRange()
    Description copied from interface: `TraceCodeUnit`
    Get the address range covered by this unit
    Returns:
      the range

  - ### getBounds

    public TraceAddressSnapRange getBounds()
    Description copied from interface: `TraceCodeUnit`
    Get the bounds of this unit in space and time
    Returns:
      the bounds