# Spec PackedPair
Stores two arbitrary objects. Saves memory by disabling memory alignment.

Extends | Pair
All Extended | Pair
All Impl'd | ComparableConcept, EqualityComparableConcept, LessThanComparableConcept
Defined in | <seqan/basic.h>
Signature | `template <typename T1, typename T2> class Pair<T1, T2, Pack>;`

## Template Parameters

`T1` | The type of the first object.
`T2` | The type of the second object.

## Member Function Overview

### Member Functions Inherited From ComparableConcept

- `operator>`

### Member Functions Inherited From EqualityComparableConcept

- `operator!=`
- `operator==`

### Member Functions Inherited From LessThanComparableConcept

- `operator<`

## Interface Function Overview

### Interface Functions Inherited From Pair

- `assignValueI1`
- `assignValueI2`
- `getValueI1`
- `getValueI2`
- `Pair`
- `setValueI1`
- `setValueI2`

### Interface Functions Inherited From ComparableConcept

- `operator<=`
- `operator>=`

## Interface Metafunction Overview

### Interface Metafunctions Inherited From Pair

- `LENGTH`
- `Spec`
- `Value`

## Member Variable Overview

### Member Variables Inherited From Pair

- `i1`
- `i2`

## Detailed Description

Useful for external storage.

Memory access could be slower. Direct access to members by pointers is not allowed on all platforms.

Functions `value()` is not implemented yet since there it would require using a proxy. Use `getValue()`, `assignValue()`, `moveValue()`, `setValue()` instead.

#### Dox Sources

    /*!
     * @class PackedPair
     *
     * @extends Pair
     *
     * @headerfile <seqan/basic.h>
     *
     * @brief Stores two arbitrary objects. Saves memory by disabling memory
     *        alignment.
     *
     * @signature template <typename T1, typename T2> class Pair<T1, T2, Pack>;
     *
     * @tparam T1 The type of the first object.
     * @tparam T2 The type of the second object.
     *
     * Useful for external storage.
     *
     * Memory access could be slower. Direct access to members by pointers is not
     * allowed on all platforms.
     *
     * Functions <tt>value()</tt> is not implemented yet since there it would
     * require using a proxy. Use <tt>getValue()</tt>, <tt>assignValue()</tt>,
     * <tt>moveValue()</tt>, <tt>setValue()</tt> instead.
     */