void IcarusFitnessCalculator::fitness(std::vector<Cromossomo>& populacao) {

#pragma omp parallel for
	for (unsigned int i = 0; i < populacao.size(); i++) {
		compilar(populacao[i], i);

		auto parsed_output = simular(i);
		populacao[i].set_fitness(fitness_calculator(parsed_output));
	}
}
Ejemplo n.º 2
0
void VentanaPrincipal::crearAcciones()
{
    accionCompilar = new QAction(QIcon(":/imagenes/compile.png"), tr("Compilar"), this);
    accionCompilar->setStatusTip("Compilar archivo actual");
    connect(accionCompilar, SIGNAL(triggered()), this, SLOT(compilar()));

    accionNuevo = new QAction(QIcon(":/imagenes/new.png"), tr("Nuevo"), this);
    accionNuevo->setShortcuts(QKeySequence::New);
    accionNuevo->setStatusTip(tr("Crear un nuevo archivo"));
    connect(accionNuevo, SIGNAL(triggered()), this, SLOT(nuevoArchivo()));

    accionAbrir = new QAction(QIcon(":/imagenes/open.png"), tr("Abrir..."), this);
    accionAbrir->setShortcuts(QKeySequence::Open);
    accionAbrir->setStatusTip(tr("Abrir un archivo existente"));
    connect(accionAbrir, SIGNAL(triggered()), this, SLOT(abrir()));

    accionGuardar = new QAction(QIcon(":/imagenes/save.png"), tr("Guardar"), this);
    accionGuardar->setShortcuts(QKeySequence::Save);
    accionGuardar->setStatusTip(tr("Guardar cambios del archivo"));
    connect(accionGuardar, SIGNAL(triggered()), this, SLOT(guardar()));

    accionGuardarComo = new QAction(tr("Guardar como..."), this);
    accionGuardarComo->setShortcuts(QKeySequence::SaveAs);
    accionGuardarComo->setStatusTip(tr("Guardar archivo con un nuevo nombre"));
    connect(accionGuardarComo, SIGNAL(triggered()), this, SLOT(guardarComo()));


    accionSalir = new QAction(tr("Salir"), this);
    accionSalir->setShortcuts(QKeySequence::Quit);

    accionSalir->setStatusTip(tr("Salir de la aplicacion"));
    connect(accionSalir, SIGNAL(triggered()), this, SLOT(close()));


    accionCortar = new QAction(QIcon(":/imagenes/cut.png"), tr("Cortar"), this);

    accionCortar->setShortcuts(QKeySequence::Cut);
    accionCortar->setStatusTip(tr("Cortar el contenido seleccionado al portapapeles"));
    connect(accionCortar, SIGNAL(triggered()), editorTexto, SLOT(cut()));

    accionCopiar = new QAction(QIcon(":/imagenes/copy.png"), tr("Copiar"), this);
    accionCopiar->setShortcuts(QKeySequence::Copy);
    accionCopiar->setStatusTip(tr("Copiar el contenido seleccionado al portapapeles"));
    connect(accionCopiar, SIGNAL(triggered()), editorTexto, SLOT(copy()));

    accionPegar = new QAction(QIcon(":/imagenes/paste.png"), tr("Pegar"), this);
    accionPegar->setShortcuts(QKeySequence::Paste);
    accionPegar->setStatusTip(tr("Pegar el contenido del portapapeles en el lugar seleccionado"));
    connect(accionPegar, SIGNAL(triggered()), editorTexto, SLOT(paste()));

    accionAcercaDe = new QAction(tr("Acerca de"), this);
    accionAcercaDe->setStatusTip(tr("Mostrar informacion de la aplicacion"));
    connect(accionAcercaDe, SIGNAL(triggered()), this, SLOT(acercaDe()));


    accionAcercaDeQT = new QAction(tr("Acerca de Qt"), this);
    accionAcercaDeQT->setStatusTip(tr("Mostrar informacion de QT"));
    connect(accionAcercaDeQT, SIGNAL(triggered()), qApp, SLOT(aboutQt()));


    //Dejar que la disponibilidad de estas acciones se manejen por los eventos
    accionCortar->setEnabled(false);
    accionCopiar->setEnabled(false);

    connect(editorTexto,
            SIGNAL(copyAvailable(bool)),
            accionCortar,
            SLOT(setEnabled(bool)));

    connect(editorTexto,
            SIGNAL(copyAvailable(bool)),
            accionCopiar,
            SLOT(setEnabled(bool)));
}