Interface VTMatchSet

All Known Implementing Classes:
MatchSetImpl, VTMatchSetDB

public interface VTMatchSet
Interface for all the matches generated from a single program correlator run.
  • Method Summary

    Modifier and Type
    Method
    Description
    Creates a match based on the given info and adds it to this match set.
    void
    Deletes the given match from this match set.
    int
    Returns a unique id for this match set.
    int
    Returns the number of matches contained in this match set.
    Returns a collection of all VTMatches contained in this match set.
    Returns a collection of all matches for the given association.
    getMatches(ghidra.program.model.address.Address sourceAddress, ghidra.program.model.address.Address destinationAddress)
    Returns a collection of matches for the given source and destination address.
    Returns information about the program correlator that was used to generate the matches for this match set.
    Returns the VTSession that contains this match set.
    default boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
    this method now always returns true
    boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
  • Method Details

    • getSession

      VTSession getSession()
      Returns the VTSession that contains this match set.
      Returns:
      the VTSession that contains this match set.
    • addMatch

      VTMatch addMatch(VTMatchInfo info)
      Creates a match based on the given info and adds it to this match set.
      Parameters:
      info - the info for the match to add to this match set.
      Returns:
      the new VTMatch that was added.
    • getMatches

      Collection<VTMatch> getMatches()
      Returns a collection of all VTMatches contained in this match set.
      Returns:
      a collection of all VTMatches contained in this match set.
    • getProgramCorrelatorInfo

      VTProgramCorrelatorInfo getProgramCorrelatorInfo()
      Returns information about the program correlator that was used to generate the matches for this match set.
      Returns:
      information about the program correlator that was used to generate the matches for this match set.
    • getMatchCount

      int getMatchCount()
      Returns the number of matches contained in this match set.
      Returns:
      the number of matches contained in this match set.
    • getID

      int getID()
      Returns a unique id for this match set. The ids are one-up numbers indicating the order this match set was generated in relation to other match sets in the VTSession.
      Returns:
      the id
    • getMatches

      Collection<VTMatch> getMatches(VTAssociation association)
      Returns a collection of all matches for the given association.
      Parameters:
      association - the association for which to search for matches.
      Returns:
      a collection of all matches for the given association.
      See Also:
    • getMatches

      Collection<VTMatch> getMatches(ghidra.program.model.address.Address sourceAddress, ghidra.program.model.address.Address destinationAddress)
      Returns a collection of matches for the given source and destination address. This is equivalent to calling getMatches(VTAssociation).
      Parameters:
      sourceAddress - The address in the source program for the association represented by the two given addresses.
      destinationAddress - The address in the destination program for the association represented by the two given addresses.
      Returns:
      a collection of all matches for the association represented by the given addresses
      See Also:
    • deleteMatch

      void deleteMatch(VTMatch match)
      Deletes the given match from this match set.

      Note: deleting an ACCEPTED match removes potentially useful corroborating evidence from future correlation. Before deleting a match, consider instead filtering matches out of the UI that you are finished applying.

      If this is the last match that shares the match's association, then the association will also be removed, along with any markup items in the database. Any applied markup item data will not be changed.

      Parameters:
      match - the match
    • removeMatch

      @Deprecated(since="11.2", forRemoval=true) boolean removeMatch(VTMatch match)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Removes a match from this match set.

      If this is the last match that shares the match's association, then the match will only be removed if the association is not accepted. In that case, no remove will take place and this method will return false.

      Note: This method is deprecated. It unfortunately shares a very similar name with its replacement, deleteMatch(VTMatch). The replacement method will delete the match and the related association and markup items in the database, if the match is the last match to use that association. This deprecated method does not remove the remaining association or markup items. Historically, this method has been called after clearing the given match and its markup. Once this method has been deleted, clients will be responsible for managing the markup item state before calling deleteMatch(VTMatch).

      Parameters:
      match - the match to remove.
      Returns:
      true if the match was removed.
      Throws:
      IllegalArgumentException - if a non-database match is passed to this method
      See Also:
    • hasRemovableMatches

      @Deprecated(since="11.2", forRemoval=true) default boolean hasRemovableMatches()
      Deprecated, for removal: This API element is subject to removal in a future version.
      this method now always returns true
      Returns true
      Returns:
      true