ACRUSalinity.Processes.ReservoirSaltBudget
Class PReservoirSaltBudget

java.lang.Object
  extended byACRU.Components.CNode
      extended byACRU.Processes.PProcess
          extended byACRUSalinity.Processes.ReservoirSaltBudget.PReservoirSaltBudget
All Implemented Interfaces:
ACRU.Interfaces.ISaltFlow
Direct Known Subclasses:
PReservoirComponSalinity

public abstract class PReservoirSaltBudget
extends ACRU.Processes.PProcess
implements ACRU.Interfaces.ISaltFlow

A super class for reservoir salt budgeting and salt routing classes.


Field Summary
(package private)  double currentStorage
           
 
Fields inherited from class ACRU.Processes.PProcess
CURRENT_DATE, END_SIMULATION_DATE, initialised, START_SIMULATION_DATE
 
Fields inherited from class ACRU.Components.CNode
 
Constructor Summary
PReservoirSaltBudget()
           
 
Method Summary
abstract  void flowSalt()
          The method in which the salt flow behaviour is implemented .
 void runProcess()
          This is a general method used to "run" every process.
protected  void subtractFromCurrentStorage(double value)
           
 void transportSalt(java.lang.Class saltFluxRecordClass, ACRU.Components.CComponent saltSource, double quantity, ACRU.Components.CComponent saltDestination)
          Transfer specified quantity of salt from storage in saltSource to be stored in saltDestination.
 
Methods inherited from class ACRU.Processes.PProcess
initialise, isInitialised, setCurrentDate, setEndDate, setStartDate, toString
 
Methods inherited from class ACRU.Components.CNode
getNext, getNext, getNext, getNext, getNextCount, getNextCount, getNexts, getNexts, getTypeOfNexts, getTypeOfNexts, setNext, setNext, setNext, setNext, setNext, setNexts, setNexts, setNexts
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

currentStorage

double currentStorage
Constructor Detail

PReservoirSaltBudget

public PReservoirSaltBudget()
Method Detail

runProcess

public void runProcess()
                throws java.lang.Exception,
                       ACRU.Exceptions.EException
Description copied from class: ACRU.Processes.PProcess
This is a general method used to "run" every process.

This method acts as an adaptor and usually calls other methods.

This abstract method must be implemented by all non-abstract subclasses of PProcess.

Throws:
ACRU.Exceptions.EException - EExceptions not dealt with internally.
java.lang.Exception - Exceptions not dealt with internally.

flowSalt

public abstract void flowSalt()
                       throws java.lang.Exception,
                              ACRU.Exceptions.EException
Description copied from interface: ACRU.Interfaces.ISaltFlow
The method in which the salt flow behaviour is implemented .

Specified by:
flowSalt in interface ACRU.Interfaces.ISaltFlow
Throws:
java.lang.Exception
ACRU.Exceptions.EException

transportSalt

public void transportSalt(java.lang.Class saltFluxRecordClass,
                          ACRU.Components.CComponent saltSource,
                          double quantity,
                          ACRU.Components.CComponent saltDestination)
                   throws java.lang.Exception,
                          ACRU.Exceptions.EException,
                          ACRU.Exceptions.ENullFoundException
Transfer specified quantity of salt from storage in saltSource to be stored in saltDestination.

Parameters:
saltFluxRecordClass - The salt flux record class specifying the form of salt to be transported.
saltSource - The source component of the salt to be transported.
quantity - The amount of salt to be transported.
saltDestination - The destination component of the nutrient to be transported.
Throws:
java.lang.Exception - Exceptions not dealt with internally.
ACRU.Exceptions.EException - EExceptions not dealt with internally.
ACRU.Exceptions.ENullFoundException - If the salt source or destination component cannot be found.

subtractFromCurrentStorage

protected void subtractFromCurrentStorage(double value)
                                   throws ACRU.Exceptions.EException
Throws:
ACRU.Exceptions.EException


Hosted by www.Geocities.ws

1