00001 #ifndef GLFITNESSSINGLEOBJECTIVE_H_ 00002 #define GLFITNESSSINGLEOBJECTIVE_H_ 00003 #include "GLFitness.h" 00004 00016 template <class TFitness> 00017 class GLFitnessSingleObjective : public GLFitness<TFitness> 00018 { 00019 public: 00024 GLFitnessSingleObjective(const TFitness& value): 00025 GLFitness<TFitness>(value) 00026 {} 00027 00032 GLFitnessSingleObjective(const GLFitness<TFitness>& source): 00033 GLFitness<TFitness>(source) 00034 {} 00035 00039 virtual ~GLFitnessSingleObjective(); 00040 00049 virtual void assignTo(GLBaseFitness& result) const; 00050 00055 virtual GLBaseFitness* copy() const 00056 { return new GLFitnessSingleObjective<TFitness>(*this); } 00057 00062 virtual std::ostream& toStream(std::ostream& out) const 00063 { out << this->getValue(); return out; } 00064 00070 virtual std::ostream& toStreamDebug(std::ostream& out) const 00071 { return toStream(out); } 00072 }; 00073 00074 #endif /*GLFITNESSSINGLEOBJECTIVE_H_*/