ca.cas.montecarlo
Class Irradiator

java.lang.Object
  extended by ca.cas.montecarlo.Irradiator
Direct Known Subclasses:
CircleIrradiator

public abstract class Irradiator
extends java.lang.Object

A class that extends Irradiator represents the process in which double strand breaks are induced in a genome by ionizing radiation. This abstract class establishes a standard for how extending irradiator subclasses are to be written. The constructor for a subclass may take any number of parameters. Additional methods may be added in order to modify these parameters after an instance of a subclass has been created. The Geometry object that is to be used as a basis for an irradiation process should be set by the driver using the setGeometry method. A field should be created in any subclass to store this Geometry object. If a subclass only works with a particular type of Geometry, the field used to store the Geometry object should be of this specific type. The setGeometry method should then throw an exception if it is called with a Geometry object which is not of this type. A new array of Breaks may be found whenever a valid Geometry object has been set. The breaks() method returns the array of Breaks found by the most recent call to irradiate().


Field Summary
protected  Break[] breaks
           
 
Constructor Summary
Irradiator()
           
 
Method Summary
 Break[] breaks()
          This method provides access to the Break objects found by the most recent call to irradiate()
abstract  void irradiate(java.util.Random rGen)
          Calling this method causes the irradiator class to generate a new array of Breaks in the Geometry set by setGeometry().
abstract  void setGeometry(Geometry geo)
          This method is intended to be used by the driver to specify the Geometry object which should be used as a basis for this irradiation process.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

breaks

protected Break[] breaks
Constructor Detail

Irradiator

public Irradiator()
Method Detail

irradiate

public abstract void irradiate(java.util.Random rGen)
                        throws java.lang.Exception
Calling this method causes the irradiator class to generate a new array of Breaks in the Geometry set by setGeometry(). If no valid Geometry has been set, this method should throw an exception.

Throws:
java.lang.Exception

setGeometry

public abstract void setGeometry(Geometry geo)
                          throws java.lang.Exception
This method is intended to be used by the driver to specify the Geometry object which should be used as a basis for this irradiation process.

Parameters:
geo - a Geometry object in which Breaks are to be found
Throws:
java.lang.Exception

breaks

public Break[] breaks()
This method provides access to the Break objects found by the most recent call to irradiate()

Returns:
an array of Break objects or null if irradiate() has not yet been called