View Javadoc
1   package org.opentrafficsim.core.egtf;
2   
3   /**
4    * Interface for filtered data.
5    * <p>
6    * Copyright (c) 2013-2019 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
7    * BSD-style license. See <a href="http://opentrafficsim.org/node/13">OpenTrafficSim License</a>.
8    * <p>
9    * @version $Revision$, $LastChangedDate$, by $Author$, initial version 27 okt. 2018 <br>
10   * @author <a href="http://www.tbm.tudelft.nl/averbraeck">Alexander Verbraeck</a>
11   * @author <a href="http://www.tudelft.nl/pknoppers">Peter Knoppers</a>
12   * @author <a href="http://www.transport.citg.tudelft.nl">Wouter Schakel</a>
13   */
14  public interface Filter
15  {
16  
17      /**
18       * Returns the grid location.
19       * @return double[]; grid location
20       */
21      double[] getLocation();
22  
23      /**
24       * Returns the grid time.
25       * @return double[]; grid time
26       */
27      double[] getTime();
28  
29      /**
30       * Returns filtered data as SI values.
31       * @param quantity Quantity&lt;?, ?&gt;; quantity
32       * @return double[][]; filtered data as SI values
33       */
34      double[][] getSI(Quantity<?, ?> quantity);
35  
36      /**
37       * Returns the filtered data in output format.
38       * @param quantity Quantity&lt;?, K&gt;; quantity.
39       * @return K; filtered data in output format
40       * @param <K> output format.
41       */
42      <K> K get(Quantity<?, K> quantity);
43  
44  }