public void almacenar(Pieza P) { if (P.recibida == true) { memoria += 1; P.almacenada = true; Console.WriteLine("Pieza almacenada con exito, memoria vale: "); Console.WriteLine(memoria); } }
public void empacar(Pieza P) { if (P.recibida == true && P.almacenada == true && P.ensablada == true && P.verificada == true) { memoria += 1; P.empaquetada = true; Console.WriteLine("Pieza empaquetada con exito, memoria vale: "); Console.WriteLine(memoria); } }
static void Main(string[] args) { // Creo Comp. Central. ComputadorCentral cc = new ComputadorCentral(); //Creo una maquina de cada tipo. Recepcion r1 = new Recepcion(); Almacenamiento a1 = new Almacenamiento(); Ensamblaje e1 = new Ensamblaje(); Verificacion v1 = new Verificacion(); Empaque emp1 = new Empaque(); //Creo algunas piezas. Pieza p1 = new Pieza(); Pieza p2 = new Pieza(); Pieza p3 = new Pieza(); Pieza p4 = new Pieza(); //Vamos a simular un dia de operacion: //Primero parto dando la orden al comp. central de que encienda //todas las maquinas en el orden correspondiente. cc.encenderMaquina(r1); cc.encenderMaquina(a1); cc.encenderMaquina(e1); cc.encenderMaquina(v1); cc.encenderMaquina(emp1); //Procesamos la primera pieza. //Despues de realizar cada accion, ordeno a comp. central que //checkee memoria de cada maquina y la resetee si corresponde. r1.recibir(p1); cc.checkMemoriaMaquina(r1); a1.almacenar(p1); cc.checkMemoriaMaquina(a1); e1.ensamblar(p1); cc.checkMemoriaMaquina(e1); v1.verificar(p1); cc.checkMemoriaMaquina(v1); emp1.empacar(p1); cc.checkMemoriaMaquina(emp1); //La segunda. r1.recibir(p2); cc.checkMemoriaMaquina(r1); a1.almacenar(p2); cc.checkMemoriaMaquina(a1); e1.ensamblar(p2); cc.checkMemoriaMaquina(e1); v1.verificar(p2); cc.checkMemoriaMaquina(v1); emp1.empacar(p2); cc.checkMemoriaMaquina(emp1); //.. la tercera. //Notemos que aca voy a exceder mi limite de memoria (cada maquina aguanta maximo 2 ops //y por ende se va a resetear x orden del computador central). r1.recibir(p3); cc.checkMemoriaMaquina(r1); a1.almacenar(p3); cc.checkMemoriaMaquina(a1); e1.ensamblar(p3); cc.checkMemoriaMaquina(e1); v1.verificar(p3); cc.checkMemoriaMaquina(v1); emp1.empacar(p3); cc.checkMemoriaMaquina(emp1); //.. la cuarta. r1.recibir(p4); cc.checkMemoriaMaquina(r1); a1.almacenar(p4); cc.checkMemoriaMaquina(a1); e1.ensamblar(p4); cc.checkMemoriaMaquina(e1); v1.verificar(p4); cc.checkMemoriaMaquina(v1); emp1.empacar(p4); cc.checkMemoriaMaquina(emp1); //Concluido el dia, apagamos las maquinas en el orden que corresponde. cc.apagarMaquina(r1); cc.apagarMaquina(a1); cc.apagarMaquina(e1); cc.apagarMaquina(v1); cc.apagarMaquina(emp1); }
public void recibir(Pieza P) { memoria += 1; P.recibida = true; Console.WriteLine("Pieza recibida con exito, memoria vale: "); Console.WriteLine(memoria); }