ufz/ogs — pull request #190 by endJunction (2013-08-20 20:45:43+00:00)
Title: AssemblerLib::MeshComponentMap

A class providing a mapping between `Location`/component id and an index in global matrix/vector is added.

The `MeshComponentMap` allows to lookup global index/global indices for a given `Location`, a `Location` and a component id, and multiple `Location`s. Further, component ids at a given `Location` can be aquired.
The global index assignment depends on requested order which can be either `ComponentOrder::BY_LOCATION` or `ComponentOrder::BY_COMPONENT`.

The implementation is based on `boost::multi_index` "container" and is hidden in the `AssemblerLib::detail` namespace.

The code is extracted from #157.