Package ghidra.program.model.data
Class StandAloneDataTypeManager
- java.lang.Object
-
- ghidra.program.database.data.DataTypeManagerDB
-
- ghidra.program.model.data.StandAloneDataTypeManager
-
- All Implemented Interfaces:
DataTypeManager
- Direct Known Subclasses:
BuiltInDataTypeManager,FileDataTypeManager
public class StandAloneDataTypeManager extends DataTypeManagerDB
Basic implementation of the DataTypeManger interface
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Stringname-
Fields inherited from class ghidra.program.database.data.DataTypeManagerDB
dataOrganization, dbHandle, defaultListener, sourceArchiveAdapter, universalID
-
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
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedStandAloneDataTypeManager(ResourceFile packedDbfile, int openMode)Constructor for a data-type manager backed by a packed database file.StandAloneDataTypeManager(java.lang.String rootName)Default constructor for temporary data-type manager.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes this dataType manager.protected voiddeleteDataTypeIDs(java.util.LinkedList<java.lang.Long> deletedIds, TaskMonitor monitor)voidendTransaction(int transactionID, boolean commit)Ends the current transactionvoidfinalize()voidflushEvents()protected java.lang.StringgetDomainFileID()java.lang.StringgetName()Returns this data type manager's name.protected java.lang.StringgetPath()ArchiveTypegetType()protected voidreplaceDataTypeIDs(long oldID, long newID)voidsetName(java.lang.String name)Sets this data type manager's name.intstartTransaction(java.lang.String description)Starts a transaction for making changes in this data type manager.-
Methods inherited from class ghidra.program.database.data.DataTypeManagerDB
addDataType, addDataTypeManagerListener, addDataTypeToDelete, addInvalidatedListener, associateDataTypeWithArchive, categoryCreated, categoryMoved, categoryRemoved, categoryRenamed, clearAllSettings, clearSetting, clearSettings, contains, containsCategory, createCategory, dataTypeAdded, dataTypeChanged, dataTypeDeleted, dataTypeMoved, dataTypeNameChanged, dataTypeReplaced, dbError, deleteAddressRange, disassociate, doSourceArchiveUpdates, favoritesChanged, findDataType, findDataTypeForID, findDataTypes, findDataTypes, findEnumValueNames, getAllComposites, getAllDataTypes, getAllDataTypes, getAllStructures, getByteSettingsValue, getCategory, getCategory, getCategoryCount, getDataOrganization, getDataType, getDataType, getDataType, getDataType, getDataType, getDataTypeCount, getDataTypes, getDataTypes, getDataTypesContaining, getFavorites, getID, getLastChangeTimeForMyManager, getLocalSourceArchive, getLongSettingsValue, getNames, getPointer, getPointer, getResolvedID, getRootCategory, getSettings, getSourceArchive, getSourceArchive, getSourceArchives, getStringSettingsValue, getUniqueName, getUniqueName, getUniversalID, getUnusedConflictName, invalidateCache, isChanged, isCreatingDataType, isEmptySetting, isFavorite, isUpdatable, moveAddressRange, remove, removeDataTypeManagerListener, removeInvalidatedListener, removeSourceArchive, replaceDataType, replaceSourceArchive, resolve, resolveSourceArchive, setByteSettingsValue, setFavorite, setLongSettingsValue, setSettings, setStringSettingsValue, sourceArchiveAdded, sourceArchiveChanged, updateID, updateSourceArchiveName, updateSourceArchiveName
-
-
-
-
Constructor Detail
-
StandAloneDataTypeManager
public StandAloneDataTypeManager(java.lang.String rootName)
Default constructor for temporary data-type manager.- Parameters:
rootName- Name of the root category.
-
StandAloneDataTypeManager
protected StandAloneDataTypeManager(ResourceFile packedDbfile, int openMode) throws java.io.IOException
Constructor for a data-type manager backed by a packed database file. When opening for UPDATE an automatic upgrade will be performed if required.- Parameters:
packedDbfile- packed datatype archive file (i.e., *.gdt resource).openMode- open mode CREATE, READ_ONLY or UPDATE (seeDBConstants)- Throws:
java.io.IOException- a low-level IO error. This exception may also be thrown when a version error occurs (cause is VersionException).
-
-
Method Detail
-
getName
public java.lang.String getName()
Description copied from interface:DataTypeManagerReturns this data type manager's name.
-
setName
public void setName(java.lang.String name) throws InvalidNameExceptionDescription copied from interface:DataTypeManagerSets this data type manager's name.- Parameters:
name- the new name- Throws:
InvalidNameException
-
startTransaction
public int startTransaction(java.lang.String description)
Description copied from interface:DataTypeManagerStarts a transaction for making changes in this data type manager.- Parameters:
description- a short description of the changes to be made.
-
flushEvents
public void flushEvents()
-
endTransaction
public void endTransaction(int transactionID, boolean commit)Description copied from interface:DataTypeManagerEnds the current transaction- Parameters:
transactionID- id of the transaction to endcommit- if true the changes are commited, otherwise all changes in transaction are revoked.
-
replaceDataTypeIDs
protected void replaceDataTypeIDs(long oldID, long newID)- Specified by:
replaceDataTypeIDsin classDataTypeManagerDB
-
deleteDataTypeIDs
protected void deleteDataTypeIDs(java.util.LinkedList<java.lang.Long> deletedIds, TaskMonitor monitor)- Specified by:
deleteDataTypeIDsin classDataTypeManagerDB
-
close
public void close()
Description copied from interface:DataTypeManagerCloses this dataType manager.
-
finalize
public void finalize()
- Overrides:
finalizein classjava.lang.Object
-
getDomainFileID
protected java.lang.String getDomainFileID()
- Specified by:
getDomainFileIDin classDataTypeManagerDB
-
getPath
protected java.lang.String getPath()
- Specified by:
getPathin classDataTypeManagerDB
-
getType
public ArchiveType getType()
-
-