package SesameGUI; import java.util.Calendar; public class SesameObject extends Object { private int type; // 0: Site, 1: datafile, 2: both, 3: unasigned private String name; private String outputFile; private int numberWindows; private int numberWindowsFilter; private double windowsLength; private String station="TEST"; private String chanelZ="V"; private String chanelNS="NS"; private String chanelEW="EW"; private int waveFormat; private Windows windows = new Windows(); private Windows windowsFilter = new Windows(); private String processTime = "_"; private double samplingFreq; public SesameObject(String label) { type = 3; name = label; numberWindows=0; numberWindowsFilter=0; windowsLength=0; outputFile = name + ".out"; } public void setName(String text) { name = text; } public void setOutputFile(String text) {outputFile = text; } public void setNumberWindows(int number) { numberWindows = number; } public void setNumberWindowsFilter(int number) { numberWindowsFilter = number; } public void setWindowsLength(double number) { windowsLength = number; } public void setType(int t) { type = t;} public void addSesameWindow(double i1, double i2) { windows.add(i1*(samplingFreq*samplingFreq), i2*(samplingFreq*samplingFreq)); } public String getName() { return name; } public String getOutputFile() { return outputFile; } public int getNumberWindows() { return numberWindows; } public int getNumberWindowsFilter() { return numberWindowsFilter; } public double getWindowsLength() { return windowsLength; } public int getType() { return type; } public double getSesameWindowFirstIndex(int ind) { return (windows.get(ind).getLowerBound())/(samplingFreq*samplingFreq); } public double getSesameWindowFirstIndexFilter(int ind) { return (windowsFilter.get(ind).getLowerBound())/(samplingFreq*samplingFreq); } public double getSesameWindowSecondIndex(int ind) { return (windows.get(ind).getUpperBound())/(samplingFreq*samplingFreq); } public double getSesameWindowSecondIndexFilter(int ind) { return (windowsFilter.get(ind).getUpperBound())/(samplingFreq*samplingFreq); } public String toString() { return name; } public void setSesameWindows(Windows winds) { windows = winds; setNumberWindows(windows.getNumberWindows()); } public void setSesameWindowsFilter(Windows winds) { windowsFilter = winds; setNumberWindowsFilter(windowsFilter.getNumberWindows()); } public void setSamplingFreq(double freq) { samplingFreq = freq; } public double getSamplingFreq() { return samplingFreq; } public Windows getSesameWindows() { return windows; } public Windows getSesameWindowsFilter() { return windowsFilter; } public String getZname() { return chanelZ; } public String getNSname() { return chanelNS; } public String getEWname() { return chanelEW; } public String getStationName() { return station; } public void setZname(String name){ chanelZ=name; } public void setNSname(String name){ chanelNS=name; } public void setEWname(String name){ chanelEW=name; } public void setStationname(String name){ station=name; } public int getWaveFormat() { return waveFormat; } public void setWaveFormat(int waveFormat) { this.waveFormat = waveFormat; } public boolean mixWindows() { int i = 0; for (i = 1; i<=windows.getNumberWindows() ; ++i) if ( windows.get(i).isAutoWindow()==false ) return true; return false; } public String getSesameWindowAutoFlag(int ind) { if ( windows.get(ind).isAutoWindow() ) return "A"; else return "M"; } public void setLastAutoWindow(boolean flag) { windows.get(windows.getNumberWindows()).setAutoWindow(flag); } public void setProcessTime(Calendar tm) { processTime = "_"+tm.get(tm.YEAR)+"-"+ (int)(tm.get(tm.MONTH)+1)+"-"+tm.get(tm.DAY_OF_MONTH)+ "__"+tm.get(tm.HOUR)+":"+tm.get(tm.MINUTE)+":"+tm.get(tm.SECOND); } public void setProcessTimeString(String cad) { processTime = cad; } public String getProcessTime() { return processTime; } }