/* kerho.h */ #ifndef __KERHO_H #define __KERHO_H #include #include "jasen.h" //---------------------------------------------------------------------------- // Vakiota //---------------------------------------------------------------------------- #define MAX_JASENIA 5 //---------------------------------------------------------------------------- // Kerhon m„„rittely ja k„sittely: //---------------------------------------------------------------------------- class cKerho { int max_jasenia; int jasenia; int muutettu; string tiedoston_nimi; string kerhon_nimi; cJasen **jasenet; void poista_jasenisto() { poista_jasenet(); poista_jasentaulukko(); } void poista_jasenet(); void poista_jasentaulukko(); const char *luo_jasentaulukko(int koko=MAX_JASENIA); void alusta_jasenisto() { kerhon_nimi = ""; tiedoston_nimi = ""; max_jasenia = 0; jasenia = 0; muutettu = 0; } int rajoihin(int i) const { if ( i<0 || max_jasenia <= i ) i = 0; return i;} public: cKerho(int koko=0) { alusta_jasenisto(); luo_jasentaulukko(koko); } ~cKerho() { if ( muutettu ) talleta(); poista_jasenisto(); } const char *lisaa(const cJasen &jasen); const cJasen &anna(int i) const { return *jasenet[rajoihin(i)]; } const char *luo(const char *tied,const char *nimi,int max_jas=MAX_JASENIA); const char *lue_tiedostosta(const char *tied); const char *talleta(); const string &Kerhon_nimi() const { return kerhon_nimi; } int Jasenia() const { return jasenia; } const string &Tiedoston_nimi() const { return tiedoston_nimi; } }; #endif