edu.sc.seis.fissuresUtil.bag
Class Cut
java.lang.Object
edu.sc.seis.fissuresUtil.bag.Cut
- All Implemented Interfaces:
- LocalSeismogramFunction
public class Cut
- extends java.lang.Object
- implements LocalSeismogramFunction
Cuts seismograms based on a begin and end time.
Created: Tue Oct 1 21:23:44 2002
Field Summary |
static edu.iris.Fissures.model.UnitImpl |
SEC_PER_SEC
|
Constructor Summary |
Cut(edu.iris.Fissures.model.MicroSecondDate begin,
edu.iris.Fissures.model.MicroSecondDate end)
|
Cut(edu.iris.Fissures.IfSeismogramDC.RequestFilter request)
|
Method Summary |
edu.iris.Fissures.seismogramDC.LocalSeismogramImpl |
apply(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
|
edu.iris.Fissures.IfSeismogramDC.RequestFilter |
apply(edu.iris.Fissures.IfSeismogramDC.RequestFilter original)
|
edu.iris.Fissures.seismogramDC.LocalSeismogramImpl |
applyEncoded(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
Makes a seismogram covering as little extra beyond begin and end times of
this cut without extracting the data from the encoded data array. |
static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] |
coarseCut(edu.iris.Fissures.IfSeismogramDC.RequestFilter[] aFilterseq,
edu.iris.Fissures.IfSeismogramDC.LocalSeismogram[] seis)
Applys a coarse cut to the seismograms based on the request filter. |
static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl |
cut(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis,
int beginIndex,
int endIndex)
|
static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl |
cutEncoded(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis,
int beginIndex,
int endIndex)
|
edu.iris.Fissures.model.MicroSecondDate |
getBegin()
|
protected int |
getBeginIndex(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
|
edu.iris.Fissures.model.MicroSecondDate |
getEnd()
|
protected int |
getEndIndex(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
|
boolean |
overlaps(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
SEC_PER_SEC
public static final edu.iris.Fissures.model.UnitImpl SEC_PER_SEC
Cut
public Cut(edu.iris.Fissures.model.MicroSecondDate begin,
edu.iris.Fissures.model.MicroSecondDate end)
Cut
public Cut(edu.iris.Fissures.IfSeismogramDC.RequestFilter request)
apply
public edu.iris.Fissures.seismogramDC.LocalSeismogramImpl apply(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
throws edu.iris.Fissures.FissuresException
- Specified by:
apply
in interface LocalSeismogramFunction
- Returns:
- - a seismogram cut to the configured time window. The original
seismogram is not modified. Returns null if no data is within the
cut window.
- Throws:
edu.iris.Fissures.FissuresException
cut
public static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl cut(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis,
int beginIndex,
int endIndex)
throws edu.iris.Fissures.FissuresException
- Throws:
edu.iris.Fissures.FissuresException
overlaps
public boolean overlaps(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
getEndIndex
protected int getEndIndex(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
getBeginIndex
protected int getBeginIndex(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
getBegin
public edu.iris.Fissures.model.MicroSecondDate getBegin()
getEnd
public edu.iris.Fissures.model.MicroSecondDate getEnd()
apply
public edu.iris.Fissures.IfSeismogramDC.RequestFilter apply(edu.iris.Fissures.IfSeismogramDC.RequestFilter original)
applyEncoded
public edu.iris.Fissures.seismogramDC.LocalSeismogramImpl applyEncoded(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis)
throws edu.iris.Fissures.FissuresException
- Makes a seismogram covering as little extra beyond begin and end times of
this cut without extracting the data from the encoded data array. This
means there may be a few extra points around the begin and end time as
the encoded data segments probably won't line up with the cut times. If
the cut and the seismogram have no time in common, null is returned. If
the data isn't encoded, no cut is performed
- Returns:
- an encoded seismogram covering as little of cut time as possible
or null if there's no overlap
- Throws:
edu.iris.Fissures.FissuresException
cutEncoded
public static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl cutEncoded(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis,
int beginIndex,
int endIndex)
throws edu.iris.Fissures.FissuresException
- Throws:
edu.iris.Fissures.FissuresException
coarseCut
public static edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] coarseCut(edu.iris.Fissures.IfSeismogramDC.RequestFilter[] aFilterseq,
edu.iris.Fissures.IfSeismogramDC.LocalSeismogram[] seis)
throws edu.iris.Fissures.FissuresException
- Applys a coarse cut to the seismograms based on the request filter. This uses Cut.applyEncoded to cut
sections of encoded data without decompressing first. Thus large data volumes can be reduced without memory problems.
- Throws:
edu.iris.Fissures.FissuresException