]> git.llucax.com Git - z.facultad/75.29/susanita.git/blob - src/susanita.h
Misma correccion de comprometer_con(), pero para la version en Python.
[z.facultad/75.29/susanita.git] / src / susanita.h
1 #ifndef _SUSANITA_H_
2 #define _SUSANITA_H_
3
4 #include "persona.h"
5 #include <map>
6 #include <deque>
7 #include <string>
8
9 /// Interfaz para nuestra clases casamenteras
10 struct Susanita
11 {
12
13         /// Tipos
14         typedef std::deque< Persona* > personas_type;
15
16         /// Destructor
17         virtual ~Susanita();
18
19         /// Agrega persona
20         virtual void add_persona(Persona* p);
21
22         /// Obtiene una persona
23         virtual Persona* get_persona(const std::string& p) const;
24
25         /// Muestra estados
26         virtual void mostrar_estado(int mostrar_prios = 0) const;
27
28         /// Empieza a emparejar gente
29         virtual void casamentear() = 0;
30
31         /// Lista de hombres
32         personas_type hombres;
33
34         /// Lista de mujeres
35         personas_type mujeres;
36
37         protected:
38         /// Tipos
39         typedef std::map< std::string, Persona* > nombres_type;
40
41         /// Mapa de gente, relaciona nombres con objetos
42         nombres_type nombres;
43
44 };
45
46 #endif // _SUSANITA_H_