]> AND Private Git Repository - blast.git/blobdiff - GroupBlock.cpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
changed sources to stimulis
[blast.git] / GroupBlock.cpp
index fda0546ed12ff4fb57417ced4dbc4e8d46f948e4..d682a57b2990ab23d738221d6d515de9e9d292a7 100644 (file)
@@ -139,11 +139,11 @@ void GroupBlock::createInputPattern() {
 }
 
 void GroupBlock::computeAdmittanceDelays() throw(Exception) {
 }
 
 void GroupBlock::computeAdmittanceDelays() throw(Exception) {
-  throw(Exception(INVALID_GROUPBLOCK_USE));
+  throw(Exception(INVALID_GROUPBLOCK_USE,this));
 }
 
 void GroupBlock::checkInputPatternCompatibility()  throw(Exception){
 }
 
 void GroupBlock::checkInputPatternCompatibility()  throw(Exception){
-  throw(Exception(INVALID_GROUPBLOCK_USE));
+  throw(Exception(INVALID_GROUPBLOCK_USE,this));
 }
 
 
 }
 
 
@@ -167,7 +167,7 @@ void GroupBlock::computeOutputPattern(int nbExec) throw(Exception) {
 
     bool addIt = false;
     // if a block is a generator and has control outputs, add it
 
     bool addIt = false;
     // if a block is a generator and has control outputs, add it
-    if (block->isGeneratorBlock()) {
+    if (block->isSourceBlock()) {
       if (block->getControlOutputs().size() > 0) addIt = true;
     }
     else {
       if (block->getControlOutputs().size() > 0) addIt = true;
     }
     else {
@@ -200,7 +200,7 @@ void GroupBlock::computeOutputPattern(int nbExec) throw(Exception) {
   while (!fifo.isEmpty()) {
     AbstractBlock* block = fifo.takeFirst();
     
   while (!fifo.isEmpty()) {
     AbstractBlock* block = fifo.takeFirst();
     
-    if (block->getPatternComputed()) continue; // block has already been processed
+    if (block->getOutputPatternComputed()) continue; // block has already been processed
 
     cout << "computing compat and output for " << qPrintable(block->getName()) << endl;
     
 
     cout << "computing compat and output for " << qPrintable(block->getName()) << endl;
     
@@ -221,7 +221,7 @@ void GroupBlock::computeOutputPattern(int nbExec) throw(Exception) {
       throw(e);
     }
     canCompute = true;
       throw(e);
     }
     canCompute = true;
-    block->setPatternComputed(true);
+
     /* add other blocks connected from block to the fifo but only if
        all their connected inputs are connected to blocks that have
        a traversalLevel >=0
     /* add other blocks connected from block to the fifo but only if
        all their connected inputs are connected to blocks that have
        a traversalLevel >=0
@@ -240,7 +240,7 @@ void GroupBlock::computeOutputPattern(int nbExec) throw(Exception) {
           ConnectedInterface* connFrom = ((ConnectedInterface*)iface)->getConnectedFrom();
           //cout << qPrintable(connFrom->getName()) << " of " << qPrintable(connFrom->getOwner()->getName()) << endl;
 
           ConnectedInterface* connFrom = ((ConnectedInterface*)iface)->getConnectedFrom();
           //cout << qPrintable(connFrom->getName()) << " of " << qPrintable(connFrom->getOwner()->getName()) << endl;
 
-          if ((connFrom != NULL) && (connFrom->getOwner()->getPatternComputed() == false)) {
+          if ((connFrom != NULL) && (connFrom->getOwner()->getOutputPatternComputed() == false)) {
             addIt = false;
             break;
           }
             addIt = false;
             break;
           }
@@ -264,7 +264,7 @@ void GroupBlock::computeOutputPattern(int nbExec) throw(Exception) {
       QList<char>* pattern = new QList<char>(*(connIface->getConnectedFrom()->getOutputPattern()));
       connIface->setOutputPattern(pattern);
     }
       QList<char>* pattern = new QList<char>(*(connIface->getConnectedFrom()->getOutputPattern()));
       connIface->setOutputPattern(pattern);
     }
-    setPatternComputed(true);
+    setOutputPatternComputed(true);
   }
 }
 
   }
 }