Interface DBTraceDataAdapter
- All Superinterfaces:
CodeUnit, Data, DataAdapterFromDataType, DataAdapterFromSettings, DataAdapterMinimal, DBTraceCodeUnitAdapter, MemBuffer, MemBufferMixin, PropertySet, Settings, TraceCodeUnit, TraceData
- All Known Subinterfaces:
DBTraceDefinedDataAdapter
- All Known Implementing Classes:
AbstractDBTraceDataComponent, AbstractDBTraceProgramViewListing.DBTraceProgramViewUndefinedData, DBTraceData, DBTraceDataArrayElementComponent, DBTraceDataCompositeFieldComponent, UndefinedDBTraceData
public interface DBTraceDataAdapter
extends DBTraceCodeUnitAdapter, DataAdapterMinimal, DataAdapterFromDataType, DataAdapterFromSettings, TraceData
A base interface for implementations of
TraceData
This behaves somewhat like a mixin, allowing it to be used on data units as well as data components, e.g., fields of a struct data unit.
-
Field Summary
FieldsFields inherited from interface CodeUnit
COMMENT_PROPERTY, DEFINED_DATA_PROPERTY, EOL_COMMENT, INSTRUCTION_PROPERTY, MNEMONIC, PLATE_COMMENT, POST_COMMENT, PRE_COMMENT, REPEATABLE_COMMENT, SPACE_PROPERTYFields inherited from interface DataAdapterMinimal
DATA_OP_INDEX, EMPTY_INT_ARRAY -
Method Summary
Modifier and TypeMethodDescriptiondefault voidaddValueReference(Address refAddr, RefType type) Add a memory reference to the value.default voidRemoves all name-value pairs from this settings objectdefault voidclearSetting(String name) Removes any value associated with the given namedefault LongGets the Long value associated with the given namedefault String[]getNames()Get this list of keys that currently have values associated with themgetPrimitiveAt(int offset) Returns the primitive component containing this offset (i.e., one that does not have sub-components).getRoot()Get the highest level Data item in a hierarchy of structures containing this component.default <T extends SettingsDefinition>
TgetSettingsDefinition(Class<T> settingsDefinitionClass) getSettingsSpace(boolean createIfAbsent) Get the same space from the internal settings adapterdefault StringGets the String value associated with the given namedefault ObjectGets the object associated with the given namedefault TraceReference[]Get the references for the value.default booleanhasMutability(int mutabilityType) default booleanisChangeAllowed(SettingsDefinition settingsDefinition) Determine if a settings change corresponding to the specified settingsDefinition is permitted.default booleanisEmpty()Returns true if there are no key-value pairs stored in this settings object.default voidremoveValueReference(Address refAddr) Remove a reference to the value.default voidAssociates the given long value with the name.default voidAssociates the given String value with the name.default voidAssociates the given object with the name.Methods inherited from interface CodeUnit
getComment, getCommentAsArray, getLength, getMaxAddress, setComment, setCommentAsArrayMethods inherited from interface Data
getBaseDataType, getComponentIndex, getComponentLevel, getComponentPath, getComponentPathName, getComponentsContaining, getDataType, getFieldName, getNumComponents, getParent, getParentOffset, getPathName, getRootOffset, isDefined, isImmutableSettingsMethods inherited from interface DataAdapterFromDataType
doToString, getAddress, getDefaultLabelPrefix, getDefaultValueRepresentation, getMnemonicString, getScalar, getValue, getValueClass, hasStringValue, isArray, isDynamic, isPointer, isStructure, isUnionMethods inherited from interface DataAdapterFromSettings
isConstant, isVolatile, isWritableMethods inherited from interface DataAdapterMinimal
getNumOperands, getPrimarySymbolOrDynamicNameMethods inherited from interface 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, getTrace, getVoidProperty, hasProperty, isBigEndian, propertyNames, removeExternalReference, removeMnemonicReference, removeOperandReference, removeProperty, setComment, setCommentAsArray, setPrimaryMemoryReference, setProperty, setProperty, setProperty, setProperty, setProperty, setRegisterReference, setStackReference, setTypedPropertyMethods inherited from interface MemBuffer
getAddress, getInputStream, getInputStream, getUnsignedByte, getUnsignedInt, getUnsignedShort, getVarLengthInt, getVarLengthUnsignedInt, isInitializedMemoryMethods inherited from interface MemBufferMixin
getBigInteger, getByte, getBytes, getBytes, getBytesInFull, getInt, getLong, getShortMethods inherited from interface Settings
getDefaultSettings, getSuggestedValuesMethods inherited from interface TraceCodeUnit
delete, getBounds, getBytes, getEndSnap, getLanguage, getLifespan, getPlatform, getRange, getStartSnap, getThread, setEndSnapMethods inherited from interface TraceData
getComponent, getComponent, getComponentAt, getComponentContaining
-
Field Details
-
EMPTY_STRING_ARRAY
-
-
Method Details
-
getRoot
DBTraceDataAdapter getRoot()Description copied from interface:DataGet the highest level Data item in a hierarchy of structures containing this component. -
getValueReferences
Description copied from interface:DataGet the references for the value.- Specified by:
getValueReferencesin interfaceData- Specified by:
getValueReferencesin interfaceDataAdapterMinimal- Specified by:
getValueReferencesin interfaceTraceData- Returns:
- the references
-
addValueReference
Description copied from interface:DataAdd a memory reference to the value.- Specified by:
addValueReferencein interfaceData- Parameters:
refAddr- address referenced.type- the type of reference to be added.
-
removeValueReference
Description copied from interface:DataRemove a reference to the value.- Specified by:
removeValueReferencein interfaceData- Parameters:
refAddr- address of reference to be removed.
-
getSettingsSpace
Get the same space from the internal settings adapter- Parameters:
createIfAbsent- true to create the space if its not already present- Returns:
- the space or null
-
isChangeAllowed
Description copied from interface:SettingsDetermine if a settings change corresponding to the specified settingsDefinition is permitted.- Specified by:
isChangeAllowedin interfaceSettings- Parameters:
settingsDefinition- settings definition- Returns:
- true if change permitted else false
-
setLong
Description copied from interface:SettingsAssociates the given long value with the name. Note that an attempted setting change may be ignored if prohibited (e.g., immutable Settings, undefined setting name). -
getLong
-
setString
Description copied from interface:SettingsAssociates the given String value with the name. Note that an attempted setting change may be ignored if prohibited (e.g., immutable Settings, undefined setting name). -
getString
-
setValue
Description copied from interface:SettingsAssociates the given object with the name. Note that an attempted setting change may be ignored if prohibited (e.g., immutable Settings, undefined setting name). -
getValue
-
clearSetting
Description copied from interface:SettingsRemoves any value associated with the given name- Specified by:
clearSettingin interfaceSettings- Parameters:
name- the key to remove any association
-
clearAllSettings
default void clearAllSettings()Description copied from interface:SettingsRemoves all name-value pairs from this settings object- Specified by:
clearAllSettingsin interfaceSettings
-
getNames
-
isEmpty
default boolean isEmpty()Description copied from interface:SettingsReturns true if there are no key-value pairs stored in this settings object. This is not a reflection of the underlying default settings which may still contain a key-value pair when this settings object is empty. -
getSettingsDefinition
- Specified by:
getSettingsDefinitionin interfaceDataAdapterFromSettings
-
hasMutability
default boolean hasMutability(int mutabilityType) - Specified by:
hasMutabilityin interfaceDataAdapterFromSettings
-
getPrimitiveAt
Description copied from interface:DataReturns the primitive component containing this offset (i.e., one that does not have sub-components). This is useful for data items which are made up of multiple layers of other data items. This method immediately goes to the lowest level data item. If the minimum offset of a component is specified, the only first component containing the offset will be considered (e.g., 0-element array).- Specified by:
getPrimitiveAtin interfaceData- Specified by:
getPrimitiveAtin interfaceTraceData- Parameters:
offset- the offset- Returns:
- primitive component containing this offset
-