Improve comments and documentation.
[genetic.git] / src / fitness / fitness.h
index 14b6487f18b8e83708e04c15286988a33ee974ab..66263f1bbc82363adfea48830cbccb148c607bfe 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef __FITNESS_FITNESS_H
 #define __FITNESS_FITNESS_H
 
-#include "../chromosome.h"
+#include "chromosome.h"
 
 namespace genetic {
     /**
@@ -10,25 +10,48 @@ namespace genetic {
      */
     template < typename _Chromosome, typename _Value = double >
     class Fitness {
-        template<typename> friend class Selection ;
+        template<typename> friend class Selection;
     public:
+        /**
+         * Type representing Chromosome Gene
+         */
         typedef typename _Chromosome::GeneType GeneType;
+
+        /**
+         * Value type returned by the Fitness function
+         */
         typedef _Value ValueType;
     protected:
+        /**
+         * Chromosome on which calculations are made
+         */
         _Chromosome chromosome;
 
-        /*
-         * Some calculations here...
+        /**
+         * Calculations should be done here...
+         *
+         * @return Fitness value of the current Chromosome
          */
         virtual _Value do_calculate() = 0;
 
     public:
+        /**
+         * Class constructor
+         */
         Fitness() {}
 
+        /**
+         * Copy constructor
+         */
         Fitness(_Chromosome& _chromosome)
             : chromosome(_chromosome.get()) {
         }
 
+        /**
+         * Invokes calculations
+         *
+         * @return Fitness value of the current Chromosome
+         */
         _Value calculate() {
             return this->do_calculate();
         }