Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/artifacts/math/fitting/FunctionFactory.java @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-artifacts/src/main/java/org/dive4elements/river/artifacts/math/fitting/FunctionFactory.java@bd047b71ab37 |
children | 4897a58c8746 |
line wrap: on
line source
package org.dive4elements.river.artifacts.math.fitting; import java.util.Collection; import java.util.LinkedHashMap; import java.util.Map; public final class FunctionFactory { private static FunctionFactory instance; private Map<String, Function> functions; private FunctionFactory() { functions = new LinkedHashMap<String, Function>(); registerFunction(Log.INSTANCE); registerFunction(Linear.INSTANCE); registerFunction(LogLinear.INSTANCE); registerFunction(Exp.INSTANCE); registerFunction(Quad.INSTANCE); registerFunction(Pow.INSTANCE); registerFunction(SQPow.INSTANCE); } public static synchronized FunctionFactory getInstance() { if (instance == null) { instance = new FunctionFactory(); } return instance; } public Function getFunction(String name) { return functions.get(name); } public void registerFunction(Function function) { functions.put(function.getName(), function); } public Collection<Function> getFunctions() { return functions.values(); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :