/* RateData Copyright (c) 2016 NTT DOCOMO,INC. Released under the MIT license http://opensource.org/licenses/mit-license.php */ package org.deviceconnect.android.deviceplugin.hitoe.data; import android.os.Bundle; import org.deviceconnect.android.profile.HealthProfile; /** * This class is information of HeartRate or RRI or Energy Expended or ECG. * @author NTT DOCOMO, INC. */ public class HeartData { /** HeartRate type.*/ public enum HeartRateType { /** * HeartRate. */ Rate, /** * RRI. */ RRI, /** * Energy Expended. */ EnergyExpended, /** * ECG. */ ECG } /** HeartRate type. */ private HeartRateType mHeartRateType; /** value. */ private float mValue; /** MDER Float value. */ private String mMderFloat; /** type. */ private String mType; /** type code. */ private int mTypeCode; /** unit. */ private String mUnit; /** unit code. */ private int mUnitCode; /** timestamp. */ private long mTimeStamp; /** timestamp string. */ private String mTimeStampString; /** * Constructor. */ public HeartData() { mMderFloat = ""; mType = ""; mUnit = ""; mTimeStampString = ""; } /** * Get Heart's value. * @return heart's value */ public float getValue() { return mValue; } /** * Set Heart's value. * @param value heart's value */ public void setValue(final float value) { mValue = value; } /** * Get MDER Float value. * @return MDER Float value */ public String getMderFloat() { return mMderFloat; } /** * Set MDER Float value. * @param mderFloat MDER Float value */ public void setMderFloat(final String mderFloat) { mMderFloat = mderFloat; } /** * Get Value's type. * @return value's type */ public String getType() { return mType; } /** * Set Value's type. * @param type value's type */ public void setType(final String type) { mType = type; } /** * Get Value's type code. * @return Value's type code */ public int getTypeCode() { return mTypeCode; } /** * Set Value's type code. * @param typeCode value's type code */ public void setTypeCode(final int typeCode) { mTypeCode = typeCode; } /** * Get HeartRate's unit. * @return HeartRate's unit */ public String getUnit() { return mUnit; } /** * Set HeartRate's unit. * @param unit HeartRate's unit */ public void setUnit(final String unit) { mUnit = unit; } /** * Get HeartRate's unit code. * @return HeartRate's unit code */ public int getUnitCode() { return mUnitCode; } /** * Set HeartRate's unit code. * @param unitCode HeartRate's unit code */ public void setUnitCode(final int unitCode) { mUnitCode = unitCode; } /** * Get HeartRate's timestamp. * @return HeartRate's timestamp */ public long getTimeStamp() { return mTimeStamp; } /** * Set HeartRate's timestamp. * @param timeStamp HeartRate's timestamp */ public void setTimeStamp(final long timeStamp) { mTimeStamp = timeStamp; } /** * Get HeartRate's timestamp string. * @return HeartRate's timestamp string */ public String getTimeStampString() { return mTimeStampString; } /** * Set HeartRate's timestamp string. * @param timeStampString HeartRate's timestamp string */ public void setTimeStampString(final String timeStampString) { mTimeStampString = timeStampString; } /** * Get HeartRate type. * @return HeartRate type */ public HeartRateType getHeartRateType() { return mHeartRateType; } /** * Set HeartRate type. * @param heartRateType HeartRate type */ public void setHeartRateType(final HeartRateType heartRateType) { mHeartRateType = heartRateType; } @Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append("{\"value\": ").append(mValue).append(", "); builder.append("\"MderFloat\": ").append(mMderFloat).append(", "); builder.append("\"type\": ").append(mType).append(", "); builder.append("\"typeCode\": ").append(mTypeCode).append(", "); builder.append("\"unit\": ").append(mUnit).append(", "); builder.append("\"unitCode\": ").append(mUnitCode).append(", "); builder.append("\"timeStamp\": ").append(mTimeStamp).append(", "); builder.append("\"timeStampString\": ").append(mTimeStampString).append("} "); return builder.toString(); } /** * To Bundle. * @return Bundle */ public Bundle toBundle() { Bundle heart = new Bundle(); HealthProfile.setValue(heart, mValue); HealthProfile.setMDERFloat(heart, mMderFloat); HealthProfile.setType(heart, mType); HealthProfile.setTypeCode(heart, mTypeCode); HealthProfile.setUnit(heart, mUnit); HealthProfile.setUnitCode(heart, mUnitCode); HealthProfile.setTimestamp(heart, mTimeStamp); HealthProfile.setTimestampString(heart, mTimeStampString); return heart; } }