Package ghidra.trace.database.symbol

# Class DBTraceEquateManager

java.lang.Object
ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace>
ghidra.trace.database.symbol.DBTraceEquateManager

All Implemented Interfaces:
  `ErrorHandler`, `DBTraceManager`, `DBTraceDelegatingManager<DBTraceEquateSpace>`, `TraceEquateManager`, `TraceEquateOperations`

public class DBTraceEquateManager extends AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace> implements TraceEquateManager, DBTraceDelegatingManager<DBTraceEquateSpace>

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager

  `AbstractDBTraceSpaceBasedManager.DBTraceSpaceEntry`

  ## Nested classes/interfaces inherited from interface ghidra.trace.database.space.DBTraceDelegatingManager

  `DBTraceDelegatingManager.ExcConsumer<T,E extends Throwable>, DBTraceDelegatingManager.ExcFunction<T,R,E extends Throwable>, DBTraceDelegatingManager.ExcPredicate<T,E extends Throwable>, DBTraceDelegatingManager.ExcSupplier<T,E extends Throwable>`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final DBCachedObjectIndex<String,DBTraceEquate>`
  `equatesByName`
  `protected final DBCachedObjectIndex<Long,DBTraceEquate>`
  `equatesByValue`
  `protected final DBCachedObjectStore<DBTraceEquate>`
  `equateStore`
  `protected final Collection<DBTraceEquate>`
  `equateView`
  `static final String`
  `NAME`

  ### Fields inherited from class ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager

  `baseLanguage, dbh, lock, name, NO_ADDRESS_SPACE, regSpacesByContainer, spaces, spaceStore, spacesView, threadManager, trace`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DBTraceEquateManager(DBHandle dbh, OpenMode openMode, ReadWriteLock lock, TaskMonitor monitor, Language baseLanguage, DBTrace trace, DBTraceThreadManager threadManager)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clearReferences(Lifespan span, AddressRange range, TaskMonitor monitor)`
  `void`
  `clearReferences(Lifespan span, AddressSetView asv, TaskMonitor monitor)`
  `DBTraceEquate`
  `create(String newName, long value)`
  `protected DBTraceEquateSpace`
  `createSpace(AddressSpace space, AbstractDBTraceSpaceBasedManager.DBTraceSpaceEntry ent)`
  `void`
  `dbError(IOException e)`
  Notification that an IO exception occurred.
  `protected void`
  `doDelete(DBTraceEquate equate)`
  `Collection<? extends DBTraceEquate>`
  `getAll()`
  `DBTraceEquate`
  `getByKey(long key)`
  `DBTraceEquate`
  `getByName(String equateName)`
  `Collection<? extends DBTraceEquate>`
  `getByValue(long value)`
  `DBTraceEquateSpace`
  `getEquateRegisterSpace(TraceStackFrame frame, boolean createIfAbsent)`
  `DBTraceEquateSpace`
  `getEquateRegisterSpace(TraceThread thread, boolean createIfAbsent)`
  `DBTraceEquateSpace`
  `getEquateSpace(AddressSpace space, boolean createIfAbsent)`
  `DBTraceEquateSpace`
  `getForSpace(AddressSpace space, boolean createIfAbsent)`
  `Collection<? extends DBTraceEquate>`
  `getReferenced(long snap, Address address)`
  `Collection<? extends DBTraceEquate>`
  `getReferenced(long snap, Address address, int operandIndex)`
  `DBTraceEquate`
  `getReferencedByValue(long snap, Address address, int operandIndex, long value)`
  `AddressSetView`
  `getReferringAddresses(Lifespan span)`
  `void`
  `invalidateCache(boolean all)`
  Invalidate this manager's caches
  `Lock`
  `readLock()`
  `Lock`
  `writeLock()`

  ### Methods inherited from class ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager

  `get, getActiveSpaces, getBaseLanguage, getForRegisterSpace, getForRegisterSpace, getForRegisterSpace, getLock, getSpaceByName, getTabledSpaces, getTrace, loadSpaces, tableName`

  ### Methods inherited from class java.lang.Object

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

  ### Methods inherited from interface ghidra.trace.database.space.DBTraceDelegatingManager

  `checkIsInMemory, delegateAddressSet, delegateAny, delegateCollection, delegateDeleteB, delegateDeleteV, delegateFirst, delegateHashSet, delegateRead, delegateRead, delegateReadB, delegateReadI, delegateReadI, delegateReadOr, delegateWrite, delegateWriteAll, delegateWriteI, delegateWriteV`

- ## Field Details

  - ### NAME

    public static final String NAME
    See Also:
      - Constant Field Values

  - ### equateStore

    protected final DBCachedObjectStore<DBTraceEquate> equateStore

  - ### equateView

    protected final Collection<DBTraceEquate> equateView

  - ### equatesByName

    protected final DBCachedObjectIndex<String,DBTraceEquate> equatesByName

  - ### equatesByValue

    protected final DBCachedObjectIndex<Long,DBTraceEquate> equatesByValue

