#ifndef _COUCHE_H #define _COUCHE_H #include #include "neurone.h" #include "synapseMatrix.h" #include "Utils.h" using namespace std; class Couche{ private: Neurone* listNeurone; Couche* nextCouche; unsigned int nbrNeurone; void deleteN(Neurone* n); void deleteList(); Neurone* copy(Neurone* n); protected: Utils util; SynapseMatrix synSortantes; public: Couche(); ~Couche(); Couche(const unsigned int nbr,const Couche* next=NULL); const unsigned int getNumber() const; Neurone& operator [](const unsigned int i) const throw(const unsigned int); bool operator ==(const Couche c); Couche& operator=(const Couche& c); void setNextCouche(const Couche* c) throw(std::string); Couche* getNextCouche() const; void randomizeSynapseMatrix(); Synapse& getSynapse(const unsigned int neurThisCouche,const unsigned int neurNextCouche) const throw(const unsigned int,std::string); friend ostream& operator<<(ostream& os,const Couche &c); void printSynapseMatrix(); }; #endif