Package cppclassanalyzer.data.manager
Class LibraryClassTypeInfoManager
java.lang.Object
cppclassanalyzer.data.manager.LibraryClassTypeInfoManager
- All Implemented Interfaces:
ClassTypeInfoManager
,ErrorHandler
public final class LibraryClassTypeInfoManager extends Object implements ClassTypeInfoManager
A ClassTypeInfoManager representing an external library
-
Field Summary
Fields inherited from interface cppclassanalyzer.data.ClassTypeInfoManager
INVALID_KEY
-
Method Summary
Modifier and Type Method Description void
dbError(IOException e)
Icon
getIcon(boolean expanded)
Gets the icon for this manager to be used in theTypeInfoArchiveGTree
String
getName()
Gets the name of this managerProjectClassTypeInfoManager
getProjectManager()
Gets the project manager containing this libraryTypeInfoTreeNodeManager
getTreeNodeManager()
Gets theTypeInfoTreeNodeManager
for this ClassTypeInfoManagerArchivedClassTypeInfo
getType(long key)
Gets the ClassTypeInfo for the corresponding database keyArchivedClassTypeInfo
getType(Function fun)
Gets the ClassTypeInfo for the correspondingFunction
ArchivedClassTypeInfo
getType(GhidraClass gc)
Gets the ClassTypeInfo for the correspondingGhidraClass
ArchivedClassTypeInfo
getType(String symbolName)
Gets the ClassTypeInfo with the specified symbol.ArchivedClassTypeInfo
getType(String name, Namespace namespace)
Gets the ClassTypeInfo with the specified name andNamespace
int
getTypeCount()
Gets the number of managed ClassTypeInfosIterable<ClassTypeInfoDB>
getTypes()
Gets an iterable over all the managed ClassTypeInfosStream<ClassTypeInfoDB>
getTypeStream()
Gets a stream of all the managed ClassTypeInfosvoid
rename(String name)
Renames this libraryArchivedClassTypeInfo
resolve(ClassTypeInfo type)
Returns a ClassTypeInfo that is managed by this ClassTypeInfoManager.String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface cppclassanalyzer.data.ClassTypeInfoManager
addListener, removeListener
-
Method Details
-
getName
Description copied from interface:ClassTypeInfoManager
Gets the name of this manager- Specified by:
getName
in interfaceClassTypeInfoManager
- Returns:
- the managers name
-
resolve
Description copied from interface:ClassTypeInfoManager
Returns a ClassTypeInfo that is managed by this ClassTypeInfoManager. If one does not currently exist a new one is created.- Specified by:
resolve
in interfaceClassTypeInfoManager
- Parameters:
type
- the type to resolve- Returns:
- the equivalent type managed by this ClassTypeInfoManager
-
getType
Description copied from interface:ClassTypeInfoManager
Gets the ClassTypeInfo for the correspondingGhidraClass
- Specified by:
getType
in interfaceClassTypeInfoManager
- Parameters:
gc
- the GhidraClass- Returns:
- the ClassTypeInfo or null if it doesn't exist
-
getType
Description copied from interface:ClassTypeInfoManager
Gets the ClassTypeInfo for the correspondingFunction
- Specified by:
getType
in interfaceClassTypeInfoManager
- Parameters:
fun
- the function- Returns:
- the ClassTypeInfo or null if it doesn't exist
-
getType
Description copied from interface:ClassTypeInfoManager
Gets the ClassTypeInfo with the specified name andNamespace
- Specified by:
getType
in interfaceClassTypeInfoManager
- Parameters:
name
- the type's namenamespace
- the type's namespace- Returns:
- the ClassTypeInfo or null if it doesn't exist
-
getType
Description copied from interface:ClassTypeInfoManager
Gets the ClassTypeInfo with the specified symbol. The supplied symbol should be mangled.- Specified by:
getType
in interfaceClassTypeInfoManager
- Parameters:
symbolName
- the mangled symbol name- Returns:
- the ClassTypeInfo or null if it doesn't exist
-
getTypes
Description copied from interface:ClassTypeInfoManager
Gets an iterable over all the managed ClassTypeInfos- Specified by:
getTypes
in interfaceClassTypeInfoManager
- Returns:
- an iterable over all the managed ClassTypeInfos
-
getTypeStream
Description copied from interface:ClassTypeInfoManager
Gets a stream of all the managed ClassTypeInfos- Specified by:
getTypeStream
in interfaceClassTypeInfoManager
- Returns:
- a stream of all the managed ClassTypeInfos
-
getTypeCount
public int getTypeCount()Description copied from interface:ClassTypeInfoManager
Gets the number of managed ClassTypeInfos- Specified by:
getTypeCount
in interfaceClassTypeInfoManager
- Returns:
- the number of managed ClassTypeInfos
-
getIcon
Description copied from interface:ClassTypeInfoManager
Gets the icon for this manager to be used in theTypeInfoArchiveGTree
- Specified by:
getIcon
in interfaceClassTypeInfoManager
- Parameters:
expanded
- true if the manager tree node is expanded- Returns:
- the icon to be used in the tree
-
getTreeNodeManager
Description copied from interface:ClassTypeInfoManager
Gets theTypeInfoTreeNodeManager
for this ClassTypeInfoManager- Specified by:
getTreeNodeManager
in interfaceClassTypeInfoManager
- Returns:
- this manager's TypeInfoTreeNodeManager
-
getType
Description copied from interface:ClassTypeInfoManager
Gets the ClassTypeInfo for the corresponding database key- Specified by:
getType
in interfaceClassTypeInfoManager
- Parameters:
key
- the database key- Returns:
- the ClassTypeInfo or null if it doesn't exist
-
getProjectManager
Gets the project manager containing this library- Returns:
- the project manager
-
dbError
- Specified by:
dbError
in interfaceErrorHandler
-
rename
Renames this library- Parameters:
name
- the new library name- Throws:
InvalidNameException
- if the new name is invalidDuplicateNameException
- if a library with this name already exists in the project manager.
-
toString
-