# Spec AbndmAlgoPattern
Approximate Backward Nondeterministic Dawg Matching algorithm.

Extends | Pattern
All Extended | Pattern
Defined in | <seqan/find.h>
Signature | `template <typename TNeedle> class Pattern<TNeedle, AbndmAlgo>;`

## Template Parameters

`TNeedle` | The needle type. Type ContainerConcept.

## Interface Function Overview

- `TScoreValue getScore(pattern);`
  Score of the last found match in approximate searching.
- `TScoreValue scoreLimit(pattern);`
  The minimal score a match must reach in approximate searching.
- `void setScoreLimit(pattern, limit);`
  Set the minimal score a match must reach in approximate serach.

### Interface Functions Inherited From Pattern

- `getBeginScore`
- `host`
- `needle`
- `position`
- `scoringScheme`
- `setNeedle`
- `setScoringScheme`

## Interface Metafunction Overview

### Interface Metafunctions Inherited From Pattern

- `Container`
- `Difference`
- `Host`
- `Needle`
- `PexMultiFinder`
- `Position`
- `ScoringScheme`
- `Size`
- `Value`

## Detailed Description

Note:

The types of the needle and the haystack have to match.

Approximate string matching using bit parallelism.

## Interface Functions Detail

### `TScoreValue getScore(pattern);`

Score of the last found match in approximate searching.

#### Parameters

`pattern` | A abndmAlgo pattern that can be used for approximate searching.

#### Returns

`TScoreValue` | The score of the last match found using `pattern`. If no match was found then the value is undefined.

#### Data Races

Thread safety unknown!

### `TScoreValue scoreLimit(pattern);`

The minimal score a match must reach in approximate searching.

#### Parameters

`pattern` | The AbndmAlgoPattern to query.

#### Returns

`TScoreValue` | The score limit value.

#### Data Races

Thread safety unknown!

### `void setScoreLimit(pattern, limit);`

Set the minimal score a match must reach in approximate serach.

#### Parameters

`pattern` | The AbndmAlgoPattern to set the limit for.
`limit` | The limit score value to set.

#### Returns

`TScoreValue` | The score limit value.

#### Data Races

Thread safety unknown!

#### Dox Sources

    /*!
     * @class AbndmAlgoPattern
     *
     * @extends Pattern
     *
     * @headerfile <seqan/find.h>
     *
     * @brief Approximate Backward Nondeterministic Dawg Matching algorithm.
     *
     * @note The types of the needle and the haystack have to match.
     *
     * @signature template <typename TNeedle> class Pattern<TNeedle, AbndmAlgo>;
     *
     * @tparam TNeedle The needle type. Type @link ContainerConcept @endlink.
     *
     * Approximate string matching using bit parallelism.
     *
     * @fn AbndmAlgoPattern#getScore
     *
     * @headerfile <seqan/find.h>
     *
     * @brief Score of the last found match in approximate searching.
     *
     * @signature TScoreValue getScore(pattern);
     *
     * @param[in] pattern A abndmAlgo pattern that can be used for approximate
     *                    searching.
     *
     * @return TScoreValue The score of the last match found using <tt>pattern</tt>.
     *                     If no match was found then the value is undefined.
     *
     * @fn AbndmAlgoPattern#scoreLimit
     *
     * @headerfile <seqan/find.h>
     *
     * @brief The minimal score a match must reach in approximate searching.
     *
     * @signature TScoreValue scoreLimit(pattern);
     *
     * @param[in] pattern The AbndmAlgoPattern to query.
     *
     * @return TScoreValue The score limit value.
     *
     * @fn AbndmAlgoPattern#setSoreLimit
     *
     * @headerfile <seqan/find.h>
     *
     * @brief Set the minimal score a match must reach in approximate serach.
     *
     * @signature void setScoreLimit(pattern, limit);
     *
     * @param[in,out] pattern The AbndmAlgoPattern to set the limit for.
     * @param[in] limit The limit score value to set.
     *
     * @return TScoreValue The score limit value.
     */