edu.sc.seis.sod.process.waveform

## Class AbstractSeismogramWriter

- java.lang.Object
- - edu.sc.seis.sod.process.waveform.AbstractFileWriter
  - - edu.sc.seis.sod.process.waveform.AbstractSeismogramWriter

- All Implemented Interfaces:
    WaveformProcess, SodElement, Subsetter
  Direct Known Subclasses:
    AsciiWriter, MseedWriter, SacWriter, WavWriter

      public abstract class AbstractSeismogramWriter
      extends AbstractFileWriter
      implements WaveformProcess

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `COOKIE_PREFIX`
    `protected boolean` | `storeSeismogramsInDB`
    `static java.lang.String` | `SVN_PARAM`

    - ### Fields inherited from class edu.sc.seis.sod.process.waveform.AbstractFileWriter

      `DEFAULT_FILE_TEMPLATE_WO_EXT, DEFAULT_PREFIX, DEFAULT_WORKING_DIR, INDEX_VAR, origTemplate, prefix, template, velocitizer, workingDir`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractSeismogramWriter()`
    `` | `AbstractSeismogramWriter(java.lang.String workingDir, java.lang.String fileTemplate, java.lang.String prefix, boolean storeSeismogramsInDB)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract 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.
    `static void` | `addBytesWritten(long bytes)`
    `static long` | `getBytesWritten()`
    `static java.lang.String` | `getCookieName(java.lang.String prefix, edu.iris.Fissures.IfNetwork.ChannelId channel, int i)`
    `abstract edu.sc.seis.fissuresUtil.xml.SeismogramFileTypes` | `getFileType()`
    `abstract void` | `write(java.lang.String loc, edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis, edu.iris.Fissures.network.ChannelImpl chan, edu.sc.seis.fissuresUtil.cache.CacheEvent ev)`

    - ### Methods inherited from class edu.sc.seis.sod.process.waveform.AbstractFileWriter

      `checkParentDirs, extractFileTemplate, extractPrefix, extractWorkingDir, generate, generate, generate, getTemplate, removeExisting, removeExisting, removeExisting`

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

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

- - ### Field Detail

    - #### storeSeismogramsInDB

          protected boolean storeSeismogramsInDB

    - #### SVN_PARAM

          public static final java.lang.String SVN_PARAM

      See Also:
        Constant Field Values

    - #### COOKIE_PREFIX

          public static final java.lang.String COOKIE_PREFIX

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractSeismogramWriter

          public AbstractSeismogramWriter(java.lang.String workingDir,
                                          java.lang.String fileTemplate,
                                          java.lang.String prefix,
                                          boolean storeSeismogramsInDB)
                                   throws ConfigurationException

      Throws:
        `ConfigurationException`

    - #### AbstractSeismogramWriter

          protected AbstractSeismogramWriter()
                                      throws ConfigurationException

      Throws:
        `ConfigurationException`

  - ### 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`

    - #### getFileType

          public abstract edu.sc.seis.fissuresUtil.xml.SeismogramFileTypes getFileType()

    - #### write

          public abstract void write(java.lang.String loc,
                                     edu.iris.Fissures.seismogramDC.LocalSeismogramImpl seis,
                                     edu.iris.Fissures.network.ChannelImpl chan,
                                     edu.sc.seis.fissuresUtil.cache.CacheEvent ev)
                              throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### addBytesWritten

          public static void addBytesWritten(long bytes)

    - #### getBytesWritten

          public static long getBytesWritten()

    - #### getCookieName

          public static java.lang.String getCookieName(java.lang.String prefix,
                                                       edu.iris.Fissures.IfNetwork.ChannelId channel,
                                                       int i)