From d7e2ddcdf6c50350977efe7ab18b97cd355f7507 Mon Sep 17 00:00:00 2001 From: Eric Kooistra <kooistra@astron.nl> Date: Tue, 19 Jan 2021 08:17:46 +0100 Subject: [PATCH] Added bool_to_str() to be able to print BOOLEANs TRUE or FALSE. --- libraries/base/common/src/vhdl/common_str_pkg.vhd | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libraries/base/common/src/vhdl/common_str_pkg.vhd b/libraries/base/common/src/vhdl/common_str_pkg.vhd index c93d87bfac..492bb411ab 100644 --- a/libraries/base/common/src/vhdl/common_str_pkg.vhd +++ b/libraries/base/common/src/vhdl/common_str_pkg.vhd @@ -42,6 +42,7 @@ PACKAGE common_str_pkg IS FUNCTION nof_digits(number: NATURAL) RETURN NATURAL; FUNCTION nof_digits_int(number: INTEGER) RETURN NATURAL; + FUNCTION bool_to_str(bool : BOOLEAN) RETURN STRING; FUNCTION time_to_str(in_time : TIME) RETURN STRING; FUNCTION str_to_time(in_str : STRING) RETURN TIME; FUNCTION slv_to_str(slv : STD_LOGIC_VECTOR) RETURN STRING; @@ -102,6 +103,17 @@ PACKAGE BODY common_str_pkg IS END IF; END; + FUNCTION bool_to_str(bool : BOOLEAN) RETURN STRING IS + CONSTANT c_max_len_bool : NATURAL := 5; -- "TRUE", "FALSE" + VARIABLE v_line: LINE; + VARIABLE v_str: STRING(1 TO c_max_len_bool):= (OTHERS => ' '); + BEGIN + STD.TEXTIO.WRITE(v_line, bool); + v_str(v_line.ALL'RANGE) := v_line.ALL; + deallocate(v_line); + RETURN v_str; + END; + FUNCTION time_to_str(in_time : TIME) RETURN STRING IS CONSTANT c_max_len_time : NATURAL := 20; VARIABLE v_line : LINE; -- GitLab