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

Private GIT Repository
modifying pattern methods to throw exceptions
[blast.git] / ReferenceInterface.cpp
index faa51e842eb6e858d2f97ad69c68e92b7d2e9c8a..a0f50cad9cc22018db0cffa8555ac6eaf052a76d 100644 (file)
@@ -17,6 +17,13 @@ throw (Exception) : AbstractInterface(_owner, _name, _type, _width, _direction,
   if (_owner->isReferenceBlock()) throw(Exception(BLOCK_INVALID_TYPE));
 
   multiplicity = _multiplicity;
+  
+  if (purpose == Control) {
+    // override some attributes with forced values
+    type = Boolean;
+    width = "1";
+    multiplicity = 1;
+  }  
   if (direction == InOut) {
     multiplicity = 1;
   }
@@ -42,9 +49,9 @@ int ReferenceInterface::translatePurpose(const QString& txt) {
   else if (txt == "reset") {
     return Reset;
   }
-  if (txt == "wb") {
+  else if (txt == "wb") {
     return Wishbone;
-  }
+  }  
   return Data;
 }