5 using namespace PlaQui;
7 IConector::IConector(unsigned in, unsigned out)
13 IConector::~IConector()
15 // Limpio las listas. Los objetos no se destruyen!!
20 int IConector::send_msg(int where, int msg)
22 // Recorro toda la lista y envío el mensage a cada
23 // elemento conectado en "where"
24 std::list<IConector *>::iterator it;
27 for(it=in_list.begin(); it!=in_list.end(); it++)
28 (*it)->recieve_msg(msg, this);
31 for(it=out_list.begin(); it!=out_list.end(); it++)
32 (*it)->recieve_msg(msg, this);
35 // TODO : ver el tema de los valores de retorno!!
39 void IConector::recieve_msg(int msg, IConector *who)
41 // Manejo los mensages que yo conozco
44 // Elimino el objeto de las listas, si es que
45 // existe en alguna de las dos.
51 bool IConector::connect(IConector *obj, int place)
55 if (in_list.size() <= in_slots) {
56 in_list.push_back(obj);
58 return false; // no se pudo conectar!
61 if (out_list.size() <= out_slots) {
62 out_list.push_back(obj);
64 return false; // no se pudo conectar!
68 // se pudo conectar sin problemas