de.jstacs.models.discrete
Class DGMParameterSet

java.lang.Object
  extended by de.jstacs.parameters.ParameterSet
      extended by de.jstacs.parameters.InstanceParameterSet
          extended by de.jstacs.parameters.SequenceScoringParameterSet
              extended by de.jstacs.models.discrete.DGMParameterSet
All Implemented Interfaces:
GalaxyConvertible, RangeIterator, Storable, Cloneable
Direct Known Subclasses:
HomogeneousModelParameterSet, IDGMParameterSet

public abstract class DGMParameterSet
extends SequenceScoringParameterSet

The super ParameterSet for any parameter set of a DiscreteGraphicalModel.

Author:
Jens Keilwagen

Nested Class Summary
 
Nested classes/interfaces inherited from class de.jstacs.parameters.ParameterSet
ParameterSet.ParameterList
 
Field Summary
 
Fields inherited from class de.jstacs.parameters.SequenceScoringParameterSet
alphabet, length
 
Fields inherited from class de.jstacs.parameters.ParameterSet
errorMessage, parameters, parent, ranged
 
Constructor Summary
protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass, AlphabetContainer alphabet, double ess, String description)
          The constructor for models that can handle variable lengths.
protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass, AlphabetContainer alphabet, int length, double ess, String description)
          The constructor for models that can handle only sequences of fixed length given by length.
protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass, boolean simple, boolean variableLength)
          An empty constructor.
protected DGMParameterSet(StringBuffer s)
          The standard constructor for the interface Storable.
 
Method Summary
 DGMParameterSet clone()
          Creates a full clone (deep copy) of this ParameterSet.
 String getInstanceName()
          Returns the name of an instance of the class that can be constructed using this ParameterSet.
 boolean hasDefaultOrIsSet()
          Returns true if all parameters in this ParameterSet are either set by the user or have default values.
protected  void loadParameters()
          Loads the parameters for this ParameterSet.
 void setEss(double ess)
          This method can be used to set the ess (equivalent sample size) of this parameter set.
 
Methods inherited from class de.jstacs.parameters.SequenceScoringParameterSet
equals, fromXML, getAlphabetContainer, getLength, getNumberOfParameters, getParameterAt, replaceParametersWithRangedInstance, reset, toXML
 
Methods inherited from class de.jstacs.parameters.InstanceParameterSet
getInstance, getInstanceClass, getInstanceComment
 
Methods inherited from class de.jstacs.parameters.ParameterSet
fromGalaxy, getErrorMessage, getId, getIndex, getNumberOfValues, getParent, initParameterList, initParameterList, isAtomic, isRanged, makeRanged, next, parametersLoaded, propagateId, recieveId, resetToFirst, setParent, simplify, toGalaxy, valuesToString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DGMParameterSet

protected DGMParameterSet(StringBuffer s)
                   throws NonParsableException
The standard constructor for the interface Storable. Creates a new DiscreteGraphicalModel out of its XML representation.

Parameters:
s - the XML representation as StringBuffer
Throws:
NonParsableException - if the DiscreteGraphicalModel could not be reconstructed out of the XML representation (the StringBuffer could not be parsed)
See Also:
Storable, SequenceScoringParameterSet.SequenceScoringParameterSet(StringBuffer)

DGMParameterSet

protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass,
                          boolean simple,
                          boolean variableLength)
An empty constructor. Creates a new DGMParameterSet from the class that can be instantiated using this DGMParameterSet.

Parameters:
instanceClass - the (sub-)class
simple - indicates whether the alphabet should be simple or not
variableLength - indicates whether the model can handle sequences of variable length
See Also:
SequenceScoringParameterSet.SequenceScoringParameterSet(Class, AlphabetContainer.AlphabetContainerType, boolean, boolean)

DGMParameterSet

protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass,
                          AlphabetContainer alphabet,
                          double ess,
                          String description)
                   throws Exception
The constructor for models that can handle variable lengths. Creates a new DGMParameterSet with a description from the class that can be instantiated using this DGMParameterSet, a given AlphabetContainer and a given equivalent sample size (ess).

Parameters:
instanceClass - the (sub-)class
alphabet - the alphabet
ess - the ess (equivalent sample size)
description - the description
Throws:
Exception - if something went wrong

DGMParameterSet

protected DGMParameterSet(Class<? extends DiscreteGraphicalModel> instanceClass,
                          AlphabetContainer alphabet,
                          int length,
                          double ess,
                          String description)
                   throws Exception
The constructor for models that can handle only sequences of fixed length given by length. Creates a new DGMParameterSet with a description from the class that can be instantiated using this DGMParameterSet, a given AlphabetContainer and a given equivalent sample size (ess).

Parameters:
instanceClass - the (sub-)class
alphabet - the alphabet
length - the length of the modeled sequences
ess - the ess (equivalent sample size)
description - the description
Throws:
Exception - if something went wrong
Method Detail

loadParameters

protected void loadParameters()
                       throws Exception
Description copied from class: ParameterSet
Loads the parameters for this ParameterSet. This is in most cases done by calling ParameterSet.initParameterList() or ParameterSet.initParameterList(int) to initialize ParameterSet.parameters and afterwards filling ParameterSet.parameters with instances of subclasses of Parameter.

Specified by:
loadParameters in class ParameterSet
Throws:
Exception - if the parameters could not be loaded
See Also:
Parameter, ParameterSet.parameters, ParameterSet.initParameterList(), ParameterSet.initParameterList(int)

hasDefaultOrIsSet

public boolean hasDefaultOrIsSet()
Description copied from class: ParameterSet
Returns true if all parameters in this ParameterSet are either set by the user or have default values. If any additional constraints are required on your parameters you should either specify some ParameterValidator on these parameters or implement these constraints by overriding this method in your implementation of ParameterSet. It is recommended to specify a useful remark which constraint failed in the member-variable errorMessage, which will be displayed to the user. In the overriding method super.ParameterSet.hasDefaultOrIsSet() should be called prior to checking specific constraints.

Overrides:
hasDefaultOrIsSet in class SequenceScoringParameterSet
Returns:
true if all parameters have some allowed value set, false otherwise

getInstanceName

public String getInstanceName()
Description copied from class: InstanceParameterSet
Returns the name of an instance of the class that can be constructed using this ParameterSet.

Specified by:
getInstanceName in class InstanceParameterSet
Returns:
the name of the class

clone

public DGMParameterSet clone()
                      throws CloneNotSupportedException
Description copied from class: ParameterSet
Creates a full clone (deep copy) of this ParameterSet. As a convenience-method the user can use fillWithStandardFieldsForClone(ParameterSet) on a newly created instance of a subclass of ParameterSet to obtain a clone/copy of all standard member variables (those already defined in ParameterSet) in the passed ParameterSet. Using this method, the cloning process becomes merely three-step:
This method fulfills the conventions of Object's method Object.clone().

Overrides:
clone in class SequenceScoringParameterSet
Returns:
a deep clone/copy of this ParameterSet
Throws:
CloneNotSupportedException

setEss

public void setEss(double ess)
            throws SimpleParameter.IllegalValueException
This method can be used to set the ess (equivalent sample size) of this parameter set.

Parameters:
ess - the ess (equivalent sample size)
Throws:
SimpleParameter.IllegalValueException - if the ess is negative