org.opensha.sha.cybershake.openshaAPIs
Class CyberShakeERF

java.lang.Object
  extended by org.opensha.sha.earthquake.AbstractERF
      extended by org.opensha.sha.cybershake.openshaAPIs.CyberShakeERF
All Implemented Interfaces:
Serializable, Comparable<BaseERF>, Iterable<ProbEqkSource>, EventListener, Named, XMLSaveable, ParameterChangeListener, TimeSpanChangeListener, BaseERF, ERF

public class CyberShakeERF
extends AbstractERF

See Also:
Serialized Form

Field Summary
static String ERF_ID_SELECTOR_PARAM
           
 
Fields inherited from class org.opensha.sha.earthquake.AbstractERF
adjustableParams, nthRupIndicesForSource, parameterChangeFlag, rupIndexForNthRup, srcIndexForNthRup, timeSpan, totNumRups, XML_METADATA_NAME
 
Fields inherited from interface org.opensha.sha.earthquake.BaseERF
NAME
 
Constructor Summary
CyberShakeERF()
           
 
Method Summary
 ParameterList getAdjustableParameterList()
          Gets the Adjustable parameter list for the ERF
 String getName()
          Returns the name of this object
 int getNumSources()
           
 ProbEqkSource getSource(int source)
          Returns the earthquake source at the supplied index.
 ArrayList<ProbEqkSource> getSourceList()
          Returns the list of all earthquake sources.
 void parameterChange(ParameterChangeEvent e)
          This is the main function of this interface.
 void updateForecast()
          This method tells the forecast that the user is done setting parameters and that it can now prepare itself for use.
 
Methods inherited from class org.opensha.sha.earthquake.AbstractERF
baseERF_FromXML, baseERF_ToXML, compareTo, drawRandomEventSet, fromXMLMetadata, getApplicableRegion, getIncludedTectonicRegionTypes, getNumRuptures, getParameter, getRupture, getRuptureClone, getSourceClone, getTimeSpan, iterator, setParameter, setParameter, setParameterChangeFlag, setTimeSpan, timeSpanChange, toXMLMetadata, updateAndSaveForecast
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ERF_ID_SELECTOR_PARAM

public static final String ERF_ID_SELECTOR_PARAM
See Also:
Constant Field Values
Constructor Detail

CyberShakeERF

public CyberShakeERF()
Method Detail

getAdjustableParameterList

public ParameterList getAdjustableParameterList()
Description copied from interface: BaseERF
Gets the Adjustable parameter list for the ERF

Specified by:
getAdjustableParameterList in interface BaseERF
Overrides:
getAdjustableParameterList in class AbstractERF
Returns:
the adjustable ParameterList for the ERF

getNumSources

public int getNumSources()
Returns:
the total number os sources

getSource

public ProbEqkSource getSource(int source)
Description copied from interface: ERF
Returns the earthquake source at the supplied index.

Parameters:
source - the index requested
Returns:
the source at idx

getSourceList

public ArrayList<ProbEqkSource> getSourceList()
Description copied from interface: ERF
Returns the list of all earthquake sources.

Specified by:
getSourceList in interface ERF
Overrides:
getSourceList in class AbstractERF
Returns:
list of all possible earthquake sources

getName

public String getName()
Description copied from interface: Named
Returns the name of this object


parameterChange

public void parameterChange(ParameterChangeEvent e)
Description copied from class: AbstractERF
This is the main function of this interface. Any time a control paramater or independent paramater is changed by the user in a GUI this function is called, and a paramater change event is passed in. This sets the flag to indicate that the sources need to be updated

Specified by:
parameterChange in interface ParameterChangeListener
Overrides:
parameterChange in class AbstractERF
Parameters:
e - The Event which triggered this function call

updateForecast

public void updateForecast()
Description copied from interface: BaseERF
This method tells the forecast that the user is done setting parameters and that it can now prepare itself for use. We could avoid needing this method if the forecast updated every time a parameter was changed, but this would be very inefficient with forecasts that take a lot of time to update. This also avoids problems associated with accidentally changing a parameter in the middle of a calculation.