package org.yamcs.parameterarchive; import java.util.ArrayList; import java.util.List; import org.yamcs.parameter.ParameterValue; import org.yamcs.parameter.Value; import org.yamcs.utils.IntArray; import org.yamcs.utils.TimeEncoding; /** * A list of parametersIds with values all having the same timestamp * @author nm * */ public class ParameterIdValueList { final long instant; final int parameterGroupId; IntArray pids = new IntArray(); List<ParameterValue> values = new ArrayList<>(); public ParameterIdValueList(long instant, int parameterGroupId) { this.instant = instant; this.parameterGroupId = parameterGroupId; } public void add(int parameterId, ParameterValue v) { pids.add(parameterId); values.add(v); } public List<ParameterValue> getValues() { return values; } public String toString() { StringBuilder sb = new StringBuilder(); sb.append(TimeEncoding.toCombinedFormat(instant)+" ["); boolean first = true; for(int i=0 ; i<pids.size();i++) { Value ev = values.get(i).getEngValue(); if(first) first = false; else sb.append(", "); sb.append(pids.get(i)+": ("+ev.getType()+")"+ev); } sb.append("]"); return sb.toString(); } }