...
 
Commits (9)
......@@ -31,7 +31,8 @@ SOURCES += main.cpp\
glpk.cpp \
simulationresultwidget.cpp \
householdseditorwidget.cpp \
configurationwidget.cpp
configurationwidget.cpp \
progressbar.cpp
HEADERS += mainwindow.h \
dataeditorwidget.h \
......@@ -39,13 +40,15 @@ HEADERS += mainwindow.h \
glpk.h \
simulationresultwidget.h \
householdseditorwidget.h \
configurationwidget.h
configurationwidget.h \
progressbar.h
FORMS += mainwindow.ui \
dataeditorwidget.ui \
simulationresultwidget.ui \
householdseditorwidget.ui \
configurationwidget.ui
configurationwidget.ui \
progressbar.ui
RESOURCES += \
resources.qrc
......
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>340</width>
<height>237</height>
<width>428</width>
<height>258</height>
</rect>
</property>
<property name="windowTitle">
......@@ -20,10 +20,10 @@
<widget class="QWidget" name="layoutWidget">
<property name="geometry">
<rect>
<x>171</x>
<y>196</y>
<width>158</width>
<height>25</height>
<x>220</x>
<y>220</y>
<width>195</width>
<height>30</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_2">
......@@ -49,12 +49,12 @@
<x>20</x>
<y>10</y>
<width>281</width>
<height>24</height>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>Microsoft Sans Serif</family>
<family>Nirmala UI</family>
<pointsize>14</pointsize>
</font>
</property>
......@@ -66,8 +66,8 @@
<property name="geometry">
<rect>
<x>20</x>
<y>50</y>
<width>171</width>
<y>62</y>
<width>211</width>
<height>16</height>
</rect>
</property>
......@@ -78,8 +78,8 @@
<widget class="QSpinBox" name="spinViviendas">
<property name="geometry">
<rect>
<x>200</x>
<y>48</y>
<x>240</x>
<y>60</y>
<width>42</width>
<height>22</height>
</rect>
......@@ -92,8 +92,8 @@
<property name="geometry">
<rect>
<x>20</x>
<y>80</y>
<width>131</width>
<y>92</y>
<width>161</width>
<height>16</height>
</rect>
</property>
......@@ -105,8 +105,8 @@
<property name="geometry">
<rect>
<x>200</x>
<y>78</y>
<width>111</width>
<y>90</y>
<width>141</width>
<height>22</height>
</rect>
</property>
......@@ -128,13 +128,13 @@
<property name="geometry">
<rect>
<x>20</x>
<y>114</y>
<y>126</y>
<width>271</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Cargar al iniciar el ultimo sorteo creado</string>
<string>Cargar al iniciar el último sorteo creado</string>
</property>
<property name="iconSize">
<size>
......@@ -147,13 +147,13 @@
<property name="geometry">
<rect>
<x>20</x>
<y>137</y>
<y>149</y>
<width>271</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Guardar automaticamente reportes en:</string>
<string>Guardar automáticamente reportes en:</string>
</property>
<property name="iconSize">
<size>
......@@ -166,7 +166,7 @@
<property name="geometry">
<rect>
<x>36</x>
<y>160</y>
<y>172</y>
<width>211</width>
<height>20</height>
</rect>
......@@ -176,7 +176,7 @@
<property name="geometry">
<rect>
<x>253</x>
<y>158</y>
<y>170</y>
<width>75</width>
<height>23</height>
</rect>
......
......@@ -11,9 +11,12 @@
#include <QDateTime>
#include <QFuture>
#include <QtConcurrent/QtConcurrent>
#include <QProgressBar>
#include <QProgressDialog>
#include "mainwindow.h"
#include "glpk.h"
// Constructor
DataEditorWidget::DataEditorWidget(QWidget *parent) :
QWidget(parent),
......@@ -23,6 +26,7 @@ DataEditorWidget::DataEditorWidget(QWidget *parent) :
ui->setupUi(this);
this->simulationResult = new SimulationResultWidget();
this->progressbar = new ProgressBar();
ui->tableView->verticalHeader()->setVisible(false);
......@@ -58,11 +62,15 @@ void DataEditorWidget::on_btnSimular_clicked()
qInfo() << "Inicio de ejecucion del Proyecto=" + this->simulacion->getNombre();
// show Ejecutando..
// Ejecuta los datos en GLPK
glpk.ejecutar(process);
bool cancelled = glpk.ejecutar(process, this);
// Abre ventana de resultados de la simulacion
this->simulationResult->abrirDialog(this->simulacion);
if (!cancelled) {
this->simulationResult->abrirDialog(this->simulacion);
}
if (settings.value("GUARDAR_AUTOMATICAMENTE_REPORTE").toBool()) {
QString dir = settings.value("GUARDAR_REPORTE_DIR").toString();
......@@ -82,8 +90,11 @@ void DataEditorWidget::on_btnSimular_clicked()
delete process;
}else {
qWarning() << "Datos invalidos para correr el proyecto: " + result;
qWarning() << "Datos incorrectos el proyecto: " + result;
QMessageBox msgBox;
msgBox.setWindowTitle(" Datos incorrectos el proyecto: ");
QIcon ico = QIcon(":/recursos/img/vivienda.ico");
msgBox.setWindowIcon(ico);
msgBox.setText(result);
msgBox.setIcon(QMessageBox::Critical);
msgBox.setButtonText(QMessageBox::Ok, tr("Aceptar"));
......
......@@ -4,6 +4,7 @@
#include <QWidget>
#include <QStandardItemModel>
#include <QSettings>
#include "progressbar.h"
#include "simulation.h"
#include "simulationresultwidget.h"
......@@ -20,6 +21,7 @@ private:
QStandardItemModel *tablaModelFamily = NULL;
QSettings settings;
Simulation *simulacion = NULL;
ProgressBar *progressbar;
SimulationResultWidget *simulationResult = NULL;
bool huboCambios;
void simular();
......@@ -30,8 +32,8 @@ private slots:
void on_btnAplicar_clicked();
void onModelDataChanged();
void onTablaModelVerticalScrollChanged(int value);
void onTablaModelFamilyVerticalScrollChanged(int value);
void onTablaModelCellClicked(const QModelIndex &);
void onTablaModelFamilyVerticalScrollChanged(int value);
void onTablaModelFamilyCellClicked(const QModelIndex &);
void onCantidadValueChanged(int i);
......@@ -40,12 +42,11 @@ signals:
public:
explicit DataEditorWidget(QWidget *parent = 0);
~DataEditorWidget();
Simulation* getSimulacion() { return this->simulacion; }
bool getHuboCambios() { return this->huboCambios; }
~DataEditorWidget();
void nuevaSimulacion(QString ruta);
void actualizarNombreViviendas();
bool guardar();
......
......@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>685</width>
<height>323</height>
<width>727</width>
<height>322</height>
</rect>
</property>
<property name="sizePolicy">
......@@ -35,6 +35,78 @@
<property name="bottomMargin">
<number>4</number>
</property>
<item row="1" column="0">
<layout class="QGridLayout" name="gridLayout">
<property name="spacing">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QTableView" name="tableViewFamily">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOn</enum>
</property>
<property name="sizeAdjustPolicy">
<enum>QAbstractScrollArea::AdjustIgnored</enum>
</property>
<property name="verticalScrollMode">
<enum>QAbstractItemView::ScrollPerItem</enum>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QTableView" name="tableView">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="midLineWidth">
<number>0</number>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOn</enum>
</property>
<property name="editTriggers">
<set>QAbstractItemView::AnyKeyPressed|QAbstractItemView::DoubleClicked|QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
</property>
<property name="verticalScrollMode">
<enum>QAbstractItemView::ScrollPerItem</enum>
</property>
<property name="cornerButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox">
<property name="sizePolicy">
......@@ -55,10 +127,10 @@
<widget class="QPushButton" name="btnSimular">
<property name="geometry">
<rect>
<x>570</x>
<y>22</y>
<width>81</width>
<height>31</height>
<x>610</x>
<y>20</y>
<width>51</width>
<height>41</height>
</rect>
</property>
<property name="font">
......@@ -66,18 +138,24 @@
<pointsize>10</pointsize>
</font>
</property>
<property name="cursor">
<cursorShape>PointingHandCursor</cursorShape>
</property>
<property name="text">
<string>Asignar</string>
<string/>
</property>
<property name="icon">
<iconset resource="resources.qrc">
<normaloff>:/recursos/img/play.png</normaloff>:/recursos/img/play.png</iconset>
</property>
<property name="flat">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="txtNombre">
<property name="geometry">
<rect>
<x>106</x>
<x>130</x>
<y>29</y>
<width>171</width>
<height>20</height>
......@@ -89,7 +167,7 @@
<rect>
<x>10</x>
<y>30</y>
<width>91</width>
<width>111</width>
<height>16</height>
</rect>
</property>
......@@ -100,7 +178,7 @@
<widget class="QSpinBox" name="spinViviendas">
<property name="geometry">
<rect>
<x>410</x>
<x>460</x>
<y>28</y>
<width>42</width>
<height>22</height>
......@@ -113,9 +191,9 @@
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>290</x>
<x>320</x>
<y>30</y>
<width>111</width>
<width>141</width>
<height>16</height>
</rect>
</property>
......@@ -126,9 +204,9 @@
<widget class="QPushButton" name="btnAplicar">
<property name="geometry">
<rect>
<x>470</x>
<x>510</x>
<y>27</y>
<width>75</width>
<width>61</width>
<height>23</height>
</rect>
</property>
......@@ -138,78 +216,6 @@
</widget>
</widget>
</item>
<item row="1" column="0">
<layout class="QGridLayout" name="gridLayout">
<property name="spacing">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QTableView" name="tableViewFamily">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOn</enum>
</property>
<property name="sizeAdjustPolicy">
<enum>QAbstractScrollArea::AdjustIgnored</enum>
</property>
<property name="verticalScrollMode">
<enum>QAbstractItemView::ScrollPerItem</enum>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QTableView" name="tableView">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="midLineWidth">
<number>0</number>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOn</enum>
</property>
<property name="editTriggers">
<set>QAbstractItemView::AnyKeyPressed|QAbstractItemView::DoubleClicked|QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
</property>
<property name="verticalScrollMode">
<enum>QAbstractItemView::ScrollPerItem</enum>
</property>
<property name="cornerButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources>
......
data;
set C := c1 c4 c3 c0 c2;
set V := v0 v1 v2 v3 v4;
param p : v0 v1 v2 v3 v4 :=
c1 5 4 3 1 2
c4 5 3 2 1 3
c3 5 4 3 2 1
c0 5 1 4 1 3
c2 5 4 3 1 2
;
end;= v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35;
param p : v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 :=
c12 6 5 33 31 34 32 36 35 4 27 25 28 26 30 29 3 21 19 22 20 24 23 2 15 13 16 14 18 17 1 11 9 12 10 8 7
c1 36 5 35 10 17 11 22 14 1 34 6 18 12 23 15 2 33 7 19 13 24 16 3 32 8 20 27 25 29 4 31 9 21 28 26 30
c9 11 12 35 36 33 34 27 28 4 31 32 29 30 13 14 3 23 26 24 25 9 10 2 16 18 20 22 7 8 1 15 17 19 21 5 6
c24 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 4 14 16 13 21 12 11 6 9 17 3 18 2 10 7 8 15 1 19 5 20
c0 26 25 34 33 36 35 28 27 4 30 29 32 31 14 13 3 20 19 24 23 10 9 2 16 15 22 21 8 7 1 12 11 18 17 6 5
c27 33 36 35 34 31 32 29 30 28 24 25 26 27 22 23 17 21 18 19 20 15 16 6 12 13 14 11 9 10 2 4 7 5 8 1 3
c25 36 16 20 21 26 27 34 35 10 18 19 24 25 32 33 3 13 17 22 23 30 31 2 8 9 14 15 28 29 1 6 7 11 12 4 5
c31 22 5 34 33 36 35 24 23 3 21 20 32 31 19 18 2 17 16 30 29 9 8 1 15 14 26 25 7 6 4 13 12 28 27 11 10
c29 20 19 31 32 35 36 21 22 13 27 28 33 34 11 12 14 23 24 29 30 3 4 15 5 6 25 26 1 2 16 9 10 17 18 7 8
c15 28 27 34 33 36 35 24 23 20 25 26 32 31 17 16 13 19 18 29 30 8 7 11 10 9 21 22 2 1 12 6 5 14 15 3 4
c18 36 23 29 32 34 35 28 27 4 20 31 25 33 26 22 3 14 21 24 30 18 15 2 8 17 16 19 13 9 1 7 11 10 12 6 5
c28 30 21 35 36 32 31 17 18 12 34 33 29 28 14 13 7 23 22 27 26 11 10 4 20 19 25 24 5 6 3 9 8 16 15 1 2
c32 19 15 33 36 34 35 14 13 12 29 32 30 31 11 9 10 25 27 26 28 8 7 5 17 23 22 24 4 1 6 16 18 20 21 3 2
c13 14 13 26 28 35 36 22 21 12 25 27 33 34 20 19 11 23 24 31 32 17 18 8 9 10 29 30 6 7 3 4 5 15 16 1 2
c23 36 1 22 23 18 19 20 21 5 24 25 26 27 28 29 3 30 31 32 33 34 35 4 17 16 12 13 14 15 2 9 11 6 10 7 8
c33 36 35 34 33 32 31 30 29 4 28 27 26 25 12 11 2 24 23 22 21 6 10 1 17 18 19 20 5 8 3 13 14 15 16 7 9
c26 36 18 28 35 30 34 31 29 1 22 33 23 32 27 19 7 20 24 21 25 26 14 2 12 16 13 17 15 9 8 3 10 4 11 6 5
c3 36 27 33 32 35 34 22 21 20 29 28 31 30 19 18 11 23 24 26 25 15 14 6 9 10 17 16 5 1 4 7 8 13 12 3 2
c20 36 20 30 31 34 35 17 8 18 26 27 32 33 16 6 9 13 15 28 29 14 1 10 4 11 22 23 2 3 21 12 19 24 25 7 5
c17 20 8 35 36 33 34 27 28 6 30 29 31 32 26 25 4 23 24 21 22 10 11 3 17 16 18 19 5 9 2 14 15 12 13 1 7
c8 36 35 31 32 33 34 12 13 26 27 28 29 30 10 11 1 22 23 24 25 6 7 2 18 19 20 21 4 5 3 14 15 16 17 8 9
c19 18 36 34 35 33 32 31 30 23 27 26 29 28 25 24 17 20 19 22 21 12 13 14 11 10 16 15 4 3 7 6 5 9 8 1 2
c22 11 5 16 10 21 26 31 36 4 15 9 20 25 30 35 3 14 8 19 24 29 34 1 12 6 17 22 27 32 2 13 7 18 23 28 33
c34 36 21 30 31 34 35 22 23 4 19 20 32 33 11 12 3 17 18 28 29 9 10 1 13 14 26 27 5 7 2 15 16 24 25 6 8
c30 36 22 23 24 33 32 15 14 10 21 19 31 34 9 13 1 17 8 18 35 2 3 4 20 5 28 27 6 7 16 25 26 29 30 11 12
c7 36 14 35 34 33 32 12 13 4 31 30 29 28 11 7 1 26 25 23 24 8 5 2 22 20 16 18 9 6 3 21 19 15 17 10 27
c6 36 8 31 32 33 35 15 14 3 28 29 30 34 13 12 2 24 25 26 27 7 5 1 23 22 17 19 6 4 9 21 20 16 18 11 10
c11 28 2 34 36 33 35 17 19 1 29 32 30 31 16 18 20 14 26 12 25 8 9 21 11 27 10 24 3 7 22 6 15 13 23 4 5
c5 36 21 35 33 34 32 23 22 3 30 31 29 28 10 9 2 24 25 27 26 8 6 1 18 17 20 19 7 5 4 14 13 16 15 12 11
c4 36 19 33 32 34 35 22 23 8 29 28 30 31 20 21 5 25 24 27 26 17 18 4 15 16 13 14 6 7 3 10 9 11 12 1 2
c2 36 28 24 21 22 23 35 17 18 33 34 16 15 32 14 4 25 12 31 13 30 6 3 29 10 20 11 26 5 1 19 7 27 9 8 2
c21 10 7 36 35 34 33 19 20 4 32 31 30 29 14 13 3 28 27 26 25 12 11 2 24 23 22 21 9 8 1 18 17 16 15 6 5
c14 36 2 32 33 34 35 24 25 1 28 29 30 31 12 13 3 20 21 26 27 10 11 4 18 19 22 23 8 9 5 14 15 16 17 6 7
c35 36 23 33 32 34 35 31 30 10 26 27 29 28 25 24 7 22 21 20 19 8 9 2 16 15 18 17 5 6 1 11 12 13 14 3 4
c10 12 11 27 32 35 36 15 16 4 26 31 34 33 13 14 3 25 30 29 28 9 10 2 22 21 23 24 7 8 1 18 17 19 20 5 6
c16 2 6 31 32 33 34 35 36 5 25 26 27 28 29 30 4 15 16 21 22 23 24 3 13 14 17 18 19 20 1 8 7 9 10 11 12
;
end;
\ No newline at end of file
data;
set C := c1 c4 c3 c0 c2;
set V := v0 v1 v2 v3 v4;
param S := 5;
param p : v0 v1 v2 v3 v4 :=
c1 5 4 3 1 2
c4 5 3 2 1 3
c3 5 4 3 2 1
c0 5 1 4 1 3
c2 5 4 3 1 2
;
end;4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35;
param S := 31;
param p : v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 :=
c12 6 5 33 31 34 32 36 35 4 27 25 28 26 30 29 3 21 19 22 20 24 23 2 15 13 16 14 18 17 1 11 9 12 10 8 7
c1 36 5 35 10 17 11 22 14 1 34 6 18 12 23 15 2 33 7 19 13 24 16 3 32 8 20 27 25 29 4 31 9 21 28 26 30
c9 11 12 35 36 33 34 27 28 4 31 32 29 30 13 14 3 23 26 24 25 9 10 2 16 18 20 22 7 8 1 15 17 19 21 5 6
c24 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 4 14 16 13 21 12 11 6 9 17 3 18 2 10 7 8 15 1 19 5 20
c0 26 25 34 33 36 35 28 27 4 30 29 32 31 14 13 3 20 19 24 23 10 9 2 16 15 22 21 8 7 1 12 11 18 17 6 5
c27 33 36 35 34 31 32 29 30 28 24 25 26 27 22 23 17 21 18 19 20 15 16 6 12 13 14 11 9 10 2 4 7 5 8 1 3
c25 36 16 20 21 26 27 34 35 10 18 19 24 25 32 33 3 13 17 22 23 30 31 2 8 9 14 15 28 29 1 6 7 11 12 4 5
c31 22 5 34 33 36 35 24 23 3 21 20 32 31 19 18 2 17 16 30 29 9 8 1 15 14 26 25 7 6 4 13 12 28 27 11 10
c29 20 19 31 32 35 36 21 22 13 27 28 33 34 11 12 14 23 24 29 30 3 4 15 5 6 25 26 1 2 16 9 10 17 18 7 8
c15 28 27 34 33 36 35 24 23 20 25 26 32 31 17 16 13 19 18 29 30 8 7 11 10 9 21 22 2 1 12 6 5 14 15 3 4
c18 36 23 29 32 34 35 28 27 4 20 31 25 33 26 22 3 14 21 24 30 18 15 2 8 17 16 19 13 9 1 7 11 10 12 6 5
c28 30 21 35 36 32 31 17 18 12 34 33 29 28 14 13 7 23 22 27 26 11 10 4 20 19 25 24 5 6 3 9 8 16 15 1 2
c32 19 15 33 36 34 35 14 13 12 29 32 30 31 11 9 10 25 27 26 28 8 7 5 17 23 22 24 4 1 6 16 18 20 21 3 2
c13 14 13 26 28 35 36 22 21 12 25 27 33 34 20 19 11 23 24 31 32 17 18 8 9 10 29 30 6 7 3 4 5 15 16 1 2
c23 36 1 22 23 18 19 20 21 5 24 25 26 27 28 29 3 30 31 32 33 34 35 4 17 16 12 13 14 15 2 9 11 6 10 7 8
c33 36 35 34 33 32 31 30 29 4 28 27 26 25 12 11 2 24 23 22 21 6 10 1 17 18 19 20 5 8 3 13 14 15 16 7 9
c26 36 18 28 35 30 34 31 29 1 22 33 23 32 27 19 7 20 24 21 25 26 14 2 12 16 13 17 15 9 8 3 10 4 11 6 5
c3 36 27 33 32 35 34 22 21 20 29 28 31 30 19 18 11 23 24 26 25 15 14 6 9 10 17 16 5 1 4 7 8 13 12 3 2
c20 36 20 30 31 34 35 17 8 18 26 27 32 33 16 6 9 13 15 28 29 14 1 10 4 11 22 23 2 3 21 12 19 24 25 7 5
c17 20 8 35 36 33 34 27 28 6 30 29 31 32 26 25 4 23 24 21 22 10 11 3 17 16 18 19 5 9 2 14 15 12 13 1 7
c8 36 35 31 32 33 34 12 13 26 27 28 29 30 10 11 1 22 23 24 25 6 7 2 18 19 20 21 4 5 3 14 15 16 17 8 9
c19 18 36 34 35 33 32 31 30 23 27 26 29 28 25 24 17 20 19 22 21 12 13 14 11 10 16 15 4 3 7 6 5 9 8 1 2
c22 11 5 16 10 21 26 31 36 4 15 9 20 25 30 35 3 14 8 19 24 29 34 1 12 6 17 22 27 32 2 13 7 18 23 28 33
c34 36 21 30 31 34 35 22 23 4 19 20 32 33 11 12 3 17 18 28 29 9 10 1 13 14 26 27 5 7 2 15 16 24 25 6 8
c30 36 22 23 24 33 32 15 14 10 21 19 31 34 9 13 1 17 8 18 35 2 3 4 20 5 28 27 6 7 16 25 26 29 30 11 12
c7 36 14 35 34 33 32 12 13 4 31 30 29 28 11 7 1 26 25 23 24 8 5 2 22 20 16 18 9 6 3 21 19 15 17 10 27
c6 36 8 31 32 33 35 15 14 3 28 29 30 34 13 12 2 24 25 26 27 7 5 1 23 22 17 19 6 4 9 21 20 16 18 11 10
c11 28 2 34 36 33 35 17 19 1 29 32 30 31 16 18 20 14 26 12 25 8 9 21 11 27 10 24 3 7 22 6 15 13 23 4 5
c5 36 21 35 33 34 32 23 22 3 30 31 29 28 10 9 2 24 25 27 26 8 6 1 18 17 20 19 7 5 4 14 13 16 15 12 11
c4 36 19 33 32 34 35 22 23 8 29 28 30 31 20 21 5 25 24 27 26 17 18 4 15 16 13 14 6 7 3 10 9 11 12 1 2
c2 36 28 24 21 22 23 35 17 18 33 34 16 15 32 14 4 25 12 31 13 30 6 3 29 10 20 11 26 5 1 19 7 27 9 8 2
c21 10 7 36 35 34 33 19 20 4 32 31 30 29 14 13 3 28 27 26 25 12 11 2 24 23 22 21 9 8 1 18 17 16 15 6 5
c14 36 2 32 33 34 35 24 25 1 28 29 30 31 12 13 3 20 21 26 27 10 11 4 18 19 22 23 8 9 5 14 15 16 17 6 7
c35 36 23 33 32 34 35 31 30 10 26 27 29 28 25 24 7 22 21 20 19 8 9 2 16 15 18 17 5 6 1 11 12 13 14 3 4
c10 12 11 27 32 35 36 15 16 4 26 31 34 33 13 14 3 25 30 29 28 9 10 2 22 21 23 24 7 8 1 18 17 19 20 5 6
c16 2 6 31 32 33 34 35 36 5 25 26 27 28 29 30 4 15 16 21 22 23 24 3 13 14 17 18 19 20 1 8 7 9 10 11 12
;
end;
\ No newline at end of file
Reading model section from GLPK/Modelos/MTAV.mod...
GLPK/Modelos/MTAV.mod:29: warning: unexpected end of file; missing end statement inserted
29 lines were read
Reading data section from GLPK/Datos/MTAV_pref.dat...
GLPK/Datos/MTAV_pref.dat:15: warning: some text detected beyond end statement; text ignored
15 lines were read
Generating resultado...
Generating z_menorIgual...
Generating unicaAsignacionCoperativista_mayorIgual...
Generating unicaAsignacionCoperativista_menorIgual...
Generating unicaAsignacionCasa_mayorIgual...
Generating unicaAsignacionCasa_menorIgual...
Model has been successfully generated
lpx_simplex: original LP has 26 rows, 26 columns, 131 non-zeros
lpx_simplex: presolved LP has 25 rows, 26 columns, 130 non-zeros
lpx_adv_basis: size of triangular part = 25
0: objval = 0.000000000e+000 infeas = 1.000000000e+000 (0)
18: objval = 3.064516129e+000 infeas = 4.440892099e-017 (0)
* 18: objval = 3.064516129e+000 infeas = 4.440892099e-016 (0)
OPTIMAL SOLUTION FOUND
Integer optimization begins...
Objective function is integral
+ 28: mip = not found yet >= -inf (1; 0)
+ 55: mip = 5.000000000e+000 >= 3.000000000e+000 40.0% (4; 0)
+ 252: mip = 5.000000000e+000 >= tree is empty 0.0% (0; 47)
INTEGER OPTIMAL SOLUTION FOUND
Time used: 0.0 secs
Memory used: 0.2M (186337 bytes)
lpx_print_mip: writing MIP problem solution to `GLPK/Soluciones/MTAV_pref.sol'...
set C;
/* cooperativistas */
set V;
/* viviendas */
param p{c in C, v in V};
/* prioridades de los cooperativistas por las viviendas */
var x{c in C, v in V}, binary;
/* indica si el cooperativista c es asignado a la vivienda v */
var z, integer;
/* variable auxiliar para representar la mínima satisfacción */
minimize resultado: z;
s.t. z_menorIgual{c in C}: z >= sum{v in V} p[c,v] * x[c,v];
/* busco que z sea menor o igual que la satisfacción de cada cooperativista c */
s.t. unicaAsignacionCoperativista_mayorIgual{c in C}: sum{v in V} x[c,v] >= 1;
s.t. unicaAsignacionCoperativista_menorIgual{c in C}: sum{v in V} x[c,v] <= 1;
/* el cooperativista c solo tiene una vivienda asignada */
s.t. unicaAsignacionCasa_mayorIgual{v in V}: sum{c in C} x[c,v] >= 1;
s.t. unicaAsignacionCasa_menorIgual{v in V}: sum{c in C} x[c,v] <= 1;
/* la vivienda v solo tiene un cooperativista asignado */
set C;
/* cooperativistas */
set V;
/* viviendas */
param S;
/* satisfacción */
param p{c in C, v in V};
/* prioridades de los cooperativistas por las viviendas */
var x{c in C, v in V}, binary;
/* indica si el cooperativista c es asignado a la vivienda v */
minimize s: sum{c in C, v in V} p[c,v] * x[c,v];
/* preferencias acumuladas */
s.t. unicaAsignacionCoperativista_mayorIgual{c in C}: sum{v in V} x[c,v] >= 1;
s.t. unicaAsignacionCoperativista_menorIgual{c in C}: sum{v in V} x[c,v] <= 1;
/* el cooperativista c solo tiene una vivienda asignada */
s.t. unicaAsignacionCasa_mayorIgual{v in V}: sum{c in C} x[c,v] >= 1;
s.t. unicaAsignacionCasa_menorIgual{v in V}: sum{c in C} x[c,v] <= 1;
/* la vivienda v solo tiene un cooperativista asignado */
s.t. z_menorIgual{c in C}: sum{v in V} p[c,v] * x[c,v] <= S;
/* nivel de satisfacción */
\ No newline at end of file
Problem: MTAV
Rows: 26
Columns: 26 (26 integer, 25 binary)
Non-zeros: 131
Status: INTEGER OPTIMAL
Objective: resultado = 5 (MINimum) 2.25 (LP)
No. Row name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 resultado 5
2 z_menorIgual[c1]
1 -0
3 z_menorIgual[c4]
4 -0
4 z_menorIgual[c3]
0 -0
5 z_menorIgual[c0]
2 -0
6 z_menorIgual[c2]
2 -0
7 unicaAsignacionCoperativista_mayorIgual[c1]
1 1
8 unicaAsignacionCoperativista_mayorIgual[c4]
1 1
9 unicaAsignacionCoperativista_mayorIgual[c3]
1 1
10 unicaAsignacionCoperativista_mayorIgual[c0]
1 1
11 unicaAsignacionCoperativista_mayorIgual[c2]
1 1
12 unicaAsignacionCoperativista_menorIgual[c1]
1 1
13 unicaAsignacionCoperativista_menorIgual[c4]
1 1
14 unicaAsignacionCoperativista_menorIgual[c3]
1 1
15 unicaAsignacionCoperativista_menorIgual[c0]
1 1
16 unicaAsignacionCoperativista_menorIgual[c2]
1 1
17 unicaAsignacionCasa_mayorIgual[v0]
1 1
18 unicaAsignacionCasa_mayorIgual[v1]
1 1
19 unicaAsignacionCasa_mayorIgual[v2]
1 1
20 unicaAsignacionCasa_mayorIgual[v3]
1 1
21 unicaAsignacionCasa_mayorIgual[v4]
1 1
22 unicaAsignacionCasa_menorIgual[v0]
1 1
23 unicaAsignacionCasa_menorIgual[v1]
1 1
24 unicaAsignacionCasa_menorIgual[v2]
1 1
25 unicaAsignacionCasa_menorIgual[v3]
1 1
26 unicaAsignacionCasa_menorIgual[v4]
1 1
No. Column name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 x[c1,v0] * 0 0 1
2 x[c1,v1] * 1 0 1
3 x[c1,v2] * 0 0 1
4 x[c1,v3] * 0 0 1
5 x[c1,v4] * 0 0 1
6 x[c4,v0] * 0 0 1
7 x[c4,v1] * 0 0 1
8 x[c4,v2] * 0 0 1
9 x[c4,v3] * 1 0 1
10 x[c4,v4] * 0 0 1
11 x[c3,v0] * 1 0 1
12 x[c3,v1] * 0 0 1
13 x[c3,v2] * 0 0 1
14 x[c3,v3] * 0 0 1
15 x[c3,v4] * 0 0 1
16 x[c0,v0] * 0 0 1
17 x[c0,v1] * 0 0 1
18 x[c0,v2] * 0 0 1
19 x[c0,v3] * 0 0 1
20 x[c0,v4] * 1 0 1
21 x[c2,v0] * 0 0 1
22 x[c2,v1] * 0 0 1
23 x[c2,v2] * 1 0 1
24 x[c2,v3] * 0 0 1
25 x[c2,v4] * 0 0 1
26 z * 5
End of output
Problem: MTAV_empate
Rows: 26
Columns: 25 (25 integer, 25 binary)
Non-zeros: 150
Status: INTEGER OPTIMAL
Objective: s = 10 (MINimum) 10 (LP)
No. Row name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 s 10
2 unicaAsignacionCoperativista_mayorIgual[c1]
1 1
3 unicaAsignacionCoperativista_mayorIgual[c4]
1 1
4 unicaAsignacionCoperativista_mayorIgual[c3]
1 1
5 unicaAsignacionCoperativista_mayorIgual[c0]
1 1
6 unicaAsignacionCoperativista_mayorIgual[c2]
1 1
7 unicaAsignacionCoperativista_menorIgual[c1]
1 1
8 unicaAsignacionCoperativista_menorIgual[c4]
1 1
9 unicaAsignacionCoperativista_menorIgual[c3]
1 1
10 unicaAsignacionCoperativista_menorIgual[c0]
1 1
11 unicaAsignacionCoperativista_menorIgual[c2]
1 1
12 unicaAsignacionCasa_mayorIgual[v0]
1 1
13 unicaAsignacionCasa_mayorIgual[v1]
1 1
14 unicaAsignacionCasa_mayorIgual[v2]
1 1
15 unicaAsignacionCasa_mayorIgual[v3]
1 1
16 unicaAsignacionCasa_mayorIgual[v4]
1 1
17 unicaAsignacionCasa_menorIgual[v0]
1 1
18 unicaAsignacionCasa_menorIgual[v1]
1 1
19 unicaAsignacionCasa_menorIgual[v2]
1 1
20 unicaAsignacionCasa_menorIgual[v3]
1 1
21 unicaAsignacionCasa_menorIgual[v4]
1 1
22 z_menorIgual[c1]
5 5
23 z_menorIgual[c4]
2 5
24 z_menorIgual[c3]
1 5
25 z_menorIgual[c0]
1 5
26 z_menorIgual[c2]
1 5
No. Column name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 x[c1,v0] * 1 0 1
2 x[c1,v1] * 0 0 1
3 x[c1,v2] * 0 0 1
4 x[c1,v3] * 0 0 1
5 x[c1,v4] * 0 0 1
6 x[c4,v0] * 0 0 1
7 x[c4,v1] * 0 0 1
8 x[c4,v2] * 1 0 1
9 x[c4,v3] * 0 0 1
10 x[c4,v4] * 0 0 1
11 x[c3,v0] * 0 0 1
12 x[c3,v1] * 0 0 1
13 x[c3,v2] * 0 0 1
14 x[c3,v3] * 0 0 1
15 x[c3,v4] * 1 0 1
16 x[c0,v0] * 0 0 1
17 x[c0,v1] * 1 0 1
18 x[c0,v2] * 0 0 1
19 x[c0,v3] * 0 0 1
20 x[c0,v4] * 0 0 1
21 x[c2,v0] * 0 0 1
22 x[c2,v1] * 0 0 1
23 x[c2,v2] * 0 0 1
24 x[c2,v3] * 1 0 1
25 x[c2,v4] * 0 0 1
End of output
SORTEO,test
CANTIDAD_VIVIENDAS,5
-,v1,v2,v3,v4,v5
M,1,2,3,4,5
S,1,1,1,2,3
A,1,2,3,2,3
U,2,3,3,3,1
O,1,4,5,2,3
SORTEO,test
CANTIDAD_VIVIENDAS,7
-,v1,v2,v3,v4,v5,v6,v7
M,1,2,3,4,5,6,7
S,1,1,1,2,3,3,4
A,1,2,3,2,3,4,5
U,2,3,3,3,1,1,1
O,1,4,5,2,3,2,2
L,7,6,5,4,3,2,1
K,1,1,1,1,1,1,2
SORTEO,test
CANTIDAD_VIVIENDAS,12
-,v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12
M,1,2,3,4,5,6,7,8,9,10,11,12
S,1,1,1,2,3,3,4,2,2,5,1,2
A,1,2,3,2,3,4,5,2,6,7,8,9
U,2,3,3,3,1,1,1,6,5,4,3,2
O,1,4,5,2,3,2,2,6,7,9,8,10
L,7,6,5,4,3,2,1,7,7,7,6,7
K,1,1,1,1,1,1,2,1,1,1,1,1
Q,2,1,2,2,2,2,2,2,2,2,2,2
W,9,8,7,6,5,4,3,2,1,9,8,7
E,10,10,10,9,8,7,6,5,4,3,2,1
R,1,2,3,4,5,6,7,8,9,10,11,12
T,1,1,1,1,1,1,1,1,1,1,1,1
SORTEO,test
CANTIDAD_VIVIENDAS,9
-,v1,v2,v3,v4,v5,v6,v7,v8,v9
M,1,2,3,4,5,6,7,8,9
S,2,3,1,7,3,6,5,4,7
A,6,2,1,2,4,3,5,6,7
P,2,8,9,7,6,4,5,3,1
O,1,4,5,2,3,6,7,8,9
I,4,5,7,6,3,2,8,9,1
U,9,8,7,6,5,1,2,3,4
Y,1,2,3,4,9,8,7,6,5
T,9,8,7,6,5,4,3,2,1
SORTEO,test
CANTIDAD_VIVIENDAS,3
-,v1,v2,v3
M,1,2,3
S,2,3,1
A,3,2,1
[General]
CANT_VIVIENDAS_DEFAULT=10
MAIN_WINDOW_GEOMETRY=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\0\xb1\0\0\0h\0\0\az\0\0\x3\x8e\0\0\0\xba\0\0\0\x8e\0\0\aq\0\0\x3\x85\0\0\0\0\0\0\0\0\a\x80)
CSV_DELIMITER=0
MAIN_WINDOW_STATE=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\0\0\0\x6\xb8\0\0\x2\x86\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\x16\0m\0\x61\0i\0n\0T\0o\0o\0l\0\x42\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
CARGAR_ULTIMO_SORTEO=true
RUTA_ULTIMO_SORTEO=C:/Users/Marcos/Desktop/MTAV_Code/programa/debug/GLPK/prueba.csv
GUARDAR_AUTOMATICAMENTE_REPORTE=false
2019-11-29 20:27:50.138 INF: Inicio de la aplicación
2019-11-29 20:27:53.068 INF: "Nueva simulacion con ruta="
2019-12-02 23:20:45.634 INF: Inicio de la aplicación
2019-12-02 23:20:48.250 INF: "Nueva simulacion con ruta="
2020-01-27 01:46:02.989 INF: Inicio de la aplicación
2020-01-27 01:46:04.898 INF: "Nueva simulacion con ruta="
2020-01-27 01:46:24.919 WRN: "Datos invalidos para correr el proyecto: Nombre de sorteo vacio"
2020-01-27 01:46:28.213 INF: "Inicio de ejecucion del Proyecto=a"
2020-01-27 01:47:46.766 INF: Inicio de la aplicación
2020-01-27 01:47:47.210 INF: "Nueva simulacion con ruta="
2020-01-27 01:48:11.234 INF: "Inicio de ejecucion del Proyecto=12"
2020-01-27 01:48:15.093 CRT: function:0x18c5e294 line 0x18c5e28c GLPK MTAV ERROR en la salida
2020-01-27 01:48:15.140 CRT: function:0x18c5e1b4 line 0x18c5e1ac GLPK MTAV_Empate ERROR en la salida
2020-01-27 01:49:37.012 INF: Inicio de la aplicación
2020-01-27 01:49:38.921 INF: "Nueva simulacion con ruta="
2020-01-27 01:50:01.383 INF: "Inicio de ejecucion del Proyecto=122"
2020-01-27 01:55:46.311 INF: Inicio de la aplicación
2020-01-27 01:55:46.763 INF: "Nueva simulacion con ruta="
2020-01-27 01:56:29.752 INF: "Inicio de ejecucion del Proyecto=qwe"
2020-01-27 01:56:29.814 CRT: function:0x18cee7a4 line 0x18cee79c GLPK MTAV ERROR en la salida
2020-01-27 01:56:29.861 CRT: function:0x18cee814 line 0x18cee80c GLPK MTAV_Empate ERROR en la salida
2020-01-27 01:56:58.617 INF: Inicio de la aplicación
2020-01-27 01:57:00.574 INF: "Nueva simulacion con ruta="
2020-01-27 01:57:24.838 INF: "Inicio de ejecucion del Proyecto=3"
2020-01-27 01:58:50.615 CRT: function:0x1b082dfc line 0x1b082df4 GLPK MTAV ERROR en la salida
2020-01-27 01:58:50.677 CRT: function:0x18cc05f4 line 0x18cc05ec GLPK MTAV_Empate ERROR en la salida
2020-01-27 01:58:54.832 INF: "Inicio de ejecucion del Proyecto=3"
2020-01-27 01:59:11.673 INF: GLPK MTAV Status: FOUND
2020-01-27 01:59:16.440 CRT: function:0x1b193e74 line 0x1b193e6c GLPK MTAV_Empate ERROR en la salida
2020-01-27 08:21:13.506 INF: Inicio de la aplicación
2020-01-27 08:21:15.800 INF: "Nueva simulacion con ruta="
2020-01-27 08:21:42.918 WRN: "Datos invalidos para correr el proyecto: Nombre de sorteo vacio"
2020-01-27 08:21:47.693 INF: "Inicio de ejecucion del Proyecto=asfa"
2020-01-27 08:23:11.153 INF: GLPK MTAV Status: FOUND
2020-01-27 08:23:16.217 CRT: function:0x21538fc4 line 0x21538fbc GLPK MTAV_Empate ERROR en la salida
2020-01-27 08:28:14.753 INF: "Inicio de ejecucion del Proyecto=asfa"
2020-01-27 08:31:51.546 INF: GLPK MTAV Status: FOUND
2020-01-27 08:31:54.406 CRT: function:0x2155454c line 0x21554544 GLPK MTAV_Empate ERROR en la salida
2020-01-27 08:31:59.199 INF: "Inicio de ejecucion del Proyecto=asfa"
2020-01-27 08:32:06.400 INF: GLPK MTAV Status: FOUND
2020-01-27 08:36:11.832 INF: Inicio de la aplicación
2020-01-27 08:36:13.818 INF: "Nueva simulacion con ruta="
2020-01-27 08:36:36.845 INF: "Inicio de ejecucion del Proyecto=afsd"
2020-01-27 08:36:40.980 INF: GLPK MTAV Status: FOUND
2020-01-27 08:37:13.163 INF: GLPK MTAV_Empate Status: FOUND
2020-01-27 08:45:35.207 INF: Inicio de la aplicación
2020-01-27 08:45:37.191 INF: "Nueva simulacion con ruta="
2020-01-27 08:46:00.605 INF: "Inicio de ejecucion del Proyecto=ll"
2020-01-27 08:47:35.241 INF: Inicio de la aplicación
2020-01-27 08:47:37.225 INF: "Nueva simulacion con ruta="
2020-01-27 08:47:56.799 INF: "Inicio de ejecucion del Proyecto=k"
2020-01-27 08:48:10.265 INF: GLPK MTAV Status: FOUND
2020-01-27 08:56:04.300 INF: Inicio de la aplicación
2020-01-27 08:56:06.272 INF: "Nueva simulacion con ruta="
2020-01-27 08:56:24.779 INF: "Inicio de ejecucion del Proyecto=m"
2020-01-27 08:58:25.608 INF: GLPK MTAV Status: FOUND
2020-01-27 08:58:26.635 INF: GLPK MTAV_Empate Status: FOUND
2020-01-27 08:59:10.872 INF: "Nueva simulacion con ruta=C:/Users/Marcos/Desktop/MTAV_Code/programa/debug/GLPK/SORTEO COVITVUNO DOS DORMITORIOS.csv"
2020-01-27 08:59:16.578 INF: "Inicio de ejecucion del Proyecto=Sorteo COVITVUNO 2 dormitorios"
2020-01-27 09:01:35.182 CRT: function:0x1b0ac21c line 0x1b0ac214 GLPK MTAV ERROR en la salida
2020-01-27 09:01:36.855 WRN: QProcess::start: Process is already running
2020-01-27 09:01:36.856 INF: GLPK MTAV_Empate Status: FOUND
2020-01-27 09:01:52.728 INF: "Guardado de proyecto en: C:/Users/Marcos/Desktop/MTAV_Code/programa/debug/GLPK/prueba.csv"
2020-01-27 09:07:10.420 INF: Inicio de la aplicación
2020-01-27 09:07:12.395 INF: "Nueva simulacion con ruta=C:/Users/Marcos/Desktop/MTAV_Code/programa/debug/GLPK/prueba.csv"
2020-01-27 09:07:17.772 INF: "Inicio de ejecucion del Proyecto=Sorteo COVITVUNO 2 dormitorios"
2020-01-27 09:08:24.769 INF: Inicio de la aplicación
2020-01-27 09:08:26.730 INF: "Nueva simulacion con ruta=C:/Users/Marcos/Desktop/MTAV_Code/programa/debug/GLPK/prueba.csv"
2020-01-27 09:08:30.320 INF: "Inicio de ejecucion del Proyecto=Sorteo COVITVUNO 2 dormitorios"
2020-01-27 09:10:46.699 INF: GLPK MTAV Status: FOUND
2020-01-27 09:11:04.934 INF: GLPK MTAV_Empate Status: FOUND
/****************************************************************************
** Meta object code from reading C++ file 'configurationwidget.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.7.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../configurationwidget.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'configurationwidget.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.7.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_ConfigurationWidget_t {
QByteArrayData data[6];
char stringdata0[131];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_ConfigurationWidget_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_ConfigurationWidget_t qt_meta_stringdata_ConfigurationWidget = {
{
QT_MOC_LITERAL(0, 0, 19), // "ConfigurationWidget"
QT_MOC_LITERAL(1, 20, 21), // "on_btnGuardar_clicked"
QT_MOC_LITERAL(2, 42, 0), // ""
QT_MOC_LITERAL(3, 43, 22), // "on_btnCancelar_clicked"
QT_MOC_LITERAL(4, 66, 22), // "on_btnExaminar_clicked"
QT_MOC_LITERAL(5, 89, 41) // "on_checkGuardadoAutomaticoRep..."
},
"ConfigurationWidget\0on_btnGuardar_clicked\0"
"\0on_btnCancelar_clicked\0on_btnExaminar_clicked\0"
"on_checkGuardadoAutomaticoReporte_clicked"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_ConfigurationWidget[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
4, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 34, 2, 0x08 /* Private */,
3, 0, 35, 2, 0x08 /* Private */,
4, 0, 36, 2, 0x08 /* Private */,
5, 0, 37, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void ConfigurationWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
ConfigurationWidget *_t = static_cast<ConfigurationWidget *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: _t->on_btnGuardar_clicked(); break;
case 1: _t->on_btnCancelar_clicked(); break;
case 2: _t->on_btnExaminar_clicked(); break;
case 3: _t->on_checkGuardadoAutomaticoReporte_clicked(); break;
default: ;
}
}
Q_UNUSED(_a);
}
const QMetaObject ConfigurationWidget::staticMetaObject = {
{ &QDialog::staticMetaObject, qt_meta_stringdata_ConfigurationWidget.data,
qt_meta_data_ConfigurationWidget, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *ConfigurationWidget::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *ConfigurationWidget::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_ConfigurationWidget.stringdata0))
return static_cast<void*>(const_cast< ConfigurationWidget*>(this));
return QDialog::qt_metacast(_clname);
}
int ConfigurationWidget::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) {
if (_id < 4)
qt_static_metacall(this, _c, _id, _a);
_id -= 4;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 4)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 4;
}
return _id;
}
QT_END_MOC_NAMESPACE
/****************************************************************************
** Meta object code from reading C++ file 'dataeditorwidget.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.7.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../dataeditorwidget.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'dataeditorwidget.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.7.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_DataEditorWidget_t {
QByteArrayData data[14];
char stringdata0[257];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_DataEditorWidget_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_DataEditorWidget_t qt_meta_stringdata_DataEditorWidget = {
{
QT_MOC_LITERAL(0, 0, 16), // "DataEditorWidget"
QT_MOC_LITERAL(1, 17, 12), // "ruta_changed"
QT_MOC_LITERAL(2, 30, 0), // ""
QT_MOC_LITERAL(3, 31, 3), // "txt"
QT_MOC_LITERAL(4, 35, 21), // "on_btnSimular_clicked"
QT_MOC_LITERAL(5, 57, 21), // "on_btnAplicar_clicked"
QT_MOC_LITERAL(6, 79, 18), // "onModelDataChanged"
QT_MOC_LITERAL(7, 98, 33), // "onTablaModelVerticalScrollCha..."
QT_MOC_LITERAL(8, 132, 5), // "value"
QT_MOC_LITERAL(9, 138, 39), // "onTablaModelFamilyVerticalScr..."
QT_MOC_LITERAL(10, 178, 23), // "onTablaModelCellClicked"
QT_MOC_LITERAL(11, 202, 29), // "onTablaModelFamilyCellClicked"
QT_MOC_LITERAL(12, 232, 22), // "onCantidadValueChanged"
QT_MOC_LITERAL(13, 255, 1) // "i"
},
"DataEditorWidget\0ruta_changed\0\0txt\0"
"on_btnSimular_clicked\0on_btnAplicar_clicked\0"
"onModelDataChanged\0onTablaModelVerticalScrollChanged\0"
"value\0onTablaModelFamilyVerticalScrollChanged\0"
"onTablaModelCellClicked\0"
"onTablaModelFamilyCellClicked\0"
"onCantidadValueChanged\0i"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_DataEditorWidget[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
9, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
1, // signalCount
// signals: name, argc, parameters, tag, flags
1, 1, 59, 2, 0x06 /* Public */,
// slots: name, argc, parameters, tag, flags
4, 0, 62, 2, 0x08 /* Private */,
5, 0, 63, 2, 0x08 /* Private */,
6, 0, 64, 2, 0x08 /* Private */,
7, 1, 65, 2, 0x08 /* Private */,
9, 1, 68, 2, 0x08 /* Private */,
10, 1, 71, 2, 0x08 /* Private */,
11, 1, 74, 2, 0x08 /* Private */,
12, 1, 77, 2, 0x08 /* Private */,
// signals: parameters
QMetaType::Int, QMetaType::QString, 3,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void, QMetaType::Int, 8,
QMetaType::Void, QMetaType::Int, 8,
QMetaType::Void, QMetaType::QModelIndex, 2,
QMetaType::Void, QMetaType::QModelIndex, 2,
QMetaType::Void, QMetaType::Int, 13,
0 // eod
};
void DataEditorWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
DataEditorWidget *_t = static_cast<DataEditorWidget *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: { int _r = _t->ruta_changed((*reinterpret_cast< QString(*)>(_a[1])));
if (_a[0]) *reinterpret_cast< int*>(_a[0]) = _r; } break;
case 1: _t->on_btnSimular_clicked(); break;
case 2: _t->on_btnAplicar_clicked(); break;
case 3: _t->onModelDataChanged(); break;
case 4: _t->onTablaModelVerticalScrollChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
case 5: _t->onTablaModelFamilyVerticalScrollChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
case 6: _t->onTablaModelCellClicked((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
case 7: _t->onTablaModelFamilyCellClicked((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
case 8: _t->onCantidadValueChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
default: ;
}
} else if (_c == QMetaObject::IndexOfMethod) {
int *result = reinterpret_cast<int *>(_a[0]);
void **func = reinterpret_cast<void **>(_a[1]);
{
typedef int (DataEditorWidget::*_t)(QString );
if (*reinterpret_cast<_t *>(func) == static_cast<_t>(&DataEditorWidget::ruta_changed)) {
*result = 0;
return;
}
}
}
}
const QMetaObject DataEditorWidget::staticMetaObject = {
{ &QWidget::staticMetaObject, qt_meta_stringdata_DataEditorWidget.data,
qt_meta_data_DataEditorWidget, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *DataEditorWidget::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *DataEditorWidget::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_DataEditorWidget.stringdata0))
return static_cast<void*>(const_cast< DataEditorWidget*>(this));
return QWidget::qt_metacast(_clname);
}
int DataEditorWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QWidget::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 9)
qt_static_metacall(this, _c, _id, _a);
_id -= 9;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 9)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 9;
}
return _id;
}
// SIGNAL 0
int DataEditorWidget::ruta_changed(QString _t1)
{
int _t0 = int();
void *_a[] = { const_cast<void*>(reinterpret_cast<const void*>(&_t0)), const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
QMetaObject::activate(this, &staticMetaObject, 0, _a);
return _t0;
}
QT_END_MOC_NAMESPACE
/****************************************************************************
** Meta object code from reading C++ file 'mainwindow.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.7.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../mainwindow.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'mainwindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.7.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_MainWindow_t {
QByteArrayData data[14];
char stringdata0[296];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
{
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
QT_MOC_LITERAL(1, 11, 24), // "on_actionNuevo_triggered"
QT_MOC_LITERAL(2, 36, 0), // ""
QT_MOC_LITERAL(3, 37, 24), // "on_actionAbrir_triggered"
QT_MOC_LITERAL(4, 62, 26), // "on_actionGuardar_triggered"
QT_MOC_LITERAL(5, 89, 24), // "on_actionAyuda_triggered"
QT_MOC_LITERAL(6, 114, 35), // "on_actionAbrir_datos_GLPK_tri..."
QT_MOC_LITERAL(7, 150, 24), // "on_actionSalir_triggered"
QT_MOC_LITERAL(8, 175, 35), // "on_actionEditar_viviendas_tri..."
QT_MOC_LITERAL(9, 211, 32), // "on_actionConfiguraci_n_triggered"
QT_MOC_LITERAL(10, 244, 22), // "on_changeStatusBarText"
QT_MOC_LITERAL(11, 267, 4), // "text"
QT_MOC_LITERAL(12, 272, 10), // "closeEvent"
QT_MOC_LITERAL(13, 283, 12) // "QCloseEvent*"
},
"MainWindow\0on_actionNuevo_triggered\0"
"\0on_actionAbrir_triggered\0"
"on_actionGuardar_triggered\0"
"on_actionAyuda_triggered\0"
"on_actionAbrir_datos_GLPK_triggered\0"
"on_actionSalir_triggered\0"
"on_actionEditar_viviendas_triggered\0"
"on_actionConfiguraci_n_triggered\0"
"on_changeStatusBarText\0text\0closeEvent\0"
"QCloseEvent*"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MainWindow[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
10, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 64, 2, 0x08 /* Private */,
3, 0, 65, 2, 0x08 /* Private */,
4, 0, 66, 2, 0x08 /* Private */,
5, 0, 67, 2, 0x08 /* Private */,
6, 0, 68, 2, 0x08 /* Private */,
7, 0, 69, 2, 0x08 /* Private */,
8, 0, 70, 2, 0x08 /* Private */,
9, 0, 71, 2, 0x08 /* Private */,
10, 1, 72, 2, 0x08 /* Private */,
12, 1, 75, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void, QMetaType::QString, 11,
QMetaType::Void, 0x80000000 | 13, 2,
0 // eod
};
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: _t->on_actionNuevo_triggered(); break;
case 1: _t->on_actionAbrir_triggered(); break;
case 2: _t->on_actionGuardar_triggered(); break;
case 3: _t->on_actionAyuda_triggered(); break;
case 4: _t->on_actionAbrir_datos_GLPK_triggered(); break;
case 5: _t->on_actionSalir_triggered(); break;
case 6: _t->on_actionEditar_viviendas_triggered(); break;
case 7: _t->on_actionConfiguraci_n_triggered(); break;
case 8: _t->on_changeStatusBarText((*reinterpret_cast< QString(*)>(_a[1]))); break;
case 9: _t->closeEvent((*reinterpret_cast< QCloseEvent*(*)>(_a[1]))); break;
default: ;
}
}
}
const QMetaObject MainWindow::staticMetaObject = {
{ &QMainWindow::staticMetaObject, qt_meta_stringdata_MainWindow.data,
qt_meta_data_MainWindow, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *MainWindow::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MainWindow::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata0))
return static_cast<void*>(const_cast< MainWindow*>(this));
return QMainWindow::qt_metacast(_clname);