X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/blast.git/blobdiff_plain/8f0bedf735fe2b306c11c3f4a168245a05e37ccd..14cd6d834ab531525a51c6a6992583b3e9143e02:/BlockParameterGeneric.cpp diff --git a/BlockParameterGeneric.cpp b/BlockParameterGeneric.cpp index d652c37..14b8c59 100644 --- a/BlockParameterGeneric.cpp +++ b/BlockParameterGeneric.cpp @@ -59,14 +59,33 @@ QString BlockParameterGeneric::toVHDL(int context, int flags) { formatNoValue.append(";"); } - if (!userValue.isNull()) { - ret = formatValue.arg(name).arg(getTypeString()).arg(userValue.toString()); - } - else if (!defaultValue.isNull()) { - ret = formatValue.arg(name).arg(getTypeString()).arg(defaultValue.toString()); + QString typeStr = ""; + QString valueStr = ""; + if ((type == Boolean)||(type == Bit)) { + typeStr = "std_logic"; + if (!userValue.isNull()) { + valueStr = "'"+userValue.toString()+"'"; + ret = formatValue.arg(name).arg(typeStr).arg(valueStr); + } + else if (!defaultValue.isNull()) { + valueStr = "'"+defaultValue.toString()+"'"; + ret = formatValue.arg(name).arg(typeStr).arg(valueStr); + } + else { + ret = formatNoValue.arg(name).arg(typeStr); + } } else { - ret = formatNoValue.arg(name).arg(getTypeString()); + typeStr = getTypeString(); + if (!userValue.isNull()) { + ret = formatValue.arg(name).arg(typeStr).arg(userValue.toString()); + } + else if (!defaultValue.isNull()) { + ret = formatValue.arg(name).arg(typeStr).arg(defaultValue.toString()); + } + else { + ret = formatNoValue.arg(name).arg(typeStr); + } } } else if (context == BlockParameter::Instance) { @@ -87,10 +106,20 @@ QString BlockParameterGeneric::toVHDL(int context, int flags) { } else { if (!userValue.isNull()) { - ret = format.arg(name).arg(userValue.toString()); + if ((type == Boolean)||(type == Bit)) { + ret = format.arg(name).arg("'"+userValue.toString()+"'"); + } + else { + ret = format.arg(name).arg(userValue.toString()); + } } else if (!defaultValue.isNull()) { - ret = format.arg(name).arg(defaultValue.toString()); + if ((type == Boolean)||(type == Bit)) { + ret = format.arg(name).arg("'"+defaultValue.toString()+"'"); + } + else { + ret = format.arg(name).arg(defaultValue.toString()); + } } else { // abnormal case