jjoo.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef __JJOO__
  2. #define __JJOO__
  3. #include "tipos.h"
  4. #include "atleta.h"
  5. #include "competencia.h"
  6. class JJOO {
  7. private:
  8. int _anio;
  9. vector<Atleta> _atletas;
  10. vector<vector<Competencia> > _cronograma;
  11. int _jornadaActual;
  12. public:
  13. JJOO(const int &a, const vector<Atleta> &as, const vector<vector<Competencia> > &cs);
  14. int anio() const;
  15. vector<Atleta> atletas() const;
  16. int cantDias() const;
  17. int jornadaActual() const;
  18. vector<Competencia> cronograma(const int &d) const;
  19. vector<Competencia> competencias() const;
  20. vector<Competencia> competenciasFinalizadasConOroEnPodio() const;
  21. vector<Atleta> dePaseo() const;
  22. vector<pair<Pais, vector<int> > > medallero() const;
  23. int boicotPorDisciplina(const Categoria &c, const Pais &p);
  24. vector<Atleta> losMasFracasados(const Pais &p) const;
  25. void liuSong(const Atleta &a, const Pais &p);
  26. Atleta stevenBradbury() const;
  27. bool uyOrdenadoAsiHayUnPatron() const;
  28. vector<Pais> sequiaOlimpica() const;
  29. void transcurrirDia();
  30. bool operator==(const JJOO &j) const;
  31. //Entrada y salida
  32. void mostrar(std::ostream &os) const;
  33. void guardar(std::ostream &os) const;
  34. void cargar(std::istream &is);
  35. };
  36. std::ostream &operator<<(std::ostream &os, const JJOO &j);
  37. std::ostream &operator>>(std::ostream &os, const JJOO &j);
  38. #endif /*__JJOO__*/