Esempio n. 1
0
void BoardRight::startBoard()
{
    //LOG(INFO) << "board right startBoard";

    ui->calientapies->setButtonImage(QUrl("qrc:/resources/blueON.png"),QUrl("qrc:/resources/blue.png"));
    ui->desacople->setButtonImage(QUrl("qrc:/resources/greenON.png"),QUrl("qrc:/resources/green.png"));

    m_CON_Disyuntor = new CircuitBreakerCON_Controller(m_subte,ui->CONDisy_widget );
    m_DES_Disyuntor = new CircuitBreakerDES_Controller(m_subte,ui->DESDisy_widget );
    m_manometer = new Manometer_Controller(m_subte,ui->manometer);
    m_sicasmac = new SicasMac_Controller(m_subte,ui->sicasmac, m_hardwareSupport);
    m_modoConduccion = new LlaveModoConduccion_Controller(m_subte,ui->modoConduccion);

    //CARGA SICAS CUANDO CAMBIA DE MODO ACOPLE O MANIOBRA A MODO NORMAL
    connect(m_modoConduccion,SIGNAL(menssajeModeAcople()),m_sicasmac,SLOT(cargarMensajeAcople()));
    connect(m_modoConduccion,SIGNAL(mensajeModeManiobra()),m_sicasmac,SLOT(cargarMensajeAcople()));
    connect(m_modoConduccion,SIGNAL(mensajeModeNormal()),m_sicasmac,SLOT(sacoMensajeAcople()));

    m_frenoRetencion = new FrenoRetencion_Controller(m_subte,ui->frenoRetencion);

    //CARGA DE SICAS ENVIADA POR INSTRUCCIONES
    connect(m_eventHandler,SIGNAL(cargarDestinoSicas(QString)),m_sicasmac,SLOT(cargarDestinoSicas(QString)));
    connect(m_eventHandler,SIGNAL(cargarMensaje(QString)),m_sicasmac,SLOT(separoMensajes(QString)));
    connect(m_eventHandler,SIGNAL(cargarMensajeCocheSicas(QString)),m_sicasmac,SLOT(cargoCoches(QString)));
    this->setEnabled(false);

    // SONIDO SICAS
    connect(m_sicasmac,SIGNAL(playSound(int)),m_hardwareSupport,SLOT(onSound(int)));

}
SicasMac_Controller::SicasMac_Controller(SubteStatus * subte,SicasMac * sicasmac, TractionHardware *th)
    : Base_Controller(subte)
{
    m_subte = subte;
    m_sicasmac = sicasmac;
    cantPantallasSicas=0;
    renglon=-1;
    maxRenglonesSicas=4;
    indiceArre = 0;
    cantCochesTotal=6;
    DatosPorCoche=8;
    pantallasicas.clear();
    saveId.clear();
    estAnteriorFallaCocheSicas.clear();

    m_hardwareSupport = th;

    connect(m_sicasmac,SIGNAL(onPressSigRow()),this,SLOT(onPressSigRow()));
    connect(m_sicasmac,SIGNAL(onPressAntRow()),this,SLOT(onPressAntRow()));
    connect(m_subte,SIGNAL(bateriaCon()),m_sicasmac,SLOT(turnOnSicas()));
    connect(m_subte,SIGNAL(bateriaCon()),this,SLOT(prendoSicas()));
    connect(m_subte,SIGNAL(bateriaDes()),m_sicasmac,SLOT(turnOffSicas()));
    connect(m_sicasmac,SIGNAL(sicasOk()),m_subte,SLOT(setSicasOk()));
    connect(m_subte,SIGNAL(hiloLazoChanged(bool)),this,SLOT(estadoFreno(bool)));
    connect(m_subte,SIGNAL(CSCPChanged(bool)),this,SLOT(logicaPuertasSicas(bool)));

    connect(m_subte,SIGNAL(senalDisyuntorDes()),this,SLOT(cargarMensajeDisyuntor()));
    connect(m_subte,SIGNAL(senalDisyuntorCon()),this,SLOT(sacoMensajeDisyuntor()));
    connect(m_subte,SIGNAL(conmutadorServicioAutomatic()),this,SLOT(sacoMensajeCompDesconectado()));
    connect(m_subte,SIGNAL(conmutadorServicioManual()),this,SLOT(cargarMensajeCompDesconectado()));
   // connect(m_subte,SIGNAL(conmutadorPServicioBotonCon()),this,SLOT(sacoMensajeConvFueraServicio()));
   // connect(m_subte,SIGNAL(conmutadorPServicioBotonDes()),this,SLOT(cargarMensajeConvFueraServicio()));
    connect(m_subte,SIGNAL(frenoEstacionamientoCon()),this,SLOT(cargarMensajeFrenoEstacAplicado()));
    connect(m_subte,SIGNAL(frenoEstacionamientoDes()),this,SLOT(sacoMensajeFrenoEstacAplicado()));
    connect(m_subte,SIGNAL(estadoManioAcople()),this,SLOT(cargarMensajeAcople()));
    connect(m_subte,SIGNAL(estadoNormal()),this,SLOT(sacoMensajeAcople()));




    cargoVectorEstadoAnteriorFalla();

}