17 :
public sc_core::sc_port<sc_core::sc_signal_inout_if<T>, 0, sc_core::SC_ZERO_OR_MORE_BOUND>,
18 public sc_core::sc_module
22 bool vals_valid =
false;
27 : sc_core::sc_port<sc_core::sc_signal_inout_if<T>, 0, sc_core::SC_ZERO_OR_MORE_BOUND>(name)
28 , sc_core::sc_module(sc_core::sc_module_name((std::string(name) +
"_thread").
c_str()))
36 while (vals_valid ==
false) {
39 std::vector<T>
vs = vals;
42 for (
int i = 0;
i < this->size();
i++) {
44 SCP_DEBUG(())(
"Writing {} to {}",
v,
t->get_parent().name());
46 this->operator[](
i)->write(
v);
48 wait(sc_core::SC_ZERO_TIME);
52 void async_write_vector(
const std::vector<T>&
vs)
54 assert(vals_valid ==
false);