package org.signalml.plugin.newartifact.logic.tag.creators;
import org.signalml.plugin.newartifact.data.NewArtifactType;
import org.signalml.plugin.newartifact.data.tag.NewArtifactTagData;
import org.signalml.plugin.newartifact.data.tag.NewArtifactTagResult;
public class PowerTagCreator extends AbstractTresholdTagCreator implements
INewArtifactTagCreator {
private static final NewArtifactType CREATOR_TYPE = NewArtifactType.POWER_SUPPLY;
private static final double TRESHOLD_A = 0.7;
private static final double TRESHOLD_B = 0.05;
@Override
protected String getTagName() {
return "P";
}
@Override
protected String getTagDescription() {
return "Art. sieci (50Hz)";
}
@Override
protected int getTagStretch() {
return 1;
}
@Override
public NewArtifactTagResult tag(NewArtifactTagData data) {
final double sensitivity = data.parameters
.getSensitivity(PowerTagCreator.CREATOR_TYPE) / 100.0;
double treshold = PowerTagCreator.TRESHOLD_A + sensitivity
* (PowerTagCreator.TRESHOLD_B - PowerTagCreator.TRESHOLD_A);
return this.constructResult(this.getTagsFromTreshold(data, treshold));
}
}