int WidgetAgregar::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QDialog::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: agregarDatos(); break;
        case 1: otro((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< string(*)>(_a[2]))); break;
        default: ;
        }
        _id -= 2;
    }
    return _id;
}
Exemple #2
0
void escribirAccionBitacora(int pProcesoId, char* pAccion, char* pHora, int pLineasAsigandas, int pCantidadAsignadas){
    char *buffId = convertirIntAString(pProcesoId);
    char **buffLinea = (char **) malloc(sizeof(char*)*(pCantidadAsignadas+1));
    int contador;

    /*      Calcula las lineas ocupadas por el hilo         */
    for(contador=0; contador<pCantidadAsignadas; contador++){
            buffLinea[contador] = convertirIntAString(pLineasAsigandas+contador);
    }

    /*      Crea el string de datos      */
    char * datosStr = (char *) malloc(1 +sizeof(char*) * (strlen(pAccion)+ strlen(pHora)) + sizeof(int) * 2);
    strcpy(datosStr, "Identificador: ");
    strcat(datosStr, buffId); 
    strcat(datosStr, "\nAccion: ");
    strcat(datosStr, pAccion);
    strcat(datosStr, "\nHora: ");
    strcat(datosStr, pHora);
    strcat(datosStr, "Lineas afectadas: ");
    for (contador = 0; contador < pCantidadAsignadas; contador++)
    {
        strcat(datosStr, buffLinea[contador]);
        strcat(datosStr, " - ");
    }
    strcat(datosStr, "\n");

    free(buffId);
     printf(" \nBitacora: \n%s \n",datosStr);
    for ( contador = 0; contador < pCantidadAsignadas; contador++ )
    	free( buffLinea[contador] );
 
    free(buffLinea);
    

    agregarDatos(datosStr);
}