annotate artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/TauProcessor.java @ 8980:b194fa64506a

SINFO - show results themes according to spec, either raw data or floating mean values. Some improvements to error handling and handling of empty results.
author gernotbelger
date Thu, 05 Apr 2018 18:30:34 +0200
parents ee5ce13016ed
children 23945061daec
rev   line source
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
1 /* Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
2 * Software engineering by
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
5 *
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
9 */
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
10
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
11 package org.dive4elements.river.artifacts.sinfo.common;
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
12
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
13 import java.util.HashSet;
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
14 import java.util.Set;
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
15
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
16 import org.dive4elements.artifactdatabase.state.Facet;
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
17 import org.dive4elements.artifacts.CallContext;
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
18
8948
a4f1ac81f26d Work on SINFO-FlowDepthMinMax.
gernotbelger
parents: 8946
diff changeset
19 public final class TauProcessor extends AbstractSInfoLineProcessor<AbstractTkhCalculationResult> {
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
20
8980
b194fa64506a SINFO - show results themes according to spec, either raw data or floating mean values.
gernotbelger
parents: 8956
diff changeset
21 public static final String FACET_TKH_TAU_FILTERED = "sinfo_facet_tau";
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
22
8941
a9950a3a71e5 SINFO - tkh, configured result facets and themes
gernotbelger
parents: 8940
diff changeset
23 private static final String I18N_AXIS_LABEL = "sinfo.chart.tkh_tau.section.yaxis.label";
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
24
8941
a9950a3a71e5 SINFO - tkh, configured result facets and themes
gernotbelger
parents: 8940
diff changeset
25 private static final String SINFO_CHART_TAU_YAXIS_LABEL = "sinfo.chart.tkh_tau.yaxis.label";
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
26
8980
b194fa64506a SINFO - show results themes according to spec, either raw data or floating mean values.
gernotbelger
parents: 8956
diff changeset
27 private static final String I18N_FACET_TKH_TAU_FILTERED_DESCRIPTION = "sinfo.facet.tkh_tau.description";
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
28
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
29 private static final Set<String> HANDLED_FACET_TYPES = new HashSet<>();
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
30
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
31 static {
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
32 HANDLED_FACET_TYPES.add(FACET_TKH_TAU_FILTERED);
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
33 }
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
34
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
35 public TauProcessor() {
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
36 super(I18N_AXIS_LABEL, HANDLED_FACET_TYPES);
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
37 }
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
38
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
39 @Override
8948
a4f1ac81f26d Work on SINFO-FlowDepthMinMax.
gernotbelger
parents: 8946
diff changeset
40 protected double[][] doGetPoints(final AbstractTkhCalculationResult data, final String facetName) {
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
41
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
42 if (FACET_TKH_TAU_FILTERED.contentEquals(facetName))
8948
a4f1ac81f26d Work on SINFO-FlowDepthMinMax.
gernotbelger
parents: 8946
diff changeset
43 return data.getStationPoints(SInfoResultType.tau);
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
44
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
45 final String error = String.format("Unknown facet name: %s", facetName);
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
46 throw new UnsupportedOperationException(error);
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
47 }
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
48
8948
a4f1ac81f26d Work on SINFO-FlowDepthMinMax.
gernotbelger
parents: 8946
diff changeset
49 public static Facet createTauFacet(final CallContext context, final String hash, final String id, final AbstractSInfoCalculationResult result,
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
50 final int index) {
8956
ee5ce13016ed Work on SINFO-Fließtiefenentwicklung
gernotbelger
parents: 8948
diff changeset
51 return AbstractSInfoLineProcessor.createFacet(context, hash, id, result, index, SINFO_CHART_TAU_YAXIS_LABEL, FACET_TKH_TAU_FILTERED,
ee5ce13016ed Work on SINFO-Fließtiefenentwicklung
gernotbelger
parents: 8948
diff changeset
52 I18N_FACET_TKH_TAU_FILTERED_DESCRIPTION);
8940
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
53 }
82998242ba84 Preparing for additional outputs of SINFO-Tkh
gernotbelger
parents:
diff changeset
54 }

http://dive4elements.wald.intevation.org