package org.spin.gaitlib.gaitlibdemo.beat; import java.util.ArrayList; import java.util.List; public class Logger { private List<Long> timeStamps = new ArrayList<Long>(); private List<Float> cadences = new ArrayList<Float>(); private List<Float> speeds = new ArrayList<Float>(); private List<Float> strideLengths = new ArrayList<Float>(); private List<Float> confidences = new ArrayList<Float>(); private List<String> gaits = new ArrayList<String>(); public void addTimeStamp(long input) { timeStamps.add(input); } public void addCadence(float input) { cadences.add(input); } public void addSpeed(float input) { speeds.add(input); } public void addStrideLength(float input) { strideLengths.add(input); } public void addConfidence(float input) { confidences.add(input); } public void addGait(String input) { if (input != null) { gaits.add(input); } } public long[] getTimeStamps() { return convertToLongArray(timeStamps); } public double[] getCadences() { return convertToDoubleArray(cadences); } public double[] getSpeeds() { return convertToDoubleArray(speeds); } public double[] getStrideLengths() { return convertToDoubleArray(strideLengths); } public double[] getConfidences() { return convertToDoubleArray(confidences); } public ArrayList<String> getGaits() { return new ArrayList<String>(gaits); } private double[] convertToDoubleArray(List<Float> list) { double[] result = new double[list.size()]; int i = 0; for (Float f : list) { result[i++] = f.doubleValue(); } return result; } private long[] convertToLongArray(List<Long> list) { long[] result = new long[list.size()]; int i = 0; for (Long f : list) { result[i++] = f.longValue(); } return result; } public void clearAll() { timeStamps.clear(); cadences.clear(); speeds.clear(); strideLengths.clear(); confidences.clear(); gaits.clear(); } }