Changeset 370 for trunk/yao


Ignore:
Timestamp:
06/30/10 19:46:29 (14 years ago)
Author:
yerima
Message:

DFile generated with theNeuronTable. Visual Yao.

Location:
trunk/yao/src/interface/src
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/yao/src/interface/src/ContextWindow.cpp

    r369 r370  
    11//! \file    ContextWindow.cpp 
    22//! \brief   Implementation of the Context window for visual_YAO. 
    3 //! \version 2010/06/16 (yyyy/mm/dd) 
     3//! \version 2010/06/30 (yyyy/mm/dd) 
    44//! \author  MAYAKI Abdouramane. 
    55 
     
    5050        filesListModele = new QStringListModel(filesList); 
    5151 
    52  
    5352        O_EXTOBJModele = new QStandardItemModel(0, 1) ;          
    54  
    5553 
    5654        for (vector <string>::reverse_iterator it = m_fileList.rbegin(); it != m_fileList.rend(); it++ )  
     
    148146                                                } 
    149147                                } 
    150                          
    151148 
    152149                        for (vector <string>::reverse_iterator it = m_fileList.rbegin(); it != m_fileList.rend(); it++ ) 
     
    159156                                        //cout << "coucou" << endl; 
    160157                                } 
    161                          
    162  
    163  
    164158 
    165159                        if (!o_real2.empty()) 
     
    190184                                m_contextParametersToString += "option O_DBG_TRC_AWARD \n"; 
    191185 
    192  
    193  
    194  
    195  
    196  
    197  
    198  
    199186                        m_localContext->addExternal(m_fileList); 
    200                         cout << "voici les parametres: " << endl << m_contextParametersToString << endl;  
     187                        //cout << "voici les parametres: " << endl << m_contextParametersToString << endl;  
    201188                         
    202189                        eraseDataFromLineEdit();         
     
    257244 
    258245/*****************************************************************************************************************************/ 
    259 void ContextWindow::saveContextData() { 
    260          
    261 } 
    262  
    263 /********************************************************************/ 
    264246bool ContextWindow:: isContextListEmpty() { 
    265247 
  • trunk/yao/src/interface/src/InsertFCTWindow.cpp

    r369 r370  
    11//! \file    InsertFCTWindow.cpp 
    22//! \brief   Implementation of the Defval window for visual_YAO. 
    3 //! \version 2010/06/21 (yyyy/mm/dd) 
     3//! \version 2010/06/30 (yyyy/mm/dd) 
    44//! \author  MAYAKI Abdouramane. 
    55 
  • trunk/yao/src/interface/src/MainWindow.cpp

    r369 r370  
    381381 
    382382        if (m_netwardWindow == NULL) { //to test if the object is already created. 
    383                 m_netwardWindow = new NetwardWindow(&theConstantTable); //mwc.getNetward(); 
     383                m_netwardWindow = new NetwardWindow(&theNeuronTable, &theConstantTable); //mwc.getNetward(); 
    384384                espace.addWindow(m_netwardWindow)->move(5, 15); 
    385385                m_netwardWindow->show(); 
     
    635635                                        description << "opera " << it->getProperty(0) << " " << it->getProperty(1) << " " << it->getProperty(2) << endl; 
    636636                        description << "//NETWARD ---------------------------------------------------------------------------" << endl; 
    637  
    638                                 /*for (QStringList::iterator it = m_netwardWindow->getDataNetward().begin(); it != m_netwardWindow->getDataNetward().end(); it++) 
    639                         description << "netward " << it->toStdString() << endl; 
    640                         description << endl;*/ 
     637                                for (Table<Neuron>::iterator it = theNeuronTable.begin(); it != theNeuronTable.end(); it++) 
     638                                        description << "netward " << it->getName() << " " << it->getInDegree() << " " << it->getOutDegree() << endl; 
     639                                        description << endl; 
    641640                        description << "//MODUL --------------------------------------------------------------------------" << endl; 
    642641    
  • trunk/yao/src/interface/src/ModulWindow.cpp

    r363 r370  
    11//! \file    ModulWindow.cpp 
    22//! \brief   Implementation of the Modul window for visual_YAO. 
    3 //! \version 2010/06/16 (yyyy/mm/dd) 
     3//! \version 2010/06/30 (yyyy/mm/dd) 
    44//! \author  MAYAKI Abdouramane. 
    55 
  • trunk/yao/src/interface/src/NetwardWindow.cpp

    r366 r370  
    11//! \file    NetwardWindow.cpp 
    22//! \brief   Implementation of the Netward window for visual_YAO. 
    3 //! \version 2010/06/28 (yyyy/mm/dd) 
     3//! \version 2010/06/30 (yyyy/mm/dd) 
    44//! \author  MAYAKI Abdouramane. 
    55 
     
    77//! \brief Implementation of the Netward window for visual_YAO. 
    88 
    9  
    109#include "include/NetwardWindow.hpp" 
    1110 
     
    1312using namespace yao; 
    1413 
    15 NetwardWindow::NetwardWindow(Table <Constant> *aSpaceTable, QWidget *parent) : QWidget(parent) {   /*!< The constructor. */ 
     14NetwardWindow::NetwardWindow(yao::Table <yao::Neuron> *aNeuronTable, Table <Constant> *aConstantTable, QWidget *parent) : QWidget(parent) {   /*!< The constructor. */ 
    1615        setupUi(this); 
    1716 
     17        m_localConstantTable    = aConstantTable;        
     18        m_localNeuronTable      = aNeuronTable; 
     19 
     20        QRegExp regExp("[A-Za-z_][A-Za-z0-9_]*");  
     21        m_nameNetwardLine->setValidator(new QRegExpValidator(regExp, this)); 
    1822         
    1923        m_netwardNbiCombo->setEditable(true); 
     
    2327        m_netwardNbsCombo->insertItem(0, ""); 
    2428 
    25 //      for (Table<Constant>::reverse_iterator it = localConstantTable->rbegin(); it != localConstantTable->rend(); it++) { 
    26   
    27   //               m_spaceD1->insertItem(1, QString(it->getName().c_str())); 
    28     //             m_spaceD2->insertItem(1, QString(it->getName().c_str())); 
    29       //           m_spaceD3->insertItem(1, QString(it->getName().c_str())); 
    30            //} 
    31  
    32  
    33     //QStringList horizontalHeaders; 
    34     //horizontalHeaders << "Nom " << "Entrees" << "Sorties"; /*!< added Nom Netward Entrees and sorties in table */ 
    35          
    36     //m_netwardTableView                = new QTableWidget(0, 3);  /*!< m_netwardTableView declaration */  
     29        for (Table<Constant>::reverse_iterator it = m_localConstantTable->rbegin(); it != m_localConstantTable->rend(); it++)  
     30        { 
     31  
     32                m_netwardNbiCombo->insertItem(1, QString(it->getName().c_str())); 
     33                m_netwardNbsCombo->insertItem(1, QString(it->getName().c_str())); 
     34        } 
     35 
    3736        m_netwardModel  = new QStandardItemModel(0, 3); 
    3837        m_netwardModel->setHorizontalHeaderLabels(QStringList() << "Nom du réseau" << "Entrees" << "Sorties");  /*!< displays the QTableWidget */ 
     38 
     39        for (Table<Neuron>::iterator it = m_localNeuronTable->begin(); it != m_localNeuronTable->end(); it++) { 
     40 
     41                int row = m_netwardModel->rowCount(); 
     42 
     43                ostringstream in, out; 
     44                 
     45                        in << it->getInDegree(); 
     46                        out << it->getOutDegree(); 
     47 
     48                m_netwardModel->setItem(row, 0, new QStandardItem(QString(it->getName().c_str()))); /*!< Gets the space name.*/ 
     49                m_netwardModel->setItem(row, 1, new QStandardItem(QString(in.str().c_str()))); /*!< Gets the space dimension (1, 2 or 3).*/ 
     50                m_netwardModel->setItem(row, 2, new QStandardItem(QString(out.str().c_str()))); /*!< Gets the space dimension (1, 2 or 3).*/ 
     51                //m_netwardModel->setItem(row, , new QStandardItem(QString(it->getProperty(2).c_str()))); /*!< Gets the trajectory choosed in the space directive.*/ 
     52          } 
     53         
    3954 
    4055        m_netwardTableView->setModel(m_netwardModel); 
     
    4358        m_netwardTableView->setSelectionBehavior(QAbstractItemView::SelectRows);  /*!< this ligne give a section of the ligne */ 
    4459        m_netwardTableView->resizeColumnsToContents(); 
    45     //index1 = m_netwardTableView->currentIndex();  
    46  
    47      
    48         //connect(m_AjoutNetward, SIGNAL(clicked()), this, SLOT(addNetwardRow())); 
    49         //connect(m_SuppNetward, SIGNAL(clicked()), this, SLOT(deleteNetwardRow())); 
     60     
     61        connect(m_netwardAddButton, SIGNAL(clicked()), this, SLOT(addNetwardRow())); 
     62        connect(m_netwardDeleteButton, SIGNAL(clicked()), this, SLOT(deleteNetwardRow())); 
    5063        connect(m_netwardQuitButton, SIGNAL(clicked()), this, SLOT(close())); 
    5164        connect(m_netwardHelpButton, SIGNAL(clicked()), this, SLOT(callNetwardHelp())); 
    52         //connect(m_enregNetward, SIGNAL(clicked()), this, SLOT(saveNetwardData())); 
    5365   
    5466  setFixedWidth(baseSize().width() + 392); 
    5567} 
    56 /****************************************************************************************/ 
    57 /*void NetwardWindow::addNetwardRow() { 
    58   
    59         //addRow(); 
    60        // addRowNetward(); 
    61                  static int row = 0; 
    62                  int l = 0; 
    63         QString nomfct = m_ligneNomNetward -> text(); 
    64         QString entrefct = m_ligneNbiNetward -> text(); 
    65         QString sortifct = m_ligneNbsNetward -> text(); 
    66         
    67          for(int i1 = 0; i1 < nomfct.size(); i1++) 
    68         //if (m_ligneNomTraj->text().isEmpty()) 
    69      if(!((nomfct.at(i1) >= QChar('a')&& nomfct.at(i1) <= QChar('z')) || (nomfct.at(i1) >= QChar('A')&& nomfct.at(i1) <= QChar('Z')) //-------- 
    70          || (nomfct.at(i1) >= QChar('0')&& nomfct.at(i1) <= QChar('9')) || (nomfct.at(i1) == QChar('_')))) //|| (line1.isEmpty()) 
    71     { 
    72         QMessageBox::critical(this, "Erreur", "Veuillez entrer une valeur exacte du nom netward."); 
    73         return; // Arrêt de la méthode 
    74     } 
    75        for(int i2 = 0; i2 < entrefct.size(); i2++) 
    76         //if (m_ligneNomTraj->text().isEmpty()) 
    77      if(!((entrefct.at(i2) >= QChar('0') && entrefct.at(i2) <= QChar('9')) || (entrefct.at(i2) == QChar('-')) || (entrefct.at(i2) == QChar('E')) || (entrefct.at(i2) == QChar('e')) || (entrefct.at(i2) == QChar('+')) || (entrefct.at(i2) == QChar('.')))) //|| (line1.isEmpty()) 
    78     { 
    79         QMessageBox::critical(this, "Erreur", "Veuillez entrer une valeur correcte de l'etree."); 
    80         return; // Arrêt de la méthode 
    81     } 
    82         for(int il = 0; il < sortifct.size(); il++) 
    83         //if (m_ligneNomTraj->text().isEmpty()) 
    84      if(!((sortifct.at(il) >= QChar('0') && sortifct.at(il) <= QChar('9')) || (sortifct.at(il) == QChar('-')) || (sortifct.at(il) == QChar('E')) || (sortifct.at(il) == QChar('e')) || (sortifct.at(il) == QChar('+')) || (sortifct.at(il) == QChar('.')))) //|| (line1.isEmpty()) 
    85     { 
    86         QMessageBox::critical(this, "Erreur", "Veuillez entrer une valeur correcte de la sortie."); 
    87         return; // Arrêt de la méthode 
    88     } 
    89  
    90  
    91        if ( m_ligneNomNetward->text().isEmpty()) 
    92         { 
    93     QMessageBox::critical(this, "Erreur", "Le champ du nom netward est vide: entrer un nom SVP!"); 
    94         return; // Arrêt de la méthode 
    95     } 
    96            
    97              if (l >= 0) 
    98 { 
    99              
    100       m_netwardTableView->setItem(row, 0, new QTableWidgetItem(m_ligneNomNetward -> text())); 
    101       m_netwardTableView->setItem(row, 1, new QTableWidgetItem(m_ligneNbiNetward -> text())); 
    102       m_netwardTableView->setItem(row, 2, new QTableWidgetItem(m_ligneNbsNetward -> text()));   
    103                 
    104       netwardData.push_back(m_ligneNomNetward -> text() + " " + m_ligneNbiNetward -> text() + " " + m_ligneNbsNetward -> text()); 
    105            
    106         
    107     row++; 
    108 }  
    109  
    110     //m_supDefval->setEnabled(true); 
    111     //initialiserChamps(); 
    112  
    113  
    114 }*/ 
    115 /****************************************************************************************/ 
    116 /*void NetwardWindow::deleteNetwardRow() { 
    117  
    118         m_netwardTableView->removeRow(m_netwardTableView->currentRow()); 
    119         isCalled = true; 
    120  
    121  
    122 }*/ 
     68 
     69/****************************************************************************************/ 
     70void NetwardWindow::addNetwardRow() { 
     71  
     72        int row = m_netwardModel->rowCount();//To have the current row of the tableView. 
     73 
     74        string name             = m_nameNetwardLine->text().toStdString(), 
     75                m_netwardNbi    = m_netwardNbiCombo->currentText().toStdString(), 
     76                m_netwardNbs    = m_netwardNbsCombo->currentText().toStdString(), 
     77                m_netwardNbi2   , 
     78                m_netwardNbs2   ; 
     79     
     80 
     81        Constant *c1; //Nous créons d'abord un pointeur de constante. 
     82        Constant *c2; //Nous créons d'abord un pointeur de constante. 
     83  
     84        c1  = m_localConstantTable->find(m_netwardNbi); //Ensuite on passe au pointeur le resultat de la recherche de la chaine en utilisant find. 
     85        c2 = m_localConstantTable->find(m_netwardNbs); //Ensuite on passe au pointeur le resultat de la recherche de la chaine en utilisant find. 
     86     
     87        if (c1 != 0) { //C'est alors une constante. 
     88 
     89                m_netwardNbi2 = m_localConstantTable->find(m_netwardNbi)->getText();   
     90     
     91        }    
     92        else { 
     93 
     94                for(unsigned int i=0; i < m_netwardNbi.size(); i++) { 
     95                        if(!(m_netwardNbi[i] >= '0' && m_netwardNbi[i] <= '9')){ 
     96  
     97                                QMessageBox::about(this, tr("Erreur de saisie!"), tr("Saisir un entier ou faire un choix dans la liste deroulante du champ \"nbi\".")); 
     98                                return; 
     99                        }    
     100 
     101                }    
     102 
     103                m_netwardNbi2 = m_netwardNbi;     
     104        }    
     105 
     106        if (c2 != NULL) { //C'est alors une constante. 
     107 
     108                m_netwardNbs2  =  m_localConstantTable->find(m_netwardNbs)->getText();     
     109     
     110        } 
     111        else { 
     112                                for(unsigned int i=0; i < m_netwardNbs.size(); i++) { 
     113                if(!(m_netwardNbs[i] >= '0' && m_netwardNbs[i] <= '9')){ 
     114 
     115                     QMessageBox::about(this, tr("Erreur de saisie!"), tr("Saisir un entier ou faire un choix dans la liste deroulante du champ \"nbs\".")); 
     116                      return; 
     117                 } 
     118 
     119                } 
     120 
     121               m_netwardNbs2 = m_netwardNbs; 
     122 
     123        } 
     124 
     125        if (name.empty()) { 
     126                QMessageBox::about(this, tr("Erreur de saisie!"), 
     127                     tr("<p>Le champ \"Nom reseau\" ne doit pas etre vide.")); 
     128                return; 
     129        } 
     130        else 
     131 
     132         /*if (!.empty())*/ { 
     133                 if (!(m_netwardNbi2.empty() || m_netwardNbs2.empty()))  
     134                        {  
     135                                m_netwardModel->setItem(row, 0, new QStandardItem(QString(name.c_str()))); 
     136                                m_netwardModel->setItem(row, 1, new QStandardItem(QString(m_netwardNbi2.c_str()))); 
     137                        //      if (!m_netwardNbs2.empty())  
     138                                m_netwardModel->setItem(row, 2, new QStandardItem(QString(m_netwardNbs2.c_str())));  
     139                                int in  = toInt(m_netwardNbi2); 
     140                                int out = toInt(m_netwardNbs2); 
     141                                m_localNeuronTable->push_back(Neuron(name, in, out)); 
     142                        }        
     143                else 
     144                        { 
     145                                if (m_netwardNbi2.empty()) 
     146                                        { 
     147                                                QMessageBox::about(this, tr("Erreur de saisie!"), tr("<p>Le champ \"nbi\" ne doit pas etre vide.")); 
     148                                                return; 
     149 
     150                                        } 
     151 
     152                                if (m_netwardNbs2.empty()) 
     153                                        { 
     154                                                QMessageBox::about(this, tr("Erreur de saisie!"), tr("<p>Le champ \"nbs\" ne doit pas etre vide.")); 
     155                                                return; 
     156 
     157                                        } 
     158 
     159                        } 
     160        //if (!isSpaceTableEmpty()) m_spaceDeleteButton->setEnabled(true); 
     161                 
     162        } 
     163         
     164        toInitialize(); 
     165} 
     166 
     167/****************************************************************************************/ 
     168void NetwardWindow::deleteNetwardRow() { 
     169 
     170//      m_netwardTableView->removeRow(m_netwardTableView->currentRow()); 
     171//      isCalled = true; 
     172 
     173} 
     174 
     175/****************************************************************************************/ 
     176void NetwardWindow::toInitialize() { 
     177 
     178        m_nameNetwardLine->setText(""); 
     179        m_netwardNbiCombo->setCurrentIndex(0); 
     180        m_netwardNbsCombo->setCurrentIndex(0); 
     181 
     182} 
     183 
     184/****************************************************************************************/ 
     185const int NetwardWindow::toInt(const string& s) { 
     186  
     187      return atoi(s.c_str()); 
     188  
     189} 
    123190 
    124191/****************************************************************************************/ 
  • trunk/yao/src/interface/src/include/ContextWindow.hpp

    r369 r370  
    3939                //void enregistrerContext(); 
    4040                //void ouvrirProjetExistant3(); 
    41                 void saveContextData(); 
    4241        //      void addContextRow(); 
    4342                void saveParameters(); 
  • trunk/yao/src/interface/src/include/MainWindow.hpp

    r367 r370  
    243243                        yao::Table <yao::Space> theSpaceTable; 
    244244                        yao::Table <yao::Operator> theOperaTable; 
     245                        yao::Table <yao::Neuron> theNeuronTable; 
    245246                        yao::Table <yao::Modul> theModulTable; 
    246247                        yao::Table <yao::Connection> theConnectionTable; 
  • trunk/yao/src/interface/src/include/NetwardWindow.hpp

    r366 r370  
    1010#define NETWARD_HPP 
    1111#include "../../../YAOObjects/Constant.hpp" 
     12#include "../../../YAOObjects/Constant.hpp" 
     13#include "../../../YAOObjects/Neuron.hpp" 
    1214#include "../../../YAOObjects/Table.hpp" 
    13  
    1415#include "../../ui_netwardwindow.h" 
    1516#include <QMessageBox> 
     
    2930             *   
    3031             */ 
    31             NetwardWindow(yao::Table <yao::Constant> *aSpaceTable, QWidget *parent=0);  /*!< This function sets the file's name. */ 
     32            NetwardWindow(yao::Table <yao::Neuron> *aNeuronTable, yao::Table <yao::Constant> *aConstantTable, QWidget *parent=0);  /*!< This function sets the file's name. */ 
    3233             
    3334            //--void addRowNetward(); 
     35                void toInitialize(); 
     36                const int toInt(const std::string& s); 
    3437       
    3538        public slots :                       /*!< Functions called after a click. */ 
    3639                 
    37                 //void addNetwardRow();    /*!< This function is called to add row in the visual window model. */ 
    38                 //void deleteNetwardRow();  /*!< This function is called to delete row from the Yao model. */ 
     40                void addNetwardRow();    /*!< This function is called to add row in the visual window model. */ 
     41                void deleteNetwardRow();  /*!< This function is called to delete row from the Yao model. */ 
    3942                void callNetwardHelp();  /*!< This function is called to help of this directive.*/ 
    4043 
     
    4952                QModelIndex index1; 
    5053                QStandardItemModel *m_netwardModel; 
     54                 
     55                yao::Table <yao::Constant> *m_localConstantTable;  /*!< This function sets the file's name. */ 
     56                yao::Table <yao::Neuron> *m_localNeuronTable;  /*!< This function sets the file's name. */ 
    5157 
    5258}; 
  • trunk/yao/src/interface/src/include/TrajectoryWindow.hpp

    r363 r370  
    6666 
    6767                //QModelIndex index2; 
    68                 // QString lstF2; 
    6968 
    7069        protected:  
Note: See TracChangeset for help on using the changeset viewer.