]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/gui/profile/ProfileData.java
Moved source into separate src directory due to popular request
[GpsPrune.git] / tim / prune / gui / profile / ProfileData.java
diff --git a/tim/prune/gui/profile/ProfileData.java b/tim/prune/gui/profile/ProfileData.java
deleted file mode 100644 (file)
index 0716b93..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-package tim.prune.gui.profile;
-
-import tim.prune.data.Track;
-import tim.prune.data.UnitSet;
-
-/**
- * Abstract class for all sources of profile data,
- * including altitudes and speeds
- */
-public abstract class ProfileData
-{
-       /** Track object */
-       protected final Track _track;
-       /** Unit set to use */
-       protected UnitSet _unitSet = null;
-       /** Flag for availability of any data */
-       protected boolean _hasData = false;
-       /** Array of booleans for data per point */
-       protected boolean[] _pointHasData = null;
-       /** Array of values per point */
-       protected double[] _pointValues = null;
-       /** Minimum value for track */
-       protected double _minValue = 0.0;
-       /** Maximum value for track */
-       protected double _maxValue = 0.0;
-
-       /**
-        * Constructor giving track object
-        * @param inTrack track object
-        */
-       public ProfileData(Track inTrack)
-       {
-               _track = inTrack;
-       }
-
-       /**
-        * @return true if this source has any data at all
-        */
-       public boolean hasData() {
-               return _hasData;
-       }
-
-       /**
-        * @param inPointNum index of point
-        * @return true if that point has data
-        */
-       public boolean hasData(int inPointNum)
-       {
-               return (_hasData && _pointHasData != null && inPointNum >= 0
-                       && inPointNum < _pointHasData.length && _pointHasData[inPointNum]);
-       }
-
-       /**
-        * @param inPointNum index of point
-        * @return value corresponding to that point
-        */
-       public double getData(int inPointNum)
-       {
-               if (!hasData(inPointNum)) {return 0.0;}
-               return _pointValues[inPointNum];
-       }
-
-       /**
-        * @return minimum value
-        */
-       public double getMinValue() {
-               return _minValue;
-       }
-
-       /**
-        * @return maximum value
-        */
-       public double getMaxValue() {
-               return _maxValue;
-       }
-
-       /**
-        * Get the data from the track and populate the value arrays
-        */
-       public abstract void init(UnitSet inUnitSet);
-
-       /**
-        * Set the UnitSet to use for the calculations
-        * @param inUnitSet unit set
-        */
-       protected void setUnitSet(UnitSet inUnitSet) {
-               _unitSet = inUnitSet;
-       }
-
-       /**
-        * @return text for label including units
-        */
-       public abstract String getLabel();
-
-       /**
-        * @return key for message when no data available
-        */
-       public abstract String getNoDataKey();
-
-       /**
-        * Initialise the data arrays to the correct size
-        */
-       protected void initArrays()
-       {
-               int numTrackPoints = _track.getNumPoints();
-               if (_pointHasData == null || _pointHasData.length != numTrackPoints)
-               {
-                       _pointHasData = new boolean[numTrackPoints];
-                       _pointValues = new double[numTrackPoints];
-               }
-       }
-}