template < typename _Gene >
class Chromosome {
public:
+ /**
+ * Type representing Chromosome Gene
+ */
typedef _Gene GeneType;
protected:
/**
*/
Chromosome() {}
+ /**
+ * Class constructor. Initializes Chromosome with the given Gene's
+ *
+ * @param genes vector containing Genes to use in Chromosome
+ */
Chromosome(vector<_Gene> genes) {
this->genes = genes;
}
: genes(chromosome.get()) {
}
- Chromosome& operator=(const Chromosome& chromosome){
+ /**
+ * Copy operator.
+ *
+ * @param chromosome Chromosome from which the Genes should be copied.
+ * @return Chromosome instance containing copied Genes
+ */
+ Chromosome& operator=(const Chromosome& chromosome) {
this->genes = chromosome.get();
return *this;
}
+ /**
+ * Allows read-only access to Chromosome Genes
+ */
vector<_Gene> get() const {
return this->genes;
}