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

Private GIT Repository
changed ref/impls xsd and xml
[blast.git] / FunctionalBlock.cpp
index 1fe756929ee739a0e45252d1fad79fa6a3d1813b..ccaa7b2c8ead70bc09165e0ac451ce2ee039ecf1 100644 (file)
@@ -8,7 +8,7 @@
 #include "ArithmeticEvaluator.h"\r
 \r
 \r
-FunctionalBlock::FunctionalBlock(GroupBlock *_parent, ReferenceBlock *_reference) throw(Exception) :  AbstractBlock() {\r
+FunctionalBlock::FunctionalBlock(GroupBlock *_parent, ReferenceBlock *_reference, bool createIfaces) throw(Exception) :  AbstractBlock() {\r
   //if (! _reference->isReferenceBlock()) throw(Exception(BLOCK_INVALID_TYPE));\r
   //if (! _group->isGroupBlock()) throw(Exception(BLOCK_INVALID_TYPE));\r
   reference = _reference;\r
@@ -30,6 +30,10 @@ FunctionalBlock::FunctionalBlock(GroupBlock *_parent, ReferenceBlock *_reference
   delta = -1;\r
   evaluator = NULL;\r
 \r
+  if (createIfaces) {\r
+    populate();\r
+  }\r
+\r
 }\r
 \r
 FunctionalBlock::~FunctionalBlock() {\r
@@ -96,7 +100,7 @@ void FunctionalBlock::populate() {
     addInterface(inter);\r
     /* WARNING FOR THE FUTURE :\r
        in case of there are several clock interfaces ofr that block\r
-       it would be a godd idea to make the user choose which one\r
+       it would be a good idea to make the user choose which one\r
        must be connected to defautl clk.\r
        Presently, the first encountered is chosen\r
      */\r
@@ -122,18 +126,6 @@ void FunctionalBlock::populate() {
       }       \r
     }\r
   }\r
-\r
-  // connect clk and rst to group clk/rst or to clkrstgen\r
-  if ((name != "clkrstgen") && (parent != NULL)) {\r
-    try {\r
-      connectClkReset();\r
-    }\r
-    catch(Exception e) {\r
-      AbstractBlock* source = (AbstractBlock *)(e.getSource());\r
-      cerr << qPrintable(source->getName()) << ":" << qPrintable(e.getMessage()) << endl;\r
-      throw(e);\r
-    }\r
-  }\r
 }\r
 \r
 QString FunctionalBlock::getReferenceXmlFile() {\r
@@ -1432,23 +1424,22 @@ void FunctionalBlock::generateComments(QTextStream& out, QDomElement &elt, QStri
   QString mail = eltAuthor.attribute("mail","");\r
   out << "--  Author(s)   : "<<firstName+" "<<lastName<<" ("<<mail<<")" << endl;\r
   out << "--" << endl;\r
-  QDomElement eltDate = eltAuthor.nextSiblingElement("date");\r
-  QString crea = eltDate.attribute("creation","");\r
+  QDomElement eltLog = eltAuthor.nextSiblingElement("log");\r
+  QString crea = eltLog.attribute("creation","");\r
   out << "--  Creation Date   : "<<crea<< endl;\r
   out << "--" << endl;\r
-  QDomElement eltRelated = eltDate.nextSiblingElement("related_files");\r
-  QString relateds = eltRelated.attribute("list","");\r
-  out << "--  Related files   :\n"<<relateds<<endl;\r
-  out << "--" << endl;\r
-  QDomElement eltDesc = eltRelated.nextSiblingElement("description");\r
-  QDomElement desc = eltDesc.firstChildElement();\r
-  QString descTxt = desc.text();\r
-  out << "--  Decription      :\n"<<descTxt<<endl;\r
+  QDomNodeList listModifs = eltLog.elementsByTagName("modification");\r
+  for(int j=0;j<listModifs.length();j++) {\r
+    QDomNode nodeModif = listModifs.at(j);\r
+    QDomElement eltModif = nodeModif.toElement();\r
+  }\r
+  out << "-- Description   : " << endl;\r
+  out << reference->getDescription() << endl;\r
   out << "--" << endl;\r
-  QDomElement eltNote = eltDesc.nextSiblingElement("description");\r
+  QDomElement eltNote = eltLog.nextSiblingElement("notes");\r
   QDomElement note = eltNote.firstChildElement();\r
   QString noteTxt = note.text();\r
-  out << "--  Note          :\n"<<noteTxt<<endl;\r
+  out << "--  Notes          :\n"<<noteTxt<<endl;\r
   out << "--" << endl;\r
   for(int i = 0; i < 50; i++) {\r
     out << "--";\r