Package ghidra.trace.model.data
Interface TraceBasedDataTypeManager
- All Superinterfaces:
DataTypeManager,DomainFileBasedDataTypeManager,FileBasedDataTypeManager,ProgramBasedDataTypeManager
- All Known Implementing Classes:
DBTraceDataTypeManager
A data type manager which is part of a
Trace-
Field Summary
Fields inherited from interface ghidra.program.model.data.DataTypeManager
BAD_DATATYPE_ID, BUILT_IN_ARCHIVE_KEY, BUILT_IN_ARCHIVE_UNIVERSAL_ID, BUILT_IN_DATA_TYPES_NAME, DEFAULT_DATATYPE_ID, LOCAL_ARCHIVE_KEY, LOCAL_ARCHIVE_UNIVERSAL_ID, NULL_DATATYPE_ID -
Method Summary
Modifier and TypeMethodDescriptiondefault <T extends DataType>
TaddType(T dataType, DataTypeConflictHandler handler) TODO: Petition to have this replaceDataTypeManager.addDataType(DataType, DataTypeConflictHandler)Get the platform for which this data type manager is provideddefault TraceProgramViewGet the program instance associated with this datatype managergetTrace()Get the trace of which this data type manager is a partdefault <T extends DataType>
TreplaceType(DataType existingDt, T replacementDt, boolean updateCategoryPath) TODO: Petition to have this replaceDataTypeManager.replaceDataType(DataType, DataType, boolean)default <T extends DataType>
TresolveType(T dataType, DataTypeConflictHandler handler) TODO: Petition to have this replaceDataTypeManager.resolve(DataType, DataTypeConflictHandler)Methods inherited from interface ghidra.program.model.data.DataTypeManager
addDataType, addDataTypeManagerListener, addDataTypes, addInvalidatedListener, allowsDefaultBuiltInSettings, allowsDefaultComponentSettings, associateDataTypeWithArchive, close, contains, containsCategory, createCategory, disassociate, endTransaction, findDataType, findDataTypeForID, findDataTypes, findDataTypes, findEnumValueNames, flushEvents, getAddressMap, getAllComposites, getAllDataTypes, getAllDataTypes, getAllFunctionDefinitions, getAllStructures, getCallingConvention, getCategory, getCategory, getCategoryCount, getDataOrganization, getDataType, getDataType, getDataType, getDataType, getDataType, getDataTypeCount, getDataTypes, getDataTypesContaining, getDefaultCallingConvention, getDefinedCallingConventionNames, getFavorites, getID, getKnownCallingConventionNames, getLastChangeTimeForMyManager, getLocalSourceArchive, getName, getPointer, getPointer, getProgramArchitecture, getProgramArchitectureSummary, getResolvedID, getRootCategory, getSourceArchive, getSourceArchives, getType, getUniqueName, getUniversalID, isFavorite, isUpdatable, openTransaction, remove, remove, remove, removeDataTypeManagerListener, removeInvalidatedListener, removeSourceArchive, replaceDataType, resolve, resolveSourceArchive, setFavorite, setName, startTransaction, updateSourceArchiveName, updateSourceArchiveName, withTransaction, withTransactionMethods inherited from interface ghidra.program.model.data.DomainFileBasedDataTypeManager
getDomainFileMethods inherited from interface ghidra.program.model.data.FileBasedDataTypeManager
getPathMethods inherited from interface ghidra.program.model.data.ProgramBasedDataTypeManager
clearAllSettings, clearSetting, deleteAddressRange, getInstanceSettingsNames, getLongSettingsValue, getSettings, getStringSettingsValue, isChangeAllowed, isEmptySetting, moveAddressRange, setLongSettingsValue, setSettings, setStringSettingsValue
-
Method Details
-
getProgram
Description copied from interface:ProgramBasedDataTypeManagerGet the program instance associated with this datatype manager- Specified by:
getProgramin interfaceProgramBasedDataTypeManager- Returns:
- program instance associated with this datatype manager
-
getTrace
Trace getTrace()Get the trace of which this data type manager is a part- Returns:
- the trace
-
getPlatform
TracePlatform getPlatform()Get the platform for which this data type manager is provided- Returns:
- the platform
-
resolveType
TODO: Petition to have this replaceDataTypeManager.resolve(DataType, DataTypeConflictHandler)TODO: What happens if handler keeps existing? Does it return existing or null? If it returns the existing, then can we still cast to T? If not, then we have to be careful with this method. We may need to keep
resolve, and have this one return null when the handler keeps the existing one. -
addType
TODO: Petition to have this replaceDataTypeManager.addDataType(DataType, DataTypeConflictHandler)TODO: What happens if handler keeps existing? Does it return existing or null? If it returns the existing, then can we still cast to T? If not, then we have to be careful with this method. We may need to keep
addDataType, and have this one return null when the handler keeps the existing one. -
replaceType
default <T extends DataType> T replaceType(DataType existingDt, T replacementDt, boolean updateCategoryPath) throws DataTypeDependencyException TODO: Petition to have this replaceDataTypeManager.replaceDataType(DataType, DataType, boolean)- Throws:
DataTypeDependencyException
-