00001 00002 #ifndef __LAYERED_H__ 00003 #define __LAYERED_H__ 00004 00005 #include "anngenes.h" 00006 00008 // // 00009 // | | ----- | // 00010 // | ___ ___ ___ | | _ ___ | // 00011 // | ___| \ | / ) |/\ / ) ---| |--- |/ \ | \ __ ---| // 00012 // | ( | \ | |--- | |--- ( | | | | | / \ ( | // 00013 // |____ \__| \_/ \__ | \__ ---| |____ | | \__/ \__/ ---| O // 00014 // \_/ // 00016 00024 class LayeredEncoding : public ANNEncoding { 00025 decl_dynamic (LayeredEncoding); 00026 bool mPruneInputs; // This is stored just for easy access 00027 bool mPruneWeights; // This is stored just for easy access 00028 00029 public: 00030 LayeredEncoding () {FORBIDDEN} 00031 LayeredEncoding (const GeneticID& name, 00032 const StringMap& params); 00033 LayeredEncoding (const LayeredEncoding& other); 00034 00035 // Implementations 00036 00038 virtual Genstruct* replicate () const {return new LayeredEncoding (*this);} 00040 virtual void copy (const Genstruct& other); 00042 virtual bool execute (const GeneticMsg& msg) const; 00044 virtual void addPrivateGenes (Gentainer& g, const StringMap& params); 00045 }; 00046 00047 #endif 00048