- ## Constructor Details

  - ### DBTraceEquateManager

    public DBTraceEquateManager(DBHandle dbh, OpenMode openMode, ReadWriteLock lock, TaskMonitor monitor, Language baseLanguage, DBTrace trace, DBTraceThreadManager threadManager) throws VersionException, IOException
    Throws:
      `VersionException`
      `IOException`

- ## Method Details

  - ### dbError

    public void dbError(IOException e)
    Description copied from interface: `ErrorHandler`
    Notification that an IO exception occurred.
    Specified by:
      `dbError` in interface `ErrorHandler`
    Overrides:
      `dbError` in class `AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace>`
    Parameters:
      `e` - `IOException` which was cause of error

  - ### invalidateCache

    public void invalidateCache(boolean all)
    Description copied from interface: `DBTraceManager`
    Invalidate this manager's caches
    Specified by:
      `invalidateCache` in interface `DBTraceManager`
    Overrides:
      `invalidateCache` in class `AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace>`
    Parameters:
      `all` - probably nothing. Check out implementations of `ManagerDB.invalidateCache(boolean)`.

  - ### readLock

    public Lock readLock()
    Specified by:
      `readLock` in interface `DBTraceDelegatingManager<DBTraceEquateSpace>`

  - ### writeLock

    public Lock writeLock()
    Specified by:
      `writeLock` in interface `DBTraceDelegatingManager<DBTraceEquateSpace>`

  - ### getEquateSpace

    public DBTraceEquateSpace getEquateSpace(AddressSpace space, boolean createIfAbsent)
    Specified by:
      `getEquateSpace` in interface `TraceEquateManager`

  - ### getEquateRegisterSpace

    public DBTraceEquateSpace getEquateRegisterSpace(TraceThread thread, boolean createIfAbsent)
    Specified by:
      `getEquateRegisterSpace` in interface `TraceEquateManager`

  - ### getEquateRegisterSpace

    public DBTraceEquateSpace getEquateRegisterSpace(TraceStackFrame frame, boolean createIfAbsent)
    Specified by:
      `getEquateRegisterSpace` in interface `TraceEquateManager`

  - ### createSpace

    protected DBTraceEquateSpace createSpace(AddressSpace space, AbstractDBTraceSpaceBasedManager.DBTraceSpaceEntry ent) throws VersionException, IOException
    Specified by:
      `createSpace` in class `AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace>`
    Throws:
      `VersionException`
      `IOException`

  - ### getForSpace

    public DBTraceEquateSpace getForSpace(AddressSpace space, boolean createIfAbsent)
    Specified by:
      `getForSpace` in interface `DBTraceDelegatingManager<DBTraceEquateSpace>`
    Overrides:
      `getForSpace` in class `AbstractDBTraceSpaceBasedManager<DBTraceEquateSpace>`

  - ### create

    public DBTraceEquate create(String newName, long value) throws DuplicateNameException, IllegalArgumentException
    Specified by:
      `create` in interface `TraceEquateManager`
    Throws:
      `DuplicateNameException`
      `IllegalArgumentException`

  - ### getAll

    public Collection<? extends DBTraceEquate> getAll()
    Specified by:
      `getAll` in interface `TraceEquateManager`

  - ### getByName

    public DBTraceEquate getByName(String equateName)
    Specified by:
      `getByName` in interface `TraceEquateManager`

  - ### getByKey

    public DBTraceEquate getByKey(long key)
    Specified by:
      `getByKey` in interface `TraceEquateManager`

  - ### getByValue

    public Collection<? extends DBTraceEquate> getByValue(long value)
    Specified by:
      `getByValue` in interface `TraceEquateManager`

  - ### doDelete

    protected void doDelete(DBTraceEquate equate)

  - ### getReferringAddresses

    public AddressSetView getReferringAddresses(Lifespan span)
    Specified by:
      `getReferringAddresses` in interface `TraceEquateOperations`

  - ### clearReferences

    public void clearReferences(Lifespan span, AddressSetView asv, TaskMonitor monitor) throws CancelledException
    Specified by:
      `clearReferences` in interface `TraceEquateOperations`
    Throws:
      `CancelledException`

  - ### clearReferences

    public void clearReferences(Lifespan span, AddressRange range, TaskMonitor monitor) throws CancelledException
    Specified by:
      `clearReferences` in interface `TraceEquateOperations`
    Throws:
      `CancelledException`

  - ### getReferencedByValue

    public DBTraceEquate getReferencedByValue(long snap, Address address, int operandIndex, long value)
    Specified by:
      `getReferencedByValue` in interface `TraceEquateOperations`

  - ### getReferenced

    public Collection<? extends DBTraceEquate> getReferenced(long snap, Address address, int operandIndex)
    Specified by:
      `getReferenced` in interface `TraceEquateOperations`

  - ### getReferenced

    public Collection<? extends DBTraceEquate> getReferenced(long snap, Address address)
    Specified by:
      `getReferenced` in interface `TraceEquateOperations`