Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/math/fitting/FunctionFactory.java @ 2569:0dd58ab7e118
Added functions to be used for fitting in the "Fixierungsanalyse" and "Extremwertermittlung".
flys-artifacts/trunk@4095 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 27 Feb 2012 14:16:30 +0000 |
parents | |
children | c0abfb695332 |
comparison
equal
deleted
inserted
replaced
2568:53e8bffbe06c | 2569:0dd58ab7e118 |
---|---|
1 package de.intevation.flys.artifacts.math.fitting; | |
2 | |
3 import java.util.Collection; | |
4 import java.util.LinkedHashMap; | |
5 import java.util.Map; | |
6 | |
7 public final class FunctionFactory | |
8 { | |
9 private static FunctionFactory instance; | |
10 | |
11 private Map<String, Function> functions; | |
12 | |
13 private FunctionFactory() { | |
14 functions = new LinkedHashMap<String, Function>(); | |
15 | |
16 registerFunction(new Log()); | |
17 registerFunction(new Linear()); | |
18 registerFunction(new LogLinear()); | |
19 registerFunction(new Exp()); | |
20 registerFunction(new Quad()); | |
21 registerFunction(new Pow()); | |
22 } | |
23 | |
24 public static synchronized FunctionFactory getInstance() { | |
25 if (instance == null) { | |
26 instance = new FunctionFactory(); | |
27 } | |
28 return instance; | |
29 } | |
30 | |
31 public Function getFunction(String name) { | |
32 return functions.get(name); | |
33 } | |
34 | |
35 public void registerFunction(Function function) { | |
36 functions.put(function.getName(), function); | |
37 } | |
38 | |
39 public Collection<Function> getFunctions() { | |
40 return functions.values(); | |
41 } | |
42 } | |
43 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |