00001 #ifndef GLMUTATORGENESSWAPPING_H_ 00002 #define GLMUTATORGENESSWAPPING_H_ 00003 00004 #include "GLBaseMutator.h" 00005 #include "GLBaseOrganism.h" 00011 class GLMutatorGenesSwapping : public GLBaseMutator 00012 { 00013 public: 00019 GLMutatorGenesSwapping(double mutationRate = 0.5): 00020 GLBaseMutator(mutationRate, true){}; 00021 00026 GLMutatorGenesSwapping(const GLMutatorGenesSwapping& source): 00027 GLBaseMutator(source) {}; 00028 00032 virtual ~GLMutatorGenesSwapping(){}; 00033 00039 virtual GLBaseMutator* copy() const 00040 { return new GLMutatorGenesSwapping(*this); } 00041 00049 virtual bool mutateOrganism(GLBaseOrganism* organism); 00050 }; 00051 00052 #endif /*GLMUTATORGENESSWAPPING_H_*/