java.lang.Object
io.jenetics.xml.Writers.Genotypes
- Enclosing class:
Writers
This class contains static writer methods for
Genotype objects.
Writer code
final Genotype<DoubleGene> gt = Genotype.of(
DoubleChromosome.of(0.0, 1.0, 3),
DoubleChromosome.of(0.0, 1.0, 2)
);
final Writer<Collection<Genotype<DoubleGene>>> writer =
Writers.Genotypes.writer(Writers.DoubleChromosome.writer());
try (AutoCloseableXMLStreamWriter xml = XML.writer(System.out, " ")) {
writer.write(asList(value), xml);
}
<genotypes length="1">
<genotype length="2" ngenes="5">
<double-chromosome length="3">
<min>0.0</min>
<max>1.0</max>
<alleles>
<allele>0.27251556008507416</allele>
<allele>0.003140816229067145</allele>
<allele>0.43947528327497376</allele>
</alleles>
</double-chromosome>
<double-chromosome length="2">
<min>0.0</min>
<max>1.0</max>
<alleles>
<allele>0.4026521545744768</allele>
<allele>0.36137605952663554</allele>
<alleles>
</double-chromosome>
</genotype>
</genotypes>
-
Method Summary
Modifier and TypeMethodDescriptionstatic <A,G extends Gene<A, G>, C extends Chromosome<G>>
voidwrite(OutputStream out, Collection<Genotype<G>> data, Writer<? super C> chromosomeWriter) Write the givenGenotypeto the given output stream.static <A,G extends Gene<A, G>, C extends Chromosome<G>>
voidwrite(OutputStream out, Collection<Genotype<G>> data, String indent, Writer<? super C> chromosomeWriter) Write the givenGenotypeto the given output stream.static <A,G extends Gene<A, G>, C extends Chromosome<G>>
Writer<Collection<Genotype<G>>> Create a writer for genotypes of arbitrary chromosomes.
-
Method Details
-
writer
public static <A,G extends Gene<A, Writer<Collection<Genotype<G>>> writerG>, C extends Chromosome<G>> (Writer<? super C> writer) Create a writer for genotypes of arbitrary chromosomes. How to write the genotype chromosomes is defined by the givenWriter. The following writer allows writing double-gene chromosomes:final Writer<Collection<Genotype<DoubleGene>>> writer = Writers.Genotypes.writer(Writers.DoubleChromosome.writer());- Type Parameters:
A- the allele typeG- the gene typeC- the chromosome type- Parameters:
writer- the chromosome writer- Returns:
- a new genotype writer
- Throws:
NullPointerException- if the given chromosomewriterisnull
-
write
public static <A,G extends Gene<A, void writeG>, C extends Chromosome<G>> (OutputStream out, Collection<Genotype<G>> data, String indent, Writer<? super C> chromosomeWriter) throws XMLStreamException Write the givenGenotypeto the given output stream.- Type Parameters:
A- the allele typeG- the gene typeC- the chromosome type- Parameters:
out- the target output streamdata- the genotypes to writeindent- the XML level indentationchromosomeWriter- the chromosome writer used to write the genotypes- Throws:
XMLStreamException- if an error occurs while writing the chromosomeNullPointerException- if the one of the arguments isnull
-
write
public static <A,G extends Gene<A, void writeG>, C extends Chromosome<G>> (OutputStream out, Collection<Genotype<G>> data, Writer<? super C> chromosomeWriter) throws XMLStreamException Write the givenGenotypeto the given output stream.- Type Parameters:
A- the allele typeG- the gene typeC- the chromosome type- Parameters:
out- the target output streamdata- the genotypes to writechromosomeWriter- the chromosome writer used to write the genotypes- Throws:
XMLStreamException- if an error occurs while writing the chromosomeNullPointerException- if the one of the arguments isnull
-