edu.sc.seis.fissuresUtil.display.registrar
Class RTTimeRangeConfig

java.lang.Object
  extended by edu.sc.seis.fissuresUtil.display.registrar.RTTimeRangeConfig
All Implemented Interfaces:
DataSetSeismogramReceptacle, TimeConfig, TimeListener, java.util.EventListener

public class RTTimeRangeConfig
extends java.lang.Object
implements TimeConfig, TimeListener

RTTimeRangeConfig.java Created: Mon Jun 3 15:47:31 2002


Field Summary
static edu.iris.Fissures.model.TimeInterval DEFAULT_REFRESH
           
static edu.iris.Fissures.model.TimeInterval serverTimeOffset
           
protected  javax.swing.Timer timer
          Timers are used for realTime update of the Seismograms
protected  edu.iris.Fissures.model.TimeInterval width
           
 
Constructor Summary
RTTimeRangeConfig(TimeConfig internalConfig)
           
RTTimeRangeConfig(TimeConfig internalConfig, edu.iris.Fissures.model.TimeInterval update)
           
RTTimeRangeConfig(TimeConfig internalConfig, edu.iris.Fissures.model.TimeInterval update, float speed)
           
 
Method Summary
 void add(DataSetSeismogram[] seismos)
          add adds all of the seismograms in the array to the receptacle
 void addListener(TimeListener listener)
          add adds the listener to the group of objects that are updated when this time config changes
 void clear()
          clear removes all seismograms from this receptacle
 boolean contains(DataSetSeismogram seismo)
          contains checks the receptacle for the presence of seismo
 TimeEvent fireTimeEvent()
          fireTimeEvent causes the config to prepare a time event and fire it to all of its TimeEvent objects
 TimeConfig getInternalConfig()
           
 double getScale()
           
 DataSetSeismogram[] getSeismograms()
          returns all of the seismograms held by this receptacle
 double getShift()
           
 float getSpeed()
           
 MicroSecondTimeRange getTime()
           
 MicroSecondTimeRange getTime(DataSetSeismogram seis)
           
 void remove(DataSetSeismogram[] seismos)
          remove removes all of the seismograms in this array
 void removeListener(TimeListener listener)
          remove removes listener from the update group
 void reset()
          reset takes all of the seismograms contained in this receptacle and sets their state as if they had just been added to the receptacle and sets the instance varaibles of the receptacle back to their initial states
 void reset(DataSetSeismogram[] seismos)
          reset takes all of the seismograms in the array and sets their state as if they had just been initially added to the receptacle
 void setInternalConfig(TimeConfig config)
           
 void setSpeed(float speed)
           
 void shaleTime(double shift, double scale)
          shaleTime shifts then scales all the seismograms in the config.
 void shaleTime(double shift, double scale, DataSetSeismogram[] seismos)
          shaleTime performs a shale on the seismograms in the array
 void startTimer()
           
 void stopTimer()
           
 void updateTime(TimeEvent event)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serverTimeOffset

public static final edu.iris.Fissures.model.TimeInterval serverTimeOffset

timer

protected javax.swing.Timer timer
Timers are used for realTime update of the Seismograms


width

protected edu.iris.Fissures.model.TimeInterval width

DEFAULT_REFRESH

public static edu.iris.Fissures.model.TimeInterval DEFAULT_REFRESH
Constructor Detail

RTTimeRangeConfig

public RTTimeRangeConfig(TimeConfig internalConfig)

RTTimeRangeConfig

public RTTimeRangeConfig(TimeConfig internalConfig,
                         edu.iris.Fissures.model.TimeInterval update)

RTTimeRangeConfig

public RTTimeRangeConfig(TimeConfig internalConfig,
                         edu.iris.Fissures.model.TimeInterval update,
                         float speed)
Method Detail

setInternalConfig

public void setInternalConfig(TimeConfig config)

getInternalConfig

public TimeConfig getInternalConfig()

add

public void add(DataSetSeismogram[] seismos)
Description copied from interface: DataSetSeismogramReceptacle
add adds all of the seismograms in the array to the receptacle

Specified by:
add in interface DataSetSeismogramReceptacle
Parameters:
seismos - a DataSetSeismogram[] containing seismograms to be added to this receptacle

updateTime

public void updateTime(TimeEvent event)
Specified by:
updateTime in interface TimeListener

startTimer

public void startTimer()

stopTimer

