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

Private GIT Repository
started VHDL generation of GroupBlock
[blast.git] / AbstractInputModifier.h
index bbc5bdd224bc10127b4bb3e53a020050e8041962..6f3abe8f8b3360f3b2c8beb77f3511c14449287d 100644 (file)
@@ -5,14 +5,21 @@
 \r
 #include <QtCore>\r
 \r
 \r
 #include <QtCore>\r
 \r
+#include "Exception.h"\r
+\r
+class ConnectedInterface;\r
+\r
 using namespace std;\r
 using namespace Qt;\r
 \r
 class AbstractInputModifier {\r
 \r
 using namespace std;\r
 using namespace Qt;\r
 \r
 class AbstractInputModifier {\r
 \r
-public:  \r
+public:\r
+\r
+  enum ModifierVHDLContext {AnyContext = 0, Entity = 1, Component = 2, Architecture = 3 };\r
+  enum ModifierVHDLFlags { NoComma = 1 };\r
       \r
       \r
-  AbstractInputModifier();\r
+  AbstractInputModifier(ConnectedInterface* _associatedIface);\r
   virtual ~AbstractInputModifier();\r
 \r
   //getters\r
   virtual ~AbstractInputModifier();\r
 \r
   //getters\r
@@ -29,9 +36,11 @@ public:
 \r
   // others\r
   virtual QList<char>* getModifiedInput(QList<char>* input) = 0;\r
 \r
   // others\r
   virtual QList<char>* getModifiedInput(QList<char>* input) = 0;\r
+  virtual QString toVHDL(int context, int flags) throw(Exception) = 0;\r
 \r
  protected:\r
   QList<char>* pattern; // the pattern modified by this\r
 \r
  protected:\r
   QList<char>* pattern; // the pattern modified by this\r
+  ConnectedInterface* associatedIface;\r
 };\r
 \r
 #endif // __ABSTRACTINPUTMODIFIER_H__\r
 };\r
 \r
 #endif // __ABSTRACTINPUTMODIFIER_H__\r