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_NAMEFields 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 booleanequals(Object o)VtablefindVtable(TaskMonitor monitor)Locates the TypeInfo's Vtable ModelAddressgetAddress()Gets the address of this TypeInfo structure.ghidra.app.cmd.data.rtti.Rtti2ModelgetBaseClassArray()ghidra.app.cmd.data.rtti.Rtti1ModelgetBaseModel()Map<ClassTypeInfo,Integer>getBaseOffsets()StructuregetClassDataType()Gets the underlying structure of the class for this ClassTypeInfoList<ghidra.app.cmd.data.rtti.Rtti4Model>getCompleteObjectLocators()DataTypegetDataType()Gets corresponding structure for this TypeInfo ModelGhidraClassgetGhidraClass()Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.ghidra.app.cmd.data.rtti.Rtti3ModelgetHierarchyDescriptor()StringgetIdentifier()Gets The TypeInfo's Identifier StringStringgetName()Gets name for the TypeInfo DataType ModelNamespacegetNamespace()Gets the namespace for this TypeInfoClassTypeInfo[]getParentModels()Retrieves the Models of this ClassTypeInfo classes base classesTypeDescriptorModelgetTypeDescriptor()StringgetTypeName()Gets The TypeInfo's typename stringSet<ClassTypeInfo>getVirtualParents()Retrieves an ordered set of all virtually inherited base classesVtablegetVtable()Gets the TypeInfo's Vtable Modelstatic RttiModelWrappergetWrapper(TypeDescriptorModel typeModel, TaskMonitor monitor)inthashCode()booleanhasParent()Checks if this ClassTypeInfo is a subclass of another typeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ghidra.app.cmd.data.rtti.ClassTypeInfo
findVtable, getFullName, getRepresentedDataType, getSymbolPath, getUniqueTypeName, isExternalMethods 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:
getBaseModelin interfaceVsClassTypeInfo
-
getTypeDescriptor
- Specified by:
getTypeDescriptorin interfaceVsClassTypeInfo
-
getBaseClassArray
public ghidra.app.cmd.data.rtti.Rtti2Model getBaseClassArray()- Specified by:
getBaseClassArrayin interfaceVsClassTypeInfo
-
equals
-
hashCode
public int hashCode() -
getName
Description copied from interface:TypeInfoGets name for the TypeInfo DataType Model -
getNamespace
Description copied from interface:TypeInfoGets the namespace for this TypeInfo- Specified by:
getNamespacein interfaceTypeInfo- Returns:
- the TypeInfo's namespace
-
getTypeName
Description copied from interface:TypeInfoGets The TypeInfo's typename string- Specified by:
getTypeNamein interfaceTypeInfo- Returns:
- the TypeInfo's typename
-
getIdentifier
Description copied from interface:TypeInfoGets The TypeInfo's Identifier String- Specified by:
getIdentifierin interfaceTypeInfo- Returns:
- the TypeInfo's ID_STRING field
- See Also:
TypeInfoModel.ID_STRING
-
getDataType
Description copied from interface:TypeInfoGets corresponding structure for this TypeInfo Model- Specified by:
getDataTypein interfaceTypeInfo- Returns:
- the type_info or subclasses DataType
-
getAddress
Description copied from interface:TypeInfoGets the address of this TypeInfo structure.- Specified by:
getAddressin interfaceTypeInfo- Returns:
- the TypeInfo's address.
-
getGhidraClass
Description copied from interface:ClassTypeInfoGets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.- Specified by:
getGhidraClassin interfaceClassTypeInfo- Returns:
- The class representation of this TypeInfo instance
-
hasParent
public boolean hasParent()Description copied from interface:ClassTypeInfoChecks if this ClassTypeInfo is a subclass of another type- Specified by:
hasParentin interfaceClassTypeInfo- Returns:
- true if this is a subclass
-
getParentModels
Description copied from interface:ClassTypeInfoRetrieves the Models of this ClassTypeInfo classes base classes- Specified by:
getParentModelsin interfaceClassTypeInfo- Returns:
- the parent models
-
getVtable
Description copied from interface:ClassTypeInfoGets the TypeInfo's Vtable Model- Specified by:
getVtablein interfaceClassTypeInfo- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLEif none exists
-
findVtable
Description copied from interface:ClassTypeInfoLocates the TypeInfo's Vtable Model- Specified by:
findVtablein interfaceClassTypeInfo- Parameters:
monitor- the task monitor to be used while searching for the vtable- Returns:
- The TypeInfo's Vtable Model or
Vtable.NO_VTABLEif none exists - Throws:
CancelledException- if the search is cancelled
-
getVirtualParents
Description copied from interface:ClassTypeInfoRetrieves an ordered set of all virtually inherited base classes- Specified by:
getVirtualParentsin interfaceClassTypeInfo- Returns:
- the set of virtual bases
-
getBaseOffsets
- Specified by:
getBaseOffsetsin interfaceVsClassTypeInfo
-
getClassDataType
Description copied from interface:ClassTypeInfoGets the underlying structure of the class for this ClassTypeInfo- Specified by:
getClassDataTypein interfaceClassTypeInfo- Returns:
- the structure datatype for this class
-
getHierarchyDescriptor
public ghidra.app.cmd.data.rtti.Rtti3Model getHierarchyDescriptor()- Specified by:
getHierarchyDescriptorin interfaceVsClassTypeInfo
-
getCompleteObjectLocators
-