# Class FMIndexConfig
A configuration object that determines the data types of certain fibres of the FMIndex.

Defined in | <seqan/index.h>
Signature | `template <[typename TSpec]> struct FMIndexConfig;`

## Template Parameters

`TSpec` | The specializating type, defaults to `void`.

## Member Typedef Overview

- `typedef Levels<TSpec, TConfig> TSentinelsSpec;`
  The `TSentinelsSpec` determines the type of the sentinels in the FMIndex. In the default FMIndexConfig object the type of `TSentinelsSpec` is a two level RankDictionary.
- `typedef WaveletTree<TSpec, TConfig> TValuesSpec;`
  The `TValuesSpec` determines the type of the occurrence table. In the default FMIndexConfig object the type of `TValuesSpec` is a wavelet tree (WaveletTree).

## Member Variable Overview

- `unsigned FMIndexConfig::SAMPLING`
  The sampling rate determines how many suffix array entries are represented with one entry in the CompressedSA.

## Member Typedef Detail

### `typedef Levels<TSpec, TConfig> TSentinelsSpec;`

The `TSentinelsSpec` determines the type of the sentinels in the FMIndex. In the default FMIndexConfig object the type of `TSentinelsSpec` is a two level RankDictionary.

### `typedef WaveletTree<TSpec, TConfig> TValuesSpec;`

The `TValuesSpec` determines the type of the occurrence table. In the default FMIndexConfig object the type of `TValuesSpec` is a wavelet tree (WaveletTree).

## Member Variables Detail

### `unsigned FMIndexConfig::SAMPLING`

The sampling rate determines how many suffix array entries are represented with one entry in the CompressedSA.

#### Dox Sources

    /*!
     * @class FMIndexConfig
     *
     * @headerfile <seqan/index.h>
     *
     * @brief A configuration object that determines the data types of certain
     *        fibres of the @link FMIndex @endlink.
     *
     * @signature template <[typename TSpec]> struct FMIndexConfig;
     *
     * @tparam TSpec The specializating type, defaults to <tt>void</tt>.
     *
     * @typedef FMIndexConfig::TValuesSpec
     *
     * @brief The <tt>TValuesSpec</tt> determines the type of the occurrence table.
     *        In the default @link FMIndexConfig @endlink object the type of
     *        <tt>TValuesSpec</tt> is a wavelet tree (@link WaveletTree @endlink).
     *
     * @signature typedef WaveletTree<TSpec, TConfig> TValuesSpec;
     *
     * @typedef FMIndexConfig::TSentinelsSpec
     *
     * @brief The <tt>TSentinelsSpec</tt> determines the type of the sentinels in
     *        the @link FMIndex @endlink. In the default @link FMIndexConfig
     *        @endlink object the type of <tt>TSentinelsSpec</tt> is a two level
     *        @link RankDictionary @endlink.
     *
     * @signature typedef Levels<TSpec, TConfig> TSentinelsSpec;
     *
     * @var unsigned FMIndexConfig::SAMPLING;
     *
     * @brief The sampling rate determines how many suffix array entries are
     *        represented with one entry in the @link CompressedSA @endlink.
     */