Commit a69e00df authored by Carsten Gräser's avatar Carsten Gräser

[!116] Simplify the generic FEM factories

Merge branch 'feature/simplify-generic-fem-factories' into 'master'

ref:core/dune-localfunctions All *Factory classes where derived from
TopologyFactory passing a *FactoryTraits class to the latter. The purpose is
to implement a TopologyFactory::create() method with dynamic topology id
parameter based on the template method *Factory::createObject<Topology>(). It
turns out that this TopologyFactory::create() method is never used. Instead a
counterpart TopologyFactory::create<Topology>() is called. Hence we can get
rid of many indirections by just renaming *Factory::createObject<Topology>()
to *Factory::create<Topology>() and dropping the base class.

This also allows to remove the *FactoryTraits classes. If the types define in
there are used in the corresponding *Factory, they are now defined directly in
*Factory which avoids many `typename Traits::` making the code less cluttered.

After this commit TopologyFactory itself is not used anymore in
dune-localfunctions. TopologySingletonFactory is still used but serves a
different purpose. It provides a singleton factory with caching. However it
does not use TopologyFactory itself.

See merge request [!116]

parents 3861e60b fb77a9a1
Pipeline #17596 passed with stage
in 5 minutes and 33 seconds