edu.sc.seis.sod.process.waveform

## Class SeismogramImageProcess

- java.lang.Object
- - edu.sc.seis.sod.process.waveform.SeismogramImageProcess

- All Implemented Interfaces:
    WaveformProcess, SodElement, Subsetter
  Direct Known Subclasses:
    VectorImageProcess

      public class SeismogramImageProcess
      extends java.lang.Object
      implements WaveformProcess

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected class` | `SeismogramImageProcess.ImageWriter`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.awt.Dimension` | `dims`
    `protected SeismogramImageOutputLocator` | `locator`
    `static java.lang.String` | `PDF`
    `protected java.lang.String[]` | `phaseFlagNames`
    `protected PhaseWindow` | `phaseWindow`
    `static java.lang.String` | `PNG`
    `protected edu.sc.seis.fissuresUtil.display.configuration.BorderConfiguration` | `titleBorder`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SeismogramImageProcess(org.w3c.dom.Element el)`
    `SeismogramImageProcess(SeismogramImageOutputLocator locator)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `WaveformResult` | `accept(edu.sc.seis.fissuresUtil.cache.CacheEvent event, edu.iris.Fissures.network.ChannelImpl channel, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] available, edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms, CookieJar cookieJar)` Processes localSeismograms, possibly modifying them.
    `protected void` | `addFlags(java.util.List<edu.sc.seis.TauP.Arrival> arrivals, edu.iris.Fissures.IfEvent.Origin o, edu.sc.seis.fissuresUtil.display.SeismogramDisplay bsd, edu.sc.seis.fissuresUtil.xml.DataSetSeismogram seis)`
    `edu.sc.seis.fissuresUtil.display.SeismogramDisplay` | `createPopulatedDisplay(edu.iris.Fissures.IfEvent.EventAccessOperations event, edu.iris.Fissures.IfNetwork.Channel channel, edu.sc.seis.fissuresUtil.xml.DataSetSeismogram[] seis, java.lang.String[] phases)`
    `static edu.sc.seis.fissuresUtil.xml.MemoryDataSetSeismogram` | `createSeis(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original)`
    `protected java.util.List<edu.sc.seis.TauP.Arrival>` | `getArrivals(edu.iris.Fissures.IfNetwork.Channel chan, edu.iris.Fissures.IfEvent.Origin o, java.lang.String[] phases)`
    `static edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange` | `getTimeWindow(PhaseWindow pw, edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)`
    `edu.sc.seis.fissuresUtil.display.configuration.BorderConfiguration` | `getTitleBorder()`
    `WaveformResult` | `process(edu.sc.seis.fissuresUtil.cache.CacheEvent event, edu.iris.Fissures.IfNetwork.Channel channel, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original, edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms, java.lang.String fileType, CookieJar cookieJar)` allows specifying a fileType, png or pdf.
    `WaveformResult` | `process(edu.sc.seis.fissuresUtil.cache.CacheEvent event, edu.iris.Fissures.IfNetwork.Channel channel, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original, edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms, java.lang.String fileType, java.lang.String[] phases, boolean relTime, CookieJar cookieJar)` allows specifying a fileType, png or pdf, and a list of phases.
    `WaveformResult` | `process(edu.sc.seis.fissuresUtil.cache.CacheEvent event, edu.iris.Fissures.IfNetwork.Channel channel, edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original, edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms, java.lang.String fileType, java.lang.String[] phases, CookieJar cookieJar)` allows specifying a fileType, png or pdf, and a list of phases.
    `static void` | `setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc, edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)`
    `static void` | `setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc, edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange newTime, edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange currentTime)`
    `static void` | `setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc, PhaseWindow pw, edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)`
    `void` | `updateTitles(edu.iris.Fissures.IfEvent.EventAccessOperations event, edu.iris.Fissures.IfNetwork.Channel channel, edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange timeRange)`
    `protected void` | `writeImage(edu.sc.seis.fissuresUtil.display.SeismogramDisplay disp, java.lang.String fileType, java.lang.String picFileName)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### locator

          protected SeismogramImageOutputLocator locator

    - #### titleBorder

          protected edu.sc.seis.fissuresUtil.display.configuration.BorderConfiguration titleBorder

    - #### phaseWindow

          protected PhaseWindow phaseWindow

    - #### phaseFlagNames

          protected java.lang.String[] phaseFlagNames

    - #### dims

          protected java.awt.Dimension dims

    - #### PDF

          public static final java.lang.String PDF

      See Also:
        Constant Field Values

    - #### PNG

          public static final java.lang.String PNG

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SeismogramImageProcess

          public SeismogramImageProcess(SeismogramImageOutputLocator locator)

    - #### SeismogramImageProcess

          public SeismogramImageProcess(org.w3c.dom.Element el)
                                 throws java.lang.Exception

      Throws:
        `java.lang.Exception`

  - ### Method Detail

    - #### accept

          public WaveformResult accept(edu.sc.seis.fissuresUtil.cache.CacheEvent event,
                                       edu.iris.Fissures.network.ChannelImpl channel,
                                       edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original,
                                       edu.iris.Fissures.IfSeismogramDC.RequestFilter[] available,
                                       edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms,
                                       CookieJar cookieJar)
                                throws java.lang.Exception

      Description copied from interface: `WaveformProcess`
      Processes localSeismograms, possibly modifying them.
      Specified by:
        `accept` in interface `WaveformProcess`
      Throws:
        `java.lang.Exception`

    - #### process

          public WaveformResult process(edu.sc.seis.fissuresUtil.cache.CacheEvent event,
                                        edu.iris.Fissures.IfNetwork.Channel channel,
                                        edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original,
                                        edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms,
                                        java.lang.String fileType,
                                        CookieJar cookieJar)
                                 throws java.lang.Exception

      allows specifying a fileType, png or pdf.
      Throws:
        `java.lang.Exception`

    - #### process

          public WaveformResult process(edu.sc.seis.fissuresUtil.cache.CacheEvent event,
                                        edu.iris.Fissures.IfNetwork.Channel channel,
                                        edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original,
                                        edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms,
                                        java.lang.String fileType,
                                        java.lang.String[] phases,
                                        CookieJar cookieJar)
                                 throws java.lang.Exception

      allows specifying a fileType, png or pdf, and a list of phases.
      Throws:
        `java.lang.Exception`

    - #### createSeis

          public static edu.sc.seis.fissuresUtil.xml.MemoryDataSetSeismogram createSeis(edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms,
                                                                                        edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original)
                                                                                 throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### getArrivals

          protected java.util.List<edu.sc.seis.TauP.Arrival> getArrivals(edu.iris.Fissures.IfNetwork.Channel chan,
                                                                         edu.iris.Fissures.IfEvent.Origin o,
                                                                         java.lang.String[] phases)
                                                                  throws edu.sc.seis.TauP.TauModelException

      Throws:
        `edu.sc.seis.TauP.TauModelException`

    - #### addFlags

          protected void addFlags(java.util.List<edu.sc.seis.TauP.Arrival> arrivals,
                                  edu.iris.Fissures.IfEvent.Origin o,
                                  edu.sc.seis.fissuresUtil.display.SeismogramDisplay bsd,
                                  edu.sc.seis.fissuresUtil.xml.DataSetSeismogram seis)

    - #### process

          public WaveformResult process(edu.sc.seis.fissuresUtil.cache.CacheEvent event,
                                        edu.iris.Fissures.IfNetwork.Channel channel,
                                        edu.iris.Fissures.IfSeismogramDC.RequestFilter[] original,
                                        edu.iris.Fissures.seismogramDC.LocalSeismogramImpl[] seismograms,
                                        java.lang.String fileType,
                                        java.lang.String[] phases,
                                        boolean relTime,
                                        CookieJar cookieJar)
                                 throws java.lang.Exception

      allows specifying a fileType, png or pdf, and a list of phases.
      Throws:
        `java.lang.Exception`

    - #### createPopulatedDisplay

          public edu.sc.seis.fissuresUtil.display.SeismogramDisplay createPopulatedDisplay(edu.iris.Fissures.IfEvent.EventAccessOperations event,
                                                                                           edu.iris.Fissures.IfNetwork.Channel channel,
                                                                                           edu.sc.seis.fissuresUtil.xml.DataSetSeismogram[] seis,
                                                                                           java.lang.String[] phases)
                                                                                    throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### setTimeWindow

          public static void setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc,
                                           edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)
                                    throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### setTimeWindow

          public static void setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc,
                                           PhaseWindow pw,
                                           edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)
                                    throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### setTimeWindow

          public static void setTimeWindow(edu.sc.seis.fissuresUtil.display.registrar.TimeConfig tc,
                                           edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange newTime,
                                           edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange currentTime)

    - #### getTimeWindow

          public static edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange getTimeWindow(PhaseWindow pw,
                                                                                         edu.sc.seis.fissuresUtil.xml.DataSetSeismogram dss)
                                                                                  throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### updateTitles

          public void updateTitles(edu.iris.Fissures.IfEvent.EventAccessOperations event,
                                   edu.iris.Fissures.IfNetwork.Channel channel,
                                   edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange timeRange)

    - #### getTitleBorder

          public edu.sc.seis.fissuresUtil.display.configuration.BorderConfiguration getTitleBorder()

    - #### writeImage

          protected void writeImage(edu.sc.seis.fissuresUtil.display.SeismogramDisplay disp,
                                    java.lang.String fileType,
                                    java.lang.String picFileName)
                             throws java.lang.Exception

      Throws:
        `java.lang.Exception`