public void stopTimer()

reset

public void reset()
Description copied from interface: DataSetSeismogramReceptacle
reset takes all of the seismograms contained in this receptacle and sets their state as if they had just been added to the receptacle and sets the instance varaibles of the receptacle back to their initial states

Specified by:
reset in interface DataSetSeismogramReceptacle

setSpeed

public void setSpeed(float speed)

getSpeed

public float getSpeed()

addListener

public void addListener(TimeListener listener)
Description copied from interface: TimeConfig
add adds the listener to the group of objects that are updated when this time config changes

Specified by:
addListener in interface TimeConfig
Parameters:
listener - a TimeEventListener that will be updated as this config changes

removeListener

public void removeListener(TimeListener listener)
Description copied from interface: TimeConfig
remove removes listener from the update group

Specified by:
removeListener in interface TimeConfig
Parameters:
listener - a TimeEventListener that will no longer receive updates from this config

shaleTime

public void shaleTime(double shift,
                      double scale,
                      DataSetSeismogram[] seismos)
Description copied from interface: TimeConfig
shaleTime performs a shale on the seismograms in the array

Specified by:
shaleTime in interface TimeConfig

shaleTime

public void shaleTime(double shift,
                      double scale)
Description copied from interface: TimeConfig
shaleTime shifts then scales all the seismograms in the config. First, the shift value is used to move the begin time by shift*timeWidth. Then the scale value is used to adjust the end time so that the new timeWidth is scale*timeWidth. So, if shift = 1 and scale = 2, the shift is applied and the new begin time is equal to the old end time. Then the time width is modified to be two times its original size. The new time starts at the old begin time and lasts twice as long. An adjustment of shift = 0, scale = 1 will leave the seismograms unchanged. A scale value must be greater than 0, or it will reduce the time width to nothing.

Specified by:
shaleTime in interface TimeConfig
Parameters:
shift - the percentage of current time width by which the seismograms will be shifted
scale - the percentage of the current time width that will exist after the end time is moved

remove

public void remove(DataSetSeismogram[] seismos)
Description copied from interface: DataSetSeismogramReceptacle
remove removes all of the seismograms in this array

Specified by:
remove in interface DataSetSeismogramReceptacle
Parameters:
seismos - DataSetSeismogram[] an array of seismograms to be removed

getShift

public double getShift()
Specified by:
getShift in interface TimeConfig

getScale

public double getScale()
Specified by:
getScale in interface TimeConfig

reset

public void reset(DataSetSeismogram[] seismos)
Description copied from interface: DataSetSeismogramReceptacle
reset takes all of the seismograms in the array and sets their state as if they had just been initially added to the receptacle

Specified by:
reset in interface DataSetSeismogramReceptacle
Parameters:
seismos - a DataSetSeismogram[] value containing seismograms to be reset

contains

public boolean contains(DataSetSeismogram seismo)
Description copied from interface: DataSetSeismogramReceptacle
contains checks the receptacle for the presence of seismo

Specified by:
contains in interface DataSetSeismogramReceptacle
Parameters:
seismo - the seismogram whose presence is to be tested
Returns:
true if the receptacle contains seismo, false otherwise

fireTimeEvent

public TimeEvent fireTimeEvent()
Description copied from interface: TimeConfig
fireTimeEvent causes the config to prepare a time event and fire it to all of its TimeEvent objects

Specified by:
fireTimeEvent in interface TimeConfig
Returns:
the ConfigEvent fired

getTime

public MicroSecondTimeRange getTime()
Specified by:
getTime in interface TimeConfig
Returns:
a MicroSecondTimeRange that covers the current generic time range of this TimeConfig

getTime

public MicroSecondTimeRange getTime(DataSetSeismogram seis)
Specified by:
getTime in interface TimeConfig
Parameters:
seis - a DataSetSeismogram a time is desired for
Returns:
a MicroSecondTimeRange describing the current time of the given seismogram in the time config

getSeismograms

public DataSetSeismogram[] getSeismograms()
Description copied from interface: DataSetSeismogramReceptacle
returns all of the seismograms held by this receptacle

Specified by:
getSeismograms in interface DataSetSeismogramReceptacle
Returns:
an array containing all of this receptacles seismograms

clear

public void clear()
Description copied from interface: DataSetSeismogramReceptacle
clear removes all seismograms from this receptacle

Specified by:
clear in interface DataSetSeismogramReceptacle