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 givenGenotype
to 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 givenGenotype
to 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 chromosomewriter
isnull
-
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 givenGenotype
to 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 givenGenotype
to 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
-