1 package net.bmahe.genetics4j.gp.program; 2 3 import net.bmahe.genetics4j.core.chromosomes.TreeNode; 4 import net.bmahe.genetics4j.gp.Operation; 5 6 public interface ProgramGenerator { 7 8 TreeNode<Operation<?>> generate(final Program program); 9 10 <T> TreeNode<Operation<T>> generate(final Program program, final int maxDepth); 11 12 <T, U> TreeNode<Operation<T>> generate(final Program program, final int maxDepth, final Class<U> rootType); 13 }