# fn() addToProfile
Sequence-to-profile alignment with sequence integration.

Defined in | <seqan/align_profile.h>
Signature | `void addToProfile(profile, seq[, lDiag, uDiag]);`

## Parameters

`profile` | The profile to add `seq` to. A String over ProfileChar.
`seq` | String to align to `profile`.
`lDiag` | Lower diagonal for alignment (SignedIntegerConcept).
`uDiag` | Upper diagonal for alignment (SignedIntegerConcept).

## Detailed Description

`seq` will be aligned to `profile` using globalAlignment. To compute a banded alignment `lDiag` and `uDiag` have to be given. The resulting alignment will then be integrated into `profile` by incrementing the `count` values of the `profile` entries that correspond to the `seq` row of the alignment.

## Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

#### Dox Sources

    /*!
     * @fn addToProfile
     *
     * @headerfile <seqan/align_profile.h>
     *
     * @brief Sequence-to-profile alignment with sequence integration.
     *
     * @signature void addToProfile(profile, seq[, lDiag, uDiag]);
     *
     * @param[in,out] profile The profile to add <tt>seq</tt> to. A @link String
     *                        @endlink over @link ProfileChar @endlink.
     * @param[in] seq @link String @endlink to align to <tt>profile</tt>.
     * @param[in] lDiag Lower diagonal for alignment (@link SignedIntegerConcept
     *                  @endlink).
     * @param[in] uDiag Upper diagonal for alignment (@link SignedIntegerConcept
     *                  @endlink).
     *
     * <tt>seq</tt> will be aligned to <tt>profile</tt> using @link globalAlignment
     * @endlink. To compute a banded alignment <tt>lDiag</tt> and <tt>uDiag</tt>
     * have to be given. The resulting alignment will then be integrated into
     * <tt>profile</tt> by incrementing the <tt>count</tt> values of the
     * <tt>profile</tt> entries that correspond to the <tt>seq</tt> row of the
     * alignment.
     */