Package cppclassanalyzer.vs
Class RttiModelWrapper
java.lang.Object
cppclassanalyzer.vs.RttiModelWrapper
- All Implemented Interfaces:
VsClassTypeInfo
,ClassTypeInfo
,TypeInfo
public final class RttiModelWrapper extends Object implements VsClassTypeInfo
-
Field Summary
Fields inherited from interface ghidra.app.cmd.data.rtti.TypeInfo
SYMBOL_NAME, TYPENAME_SYMBOL_NAME
Fields inherited from interface cppclassanalyzer.vs.VsClassTypeInfo
BASE_ARRAY_SYMBOL_NAME, DEFAULT_OPTIONS, HIERARCHY_SYMBOL_NAME, LOCATOR_SYMBOL_NAME
-
Method Summary
Modifier and Type Method Description boolean
equals(Object o)
Vtable
findVtable(TaskMonitor monitor)
Locates the TypeInfo's Vtable ModelAddress
getAddress()
Gets the address of this TypeInfo structure.ghidra.app.cmd.data.rtti.Rtti2Model
getBaseClassArray()
ghidra.app.cmd.data.rtti.Rtti1Model
getBaseModel()
Map<ClassTypeInfo,Integer>
getBaseOffsets()
Structure
getClassDataType()
Gets the underlying structure of the class for this ClassTypeInfoList<ghidra.app.cmd.data.rtti.Rtti4Model>
getCompleteObjectLocators()
DataType
getDataType()
Gets corresponding structure for this TypeInfo ModelGhidraClass
getGhidraClass()
Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.ghidra.app.cmd.data.rtti.Rtti3Model
getHierarchyDescriptor()
String
getIdentifier()
Gets The TypeInfo's Identifier StringString
getName()
Gets name for the TypeInfo DataType ModelNamespace
getNamespace()
Gets the namespace for this TypeInfoClassTypeInfo[]
getParentModels()
Retrieves the Models of this ClassTypeInfo classes base classesTypeDescriptorModel
getTypeDescriptor()
String
getTypeName()
Gets The TypeInfo's typename stringSet<ClassTypeInfo>
getVirtualParents()
Retrieves an ordered set of all virtually inherited base classesVtable
getVtable()
Gets the TypeInfo's Vtable Modelstatic RttiModelWrapper
getWrapper(TypeDescriptorModel typeModel, TaskMonitor monitor)
int
hashCode()
boolean
hasParent()
Checks if this ClassTypeInfo is a subclass of another typeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface ghidra.app.cmd.data.rtti.ClassTypeInfo
findVtable, getFullName, getRepresentedDataType, getSymbolPath, getUniqueTypeName, isExternal
Methods inherited from interface cppclassanalyzer.vs.VsClassTypeInfo
isAbstract
-
Method Details
-
getWrapper
public static RttiModelWrapper getWrapper(TypeDescriptorModel typeModel, TaskMonitor monitor) throws CancelledException- Throws:
CancelledException
-
getBaseModel
public ghidra.app.cmd.data.rtti.Rtti1Model getBaseModel()- Specified by:
getBaseModel
in interfaceVsClassTypeInfo
-
getTypeDescriptor
- Specified by:
getTypeDescriptor
in interfaceVsClassTypeInfo
-
getBaseClassArray
public ghidra.app.cmd.data.rtti.Rtti2Model getBaseClassArray()- Specified by:
getBaseClassArray
in interfaceVsClassTypeInfo
-
equals
-
hashCode
public int hashCode() -
getName
Description copied from interface:TypeInfo
Gets name for the TypeInfo DataType Model -
getNamespace
Description copied from interface:TypeInfo
Gets the namespace for this TypeInfo- Specified by:
getNamespace
in interfaceTypeInfo
- Returns:
- the TypeInfo's namespace
-
getTypeName
Description copied from interface:TypeInfo
Gets The TypeInfo's typename string- Specified by:
getTypeName
in interfaceTypeInfo
- Returns:
- the TypeInfo's typename
-
getIdentifier
Description copied from interface:TypeInfo
Gets The TypeInfo's Identifier String- Specified by:
getIdentifier
in interfaceTypeInfo
- Returns:
- the TypeInfo's ID_STRING field
- See Also:
TypeInfoModel.ID_STRING
-
getDataType
Description copied from interface:TypeInfo
Gets corresponding structure for this TypeInfo Model- Specified by:
getDataType
in interfaceTypeInfo
- Returns:
- the type_info or subclasses DataType
-
getAddress
Description copied from interface:TypeInfo
Gets the address of this TypeInfo structure.- Specified by:
getAddress
in interfaceTypeInfo
- Returns:
- the TypeInfo's address.
-
getGhidraClass
Description copied from interface:ClassTypeInfo
Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.- Specified by:
getGhidraClass
in interfaceClassTypeInfo
- Returns:
- The class representation of this TypeInfo instance
-
hasParent
public boolean hasParent()Description copied from interface:ClassTypeInfo
Checks if this ClassTypeInfo is a subclass of another type- Specified by:
hasParent
in interfaceClassTypeInfo
- Returns:
- true if this is a subclass
-
getParentModels
Description copied from interface:ClassTypeInfo
Retrieves the Models of this ClassTypeInfo classes base classes- Specified by:
getParentModels
in interfaceClassTypeInfo
- Returns:
- the parent models
-
getVtable
Description copied from interface:ClassTypeInfo
Gets the TypeInfo's Vtable Model- Specified by:
getVtable
in interfaceClassTypeInfo
- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLE
if none exists
-
findVtable
Description copied from interface:ClassTypeInfo
Locates the TypeInfo's Vtable Model- Specified by:
findVtable
in interfaceClassTypeInfo
- Parameters:
monitor
- the task monitor to be used while searching for the vtable- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLE
if none exists - Throws:
CancelledException
- if the search is cancelled
-
getVirtualParents
Description copied from interface:ClassTypeInfo
Retrieves an ordered set of all virtually inherited base classes- Specified by:
getVirtualParents
in interfaceClassTypeInfo
- Returns:
- the set of virtual bases
-
getBaseOffsets
- Specified by:
getBaseOffsets
in interfaceVsClassTypeInfo
-
getClassDataType
Description copied from interface:ClassTypeInfo
Gets the underlying structure of the class for this ClassTypeInfo- Specified by:
getClassDataType
in interfaceClassTypeInfo
- Returns:
- the structure datatype for this class
-
getHierarchyDescriptor
public ghidra.app.cmd.data.rtti.Rtti3Model getHierarchyDescriptor()- Specified by:
getHierarchyDescriptor
in interfaceVsClassTypeInfo
-
getCompleteObjectLocators
-