#ifdef VHDL_TESTBENCH

/*
 * $Id$
 *
 * [ Description ]
 * 
 */

#include "Behavioural/include/Vhdl_Testbench.h"

namespace morpheo              {
namespace behavioural          {

//   void Vhdl_Testbench::generate_process_clock (uint32_t counter)
//   {
//     _vhdl->set_body("");
//     _vhdl->set_body(_clock_name+" <= not "+_clock_name+" after 50 ns;");
//     _vhdl->set_body("testbench_counter <= testbench_counter+1 after 100 ns;");
//     _vhdl->set_body("");

//     _vhdl->set_body("process ("+_clock_name+")");
//     _vhdl->set_body("begin");
//     _vhdl->set_body("\tif "+_clock_name+"'event and "+_clock_name+" = '1' then");
//     _vhdl->set_body("");
//     _vhdl->set_body("\t\tassert (not ((testbench_must_test = '1') and not (testbench_test = testbench_output)))");
//     _vhdl->set_body("\t\treport \"   Test KO - output's test is different of output's component\"");
//     _vhdl->set_body("\t\tseverity FAILURE;");
//     _vhdl->set_body("");
//     _vhdl->set_body("\t\tassert (not ((testbench_must_test = '1') and     (testbench_test = testbench_output)))");
//     _vhdl->set_body("\t\treport \"   Test OK\"");
//     _vhdl->set_body("\t\tseverity NOTE;");
//     _vhdl->set_body("");
//     _vhdl->set_body("\t\tassert (not ( testbench_must_test = '0'))");
//     _vhdl->set_body("\t\treport \"No Test\"");
//     _vhdl->set_body("\t\tseverity NOTE;");
//     _vhdl->set_body("");
//     _vhdl->set_body("\tend if;");
//     _vhdl->set_body("end process;");
    
//     _vhdl->set_body("");
//     _vhdl->set_body("assert (not (testbench_counter = " + toString(counter)+"))");
//     _vhdl->set_body("report \"End of Simulation\"");
//     _vhdl->set_body("severity FAILURE;");
//   };

}; // end namespace behavioural          
}; // end namespace morpheo              

#endif
