---
name: "Bio::Search::Result::CrossMatchResult"
section: "3pm"
platform: "linux"
package: "libbio-perl-perl"
version: "1.7.8-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Bio::Search::Result::CrossMatchResult"
---

# Bio::Search::Result::CrossMatchResult(3pm)

CrossMatch-specific subclass of Bio::Search::Result::GenericResult

## NAME

Bio::Search::Result::CrossMatchResult - CrossMatch-specific subclass of Bio::Search::Result::GenericResult

## SYNOPSIS

```
    # Working with iterations (CrossMatch results)
    $result->next_iteration();
    $result->num_iterations();
    $result->iteration();
    $result->iterations();
```

\# See Bio::Search::Result::GenericResult for information about working with Results.

\# See Bio::Search::Iteration::IterationI # for details about working with iterations.

\# TODO: #     \* Show how to configure a SearchIO stream so that it generates #       CrossMatchResult objects.

## DESCRIPTION

This object is a subclass of Bio::Search::Result::GenericResult and provides some operations that facilitate working with CrossMatch and CrossMatch results.

For general information about working with Results, see  Bio::Search::Result::GenericResult.

## FEEDBACK

### Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list.  Your participation is much appreciated.

```
  bioperl-l@bioperl.org                  - General discussion
  http://bioperl.org/wiki/Mailing_lists  - About the mailing lists
```

### Support

Please direct usage questions or support issues to the mailing list:

*bioperl-l@bioperl.org*

rather than to the module maintainer directly. Many experienced and  reponsive experts will be able look at the problem and quickly  address it. Please include a thorough description of the problem  with code and data examples if at all possible.

### Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:

```
  https://github.com/bioperl/bioperl-live/issues
```

## AUTHOR - Shin Leong

Email sleong@watson.wustl.edu

## CONTRIBUTORS

Additional contributors names and emails here

## APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a \_

### new

```
 Title   : new
 Usage   : my $obj = Bio::Search::Result::CrossMatchResult->new();
 Function: Builds a new Bio::Search::Result::CrossMatchResult object
 Returns : Bio::Search::Result::CrossMatchResult
 Args    : See Bio::Search::Result::GenericResult();
           The following parameters are specific to CrossMatchResult:
             -iterations  => array ref of Bio::Search::Iteration::IterationI objects
             -inclusion_threshold => e-value threshold for inclusion in the
                                     CrossMatch score matrix model (blastpgp)
```

### hits

This method overrides Bio::Search::Result::GenericResult::hits to take  into account the possibility of multiple iterations, as occurs in CrossMatch reports.

If there are multiple iterations, all 'new' hits for all iterations are returned. These are the hits that did not occur in a previous iteration.

See Also: Bio::Search::Result::GenericResult::hits

### next\_hit

This method overrides Bio::Search::Result::GenericResult::next\_hit to take  into account the possibility of multiple iterations, as occurs in CrossMatch reports.

If there are multiple iterations, calling **next\_hit()** traverses the all of the hits, old and new, for each iteration, calling **next\_hit()** on each iteration.

See Also: Bio::Search::Iteration::GenericIteration::next\_hit

### num\_hits

This method overrides Bio::Search::Result::GenericResult::num\_hits to take  into account the possibility of multiple iterations, as occurs in CrossMatch reports.

If there are multiple iterations, calling **num\_hits()** returns the number of 'new' hits for each iteration. These are the hits that did not occur in a previous iteration.

See Also: Bio::Search::Result::GenericResult::num\_hits

### add\_iteration

```
 Title   : add_iteration
 Usage   : $report->add_iteration($iteration)
 Function: Adds a IterationI to the stored list of iterations
 Returns : Number of IterationI currently stored
 Args    : Bio::Search::Iteration::IterationI
```

### next\_iteration

```
 Title   : next_iteration
 Usage   : while( $it = $result->next_iteration()) { ... }
 Function: Returns the next Iteration object, representing all hits
           found within a given CrossMatch iteration.
 Returns : a Bio::Search::Iteration::IterationI object or undef if there are no more.
 Args    : none
```

### iteration

```
 Usage     : $iteration = $blast->iteration( $number );
 Purpose   : Get an IterationI object for the specified iteration
             in the search result (CrossMatch).
 Returns   : Bio::Search::Iteration::IterationI object
 Throws    : Bio::Root::NoSuchThing exception if $number is not within
             range of the number of iterations in this report.
 Argument  : integer (optional, if not specified get the last iteration)
             First iteration = 1
```

### num\_iterations

```
 Usage     : $num_iterations = $blast->num_iterations;
 Purpose   : Get the number of iterations in the search result (CrossMatch).
 Returns   : Total number of iterations in the report
 Argument  : none (read-only)
```

### number\_of\_iterations

Same as num\_iterations.

### round

Same as iteration.

### iterations

```
 Title   : iterations
 Usage   : my @iterations = $result->iterations
 Function: Returns the IterationI objects contained within this Result
 Returns : Array of L<Bio::Search::Iteration::IterationI> objects
 Args    : none
```

### no\_hits\_found

```
 Usage     : $nohits = $blast->no_hits_found( $iteration_number );
 Purpose   : Get boolean indicator indicating whether or not any hits
             were present in the report.
             This is NOT the same as determining the number of hits via
             the hits() method, which will return zero hits if there were no
             hits in the report or if all hits were filtered out during the parse.
             Thus, this method can be used to distinguish these possibilities
             for hitless reports generated when filtering.
 Returns   : Boolean
 Argument  : (optional) integer indicating the iteration number (CrossMatch)
             If iteration number is not specified and this is a CrossMatch result,
             then this method will return true only if all iterations had
             no hits found.
```

### set\_no\_hits\_found

```
 Usage     : $blast->set_no_hits_found( $iteration_number );
 Purpose   : Set boolean indicator indicating whether or not any hits
             were present in the report.
 Returns   : n/a
 Argument  : (optional) integer indicating the iteration number (CrossMatch)
```

### \_next\_iteration\_index

```
 Title   : _next_iteration_index
 Usage   : private
```

### rewind

```
 Title   : rewind
 Usage   : $result->rewind;
 Function: Allow one to reset the Iteration iterator to the beginning
           Since this is an in-memory implementation
 Returns : none
 Args    : none
```

### inclusion\_threshold

```
 Title   : inclusion_threshold
 Usage   : my $incl_thresh = $result->inclusion_threshold; (read-only)
 Function: Gets the e-value threshold for inclusion in the CrossMatch
           score matrix model (blastpgp) that was used for generating the report
           being parsed.
 Returns : number (real) or undef if not a CrossMatch report.
 Args    : none
```
