package edu.sc.seis.sod.process.waveform; import edu.iris.Fissures.IfSeismogramDC.RequestFilter; import edu.iris.Fissures.network.ChannelImpl; import edu.iris.Fissures.seismogramDC.LocalSeismogramImpl; import edu.sc.seis.fissuresUtil.cache.CacheEvent; import edu.sc.seis.sod.CookieJar; import edu.sc.seis.sod.Threadable; import edu.sc.seis.sod.status.StringTreeLeaf; /** * Removes the trend from the seismogram by subtracting the best least squares * line from the data. * * * Created: Wed Nov 6 17:58:10 2002 * * @author <a href="mailto:www@seis.sc.edu">Philip Crotwell</a> * @version $Id: RTrend.java 21405 2010-06-18 15:30:36Z crotwell $ */ public class RTrend implements WaveformProcess, Threadable { public boolean isThreadSafe() { return true; } public WaveformResult accept(CacheEvent event, ChannelImpl channel, RequestFilter[] original, RequestFilter[] available, LocalSeismogramImpl[] seismograms, CookieJar cookieJar) throws Exception { LocalSeismogramImpl[] out = new LocalSeismogramImpl[seismograms.length]; for (int i=0; i<seismograms.length; i++) { out[i] = rtrend.apply(seismograms[i]); } // end of for (int i=0; i<seismograms.length; i++) return new WaveformResult(out, new StringTreeLeaf(this, true)); } edu.sc.seis.fissuresUtil.bag.RTrend rtrend = new edu.sc.seis.fissuresUtil.bag.RTrend(); }// ResponseGainProcessor