package org.physionet.wfdb.physiobank; public class PhysioNetSignal { private final String recordName; private Integer recordIndex=null; private String signalIndex=null; private String startTime=null; private String lengthTime=null; private String lengthSamples=null; private String samplingFrequency=null; private String Group=null; private String file=null; private String description=null; private String initialValue=null; private String gain=null; private String format=null; private String io=null; private String adcResolution=null; private String adcZero=null; private String baseline=null; private String checkSum=null; private double[][] data=null; //data in physical units //TODO: Consider overriding equals() and hashcode! public PhysioNetSignal(Integer mrecordIndex, String mrecName){ setRecordIndex(mrecordIndex); recordName=mrecName; } public PhysioNetSignal(String mrecName){ recordName=mrecName; } public void printSignalInfo(){ System.out.println("DB/Record Name: " + recordName); System.out.println("\tRecord/Signal Index: " + recordIndex + "/" + signalIndex); System.out.println("\tGroup: " + Group); System.out.println("\tStart Time:\t\t" + startTime); System.out.println("\tLength Time:\t\t" + lengthTime); System.out.println("\tNumber of Samples:\t" + lengthSamples); System.out.println("\tSampling Frequency:\t" + samplingFrequency); System.out.println("\tFile:\t\t\t" + file); System.out.println("\tDescription:\t\t" + description); System.out.println("\tInitial Value:\t\t" + initialValue); System.out.println("\tGain:\t\t\t" + gain); System.out.println("\tFormat:\t\t\t" + format); System.out.println("\tI\\O:\t\t\t" + io); System.out.println("\tADC Resolution:\t\t" + adcResolution); System.out.println("\tADC Zero:\t\t" + adcZero); System.out.println("\tBaseline:\t\t" + baseline); System.out.println("\tChecksum:\t\t" + checkSum); } /* public void loadPhysicalData(){ //Calls RDSAMP to get data for this signal Rdsamp rdsampexec = new Rdsamp(); rdsampexec.setArgumentValue(Rdsamp.Arguments.stopTime, "s10"); rdsampexec.setArgumentValue(Rdsamp.PrintTimeFormatLabel.p); rdsampexec.setArgumentValue(Rdsamp.Arguments.signalList, "[1]"); rdsampexec.setArgumentValue(Rdsamp.Arguments.recordName, dbName + "/" + recName); try { data=rdsampexec.execToDoubleArray(); }catch (Exception e){ System.err.println("Could not load data for signal: " + recName); e.printStackTrace(); } } */ public double[][] getPhysicalData(){ return data; } public String getRecordName() { return recordName; } public Integer getRecordIndex() { return recordIndex; } public void setRecordIndex(Integer recordIndex) { this.recordIndex = recordIndex; } public String getStartTime() { return startTime; } public void setStartTime(String startTime) { this.startTime = startTime; } public String getLengthTime() { return lengthTime; } public void setLengthTime(String lengthTime) { this.lengthTime = lengthTime; } public String getLengthSamples() { return lengthSamples; } public void setLengthSamples(String lengthSample) { this.lengthSamples = lengthSample; } public String getSamplingFrequency() { return samplingFrequency; } public void setSamplingFrequency(String samplingFrequency) { this.samplingFrequency = samplingFrequency; } public String getGroup() { return Group; } public void setGroup(String group) { Group = group; } public String getFile() { return file; } public void setFile(String file) { this.file = file; } public String getInitialValue() { return initialValue; } public void setInitialValue(String initialValue) { this.initialValue = initialValue; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String getFormat() { return format; } public void setFormat(String format) { this.format = format; } public String getGain() { return gain; } public void setGain(String gain) { this.gain = gain; } public String getAdcResolution() { return adcResolution; } public void setAdcResolution(String adcResolution) { this.adcResolution = adcResolution; } public String getIo() { return io; } public void setIo(String io) { this.io = io; } public String getAdcZero() { return adcZero; } public void setAdcZero(String adcZero) { this.adcZero = adcZero; } public String getBaseline() { return baseline; } public void setBaseline(String baseline) { this.baseline = baseline; } public String getCheckSum() { return checkSum; } public void setCheckSum(String checksum) { this.checkSum = checksum; } public String getSignalIndex() { return signalIndex; } public void setSignalIndex(String string) { this.signalIndex = string; } }