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

Private GIT Repository
added clk/rst link when creating a block
[blast.git] / GroupBlock.h
index bb5e7710cb0adcc3b1f40d786cbe32160fab76e6..63104def7d2b08ca88e330b474e71cfa890b37a5 100644 (file)
@@ -17,7 +17,7 @@ using namespace Qt;
 class GroupBlock : public AbstractBlock {
 public:
 
-  GroupBlock(GroupBlock* _parent) throw(Exception);
+  GroupBlock(GroupBlock* _parent, bool createIfaces = true) throw(Exception);
   virtual ~GroupBlock();
 
   // getters
@@ -46,7 +46,8 @@ public:
   void computeOutputPattern(int nbExec = -1) throw(Exception);
   void computeAdmittanceDelays() throw(Exception);
   
-  void generateVHDL(const QString& path) throw(Exception); // main entry to generate the VHDL code
+  QList<QString> getExternalResources();
+  void generateVHDL(const QString& path) throw(Exception); // main entry to generate the VHDL code  
 
 private:    
   // patterns  
@@ -66,11 +67,10 @@ private:
   void createInputPattern();
 
   void generateComments(QTextStream& out, QDomElement &elt, QString coreFile) throw(Exception); // generates comments from <comments> element
-  void generateLibraries(QTextStream& out, QDomElement &elt) throw(Exception); // generates libraries from <libraries> element
-  void generateEntity(QTextStream& out, bool hasController=false) throw(Exception); // generate the entity using reference
+  void generateLibraries(QTextStream& out, QDomElement &elt) throw(Exception); // generates libraries from <libraries> element  
   void generateArchitecture(QTextStream& out, QDomElement &elt ) throw(Exception); // generate the architecture using <architecture> element
   void generateController(QTextStream& out) throw(Exception); // generate the wishbone controller of the block
-  
+  void generateEntityOrComponentBody(QTextStream& out, int indentLevel, bool hasController=false) throw(Exception); // generate the entity/compo body using reference
   bool topGroup;  
   QList<AbstractBlock*> blocks; // contains instances of FunctionalBlock or GroupBlock that are children of this group