Exemplo n.º 1
0
        public Camion(Controlador c, Faena faena, string tipo_camion, double[] tiempos)
        {
            this.componentes = new List<Componente>();
            this.faena = faena;
            this.faena.agregar_camion(this);
            this.c = c;
            this.tiempo_creacion = this.c.T_simulacion;
            this.muerto = false;
            this.tipo_camion = tipo_camion;

            //También, aquí se crean los componentes asociados al camión
            //componente_camion = Input.tasa_falla_componentes[tipo_camion];
            //Alamos he cambiado la estructura del input, favor revísalo

            //Se crean los componentes, se les asignan los tiempos
            actualizar_tiempos(tiempos[0],tiempos[1], tiempos[2]);
            foreach (var par in Input.tasa_falla_componentes[tipo_camion])
            {
                for (int i=0;i<Input.componentes_por_camion[this.tipo_camion][par.Key];i++)
                {
                    bool usado=false;
                    if (this.tiempo_inicializacion > 0) usado=true;
                    Componente componente = new Componente(this.c, this, par.Key,par.Value,usado);
                    this.agregar_componente(componente);
                }
            }
        }
Exemplo n.º 2
0
 public void agregar_a_batch(Componente defectuoso)
 {
     this.batch.Add(defectuoso);
     //Console.WriteLine("Ahora hay {0} componentes en el batch de {1}",batch.Count, this.Nombre);
 }
Exemplo n.º 3
0
        public void reemplazar_componente(Componente defectuoso)
        {
            componentes.Remove(defectuoso);
            double probabilidad = Input.probabilidad_envio[this.faena.Nombre][defectuoso.tipo_componente];
            //Con probabilidad P se agrega al batch...
            if (RNGen.Unif(0,1) <= probabilidad) faena.agregar_a_batch(defectuoso);

            //Agregar el componente nuevo
            agregar_componente(new Componente(this.c, this, defectuoso.tipo_componente, Input.tasa_falla_componentes[this.tipo_camion][defectuoso.tipo_componente]));
        }
Exemplo n.º 4
0
 public void agregar_componente(Componente componente)
 {
     componentes.Add (componente);
 }
Exemplo n.º 5
0
 public void agregar_a_batch(Componente defectuoso)
 {
     this.batch.Add(defectuoso);
     //Console.WriteLine("Ahora hay {0} componentes en el batch de {1}",batch.Count, this.Nombre);
 }
Exemplo n.º 6
0
 public void agregar_componente(Componente componente)
 {
     componentes.Add(componente);
 }