Class ExternalClassTypeInfo

java.lang.Object
ghidra.app.cmd.data.rtti.gcc.ExternalClassTypeInfo
All Implemented Interfaces:
ClassTypeInfo, TypeInfo

@Deprecated(since="1.5",
            forRemoval=true)
public class ExternalClassTypeInfo
extends Object
implements ClassTypeInfo
Deprecated, for removal: This API element is subject to removal in a future version.
Representation of a dynamically linked ClassTypeInfo
See Also:
ArchivedGnuClassTypeInfo
  • Field Summary

    Fields inherited from interface ghidra.app.cmd.data.rtti.TypeInfo

    SYMBOL_NAME, TYPENAME_SYMBOL_NAME
  • Constructor Summary

    Constructors
    Constructor Description
    ExternalClassTypeInfo​(Program program, Relocation reloc)
    Deprecated, for removal: This API element is subject to removal in a future version.
     
  • Method Summary

    Modifier and Type Method Description
    Vtable findVtable​(TaskMonitor monitor)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Locates the TypeInfo's Vtable Model
    Address getAddress()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the address of this TypeInfo structure.
    Structure getClassDataType()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the underlying structure of the class for this ClassTypeInfo
    DataType getDataType()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets corresponding structure for this TypeInfo Model
    GhidraClass getGhidraClass()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.
    String getIdentifier()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets The TypeInfo's Identifier String
    String getName()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets name for the TypeInfo DataType Model
    Namespace getNamespace()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the namespace for this TypeInfo
    ClassTypeInfo[] getParentModels()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Retrieves the Models of this ClassTypeInfo classes base classes
    String getTypeName()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets The TypeInfo's typename string
    String getUniqueTypeName()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets a unique typename for this ClassTypeInfo instance The resulting string should be identical across all architectures and binaries for a compiler.
    Set<ClassTypeInfo> getVirtualParents()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Retrieves an ordered set of all virtually inherited base classes
    Vtable getVtable()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the TypeInfo's Vtable Model
    boolean hasParent()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Checks if this ClassTypeInfo is a subclass of another type
    boolean isAbstract()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Determines if the represented class is an abstract base

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface ghidra.app.cmd.data.rtti.ClassTypeInfo

    findVtable, getFullName, getRepresentedDataType, getSymbolPath, isExternal
  • Constructor Details

    • ExternalClassTypeInfo

      public ExternalClassTypeInfo​(Program program, Relocation reloc)
      Deprecated, for removal: This API element is subject to removal in a future version.
  • Method Details

    • getName

      public String getName()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets name for the TypeInfo DataType Model
      Specified by:
      getName in interface TypeInfo
      Returns:
      the TypeInfo's name
    • getNamespace

      public Namespace getNamespace()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets the namespace for this TypeInfo
      Specified by:
      getNamespace in interface TypeInfo
      Returns:
      the TypeInfo's namespace
    • getTypeName

      public String getTypeName()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets The TypeInfo's typename string
      Specified by:
      getTypeName in interface TypeInfo
      Returns:
      the TypeInfo's typename
    • getIdentifier

      public String getIdentifier()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets The TypeInfo's Identifier String
      Specified by:
      getIdentifier in interface TypeInfo
      Returns:
      the TypeInfo's ID_STRING field
      See Also:
      TypeInfoModel.ID_STRING
    • getDataType

      public DataType getDataType()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets corresponding structure for this TypeInfo Model
      Specified by:
      getDataType in interface TypeInfo
      Returns:
      the type_info or subclasses DataType
    • getAddress

      public Address getAddress()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: TypeInfo
      Gets the address of this TypeInfo structure.
      Specified by:
      getAddress in interface TypeInfo
      Returns:
      the TypeInfo's address.
    • getGhidraClass

      public GhidraClass getGhidraClass()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Gets the corresponding Ghidra Class for this TypeInfo and creates it if none exists.
      Specified by:
      getGhidraClass in interface ClassTypeInfo
      Returns:
      The class representation of this TypeInfo instance
    • hasParent

      public boolean hasParent()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Checks if this ClassTypeInfo is a subclass of another type
      Specified by:
      hasParent in interface ClassTypeInfo
      Returns:
      true if this is a subclass
    • getParentModels

      public ClassTypeInfo[] getParentModels()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Retrieves the Models of this ClassTypeInfo classes base classes
      Specified by:
      getParentModels in interface ClassTypeInfo
      Returns:
      the parent models
    • getVirtualParents

      public Set<ClassTypeInfo> getVirtualParents()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Retrieves an ordered set of all virtually inherited base classes
      Specified by:
      getVirtualParents in interface ClassTypeInfo
      Returns:
      the set of virtual bases
    • isAbstract

      public boolean isAbstract()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Determines if the represented class is an abstract base
      Specified by:
      isAbstract in interface ClassTypeInfo
      Returns:
      true if abstract
    • getVtable

      public Vtable getVtable()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Gets the TypeInfo's Vtable Model
      Specified by:
      getVtable in interface ClassTypeInfo
      Returns:
      The TypeInfo's Vtable Model or Vtable.NO_VTABLE if none exists
    • findVtable

      public Vtable findVtable​(TaskMonitor monitor) throws CancelledException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Locates the TypeInfo's Vtable Model
      Specified by:
      findVtable in interface ClassTypeInfo
      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
    • getClassDataType

      public Structure getClassDataType()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Gets the underlying structure of the class for this ClassTypeInfo
      Specified by:
      getClassDataType in interface ClassTypeInfo
      Returns:
      the structure datatype for this class
    • getUniqueTypeName

      public String getUniqueTypeName()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ClassTypeInfo
      Gets a unique typename for this ClassTypeInfo instance The resulting string should be identical across all architectures and binaries for a compiler.
      Specified by:
      getUniqueTypeName in interface ClassTypeInfo
      Returns:
      a unique typename string