JGAP

org.jgap.gp.function
Class ForXLoop

java.lang.Object
  extended by org.jgap.gp.CommandGene
      extended by org.jgap.gp.function.ForXLoop
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable, ICloneable

public class ForXLoop
extends CommandGene
implements ICloneable

The for-loop loop from 0 to X-1.

Since:
3.0
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jgap.gp.CommandGene
CommandGene.COMMAND_TYPE
 
Field Summary
 
Fields inherited from class org.jgap.gp.CommandGene
BooleanClass, CharacterClass, DELTA, DoubleClass, FloatClass, IntegerClass, LongClass, nodeIndex, VoidClass
 
Constructor Summary
ForXLoop(GPConfiguration a_conf, java.lang.Class a_type)
           
 
Method Summary
 java.lang.Object clone()
          Clones the object.
 int compareTo(java.lang.Object a_other)
          The compareTo-method.
 boolean equals(java.lang.Object a_other)
          The equals-method.
 void execute_void(ProgramChromosome c, int n, java.lang.Object[] args)
          Executes this node, returning nothing.
 java.lang.Class getChildType(IGPProgram a_ind, int a_chromNum)
          Gets the type of node allowed from the given child number.
 java.lang.String getName()
           
 java.lang.Class getReturnType()
           
 boolean isValid(ProgramChromosome a_program)
          Subclasses capable of validating programs should overwrite this method.
 java.lang.String toString()
           
 
Methods inherited from class org.jgap.gp.CommandGene
check, check, cleanup, dynamizeArity, ensureUniqueness, ensureUniqueness, ensureUniqueness2, execute_boolean, execute_double, execute_float, execute_int, execute_long, execute_object, execute, getAllele, getApplicationData, getArity, getArityMax, getArityMin, getCommandType, getEnergy, getGPConfiguration, getInternalValue, getPersistentRepresentation, getPersistentRepresentationExt, getSubChildType, getSubChildTypes, getSubReturnType, hashCode, init, isAffectGlobalState, isCompareApplicationData, isFloatType, isIntegerType, isValid, setAllele, setApplicationData, setArity, setArityMax, setArityMin, setCompareApplicationData, setEnergy, setNoValidation, setReturnType, setToRandomValue, setValueFromPersistentRepresentation, setValueFromString, size
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ForXLoop

public ForXLoop(GPConfiguration a_conf,
                java.lang.Class a_type)
         throws InvalidConfigurationException
Throws:
InvalidConfigurationException
Method Detail

toString

public java.lang.String toString()
Specified by:
toString in class CommandGene
Returns:
the string representation of the command. Especially usefull to output a resulting formula in human-readable form.

getName

public java.lang.String getName()
Overrides:
getName in class CommandGene
Returns:
textual name of this command
Since:
3.2

execute_void

public void execute_void(ProgramChromosome c,
                         int n,
                         java.lang.Object[] args)
Description copied from class: CommandGene
Executes this node, returning nothing. Override to implement.

Overrides:
execute_void in class CommandGene
Parameters:
c - ignored here
n - ignored here
args - ignored here

isValid

public boolean isValid(ProgramChromosome a_program)
Description copied from class: CommandGene
Subclasses capable of validating programs should overwrite this method. See class Push as a sample.

Overrides:
isValid in class CommandGene
Parameters:
a_program - the ProgramChromosome to validate
Returns:
true: a_program is (superficially) valid with the current Command

getChildType

public java.lang.Class getChildType(IGPProgram a_ind,
                                    int a_chromNum)
Description copied from class: CommandGene
Gets the type of node allowed from the given child number. Should be overridden in subclasses.

Overrides:
getChildType in class CommandGene
Parameters:
a_ind - the individual the child belongs to
a_chromNum - the chromosome number
Returns:
the type of node allowed for that child, or null of no child exists

getReturnType

public java.lang.Class getReturnType()
Overrides:
getReturnType in class CommandGene
Returns:
the return type of this node

compareTo

public int compareTo(java.lang.Object a_other)
The compareTo-method.

Specified by:
compareTo in interface java.lang.Comparable
Overrides:
compareTo in class CommandGene
Parameters:
a_other - the other object to compare
Returns:
-1, 0, 1
Since:
3.0

equals

public boolean equals(java.lang.Object a_other)
The equals-method.

Overrides:
equals in class CommandGene
Parameters:
a_other - the other object to compare
Returns:
true if the objects are seen as equal
Since:
3.0

clone

public java.lang.Object clone()
Clones the object. Simple and straight forward implementation here.

Specified by:
clone in interface ICloneable
Overrides:
clone in class java.lang.Object
Returns:
cloned instance of this object
Since:
3.4

JGAP