Package ghidra.program.database.util

# Class SharedRangeMapDB

java.lang.Object
ghidra.program.database.util.SharedRangeMapDB

@Deprecated public class SharedRangeMapDB extends Object
Deprecated.
This map class should not be used except by the OldFunctionMapDB class
`SharedRangeMapDB` provides a long value range map backed by a database table. This map allows values to share a given range with other values.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SharedRangeMapDB(DBHandle dbHandle, String name, ErrorHandler errHandler, boolean create)`
  Deprecated.
  Construct a shared range map.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `add(long start, long end, long value)`
  Deprecated.
  Add a value to this map over the specified range.
  `void`
  `dispose()`
  Deprecated.
  Frees resources used by this map.
  `Iterator<Field>`
  `getValueIterator(long start, long end)`
  Deprecated.
  Get a LongField value iterator over the specified range.
  `IndexRangeIterator`
  `getValueRangeIterator(long value)`
  Deprecated.
  Get an index range iterator for a specified value.
  `void`
  `remove(long value)`
  Deprecated.
  Remove a value from this map.

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

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

- ## Constructor Details

  - ### SharedRangeMapDB

    public SharedRangeMapDB(DBHandle dbHandle, String name, ErrorHandler errHandler, boolean create)
    Deprecated.
    Construct a shared range map.
    Parameters:
      `dbHandle` - database handle.
      `name` - map name used in naming the underlying database table. This name must be unqiue across all shared range maps.
      `errHandler` - database error handler.
      `create` - if true the underlying database tables will be created.

- ## Method Details

  - ### dispose

    public void dispose()
    Deprecated.
    Frees resources used by this map.

  - ### add

    public void add(long start, long end, long value)
    Deprecated.
    Add a value to this map over the specified range.
    Parameters:
      `start` - the start of the range.
      `end` - the end of the range.
      `value` - the value to associate with the range.

  - ### remove

    public void remove(long value)
    Deprecated.
    Remove a value from this map.
    Parameters:
      `value` - the value to remove.

  - ### getValueIterator

    public Iterator<Field> getValueIterator(long start, long end)
    Deprecated.
    Get a LongField value iterator over the specified range. List is pre-calculated such that any changes made to the map after invoking this method will not be reflected by the iterator and invalid function keys may be returned. The implementation assumes a small set of values exist over the range.
    Parameters:
      `start` -
      `end` -
    Returns:
      Iterator of unique LongField values occuring within the specified range.

  - ### getValueRangeIterator

    public IndexRangeIterator getValueRangeIterator(long value)
    Deprecated.
    Get an index range iterator for a specified value.
    Parameters:
      `value` - the value for which to iterator indexes over.
    Returns:
      IndexRangeIterator