package org.yamcs.alarms;
import java.util.concurrent.atomic.AtomicInteger;
import org.yamcs.parameter.ParameterValue;
import org.yamcs.utils.TimeEncoding;
public class ActiveAlarm {
static AtomicInteger counter = new AtomicInteger();
public int id;
public boolean acknowledged;
public boolean autoAcknowledge;
public long acknowledgeTime = TimeEncoding.INVALID_INSTANT;
//the value that triggered the alarm
public ParameterValue triggerValue;
//most severe value
public ParameterValue mostSevereValue;
//current value of the parameter
public ParameterValue currentValue;
//message provided at triggering time
public String message;
public int violations=1;
public String usernameThatAcknowledged;
public ActiveAlarm(ParameterValue pv) {
this.triggerValue = this.currentValue = this.mostSevereValue = pv;
id = counter.getAndIncrement();
}
public ActiveAlarm(ParameterValue pv, boolean autoAck) {
this(pv);
this.autoAcknowledge = autoAck;
}
}