diff --git a/develop/structscc_1_1__min__restriction-members.html b/develop/DEFINE_ENUM4CCI-example.html similarity index 62% rename from develop/structscc_1_1__min__restriction-members.html rename to develop/DEFINE_ENUM4CCI-example.html index e27984e1..085d82b4 100644 --- a/develop/structscc_1_1__min__restriction-members.html +++ b/develop/DEFINE_ENUM4CCI-example.html @@ -5,7 +5,7 @@ -scc: Member List +scc: DEFINE_ENUM4CCI @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -56,22 +56,26 @@
-
scc::_min_restriction< T > Member List
+
DEFINE_ENUM4CCI
- -

This is the complete list of members for scc::_min_restriction< T >, including all inherited members.

- - - - -
_min_restriction(T min) (defined in scc::_min_restriction< T >)scc::_min_restriction< T >inline
min (defined in scc::_min_restriction< T >)scc::_min_restriction< T >
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_min_restriction< T >)scc::_min_restriction< T >inline
+

Generates the declaration of an enum class including cci pack/unpack converter functions.

Note
This cannot be used inside name spaces!
+

(log_lvl, (NONE)(LOW)(MEDIUM)(HIGH)(FULL))

+
Parameters
+ + + +
namename of the enum class.
val_seqsequence of the enum class values
+
+
+
Returns
code declaring the enum class.
+
diff --git a/develop/cci__util_8h_source.html b/develop/cci__util_8h_source.html new file mode 100644 index 00000000..d0e519f7 --- /dev/null +++ b/develop/cci__util_8h_source.html @@ -0,0 +1,165 @@ + + + + + + + +scc: /home/eyck/git/SystemC-Components/src/sysc/scc/cci_util.h Source File + + + + + + + + + + + +
+
+ + + + + + +
+
scc +  2024.03 +
+
SystemC components library
+
+
+ + + + + + +
+
+ +
+
+
+ +
+
+
+
cci_util.h
+
+
+
1 /*******************************************************************************
+
2  * Copyright 2024 MINRES Technologies GmbH
+
3  *
+
4  * Licensed under the Apache License, Version 2.0 (the "License");
+
5  * you may not use this file except in compliance with the License.
+
6  * You may obtain a copy of the License at
+
7  *
+
8  * http://www.apache.org/licenses/LICENSE-2.0
+
9  *
+
10  * Unless required by applicable law or agreed to in writing, software
+
11  * distributed under the License is distributed on an "AS IS" BASIS,
+
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
13  * See the License for the specific language governing permissions and
+
14  * limitations under the License.
+
15  *******************************************************************************/
+
16 
+
17 #ifndef _SYSC_SCC_CCI_UTIL_H_
+
18 #define _SYSC_SCC_CCI_UTIL_H_
+
19 
+
20 #include <boost/preprocessor.hpp>
+
21 #include <cci_core/cci_value_converter.h>
+
22 
+
23 #define DEFINE_ENUM_DECL_VAL(r, name, val) val // BOOST_PP_CAT(name, BOOST_PP_CAT(_, val))
+
24 #define DEFINE_ENUM_VAL_STR(r, name, val) BOOST_PP_STRINGIZE(val)
+
25 #define ASSIGN_ENUM_MAP_ENTRY(r, name, val) lut[#val] = name::val;
+
26 #define CONCAT_OP(s, state, x) state x
+
27 #define CONCAT(SEQ) BOOST_PP_SEQ_FOLD_LEFT(CONCAT_OP, BOOST_PP_SEQ_HEAD(SEQ), BOOST_PP_SEQ_TAIL(SEQ)) // expands to boost
+
28 
+
40 #define DEFINE_ENUM4CCI(name, val_seq) \
+
41  enum class name { BOOST_PP_SEQ_ENUM(BOOST_PP_SEQ_TRANSFORM(DEFINE_ENUM_DECL_VAL, name, val_seq)) }; \
+
42  namespace cci { \
+
43  namespace { \
+
44  std::unordered_map<std::string, name> name##_lut_init() { \
+
45  std::unordered_map<std::string, name> lut; \
+
46  CONCAT(BOOST_PP_SEQ_TRANSFORM(ASSIGN_ENUM_MAP_ENTRY, name, val_seq)) \
+
47  return lut; \
+
48  } \
+
49  } \
+
50  template <> inline bool cci_value_converter<name>::pack(cci_value::reference dst, name const& src) { \
+
51  static const char* str_val[] = {BOOST_PP_SEQ_ENUM(BOOST_PP_SEQ_TRANSFORM(DEFINE_ENUM_VAL_STR, name, val_seq))}; \
+
52  dst.set_string(str_val[static_cast<unsigned>(src)]); \
+
53  return true; \
+
54  } \
+
55  template <> inline bool cci_value_converter<name>::unpack(name& dst, cci::cci_value::const_reference src) { \
+
56  static const std::unordered_map<std::string, name> lut = name##_lut_init(); \
+
57  if(!src.is_string()) \
+
58  return false; \
+
59  auto it = lut.find(src.get_string()); \
+
60  if(it != std::end(lut)) { \
+
61  dst = it->second; \
+
62  return true; \
+
63  } \
+
64  return false; \
+
65  } \
+
66  }
+
67 
+
68 #define DEFINE_NS_ENUM4CCI(ns_name, name, val_seq) \
+
69  namespace ns_name { \
+
70  enum class name { BOOST_PP_SEQ_ENUM(BOOST_PP_SEQ_TRANSFORM(DEFINE_ENUM_DECL_VAL, name, val_seq)) }; \
+
71  } \
+
72  namespace cci { \
+
73  namespace { \
+
74  std::unordered_map<std::string, ns_name::name> ns_name##_##name##_lut_init() { \
+
75  std::unordered_map<std::string, ns_name::name> lut; \
+
76  CONCAT(BOOST_PP_SEQ_TRANSFORM(ASSIGN_ENUM_MAP_ENTRY, ns_name::name, val_seq)) \
+
77  return lut; \
+
78  } \
+
79  } \
+
80  template <> inline bool cci_value_converter<ns_name::name>::pack(cci_value::reference dst, ns_name::name const& src) { \
+
81  static const char* str_val[] = {BOOST_PP_SEQ_ENUM(BOOST_PP_SEQ_TRANSFORM(DEFINE_ENUM_VAL_STR, name, val_seq))}; \
+
82  dst.set_string(str_val[static_cast<unsigned>(src)]); \
+
83  return true; \
+
84  } \
+
85  template <> inline bool cci_value_converter<ns_name::name>::unpack(ns_name::name& dst, cci::cci_value::const_reference src) { \
+
86  static const std::unordered_map<std::string, ns_name::name> lut = ns_name##_##name##_lut_init(); \
+
87  if(!src.is_string()) \
+
88  return false; \
+
89  auto it = lut.find(src.get_string()); \
+
90  if(it != std::end(lut)) { \
+
91  dst = it->second; \
+
92  return true; \
+
93  } \
+
94  return false; \
+
95  } \
+
96  }
+
97 
+
98 #endif /* _SYSC_SCC_CCI_UTIL_H_ */
+
+
+ + + + diff --git a/develop/checker__if_8h_source.html b/develop/checker__if_8h_source.html index 05161288..a3eddbe9 100644 --- a/develop/checker__if_8h_source.html +++ b/develop/checker__if_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi_2scv_2recorder__modules_8h_source.html b/develop/chi_2scv_2recorder__modules_8h_source.html index cbc204cb..ca6ef0b4 100644 --- a/develop/chi_2scv_2recorder__modules_8h_source.html +++ b/develop/chi_2scv_2recorder__modules_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi__lwtr_8cpp_source.html b/develop/chi__lwtr_8cpp_source.html index c7efbd3f..39e3b9fc 100644 --- a/develop/chi__lwtr_8cpp_source.html +++ b/develop/chi__lwtr_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi__lwtr_8h_source.html b/develop/chi__lwtr_8h_source.html index 064d46ab..16c396d5 100644 --- a/develop/chi__lwtr_8h_source.html +++ b/develop/chi__lwtr_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi__recorder_8h_source.html b/develop/chi__recorder_8h_source.html index 886ee521..1be42768 100644 --- a/develop/chi__recorder_8h_source.html +++ b/develop/chi__recorder_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi__rn__initiator_8cpp_source.html b/develop/chi__rn__initiator_8cpp_source.html index c4b864d4..78933287 100644 --- a/develop/chi__rn__initiator_8cpp_source.html +++ b/develop/chi__rn__initiator_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -264,1086 +264,1079 @@
197  switch(axi_snp) {
198  case axi::snoop_e::WRITE_NO_SNOOP:
199  sc_assert(axi_domain == axi::domain_e::NON_SHAREABLE || axi_domain == axi::domain_e::SYSTEM);
-
200  opcode = chi::req_optype_e::WriteNoSnpFull;
-
201  if(gp.get_data_length() < 64)
-
202  opcode = chi::req_optype_e::WriteNoSnpPtl;
-
203  break;
-
204  case axi::snoop_e::WRITE_UNIQUE:
-
205  sc_assert(axi_domain == axi::domain_e::INNER_SHAREABLE || axi_domain == axi::domain_e::OUTER_SHAREABLE);
-
206  opcode = chi::req_optype_e::WriteUniquePtl;
-
207  chi_req_ext->req.set_snp_attr(cacheable);
-
208  break;
-
209  case axi::snoop_e::WRITE_LINE_UNIQUE:
-
210  opcode = chi::req_optype_e::WriteUniqueFull;
-
211  break;
-
212  case axi::snoop_e::WRITE_CLEAN: {
-
213  bool ptl = false;
-
214  for(auto i = 0; i < gp.get_byte_enable_length(); ++i) {
-
215  if(gp.get_byte_enable_ptr()[i] == 0) {
-
216  ptl = true;
-
217  break;
-
218  }
-
219  }
-
220  if(ptl)
-
221  opcode = chi::req_optype_e::WriteCleanPtl;
-
222  else
-
223  opcode = chi::req_optype_e::WriteCleanFull;
-
224  break;
-
225  }
-
226  case axi::snoop_e::WRITE_BACK:
-
227  opcode =
-
228  gp.get_data_length() == 64 ? chi::req_optype_e::WriteBackFull : chi::req_optype_e::WriteBackPtl;
+
200  opcode = gp.get_data_length() == 64 ? chi::req_optype_e::WriteNoSnpFull : chi::req_optype_e::WriteNoSnpPtl;
+
201  break;
+
202  case axi::snoop_e::WRITE_UNIQUE:
+
203  sc_assert(axi_domain == axi::domain_e::INNER_SHAREABLE || axi_domain == axi::domain_e::OUTER_SHAREABLE);
+
204  opcode = gp.get_data_length() == 64 ? chi::req_optype_e::WriteUniqueFull:chi::req_optype_e::WriteUniquePtl;
+
205  chi_req_ext->req.set_snp_attr(cacheable);
+
206  break;
+
207  case axi::snoop_e::WRITE_LINE_UNIQUE:
+
208  opcode = chi::req_optype_e::WriteUniqueFull;
+
209  break;
+
210  case axi::snoop_e::WRITE_CLEAN: {
+
211  bool ptl = false;
+
212  for(auto i = 0; i < gp.get_byte_enable_length(); ++i) {
+
213  if(gp.get_byte_enable_ptr()[i] == 0) {
+
214  ptl = true;
+
215  break;
+
216  }
+
217  }
+
218  if(ptl)
+
219  opcode = chi::req_optype_e::WriteCleanPtl;
+
220  else
+
221  opcode = chi::req_optype_e::WriteCleanFull;
+
222  break;
+
223  }
+
224  case axi::snoop_e::WRITE_BACK:
+
225  opcode = gp.get_data_length() == 64 ? chi::req_optype_e::WriteBackFull : chi::req_optype_e::WriteBackPtl;
+
226  break;
+
227  case axi::snoop_e::EVICT:
+
228  opcode = chi::req_optype_e::Evict;
229  break;
-
230  case axi::snoop_e::EVICT:
-
231  opcode = chi::req_optype_e::Evict;
+
230  case axi::snoop_e::WRITE_EVICT:
+
231  opcode = chi::req_optype_e::WriteEvictFull;
232  break;
-
233  case axi::snoop_e::WRITE_EVICT:
-
234  opcode = chi::req_optype_e::WriteEvictFull;
+
233  case axi::snoop_e::WRITE_UNIQUE_PTL_STASH:
+
234  opcode = chi::req_optype_e::WriteUniquePtlStash;
235  break;
-
236  case axi::snoop_e::WRITE_UNIQUE_PTL_STASH:
-
237  opcode = chi::req_optype_e::WriteUniquePtlStash;
+
236  case axi::snoop_e::WRITE_UNIQUE_FULL_STASH:
+
237  opcode = chi::req_optype_e::WriteUniqueFullStash;
238  break;
-
239  case axi::snoop_e::WRITE_UNIQUE_FULL_STASH:
-
240  opcode = chi::req_optype_e::WriteUniqueFullStash;
-
241  break;
-
242  case axi::snoop_e::STASH_ONCE_UNIQUE:
-
243  opcode = chi::req_optype_e::StashOnceUnique;
-
244  gp.set_command(tlm::TLM_IGNORE_COMMAND);
-
245  gp.set_data_length(0);
-
246  chi_req_ext->req.set_size(6); // full cache line
-
247  break;
-
248  case axi::snoop_e::STASH_ONCE_SHARED:
-
249  opcode = chi::req_optype_e::StashOnceShared;
-
250  gp.set_command(tlm::TLM_IGNORE_COMMAND);
-
251  gp.set_data_length(0);
-
252  chi_req_ext->req.set_size(6); // full cache line
+
239  case axi::snoop_e::STASH_ONCE_UNIQUE:
+
240  opcode = chi::req_optype_e::StashOnceUnique;
+
241  gp.set_command(tlm::TLM_IGNORE_COMMAND);
+
242  gp.set_data_length(0);
+
243  chi_req_ext->req.set_size(6); // full cache line
+
244  break;
+
245  case axi::snoop_e::STASH_ONCE_SHARED:
+
246  opcode = chi::req_optype_e::StashOnceShared;
+
247  gp.set_command(tlm::TLM_IGNORE_COMMAND);
+
248  gp.set_data_length(0);
+
249  chi_req_ext->req.set_size(6); // full cache line
+
250  break;
+
251  default:
+
252  SCCWARN(name) << "unexpected snoop type " << axi::to_char(axi_snp) << " during write";
253  break;
-
254  default:
-
255  SCCWARN(name) << "unexpected snoop type " << axi::to_char(axi_snp) << " during write";
-
256  break;
-
257  }
-
258  chi_req_ext->req.set_opcode(opcode);
-
259 
-
260  if(axi_snp != axi::snoop_e::WRITE_NO_SNOOP) {
-
261  chi_req_ext->req.set_snp_attr(cacheable);
-
262  }
-
263  if(opcode == chi::req_optype_e::WriteUniquePtlStash || opcode == chi::req_optype_e::WriteUniqueFullStash ||
-
264  opcode == chi::req_optype_e::StashOnceUnique || opcode == chi::req_optype_e::StashOnceShared) {
-
265  if(ace_ext->is_stash_nid_en()) {
-
266  chi_req_ext->req.set_stash_n_id(ace_ext->get_stash_nid());
-
267  chi_req_ext->req.set_stash_n_id_valid(true);
-
268  }
-
269  if(ace_ext->is_stash_lpid_en()) {
-
270  chi_req_ext->req.set_stash_lp_id(ace_ext->get_stash_lpid());
-
271  chi_req_ext->req.set_stash_lp_id_valid(true);
-
272  }
-
273  }
-
274  } else {
-
275  // Must be Cache maintenance. XXX: To do
-
276  SCCERR(name) << "Not yet implemented !!! ";
-
277  }
-
278 
-
279  if(legacy_mapping) {
-
297  //
-
298  // Cache Read Write
-
299  // 0000 0010 Read/Write
-
300  // 0001 0011 Read/Write
-
301  // 0010 0000 Read/Write
-
302  // 0011 0001 Read/Write
-
303  // 0110 1101 0101 Read Write
-
304  // 0111 1101 0101 Read Write
-
305  // 1010 0101 1101 Read Write
-
306  // 1011 0101 1101 Read Write
-
307  // 1110 1101 Read/Write
-
308  // 1111 1101 Read/Write
-
309 
-
310  switch(ace_ext->get_cache()) {
-
311  case 0b0000:
-
312  mem_attr = 0b0010;
+
254  }
+
255  chi_req_ext->req.set_opcode(opcode);
+
256 
+
257  if(axi_snp != axi::snoop_e::WRITE_NO_SNOOP) {
+
258  chi_req_ext->req.set_snp_attr(cacheable);
+
259  }
+
260  if(opcode == chi::req_optype_e::WriteUniquePtlStash || opcode == chi::req_optype_e::WriteUniqueFullStash ||
+
261  opcode == chi::req_optype_e::StashOnceUnique || opcode == chi::req_optype_e::StashOnceShared) {
+
262  if(ace_ext->is_stash_nid_en()) {
+
263  chi_req_ext->req.set_stash_n_id(ace_ext->get_stash_nid());
+
264  chi_req_ext->req.set_stash_n_id_valid(true);
+
265  }
+
266  if(ace_ext->is_stash_lpid_en()) {
+
267  chi_req_ext->req.set_stash_lp_id(ace_ext->get_stash_lpid());
+
268  chi_req_ext->req.set_stash_lp_id_valid(true);
+
269  }
+
270  }
+
271  } else {
+
272  // Must be Cache maintenance. XXX: To do
+
273  SCCERR(name) << "Not yet implemented !!! ";
+
274  }
+
275 
+
276  if(legacy_mapping) {
+
294  //
+
295  // Cache Read Write
+
296  // 0000 0010 Read/Write
+
297  // 0001 0011 Read/Write
+
298  // 0010 0000 Read/Write
+
299  // 0011 0001 Read/Write
+
300  // 0110 1101 0101 Read Write
+
301  // 0111 1101 0101 Read Write
+
302  // 1010 0101 1101 Read Write
+
303  // 1011 0101 1101 Read Write
+
304  // 1110 1101 Read/Write
+
305  // 1111 1101 Read/Write
+
306 
+
307  switch(ace_ext->get_cache()) {
+
308  case 0b0000:
+
309  mem_attr = 0b0010;
+
310  break;
+
311  case 0b0001:
+
312  mem_attr = 0b0011;
313  break;
-
314  case 0b0001:
-
315  mem_attr = 0b0011;
+
314  case 0b0010:
+
315  mem_attr = 0b0000;
316  break;
-
317  case 0b0010:
-
318  mem_attr = 0b0000;
+
317  case 0b0011:
+
318  mem_attr = 0b0001;
319  break;
-
320  case 0b0011:
-
321  mem_attr = 0b0001;
-
322  break;
-
323  case 0b0110:
-
324  case 0b0111:
-
325  mem_attr = gp.is_read() ? 0b1101 : 0b0101;
-
326  break;
-
327  case 0b1010:
-
328  case 0b1011:
-
329  mem_attr = gp.is_read() ? 0b0101 : 0b1101;
-
330  break;
-
331  case 0b1110:
-
332  case 0b1111:
-
333  mem_attr = 0b1101;
+
320  case 0b0110:
+
321  case 0b0111:
+
322  mem_attr = gp.is_read() ? 0b1101 : 0b0101;
+
323  break;
+
324  case 0b1010:
+
325  case 0b1011:
+
326  mem_attr = gp.is_read() ? 0b0101 : 0b1101;
+
327  break;
+
328  case 0b1110:
+
329  case 0b1111:
+
330  mem_attr = 0b1101;
+
331  break;
+
332  default:
+
333  SCCERR(name) << "Unexpected AxCACHE type";
334  break;
-
335  default:
-
336  SCCERR(name) << "Unexpected AxCACHE type";
-
337  break;
-
338  }
-
339  } else {
-
340  auto allocate = (ace_ext->is_read_other_allocate() && axi_gp_cmd == tlm::TLM_WRITE_COMMAND) ||
-
341  (ace_ext->is_write_other_allocate() && axi_gp_cmd == tlm::TLM_READ_COMMAND);
-
342  auto cachable = ace_ext->is_modifiable();
-
343  auto ewa = ace_ext->is_bufferable();
-
344  auto device = ace_ext->get_cache() < 2;
-
345  mem_attr = (allocate ? 8 : 0) + (cachable ? 4 : 0) + (device ? 2 : 0) + (ewa ? 1 : 0);
-
346  // ReadNoSnp., ReadNoSnpSep., ReadOnce*., WriteNoSnp., WriteNoSnp, CMO., WriteNoSnpZero., WriteUnique.,
-
347  // WriteUnique, CMO., WriteUniqueZero., Atomic.
-
348  if(!device)
-
349  switch(opcode) {
-
350  case chi::req_optype_e::ReadNoSnp:
-
351  case chi::req_optype_e::ReadNoSnpSep:
-
352  case chi::req_optype_e::ReadOnce:
-
353  case chi::req_optype_e::ReadOnceCleanInvalid:
-
354  case chi::req_optype_e::ReadOnceMakeInvalid:
-
355  case chi::req_optype_e::WriteNoSnpPtl:
-
356  case chi::req_optype_e::WriteNoSnpFull:
-
357  case chi::req_optype_e::WriteUniquePtl:
-
358  case chi::req_optype_e::WriteUniqueFull:
-
359  case chi::req_optype_e::AtomicStoreAdd:
-
360  case chi::req_optype_e::AtomicStoreClr:
-
361  case chi::req_optype_e::AtomicStoreEor:
-
362  case chi::req_optype_e::AtomicStoreSet:
-
363  case chi::req_optype_e::AtomicStoreSmax:
-
364  case chi::req_optype_e::AtomicStoreSmin:
-
365  case chi::req_optype_e::AtomicStoreUmax:
-
366  case chi::req_optype_e::AtomicStoreUmin:
-
367  case chi::req_optype_e::AtomicLoadAdd:
-
368  case chi::req_optype_e::AtomicLoadClr:
-
369  case chi::req_optype_e::AtomicLoadEor:
-
370  case chi::req_optype_e::AtomicLoadSet:
-
371  case chi::req_optype_e::AtomicLoadSmax:
-
372  case chi::req_optype_e::AtomicLoadSmin:
-
373  case chi::req_optype_e::AtomicLoadUmax:
-
374  case chi::req_optype_e::AtomicLoadUmin:
-
375  case chi::req_optype_e::AtomicSwap:
-
376  case chi::req_optype_e::AtomicCompare:
-
377  chi_req_ext->req.set_order(0b00);
-
378  break;
-
379  default:
-
380  break;
-
381  }
-
382  }
-
383  }
-
384  chi_req_ext->req.set_mem_attr(mem_attr);
+
335  }
+
336  } else {
+
337  auto allocate = (ace_ext->is_read_other_allocate() && axi_gp_cmd == tlm::TLM_WRITE_COMMAND) ||
+
338  (ace_ext->is_write_other_allocate() && axi_gp_cmd == tlm::TLM_READ_COMMAND);
+
339  auto cachable = ace_ext->is_modifiable();
+
340  auto ewa = ace_ext->is_bufferable();
+
341  auto device = ace_ext->get_cache() < 2;
+
342  mem_attr = (allocate ? 8 : 0) + (cachable ? 4 : 0) + (device ? 2 : 0) + (ewa ? 1 : 0);
+
343  // ReadNoSnp., ReadNoSnpSep., ReadOnce*., WriteNoSnp., WriteNoSnp, CMO., WriteNoSnpZero., WriteUnique.,
+
344  // WriteUnique, CMO., WriteUniqueZero., Atomic.
+
345  if(!device)
+
346  switch(opcode) {
+
347  case chi::req_optype_e::ReadNoSnp:
+
348  case chi::req_optype_e::ReadNoSnpSep:
+
349  case chi::req_optype_e::ReadOnce:
+
350  case chi::req_optype_e::ReadOnceCleanInvalid:
+
351  case chi::req_optype_e::ReadOnceMakeInvalid:
+
352  case chi::req_optype_e::WriteNoSnpPtl:
+
353  case chi::req_optype_e::WriteNoSnpFull:
+
354  case chi::req_optype_e::WriteUniquePtl:
+
355  case chi::req_optype_e::WriteUniqueFull:
+
356  case chi::req_optype_e::AtomicStoreAdd:
+
357  case chi::req_optype_e::AtomicStoreClr:
+
358  case chi::req_optype_e::AtomicStoreEor:
+
359  case chi::req_optype_e::AtomicStoreSet:
+
360  case chi::req_optype_e::AtomicStoreSmax:
+
361  case chi::req_optype_e::AtomicStoreSmin:
+
362  case chi::req_optype_e::AtomicStoreUmax:
+
363  case chi::req_optype_e::AtomicStoreUmin:
+
364  case chi::req_optype_e::AtomicLoadAdd:
+
365  case chi::req_optype_e::AtomicLoadClr:
+
366  case chi::req_optype_e::AtomicLoadEor:
+
367  case chi::req_optype_e::AtomicLoadSet:
+
368  case chi::req_optype_e::AtomicLoadSmax:
+
369  case chi::req_optype_e::AtomicLoadSmin:
+
370  case chi::req_optype_e::AtomicLoadUmax:
+
371  case chi::req_optype_e::AtomicLoadUmin:
+
372  case chi::req_optype_e::AtomicSwap:
+
373  case chi::req_optype_e::AtomicCompare:
+
374  chi_req_ext->req.set_order(0b00);
+
375  break;
+
376  default:
+
377  break;
+
378  }
+
379  }
+
380  }
+
381  chi_req_ext->req.set_mem_attr(mem_attr);
+
382 
+
383  if(!chi::is_valid(chi_req_ext))
+
384  SCCFATAL(__FUNCTION__) << "Conversion created an invalid chi request, pls. check the AXI/ACE settings";
385 
-
386  if(!chi::is_valid(chi_req_ext))
-
387  SCCFATAL(__FUNCTION__) << "Conversion created an invalid chi request, pls. check the AXI/ACE settings";
-
388 
-
389  if(gp.has_mm())
-
390  gp.set_auto_extension(chi_req_ext);
-
391  else {
-
392  gp.set_extension(chi_req_ext);
-
393  }
-
394  delete ace_ext;
-
395  ace_ext = nullptr;
-
396  delete axi4_ext;
-
397  axi4_ext = nullptr;
-
398  gp.set_extension(ace_ext);
-
399  gp.set_extension(axi4_ext);
-
400 }
-
401 
-
402 void setExpCompAck(chi::chi_ctrl_extension* const req_e) {
-
403  switch(req_e->req.get_opcode()) {
-
404  // Ref : Sec 2.8.3 pg 97
-
405  case chi::req_optype_e::ReadNoSnpSep: // Ref: Pg 143
-
406  // Ref : Table 2.7 pg 55
-
407  case chi::req_optype_e::Evict:
-
408  case chi::req_optype_e::StashOnceUnique:
-
409  case chi::req_optype_e::StashOnceShared:
-
410  case chi::req_optype_e::CleanShared:
-
411  case chi::req_optype_e::CleanSharedPersist:
-
412  case chi::req_optype_e::CleanSharedPersistSep:
-
413  case chi::req_optype_e::CleanInvalid:
-
414  case chi::req_optype_e::MakeInvalid:
-
415  // write case
-
416  case chi::req_optype_e::WriteNoSnpZero:
-
417  case chi::req_optype_e::WriteNoSnpFull:
-
418  case chi::req_optype_e::WriteNoSnpPtl:
-
419  case chi::req_optype_e::WriteUniqueZero:
-
420  case chi::req_optype_e::WriteUniquePtl:
-
421  case chi::req_optype_e::WriteUniqueFull:
-
422  case chi::req_optype_e::WriteUniqueFullStash:
-
423  case chi::req_optype_e::WriteBackFull:
-
424  case chi::req_optype_e::WriteBackPtl:
-
425  case chi::req_optype_e::WriteCleanFull:
-
426  case chi::req_optype_e::WriteCleanPtl:
-
427  // Atomics
-
428  case chi::req_optype_e::AtomicStoreAdd:
-
429  case chi::req_optype_e::AtomicStoreClr:
-
430  case chi::req_optype_e::AtomicStoreEor:
-
431  case chi::req_optype_e::AtomicStoreSet:
-
432  case chi::req_optype_e::AtomicStoreSmax:
-
433  case chi::req_optype_e::AtomicStoreSmin:
-
434  case chi::req_optype_e::AtomicStoreUmax:
-
435  case chi::req_optype_e::AtomicStoreUmin:
-
436  case chi::req_optype_e::AtomicLoadAdd:
-
437  case chi::req_optype_e::AtomicLoadClr:
-
438  case chi::req_optype_e::AtomicLoadEor:
-
439  case chi::req_optype_e::AtomicLoadSet:
-
440  case chi::req_optype_e::AtomicLoadSmax:
-
441  case chi::req_optype_e::AtomicLoadSmin:
-
442  case chi::req_optype_e::AtomicLoadUmax:
-
443  case chi::req_optype_e::AtomicLoadUmin:
-
444  case chi::req_optype_e::AtomicCompare:
-
445  case chi::req_optype_e::AtomicSwap:
-
446 
-
447  // case chi::req_optype_e::ReadNoSnp: //XXX: Temporary for testing
-
448  // case chi::req_optype_e::ReadOnce: //XXX: Temporary for testing
-
449  req_e->req.set_exp_comp_ack(false);
-
450  break;
-
451 
-
452  // Ref : pg 55
-
453  case chi::req_optype_e::ReadNoSnp:
-
454  case chi::req_optype_e::ReadOnce:
-
455  case chi::req_optype_e::CleanUnique:
-
456  case chi::req_optype_e::MakeUnique:
+
386  if(gp.has_mm())
+
387  gp.set_auto_extension(chi_req_ext);
+
388  else {
+
389  gp.set_extension(chi_req_ext);
+
390  }
+
391  delete ace_ext;
+
392  ace_ext = nullptr;
+
393  delete axi4_ext;
+
394  axi4_ext = nullptr;
+
395  gp.set_extension(ace_ext);
+
396  gp.set_extension(axi4_ext);
+
397 }
+
398 
+
399 void setExpCompAck(chi::chi_ctrl_extension* const req_e) {
+
400  switch(req_e->req.get_opcode()) {
+
401  // Ref : Sec 2.8.3 pg 97
+
402  case chi::req_optype_e::ReadNoSnpSep: // Ref: Pg 143
+
403  // Ref : Table 2.7 pg 55
+
404  case chi::req_optype_e::Evict:
+
405  case chi::req_optype_e::StashOnceUnique:
+
406  case chi::req_optype_e::StashOnceShared:
+
407  case chi::req_optype_e::CleanShared:
+
408  case chi::req_optype_e::CleanSharedPersist:
+
409  case chi::req_optype_e::CleanSharedPersistSep:
+
410  case chi::req_optype_e::CleanInvalid:
+
411  case chi::req_optype_e::MakeInvalid:
+
412  // write case
+
413  case chi::req_optype_e::WriteNoSnpZero:
+
414  case chi::req_optype_e::WriteNoSnpFull:
+
415  case chi::req_optype_e::WriteNoSnpPtl:
+
416  case chi::req_optype_e::WriteUniqueZero:
+
417  case chi::req_optype_e::WriteUniquePtl:
+
418  case chi::req_optype_e::WriteUniqueFull:
+
419  case chi::req_optype_e::WriteUniqueFullStash:
+
420  case chi::req_optype_e::WriteBackFull:
+
421  case chi::req_optype_e::WriteBackPtl:
+
422  case chi::req_optype_e::WriteCleanFull:
+
423  case chi::req_optype_e::WriteCleanPtl:
+
424  // Atomics
+
425  case chi::req_optype_e::AtomicStoreAdd:
+
426  case chi::req_optype_e::AtomicStoreClr:
+
427  case chi::req_optype_e::AtomicStoreEor:
+
428  case chi::req_optype_e::AtomicStoreSet:
+
429  case chi::req_optype_e::AtomicStoreSmax:
+
430  case chi::req_optype_e::AtomicStoreSmin:
+
431  case chi::req_optype_e::AtomicStoreUmax:
+
432  case chi::req_optype_e::AtomicStoreUmin:
+
433  case chi::req_optype_e::AtomicLoadAdd:
+
434  case chi::req_optype_e::AtomicLoadClr:
+
435  case chi::req_optype_e::AtomicLoadEor:
+
436  case chi::req_optype_e::AtomicLoadSet:
+
437  case chi::req_optype_e::AtomicLoadSmax:
+
438  case chi::req_optype_e::AtomicLoadSmin:
+
439  case chi::req_optype_e::AtomicLoadUmax:
+
440  case chi::req_optype_e::AtomicLoadUmin:
+
441  case chi::req_optype_e::AtomicCompare:
+
442  case chi::req_optype_e::AtomicSwap:
+
443 
+
444  // case chi::req_optype_e::ReadNoSnp: //XXX: Temporary for testing
+
445  // case chi::req_optype_e::ReadOnce: //XXX: Temporary for testing
+
446  req_e->req.set_exp_comp_ack(false);
+
447  break;
+
448 
+
449  // Ref : pg 55
+
450  case chi::req_optype_e::ReadNoSnp:
+
451  case chi::req_optype_e::ReadOnce:
+
452  case chi::req_optype_e::CleanUnique:
+
453  case chi::req_optype_e::MakeUnique:
+
454  req_e->req.set_exp_comp_ack(true);
+
455  break;
+
456  default: // XXX: Should default ExpCompAck be true or false?
457  req_e->req.set_exp_comp_ack(true);
458  break;
-
459  default: // XXX: Should default ExpCompAck be true or false?
-
460  req_e->req.set_exp_comp_ack(true);
-
461  break;
-
462  }
-
463 
-
464  // XXX: For Ordered Read, set ExpCompAck. Check once again, not clear
-
465  if((req_e->req.get_opcode() == chi::req_optype_e::ReadNoSnp ||
-
466  req_e->req.get_opcode() == chi::req_optype_e::ReadOnce) &&
-
467  (req_e->req.get_order() == 0b10 || req_e->req.get_order() == 0b11)) {
-
468  req_e->req.set_exp_comp_ack(true);
-
469  }
-
470 
-
471  // Ref pg 101: Ordered write => set ExpCompAck (XXX: Check if its true for all Writes)
-
472  if((req_e->req.get_opcode() >= chi::req_optype_e::WriteEvictFull &&
-
473  req_e->req.get_opcode() <= chi::req_optype_e::WriteUniquePtlStash) &&
-
474  (req_e->req.get_order() == 0b10 || req_e->req.get_order() == 0b11)) {
-
475  req_e->req.set_exp_comp_ack(true);
-
476  }
-
477 }
-
478 
-
479 bool make_rsp_from_req(tlm::tlm_generic_payload& gp, chi::rsp_optype_e rsp_opcode) {
-
480  if(auto* ctrl_e = gp.get_extension<chi::chi_ctrl_extension>()) {
-
481  if(rsp_opcode == chi::rsp_optype_e::CompAck) {
-
482  if(is_dataless(ctrl_e) || gp.is_write()) {
-
483  ctrl_e->resp.set_tgt_id(ctrl_e->req.get_tgt_id());
-
484  ctrl_e->resp.set_trace_tag(ctrl_e->req.is_trace_tag()); // XXX ??
-
485  if(ctrl_e->req.get_opcode() == chi::req_optype_e::MakeReadUnique) {
-
486  ctrl_e->set_txn_id(ctrl_e->resp.get_db_id());
-
487  }
-
488  } else {
-
489  auto dat_e = gp.get_extension<chi::chi_data_extension>();
-
490  ctrl_e->req.set_tgt_id(dat_e->dat.get_home_n_id());
-
491  ctrl_e->set_src_id(dat_e->get_src_id());
-
492  ctrl_e->set_qos(dat_e->get_qos());
-
493  ctrl_e->set_txn_id(dat_e->dat.get_db_id());
-
494  ctrl_e->resp.set_tgt_id(dat_e->dat.get_tgt_id());
-
495  ctrl_e->resp.set_trace_tag(dat_e->dat.is_trace_tag()); // XXX ??
-
496  }
+
459  }
+
460 
+
461  // XXX: For Ordered Read, set ExpCompAck. Check once again, not clear
+
462  if((req_e->req.get_opcode() == chi::req_optype_e::ReadNoSnp ||
+
463  req_e->req.get_opcode() == chi::req_optype_e::ReadOnce) &&
+
464  (req_e->req.get_order() == 0b10 || req_e->req.get_order() == 0b11)) {
+
465  req_e->req.set_exp_comp_ack(true);
+
466  }
+
467 
+
468  // Ref pg 101: Ordered write => set ExpCompAck (XXX: Check if its true for all Writes)
+
469  if((req_e->req.get_opcode() >= chi::req_optype_e::WriteEvictFull &&
+
470  req_e->req.get_opcode() <= chi::req_optype_e::WriteUniquePtlStash) &&
+
471  (req_e->req.get_order() == 0b10 || req_e->req.get_order() == 0b11)) {
+
472  req_e->req.set_exp_comp_ack(true);
+
473  }
+
474 }
+
475 
+
476 bool make_rsp_from_req(tlm::tlm_generic_payload& gp, chi::rsp_optype_e rsp_opcode) {
+
477  if(auto* ctrl_e = gp.get_extension<chi::chi_ctrl_extension>()) {
+
478  if(rsp_opcode == chi::rsp_optype_e::CompAck) {
+
479  if(is_dataless(ctrl_e) || gp.is_write()) {
+
480  ctrl_e->resp.set_tgt_id(ctrl_e->req.get_tgt_id());
+
481  ctrl_e->resp.set_trace_tag(ctrl_e->req.is_trace_tag()); // XXX ??
+
482  if(ctrl_e->req.get_opcode() == chi::req_optype_e::MakeReadUnique) {
+
483  ctrl_e->set_txn_id(ctrl_e->resp.get_db_id());
+
484  }
+
485  } else {
+
486  auto dat_e = gp.get_extension<chi::chi_data_extension>();
+
487  ctrl_e->req.set_tgt_id(dat_e->dat.get_home_n_id());
+
488  ctrl_e->set_src_id(dat_e->get_src_id());
+
489  ctrl_e->set_qos(dat_e->get_qos());
+
490  ctrl_e->set_txn_id(dat_e->dat.get_db_id());
+
491  ctrl_e->resp.set_tgt_id(dat_e->dat.get_tgt_id());
+
492  ctrl_e->resp.set_trace_tag(dat_e->dat.is_trace_tag()); // XXX ??
+
493  }
+
494  ctrl_e->resp.set_opcode(rsp_opcode);
+
495  return true;
+
496  } else
497  ctrl_e->resp.set_opcode(rsp_opcode);
-
498  return true;
-
499  } else
-
500  ctrl_e->resp.set_opcode(rsp_opcode);
-
501  } else if(auto* snp_e = gp.get_extension<chi::chi_snp_extension>()) {
-
502  snp_e->resp.set_opcode(rsp_opcode);
-
503  if(rsp_opcode == chi::rsp_optype_e::CompAck) {
-
504  if(auto dat_e = gp.get_extension<chi::chi_data_extension>()) {
-
505  snp_e->set_src_id(dat_e->get_src_id());
-
506  snp_e->set_qos(dat_e->get_qos());
-
507  snp_e->set_txn_id(dat_e->dat.get_db_id());
-
508  snp_e->resp.set_tgt_id(dat_e->dat.get_tgt_id());
-
509  snp_e->resp.set_trace_tag(dat_e->dat.is_trace_tag()); // XXX ?
-
510  }
-
511  return true;
-
512  }
-
513  }
-
514  return false;
-
515 }
-
516 
-
517 } // anonymous namespace
-
518 
-
519 SC_HAS_PROCESS(chi_rn_initiator_b);
-
520 
-
521 chi::pe::chi_rn_initiator_b::chi_rn_initiator_b(sc_core::sc_module_name nm,
-
522  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& port,
-
523  size_t transfer_width)
-
524 : sc_module(nm)
-
525 , socket_fw(port)
-
526 , transfer_width_in_bytes(transfer_width / 8) {
-
527  add_attribute(tgt_id);
-
528  add_attribute(src_id);
-
529  add_attribute(data_interleaving);
-
530  add_attribute(strict_income_order);
-
531  add_attribute(use_legacy_mapping);
-
532  fw_i.bind(*this);
-
533 
-
534  SC_METHOD(clk_counter);
-
535  sensitive << clk_i.pos();
-
536 
-
537  SC_THREAD(snoop_dispatch);
-
538 }
-
539 
-
540 chi::pe::chi_rn_initiator_b::~chi_rn_initiator_b() {
-
541  if(tx_state_by_trans.size()) {
-
542  for(auto& e : tx_state_by_trans)
-
543  SCCDEBUG(SCMOD) << "unfinished transaction with ptr: "<< e.first << " with access address = 0x" << std::hex << ((tlm::tlm_generic_payload*)e.first)->get_address() ;
-
544  SCCWARN(SCMOD) << "is still waiting for unfinished transactions with number = " << tx_state_by_trans.size() ;
-
545 
-
546  }
-
547  for(auto& e : tx_state_by_trans)
-
548  delete e.second;
-
549  for(auto p: tx_state_pool)
-
550  delete p;
+
498  } else if(auto* snp_e = gp.get_extension<chi::chi_snp_extension>()) {
+
499  snp_e->resp.set_opcode(rsp_opcode);
+
500  if(rsp_opcode == chi::rsp_optype_e::CompAck) {
+
501  if(auto dat_e = gp.get_extension<chi::chi_data_extension>()) {
+
502  snp_e->set_src_id(dat_e->get_src_id());
+
503  snp_e->set_qos(dat_e->get_qos());
+
504  snp_e->set_txn_id(dat_e->dat.get_db_id());
+
505  snp_e->resp.set_tgt_id(dat_e->dat.get_tgt_id());
+
506  snp_e->resp.set_trace_tag(dat_e->dat.is_trace_tag()); // XXX ?
+
507  }
+
508  return true;
+
509  }
+
510  }
+
511  return false;
+
512 }
+
513 
+
514 } // anonymous namespace
+
515 
+
516 SC_HAS_PROCESS(chi_rn_initiator_b);
+
517 
+
518 chi::pe::chi_rn_initiator_b::chi_rn_initiator_b(sc_core::sc_module_name nm,
+
519  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& port,
+
520  size_t transfer_width)
+
521 : sc_module(nm)
+
522 , socket_fw(port)
+
523 , transfer_width_in_bytes(transfer_width / 8) {
+
524  fw_i.bind(*this);
+
525 
+
526  SC_METHOD(clk_counter);
+
527  sensitive << clk_i.pos();
+
528 
+
529  SC_THREAD(snoop_dispatch);
+
530 }
+
531 
+
532 chi::pe::chi_rn_initiator_b::~chi_rn_initiator_b() {
+
533  if(tx_state_by_trans.size()) {
+
534  for(auto& e : tx_state_by_trans)
+
535  SCCDEBUG(SCMOD) << "unfinished transaction with ptr: "<< e.first << " with access address = 0x" << std::hex << ((tlm::tlm_generic_payload*)e.first)->get_address() ;
+
536  SCCWARN(SCMOD) << "is still waiting for unfinished transactions with number = " << tx_state_by_trans.size() ;
+
537 
+
538  }
+
539  for(auto& e : tx_state_by_trans)
+
540  delete e.second;
+
541  for(auto p: tx_state_pool)
+
542  delete p;
+
543 }
+
544 
+
545 void chi::pe::chi_rn_initiator_b::b_snoop(payload_type& trans, sc_core::sc_time& t) {
+
546  if(bw_o.get_interface()) {
+
547  auto latency = bw_o->transport(trans);
+
548  if(latency < std::numeric_limits<unsigned>::max())
+
549  t += latency * (clk_if ? clk_if->period() : clk_period);
+
550  }
551 }
552 
-
553 void chi::pe::chi_rn_initiator_b::b_snoop(payload_type& trans, sc_core::sc_time& t) {
-
554  if(bw_o.get_interface()) {
-
555  auto latency = bw_o->transport(trans);
-
556  if(latency < std::numeric_limits<unsigned>::max())
-
557  t += latency * (clk_if ? clk_if->period() : clk_period);
-
558  }
-
559 }
-
560 
-
561 void chi::pe::chi_rn_initiator_b::snoop_resp(payload_type& trans, bool sync) {
-
562  auto req_ext = trans.get_extension<chi_snp_extension>();
-
563  sc_assert(req_ext != nullptr);
-
564  auto it = tx_state_by_trans.find(to_id(trans));
-
565  sc_assert(it != tx_state_by_trans.end());
-
566  auto* txs = it->second;
-
567  handle_snoop_response(trans, txs);
-
568 }
-
569 
-
570 tlm::tlm_sync_enum chi::pe::chi_rn_initiator_b::nb_transport_bw(payload_type& trans, phase_type& phase,
-
571  sc_core::sc_time& t) {
-
572  if(auto snp_ext = trans.get_extension<chi_snp_extension>()) {
-
573  if(phase == tlm::BEGIN_REQ) {
-
574  if(trans.has_mm())
-
575  trans.acquire();
-
576  snp_peq.notify(trans, t);
-
577  } else {
-
578  auto it = tx_state_by_trans.find(to_id(trans));
-
579  sc_assert(it != tx_state_by_trans.end());
-
580  it->second->peq.notify(std::make_tuple(&trans, phase), t);
-
581  }
-
582  } else {
-
583  if(phase == tlm::BEGIN_REQ) {
-
584  if(auto credit_ext = trans.get_extension<chi_credit_extension>()) {
-
585  if(credit_ext->type == credit_type_e::REQ) {
-
586  SCCTRACEALL(SCMOD) << "Received " << credit_ext->count << " req "
-
587  << (credit_ext->count == 1 ? "credit" : "credits");
-
588  for(auto i = 0U; i < credit_ext->count; ++i)
-
589  req_credits.post();
-
590  }
-
591  phase = tlm::END_RESP;
-
592  trans.set_response_status(tlm::TLM_OK_RESPONSE);
-
593  if(clk_if)
-
594  t += clk_if->period() - 1_ps;
-
595  return tlm::TLM_COMPLETED;
-
596  } else {
-
597  SCCFATAL(SCMOD) << "Illegal transaction received from HN";
-
598  }
-
599  } else {
-
600  auto it = tx_state_by_trans.find(to_id(trans));
-
601  sc_assert(it != tx_state_by_trans.end());
-
602  it->second->peq.notify(std::make_tuple(&trans, phase), t);
-
603  }
-
604  }
-
605  return tlm::TLM_ACCEPTED;
-
606 }
-
607 
-
608 void chi::pe::chi_rn_initiator_b::invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) {}
-
609 
-
610 void chi::pe::chi_rn_initiator_b::update_data_extension(chi::chi_data_extension* data_ext, payload_type& trans) {
-
611  auto req_e = trans.get_extension<chi::chi_ctrl_extension>();
-
612  sc_assert(req_e != nullptr);
-
613  switch(req_e->req.get_opcode()) {
-
614  case chi::req_optype_e::WriteNoSnpPtl:
-
615  case chi::req_optype_e::WriteNoSnpFull:
-
616  case chi::req_optype_e::WriteUniquePtl:
-
617  case chi::req_optype_e::WriteUniqueFull:
-
618  case chi::req_optype_e::WriteUniquePtlStash:
-
619  case chi::req_optype_e::WriteUniqueFullStash:
-
620  // CHE-E
-
621  case chi::req_optype_e::WriteNoSnpFullCleanSh:
-
622  case chi::req_optype_e::WriteNoSnpFullCleanInv:
-
623  case chi::req_optype_e::WriteNoSnpFullCleanShPerSep:
-
624  case chi::req_optype_e::WriteUniqueFullCleanSh:
-
625  case chi::req_optype_e::WriteUniqueFullCleanShPerSep:
-
626  case chi::req_optype_e::WriteBackFullCleanShPerSep:
-
627  case chi::req_optype_e::WriteNoSnpPtlCleanSh:
-
628  case chi::req_optype_e::WriteNoSnpPtlCleanInv:
-
629  case chi::req_optype_e::WriteNoSnpPtlCleanShPerSep:
-
630  case chi::req_optype_e::WriteUniquePtlCleanSh:
-
631  case chi::req_optype_e::WriteUniquePtlCleanShPerSep:
-
632  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
-
633  break;
-
634 
-
635  case chi::req_optype_e::WriteBackFull:
-
636  case chi::req_optype_e::WriteBackPtl:
-
637  case chi::req_optype_e::WriteCleanFull:
-
638  case chi::req_optype_e::WriteCleanPtl:
-
639  // CHI-E
-
640  case chi::req_optype_e::WriteBackFullCleanSh:
-
641  case chi::req_optype_e::WriteBackFullCleanInv:
-
642  case chi::req_optype_e::WriteCleanFullCleanSh:
-
643  case chi::req_optype_e::WriteCleanFullCleanShPerSep:
-
644  case chi::req_optype_e::WriteEvictFull:
-
645  data_ext->dat.set_opcode(chi::dat_optype_e::CopyBackWrData);
-
646  break;
-
647 
-
648  case chi::req_optype_e::AtomicStoreAdd:
-
649  case chi::req_optype_e::AtomicStoreClr:
-
650  case chi::req_optype_e::AtomicStoreEor:
-
651  case chi::req_optype_e::AtomicStoreSet:
-
652  case chi::req_optype_e::AtomicStoreSmax:
-
653  case chi::req_optype_e::AtomicStoreSmin:
-
654  case chi::req_optype_e::AtomicStoreUmax:
-
655  case chi::req_optype_e::AtomicStoreUmin:
-
656  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
-
657  break;
-
658  case chi::req_optype_e::AtomicLoadAdd:
-
659  case chi::req_optype_e::AtomicLoadClr:
-
660  case chi::req_optype_e::AtomicLoadEor:
-
661  case chi::req_optype_e::AtomicLoadSet:
-
662  case chi::req_optype_e::AtomicLoadSmax:
-
663  case chi::req_optype_e::AtomicLoadSmin:
-
664  case chi::req_optype_e::AtomicLoadUmax:
-
665  case chi::req_optype_e::AtomicLoadUmin:
-
666  case chi::req_optype_e::AtomicSwap:
-
667  case chi::req_optype_e::AtomicCompare:
-
668  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
-
669  break;
-
670  default:
-
671  SCCWARN(SCMOD) << " Unable to match req_opcode with data_opcode in write transaction ";
-
672  }
-
673  if(data_ext->dat.get_opcode() == chi::dat_optype_e::NonCopyBackWrData) {
-
674  data_ext->dat.set_resp(chi::dat_resptype_e::NonCopyBackWrData);
-
675  } else if(data_ext->dat.get_opcode() == chi::dat_optype_e::NCBWrDataCompAck) {
-
676  data_ext->dat.set_resp(chi::dat_resptype_e::NCBWrDataCompAck);
-
677  } else if(data_ext->dat.get_opcode() == chi::dat_optype_e::CopyBackWrData) {
-
678  auto cache_ext = trans.get_extension<::cache::cache_info>();
-
679  sc_assert(cache_ext != nullptr);
-
680  auto cache_state = cache_ext->get_state();
-
681  if(cache_state == ::cache::state::IX) {
-
682  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_I);
-
683  } else if(cache_state == ::cache::state::UC) {
-
684  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_UC);
-
685  } else if(cache_state == ::cache::state::SC) {
-
686  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_SC);
-
687  } else if(cache_state == ::cache::state::UD) {
-
688  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_UD_PD);
-
689  } else if(cache_state == ::cache::state::SD) {
-
690  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_SD_PD);
-
691  } else
-
692  SCCWARN(SCMOD) << " Unable to match cache state with resptype ";
-
693  } else {
-
694  SCCWARN(SCMOD) << "Unable to match resptype with WriteData Responses";
-
695  }
-
696 
-
697  auto db_id = req_e->resp.get_db_id();
-
698  data_ext->set_txn_id(db_id);
-
699  data_ext->set_src_id(req_e->resp.get_tgt_id());
-
700  data_ext->dat.set_tgt_id(req_e->get_src_id());
-
701 }
-
702 
-
703 void chi::pe::chi_rn_initiator_b::create_data_ext(payload_type& trans) {
-
704  auto data_ext = new chi::chi_data_extension;
-
705  update_data_extension(data_ext, trans);
-
706  trans.set_auto_extension<chi::chi_data_extension>(data_ext);
-
707 }
-
708 
-
709 void chi::pe::chi_rn_initiator_b::send_packet(tlm::tlm_phase phase, payload_type& trans,
-
710  chi::pe::chi_rn_initiator_b::tx_state* txs) {
-
711  sc_core::sc_time delay = sc_core::SC_ZERO_TIME;
-
712  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
-
713  if(ret == tlm::TLM_UPDATED) {
-
714  if(phase == chi::END_PARTIAL_DATA || phase == chi::END_DATA) {
-
715  if(delay.value())
-
716  wait(delay);
-
717  }
-
718  } else {
-
719  auto entry = txs->peq.get();
-
720  sc_assert(std::get<0>(entry) == &trans &&
-
721  (std::get<1>(entry) == chi::END_PARTIAL_DATA || std::get<1>(entry) == chi::END_DATA));
-
722  }
-
723  auto timing_e = trans.get_extension<atp::timing_params>();
-
724  auto delay_in_cycles = (timing_e && timing_e->wbv) ? timing_e->wbv : 1;
-
725  while(delay_in_cycles) {
-
726  delay_in_cycles--;
-
727  wait(clk_i.posedge_event());
-
728  }
-
729 }
-
730 
-
731 void chi::pe::chi_rn_initiator_b::send_wdata(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs) {
-
732  sc_core::sc_time delay;
-
733  tlm::tlm_phase phase;
-
734  auto data_ext = trans.get_extension<chi::chi_data_extension>();
-
735  if(data_ext == nullptr) {
-
736  create_data_ext(trans);
-
737  data_ext = trans.get_extension<chi::chi_data_extension>();
-
738  }
-
739 
-
740  auto beat_cnt = calculate_beats(trans);
-
741  SCCDEBUG(SCMOD) << "Starting transaction on channel WDAT : (opcode, cmd, addr, len) = ("
-
742  << to_char(data_ext->dat.get_opcode()) << ", " << trans.get_command() << ", " << std::hex
-
743  << trans.get_address() << ", " << trans.get_data_length() << ")";
+
553 void chi::pe::chi_rn_initiator_b::snoop_resp(payload_type& trans, bool sync) {
+
554  auto req_ext = trans.get_extension<chi_snp_extension>();
+
555  sc_assert(req_ext != nullptr);
+
556  auto it = tx_state_by_trans.find(to_id(trans));
+
557  sc_assert(it != tx_state_by_trans.end());
+
558  auto* txs = it->second;
+
559  handle_snoop_response(trans, txs);
+
560 }
+
561 
+
562 tlm::tlm_sync_enum chi::pe::chi_rn_initiator_b::nb_transport_bw(payload_type& trans, phase_type& phase,
+
563  sc_core::sc_time& t) {
+
564  if(auto snp_ext = trans.get_extension<chi_snp_extension>()) {
+
565  if(phase == tlm::BEGIN_REQ) {
+
566  if(trans.has_mm())
+
567  trans.acquire();
+
568  snp_peq.notify(trans, t);
+
569  } else {
+
570  auto it = tx_state_by_trans.find(to_id(trans));
+
571  sc_assert(it != tx_state_by_trans.end());
+
572  it->second->peq.notify(std::make_tuple(&trans, phase), t);
+
573  }
+
574  } else {
+
575  if(phase == tlm::BEGIN_REQ) {
+
576  if(auto credit_ext = trans.get_extension<chi_credit_extension>()) {
+
577  if(credit_ext->type == credit_type_e::REQ) {
+
578  SCCTRACEALL(SCMOD) << "Received " << credit_ext->count << " req "
+
579  << (credit_ext->count == 1 ? "credit" : "credits");
+
580  for(auto i = 0U; i < credit_ext->count; ++i)
+
581  req_credits.post();
+
582  }
+
583  phase = tlm::END_RESP;
+
584  trans.set_response_status(tlm::TLM_OK_RESPONSE);
+
585  if(clk_if)
+
586  t += clk_if->period() - 1_ps;
+
587  return tlm::TLM_COMPLETED;
+
588  } else {
+
589  SCCFATAL(SCMOD) << "Illegal transaction received from HN";
+
590  }
+
591  } else {
+
592  auto it = tx_state_by_trans.find(to_id(trans));
+
593  sc_assert(it != tx_state_by_trans.end());
+
594  it->second->peq.notify(std::make_tuple(&trans, phase), t);
+
595  }
+
596  }
+
597  return tlm::TLM_ACCEPTED;
+
598 }
+
599 
+
600 void chi::pe::chi_rn_initiator_b::invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) {}
+
601 
+
602 void chi::pe::chi_rn_initiator_b::update_data_extension(chi::chi_data_extension* data_ext, payload_type& trans) {
+
603  auto req_e = trans.get_extension<chi::chi_ctrl_extension>();
+
604  sc_assert(req_e != nullptr);
+
605  switch(req_e->req.get_opcode()) {
+
606  case chi::req_optype_e::WriteNoSnpPtl:
+
607  case chi::req_optype_e::WriteNoSnpFull:
+
608  case chi::req_optype_e::WriteUniquePtl:
+
609  case chi::req_optype_e::WriteUniqueFull:
+
610  case chi::req_optype_e::WriteUniquePtlStash:
+
611  case chi::req_optype_e::WriteUniqueFullStash:
+
612  // CHE-E
+
613  case chi::req_optype_e::WriteNoSnpFullCleanSh:
+
614  case chi::req_optype_e::WriteNoSnpFullCleanInv:
+
615  case chi::req_optype_e::WriteNoSnpFullCleanShPerSep:
+
616  case chi::req_optype_e::WriteUniqueFullCleanSh:
+
617  case chi::req_optype_e::WriteUniqueFullCleanShPerSep:
+
618  case chi::req_optype_e::WriteBackFullCleanShPerSep:
+
619  case chi::req_optype_e::WriteNoSnpPtlCleanSh:
+
620  case chi::req_optype_e::WriteNoSnpPtlCleanInv:
+
621  case chi::req_optype_e::WriteNoSnpPtlCleanShPerSep:
+
622  case chi::req_optype_e::WriteUniquePtlCleanSh:
+
623  case chi::req_optype_e::WriteUniquePtlCleanShPerSep:
+
624  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
+
625  break;
+
626 
+
627  case chi::req_optype_e::WriteBackFull:
+
628  case chi::req_optype_e::WriteBackPtl:
+
629  case chi::req_optype_e::WriteCleanFull:
+
630  case chi::req_optype_e::WriteCleanPtl:
+
631  // CHI-E
+
632  case chi::req_optype_e::WriteBackFullCleanSh:
+
633  case chi::req_optype_e::WriteBackFullCleanInv:
+
634  case chi::req_optype_e::WriteCleanFullCleanSh:
+
635  case chi::req_optype_e::WriteCleanFullCleanShPerSep:
+
636  case chi::req_optype_e::WriteEvictFull:
+
637  data_ext->dat.set_opcode(chi::dat_optype_e::CopyBackWrData);
+
638  break;
+
639 
+
640  case chi::req_optype_e::AtomicStoreAdd:
+
641  case chi::req_optype_e::AtomicStoreClr:
+
642  case chi::req_optype_e::AtomicStoreEor:
+
643  case chi::req_optype_e::AtomicStoreSet:
+
644  case chi::req_optype_e::AtomicStoreSmax:
+
645  case chi::req_optype_e::AtomicStoreSmin:
+
646  case chi::req_optype_e::AtomicStoreUmax:
+
647  case chi::req_optype_e::AtomicStoreUmin:
+
648  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
+
649  break;
+
650  case chi::req_optype_e::AtomicLoadAdd:
+
651  case chi::req_optype_e::AtomicLoadClr:
+
652  case chi::req_optype_e::AtomicLoadEor:
+
653  case chi::req_optype_e::AtomicLoadSet:
+
654  case chi::req_optype_e::AtomicLoadSmax:
+
655  case chi::req_optype_e::AtomicLoadSmin:
+
656  case chi::req_optype_e::AtomicLoadUmax:
+
657  case chi::req_optype_e::AtomicLoadUmin:
+
658  case chi::req_optype_e::AtomicSwap:
+
659  case chi::req_optype_e::AtomicCompare:
+
660  data_ext->dat.set_opcode(chi::dat_optype_e::NonCopyBackWrData);
+
661  break;
+
662  default:
+
663  SCCWARN(SCMOD) << " Unable to match req_opcode with data_opcode in write transaction ";
+
664  }
+
665  if(data_ext->dat.get_opcode() == chi::dat_optype_e::NonCopyBackWrData) {
+
666  data_ext->dat.set_resp(chi::dat_resptype_e::NonCopyBackWrData);
+
667  } else if(data_ext->dat.get_opcode() == chi::dat_optype_e::NCBWrDataCompAck) {
+
668  data_ext->dat.set_resp(chi::dat_resptype_e::NCBWrDataCompAck);
+
669  } else if(data_ext->dat.get_opcode() == chi::dat_optype_e::CopyBackWrData) {
+
670  auto cache_ext = trans.get_extension<::cache::cache_info>();
+
671  sc_assert(cache_ext != nullptr);
+
672  auto cache_state = cache_ext->get_state();
+
673  if(cache_state == ::cache::state::IX) {
+
674  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_I);
+
675  } else if(cache_state == ::cache::state::UC) {
+
676  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_UC);
+
677  } else if(cache_state == ::cache::state::SC) {
+
678  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_SC);
+
679  } else if(cache_state == ::cache::state::UD) {
+
680  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_UD_PD);
+
681  } else if(cache_state == ::cache::state::SD) {
+
682  data_ext->dat.set_resp(chi::dat_resptype_e::CopyBackWrData_SD_PD);
+
683  } else
+
684  SCCWARN(SCMOD) << " Unable to match cache state with resptype ";
+
685  } else {
+
686  SCCWARN(SCMOD) << "Unable to match resptype with WriteData Responses";
+
687  }
+
688 
+
689  auto db_id = req_e->resp.get_db_id();
+
690  data_ext->set_txn_id(db_id);
+
691  data_ext->set_src_id(req_e->resp.get_tgt_id());
+
692  data_ext->dat.set_tgt_id(req_e->get_src_id());
+
693 }
+
694 
+
695 void chi::pe::chi_rn_initiator_b::create_data_ext(payload_type& trans) {
+
696  auto data_ext = new chi::chi_data_extension;
+
697  update_data_extension(data_ext, trans);
+
698  trans.set_auto_extension<chi::chi_data_extension>(data_ext);
+
699 }
+
700 
+
701 void chi::pe::chi_rn_initiator_b::send_packet(tlm::tlm_phase phase, payload_type& trans,
+
702  chi::pe::chi_rn_initiator_b::tx_state* txs) {
+
703  sc_core::sc_time delay = sc_core::SC_ZERO_TIME;
+
704  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
+
705  if(ret == tlm::TLM_UPDATED) {
+
706  if(phase == chi::END_PARTIAL_DATA || phase == chi::END_DATA) {
+
707  if(delay.value())
+
708  wait(delay);
+
709  }
+
710  } else {
+
711  auto entry = txs->peq.get();
+
712  sc_assert(std::get<0>(entry) == &trans &&
+
713  (std::get<1>(entry) == chi::END_PARTIAL_DATA || std::get<1>(entry) == chi::END_DATA));
+
714  }
+
715  auto timing_e = trans.get_extension<atp::timing_params>();
+
716  auto delay_in_cycles = (timing_e && timing_e->wbv) ? timing_e->wbv : 1;
+
717  while(delay_in_cycles) {
+
718  delay_in_cycles--;
+
719  wait(clk_i.posedge_event());
+
720  }
+
721 }
+
722 
+
723 void chi::pe::chi_rn_initiator_b::send_wdata(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs) {
+
724  sc_core::sc_time delay;
+
725  tlm::tlm_phase phase;
+
726  auto data_ext = trans.get_extension<chi::chi_data_extension>();
+
727  if(data_ext == nullptr) {
+
728  create_data_ext(trans);
+
729  data_ext = trans.get_extension<chi::chi_data_extension>();
+
730  }
+
731 
+
732  auto beat_cnt = calculate_beats(trans);
+
733  SCCDEBUG(SCMOD) << "Starting transaction on channel WDAT : (opcode, cmd, addr, len) = ("
+
734  << to_char(data_ext->dat.get_opcode()) << ", " << trans.get_command() << ", " << std::hex
+
735  << trans.get_address() << ", " << trans.get_data_length() << ")";
+
736 
+
737  if(!data_interleaving.get_value()) {
+
738  sem_lock lck(wdat_chnl);
+
739  for(auto i = 0U; i < beat_cnt; ++i) {
+
740  if(i < beat_cnt - 1)
+
741  phase = chi::BEGIN_PARTIAL_DATA;
+
742  else
+
743  phase = chi::BEGIN_DATA;
744 
-
745  if(!data_interleaving.value) {
-
746  sem_lock lck(wdat_chnl);
-
747  for(auto i = 0U; i < beat_cnt; ++i) {
-
748  if(i < beat_cnt - 1)
-
749  phase = chi::BEGIN_PARTIAL_DATA;
-
750  else
-
751  phase = chi::BEGIN_DATA;
-
752 
-
753  // transfer_width_in_bytes is bus_width in bytes, data_ID reference from table 13_42
-
754  data_ext->dat.set_data_id(i<<(transfer_width_in_bytes*8/128 -1));
-
755  SCCTRACE(SCMOD) << "WDAT flit with txnid " << data_ext->cmn.get_txn_id() << " data_id = " << (unsigned int)(data_ext->dat.get_data_id())<< " sent. Beat count: " << i
-
756  << ", addr: 0x" << std::hex << trans.get_address() << ", last=" << (i == (beat_cnt - 1));
-
757  send_packet(phase, trans, txs);
-
758  }
-
759  } else { // data packet interleaving allowed
-
760  for(auto i = 0U; i < beat_cnt; ++i) {
-
761  {
-
762  sem_lock lck(wdat_chnl);
-
763  if(i < beat_cnt - 1)
-
764  phase = chi::BEGIN_PARTIAL_DATA;
-
765  else
-
766  phase = chi::BEGIN_DATA;
-
767 
-
768  data_ext->dat.set_data_id(i<<(transfer_width_in_bytes*8/128 -1));
-
769  SCCTRACE(SCMOD) << "WDAT flit with txnid " << data_ext->cmn.get_txn_id() << " data_id = " << (unsigned int)(data_ext->dat.get_data_id())<< " sent. Beat count: " << i
-
770  << ", addr: 0x" << std::hex << trans.get_address()
-
771  << ", last=" << (i == (beat_cnt - 1));
-
772  send_packet(phase, trans, txs);
-
773 
-
774  }
-
775  wait(SC_ZERO_TIME); // yield execution to allow others to lock
-
776  }
-
777  }
-
778 }
-
779 
-
780 void chi::pe::chi_rn_initiator_b::send_comp_ack(payload_type& trans, tx_state*& txs) {
-
781  if(make_rsp_from_req(trans, chi::rsp_optype_e::CompAck)) {
-
782  sem_lock lck(sresp_chnl);
-
783  SCCDEBUG(SCMOD) << "Send the CompAck response on SRSP channel, addr: 0x" << std::hex << trans.get_address();
-
784  tlm::tlm_phase phase = chi::ACK;
-
785  auto delay = SC_ZERO_TIME;
-
786  auto ret = socket_fw->nb_transport_fw(trans, phase, delay);
-
787  if(ret == tlm::TLM_UPDATED && phase == chi::ACK) {
-
788  if(delay.value())
-
789  wait(delay);
-
790  } else {
-
791  auto entry = txs->peq.get();
-
792  sc_assert(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::END_RESP);
-
793  }
-
794  wait(clk_i.posedge_event()); // sync to clock before releasing resource
-
795  }
-
796 }
-
797 
-
798 bool expectCompCMO(chi::chi_ctrl_extension* ext){
-
799  switch(ext->req.get_opcode()){
-
800  case req_optype_e::WriteBackFullCleanSh:
-
801  case req_optype_e::WriteBackFullCleanInv:
-
802  case req_optype_e::WriteBackFullCleanShPerSep:
-
803  case req_optype_e::WriteCleanFullCleanSh:
-
804  case req_optype_e::WriteCleanFullCleanShPerSep:
-
805  case req_optype_e::WriteNoSnpFullCleanSh:
-
806  case req_optype_e::WriteNoSnpFullCleanInv:
-
807  case req_optype_e::WriteNoSnpFullCleanShPerSep:
-
808  case req_optype_e::WriteUniquePtlCleanSh:
-
809  case req_optype_e::WriteUniqueFullCleanSh:
-
810  case req_optype_e::WriteUniquePtlCleanShPerSep:
-
811  case req_optype_e::WriteUniqueFullCleanShPerSep:
-
812  return true;
-
813  default:
-
814  return false;
-
815  }
-
816 }
-
817 bool expectPersist(chi::chi_ctrl_extension* ext){
-
818  switch(ext->req.get_opcode()){
-
819  case req_optype_e::WriteBackFullCleanShPerSep:
-
820  case req_optype_e::WriteCleanFullCleanShPerSep:
-
821  case req_optype_e::WriteNoSnpFullCleanShPerSep:
-
822  case req_optype_e::WriteUniquePtlCleanShPerSep:
-
823  case req_optype_e::WriteUniqueFullCleanShPerSep:
-
824  case req_optype_e::CleanSharedPersistSep:
-
825  return true;
-
826  default:
-
827  return false;
-
828  }
-
829 }
-
830 enum { WAIT_CTRL=0x1, WAIT_DATA=0x2, WAIT_COMPCMO=4, WAIT_PERSIST=8};
-
831 void chi::pe::chi_rn_initiator_b::exec_read_write_protocol(const unsigned int txn_id, payload_type& trans,
-
832  chi::pe::chi_rn_initiator_b::tx_state*& txs) {
-
833  // TODO: in write case CAIU does not send BEGIN_RESP;
-
834  sc_core::sc_time delay;
-
835  auto ctrl_ext = trans.get_extension<chi::chi_ctrl_extension>();
-
836  unsigned not_finish = WAIT_CTRL;
-
837  not_finish |= is_dataless(ctrl_ext)?0:WAIT_DATA;
-
838  not_finish |= expectCompCMO(ctrl_ext)?WAIT_COMPCMO:0;
-
839  not_finish |= expectPersist(ctrl_ext)?WAIT_PERSIST:0;
-
840  auto exp_beat_cnt = calculate_beats(trans);
-
841  auto beat_cnt = 0U;
-
842  while(not_finish) {
-
843  // waiting for response
-
844  auto entry = txs->peq.get();
-
845  sc_assert(std::get<0>(entry) == &trans);
-
846  auto phase = std::get<1>(entry);
-
847  if(phase == tlm::BEGIN_RESP) {
-
848  if(chi::is_dataless(ctrl_ext)){
-
849  switch(ctrl_ext->resp.get_opcode()) {
-
850  case chi::rsp_optype_e::Comp: // Response to dataless Make(Read)Unique request
-
851  if(ctrl_ext->req.get_opcode() == chi::req_optype_e::MakeReadUnique)
-
852  not_finish &= ~WAIT_CTRL;
-
853  else
-
854  switch(ctrl_ext->resp.get_resp()) {
-
855  case chi::rsp_resptype_e::Comp_I:
-
856  case chi::rsp_resptype_e::Comp_UC:
-
857  case chi::rsp_resptype_e::Comp_SC:
-
858  not_finish &= ~WAIT_CTRL;
-
859  break;
-
860  default:
-
861  break;
-
862  }
+
745  // transfer_width_in_bytes is bus_width in bytes, data_ID reference from table 13_42
+
746  data_ext->dat.set_data_id(i<<(transfer_width_in_bytes*8/128 -1));
+
747  SCCTRACE(SCMOD) << "WDAT flit with txnid " << data_ext->cmn.get_txn_id() << " data_id = " << (unsigned int)(data_ext->dat.get_data_id())<< " sent. Beat count: " << i
+
748  << ", addr: 0x" << std::hex << trans.get_address() << ", last=" << (i == (beat_cnt - 1));
+
749  send_packet(phase, trans, txs);
+
750  }
+
751  } else { // data packet interleaving allowed
+
752  for(auto i = 0U; i < beat_cnt; ++i) {
+
753  {
+
754  sem_lock lck(wdat_chnl);
+
755  if(i < beat_cnt - 1)
+
756  phase = chi::BEGIN_PARTIAL_DATA;
+
757  else
+
758  phase = chi::BEGIN_DATA;
+
759 
+
760  data_ext->dat.set_data_id(i<<(transfer_width_in_bytes*8/128 -1));
+
761  SCCTRACE(SCMOD) << "WDAT flit with txnid " << data_ext->cmn.get_txn_id() << " data_id = " << (unsigned int)(data_ext->dat.get_data_id())<< " sent. Beat count: " << i
+
762  << ", addr: 0x" << std::hex << trans.get_address()
+
763  << ", last=" << (i == (beat_cnt - 1));
+
764  send_packet(phase, trans, txs);
+
765  }
+
766  wait(SC_ZERO_TIME); // yield execution to allow others to lock
+
767  }
+
768  }
+
769 }
+
770 
+
771 void chi::pe::chi_rn_initiator_b::send_comp_ack(payload_type& trans, tx_state*& txs) {
+
772  if(make_rsp_from_req(trans, chi::rsp_optype_e::CompAck)) {
+
773  sem_lock lck(sresp_chnl);
+
774  SCCDEBUG(SCMOD) << "Send the CompAck response on SRSP channel, addr: 0x" << std::hex << trans.get_address();
+
775  tlm::tlm_phase phase = chi::ACK;
+
776  auto delay = SC_ZERO_TIME;
+
777  auto ret = socket_fw->nb_transport_fw(trans, phase, delay);
+
778  if(ret == tlm::TLM_UPDATED && phase == chi::ACK) {
+
779  if(delay.value())
+
780  wait(delay);
+
781  } else {
+
782  auto entry = txs->peq.get();
+
783  sc_assert(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::END_RESP);
+
784  }
+
785  wait(clk_i.posedge_event()); // sync to clock before releasing resource
+
786  }
+
787 }
+
788 
+
789 bool expectCompCMO(chi::chi_ctrl_extension* ext){
+
790  switch(ext->req.get_opcode()){
+
791  case req_optype_e::WriteBackFullCleanSh:
+
792  case req_optype_e::WriteBackFullCleanInv:
+
793  case req_optype_e::WriteBackFullCleanShPerSep:
+
794  case req_optype_e::WriteCleanFullCleanSh:
+
795  case req_optype_e::WriteCleanFullCleanShPerSep:
+
796  case req_optype_e::WriteNoSnpFullCleanSh:
+
797  case req_optype_e::WriteNoSnpFullCleanInv:
+
798  case req_optype_e::WriteNoSnpFullCleanShPerSep:
+
799  case req_optype_e::WriteUniquePtlCleanSh:
+
800  case req_optype_e::WriteUniqueFullCleanSh:
+
801  case req_optype_e::WriteUniquePtlCleanShPerSep:
+
802  case req_optype_e::WriteUniqueFullCleanShPerSep:
+
803  return true;
+
804  default:
+
805  return false;
+
806  }
+
807 }
+
808 bool expectPersist(chi::chi_ctrl_extension* ext){
+
809  switch(ext->req.get_opcode()){
+
810  case req_optype_e::WriteBackFullCleanShPerSep:
+
811  case req_optype_e::WriteCleanFullCleanShPerSep:
+
812  case req_optype_e::WriteNoSnpFullCleanShPerSep:
+
813  case req_optype_e::WriteUniquePtlCleanShPerSep:
+
814  case req_optype_e::WriteUniqueFullCleanShPerSep:
+
815  case req_optype_e::CleanSharedPersistSep:
+
816  return true;
+
817  default:
+
818  return false;
+
819  }
+
820 }
+
821 enum { WAIT_CTRL=0x1, WAIT_DATA=0x2, WAIT_COMPCMO=4, WAIT_PERSIST=8};
+
822 void chi::pe::chi_rn_initiator_b::exec_read_write_protocol(const unsigned int txn_id, payload_type& trans,
+
823  chi::pe::chi_rn_initiator_b::tx_state*& txs) {
+
824  // TODO: in write case CAIU does not send BEGIN_RESP;
+
825  sc_core::sc_time delay;
+
826  auto ctrl_ext = trans.get_extension<chi::chi_ctrl_extension>();
+
827  unsigned not_finish = WAIT_CTRL;
+
828  not_finish |= is_dataless(ctrl_ext)?0:WAIT_DATA;
+
829  not_finish |= expectCompCMO(ctrl_ext)?WAIT_COMPCMO:0;
+
830  not_finish |= expectPersist(ctrl_ext)?WAIT_PERSIST:0;
+
831  auto exp_beat_cnt = calculate_beats(trans);
+
832  auto beat_cnt = 0U;
+
833  while(not_finish) {
+
834  // waiting for response
+
835  auto entry = txs->peq.get();
+
836  sc_assert(std::get<0>(entry) == &trans);
+
837  auto phase = std::get<1>(entry);
+
838  if(phase == tlm::BEGIN_RESP) {
+
839  if(chi::is_dataless(ctrl_ext)){
+
840  switch(ctrl_ext->resp.get_opcode()) {
+
841  case chi::rsp_optype_e::Comp: // Response to dataless Make(Read)Unique request
+
842  if(ctrl_ext->req.get_opcode() == chi::req_optype_e::MakeReadUnique)
+
843  not_finish &= ~WAIT_CTRL;
+
844  else
+
845  switch(ctrl_ext->resp.get_resp()) {
+
846  case chi::rsp_resptype_e::Comp_I:
+
847  case chi::rsp_resptype_e::Comp_UC:
+
848  case chi::rsp_resptype_e::Comp_SC:
+
849  not_finish &= ~WAIT_CTRL;
+
850  break;
+
851  default:
+
852  break;
+
853  }
+
854  break;
+
855  case chi::rsp_optype_e::CompDBIDResp: // in case of WriteNoSnpZero, which is dataless
+
856  case chi::rsp_optype_e::CompPersist:
+
857  case chi::rsp_optype_e::CompCMO:
+
858  case chi::rsp_optype_e::CompStashDone:
+
859  not_finish &= ~WAIT_CTRL;
+
860  break;
+
861  case chi::rsp_optype_e::Persist:
+
862  not_finish &= ~WAIT_PERSIST;
863  break;
-
864  case chi::rsp_optype_e::CompDBIDResp: // in case of WriteNoSnpZero, which is dataless
-
865  case chi::rsp_optype_e::CompPersist:
-
866  case chi::rsp_optype_e::CompCMO:
-
867  case chi::rsp_optype_e::CompStashDone:
-
868  not_finish &= ~WAIT_CTRL;
-
869  break;
-
870  case chi::rsp_optype_e::Persist:
-
871  not_finish &= ~WAIT_PERSIST;
-
872  break;
-
873  default:
+
864  default:
+
865  break;
+
866  }
+
867  not_finish &= ~WAIT_DATA;
+
868  send_cresp_response(trans);
+
869  } else if(trans.is_write()) {
+
870  switch(ctrl_ext->resp.get_opcode()) {
+
871  case chi::rsp_optype_e::CompCMO:
+
872  not_finish &= ~WAIT_COMPCMO;
+
873  send_cresp_response(trans);
874  break;
-
875  }
-
876  not_finish &= ~WAIT_DATA;
-
877  send_cresp_response(trans);
-
878  } else if(trans.is_write()) {
-
879  switch(ctrl_ext->resp.get_opcode()) {
-
880  case chi::rsp_optype_e::CompCMO:
-
881  not_finish &= ~WAIT_COMPCMO;
-
882  send_cresp_response(trans);
-
883  break;
-
884  case chi::rsp_optype_e::Persist:
-
885  not_finish &= ~WAIT_PERSIST;
-
886  send_cresp_response(trans);
+
875  case chi::rsp_optype_e::Persist:
+
876  not_finish &= ~WAIT_PERSIST;
+
877  send_cresp_response(trans);
+
878  break;
+
879  case chi::rsp_optype_e::CompDBIDResp:
+
880  not_finish &= ~WAIT_CTRL;
+
881  /* no break */
+
882  case chi::rsp_optype_e::DBIDResp:
+
883  case chi::rsp_optype_e::DBIDRespOrd:
+
884  send_cresp_response(trans);
+
885  send_wdata(trans, txs);
+
886  not_finish &= ~WAIT_DATA;
887  break;
-
888  case chi::rsp_optype_e::CompDBIDResp:
+
888  case chi::rsp_optype_e::Comp:
889  not_finish &= ~WAIT_CTRL;
-
890  /* no break */
-
891  case chi::rsp_optype_e::DBIDResp:
-
892  case chi::rsp_optype_e::DBIDRespOrd:
-
893  send_cresp_response(trans);
-
894  send_wdata(trans, txs);
-
895  not_finish &= ~WAIT_DATA;
-
896  break;
-
897  case chi::rsp_optype_e::Comp:
-
898  not_finish &= ~WAIT_CTRL;
-
899  send_cresp_response(trans);
-
900  break;
-
901  default:
-
902  SCCFATAL(SCMOD) << "Illegal opcode received: " << to_char(ctrl_ext->resp.get_opcode());
-
903  }
-
904  } else if(trans.is_read()) {
-
905  not_finish &= ~WAIT_CTRL;
-
906  send_cresp_response(trans);
-
907  }
-
908  } else if(trans.is_read() && (phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA)) {
-
909  SCCTRACE(SCMOD) << "RDAT flit received. Beat count: " << beat_cnt << ", addr: 0x" << std::hex
-
910  << trans.get_address();
-
911  if(phase == chi::BEGIN_PARTIAL_DATA)
-
912  phase = chi::END_PARTIAL_DATA;
-
913  else
-
914  phase = chi::END_DATA;
-
915  delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
916  socket_fw->nb_transport_fw(trans, phase, delay);
-
917  beat_cnt++;
-
918  if(phase == chi::END_DATA) {
-
919  not_finish &= ~(WAIT_CTRL | WAIT_DATA); // clear data bit
-
920  if(beat_cnt != exp_beat_cnt)
-
921  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << beat_cnt;
-
922  }
-
923  } else {
-
924  SCCFATAL(SCMOD) << "Illegal protocol state (maybe just not implemented?)";
-
925  }
-
926  }
-
927 }
-
928 
-
929 void chi::pe::chi_rn_initiator_b::send_cresp_response(payload_type& trans) {
-
930  auto resp_ext = trans.get_extension<chi::chi_ctrl_extension>();
-
931  sc_assert(resp_ext != nullptr);
-
932  if(is_request_order(resp_ext))
-
933  req_order.post();
-
934  auto id = (unsigned)(resp_ext->get_txn_id());
-
935  SCCDEBUG(SCMOD) << "got cresp: src_id=" << (unsigned)resp_ext->get_src_id()
-
936  << ", tgt_id=" << (unsigned)resp_ext->resp.get_tgt_id()
-
937  << ", txnid=0x" << std::hex << id << ", " << to_char(resp_ext->resp.get_opcode())
-
938  << ", resp=" << to_char(resp_ext->resp.get_resp())
-
939  << ", db_id=" << (unsigned)resp_ext->resp.get_db_id() << ", addr=0x" << std::hex
-
940  << trans.get_address() << ")";
-
941  tlm::tlm_phase phase = tlm::END_RESP;
-
942  sc_core::sc_time delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
943  socket_fw->nb_transport_fw(trans, phase, delay);
-
944  wait(clk_i.posedge_event());
-
945 }
-
946 
-
947 void chi::pe::chi_rn_initiator_b::exec_atomic_protocol(const unsigned int txn_id, payload_type& trans,
-
948  chi::pe::chi_rn_initiator_b::tx_state*& txs) {
-
949  sc_core::sc_time delay;
-
950  // waiting for response
-
951  auto entry = txs->peq.get();
-
952  sc_assert(std::get<0>(entry) == &trans);
-
953  auto phase = std::get<1>(entry);
-
954  if(phase == tlm::BEGIN_RESP) {
-
955  send_cresp_response(trans);
-
956  auto resp_ext = trans.get_extension<chi::chi_ctrl_extension>();
-
957  if(resp_ext->resp.get_opcode() == chi::rsp_optype_e::DBIDResp) {
-
958  SCCERR(SCMOD) << "CRESP illegal response opcode: " << to_char(resp_ext->resp.get_opcode());
-
959  }
-
960  } else {
-
961  SCCERR(SCMOD) << "Illegal protocol state (maybe just not implemented?) " << phase;
-
962  }
-
963 
-
964  auto not_finish = 0b11U; // bit0: sending data ongoing, bit1: receiving data ongoing
-
965  auto exp_beat_cnt = calculate_beats(trans);
-
966  auto input_beat_cnt = 0U;
-
967  auto output_beat_cnt = 0U;
-
968 
-
969  sem_lock lck(wdat_chnl);
-
970  while(not_finish) {
-
973  if(output_beat_cnt < exp_beat_cnt) {
-
974  ;
-
975  if(auto data_ext = trans.get_extension<chi::chi_data_extension>()) {
-
976  update_data_extension(data_ext, trans);
-
977  } else {
-
978  create_data_ext(trans);
-
979  }
-
980  output_beat_cnt++;
-
981  SCCDEBUG(SCMOD) << "Atomic send data (txn_id,opcode,cmd,addr,len) = (" << txn_id << ","
-
982  << to_char(trans.get_extension<chi::chi_data_extension>()->dat.get_opcode()) << ", "
-
983  << trans.get_command() << ",0x" << std::hex << trans.get_address() << ","
-
984  << trans.get_data_length() << "), beat=" << output_beat_cnt << "/" << exp_beat_cnt;
-
985  if(output_beat_cnt < exp_beat_cnt)
-
986  phase = chi::BEGIN_PARTIAL_DATA;
-
987  else
-
988  phase = chi::BEGIN_DATA;
-
989  send_packet(phase, trans, txs);
-
990  if(output_beat_cnt == exp_beat_cnt) {
-
991  wait(clk_i.posedge_event()); // sync to clock before releasing resource
-
992  not_finish &= 0x2; // clear bit0
-
993  }
-
994  }
-
996  if(input_beat_cnt < exp_beat_cnt && txs->peq.has_next()) {
-
997 
-
998  // waiting for response
-
999  auto entry = txs->peq.get();
-
1000  sc_assert(std::get<0>(entry) == &trans);
-
1001  phase = std::get<1>(entry);
-
1002 
-
1003  if(phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA) {
-
1004  auto data_ext = trans.get_extension<chi::chi_data_extension>();
-
1005  sc_assert(data_ext);
-
1006  input_beat_cnt++;
-
1007  SCCDEBUG(SCMOD) << "Atomic received data (txn_id,opcode,cmd,addr,len)=(" << txn_id << ","
-
1008  << to_char(data_ext->dat.get_opcode()) << "," << trans.get_command() << ",0x"
-
1009  << std::hex << trans.get_address() << "," << trans.get_data_length()
-
1010  << "), beat=" << input_beat_cnt << "/" << exp_beat_cnt;
-
1011  if(phase == chi::BEGIN_PARTIAL_DATA)
-
1012  phase = chi::END_PARTIAL_DATA;
-
1013  else
-
1014  phase = chi::END_DATA;
-
1015  delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
1016  socket_fw->nb_transport_fw(trans, phase, delay);
-
1017  if(phase == chi::END_DATA) {
-
1018  not_finish &= 0x1; // clear bit1
-
1019  if(input_beat_cnt != exp_beat_cnt)
-
1020  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << input_beat_cnt;
-
1021  }
-
1022  } else {
-
1023  SCCERR(SCMOD) << "Illegal protocol state: " << phase;
-
1024  }
-
1025  } else if(output_beat_cnt == exp_beat_cnt)
-
1026  wait(txs->peq.event());
-
1027  }
-
1028 }
-
1029 
-
1030 void chi::pe::chi_rn_initiator_b::transport(payload_type& trans, bool blocking) {
-
1031  SCCTRACE(SCMOD) << "got transport req";
-
1032  if(blocking) {
-
1033  sc_time t;
-
1034  socket_fw->b_transport(trans, t);
-
1035  } else {
-
1036  auto req_ext = trans.get_extension<chi_ctrl_extension>();
-
1037  if(!req_ext) {
-
1038  convert_axi4ace_to_chi(trans, name(), use_legacy_mapping.value);
-
1039  req_ext = trans.get_extension<chi_ctrl_extension>();
-
1040  sc_assert(req_ext != nullptr);
-
1041  }
-
1042  req_ext->set_src_id(src_id.value);
-
1043  req_ext->req.set_tgt_id(tgt_id.value);
-
1044  req_ext->req.set_max_flit(calculate_beats(trans) - 1);
-
1045  tx_waiting++;
-
1046  auto it = tx_state_by_trans.find(to_id(trans));
-
1047  if(it == tx_state_by_trans.end()) {
-
1048  if(!tx_state_pool.size())
-
1049  tx_state_pool.push_back(new tx_state(util::strprintf("peq_%d", ++peq_cnt)));
-
1050  bool success;
-
1051  std::tie(it, success) = tx_state_by_trans.insert({to_id(trans), tx_state_pool.back()});
-
1052  tx_state_pool.pop_back();
-
1053  }
-
1054  auto& txs = it->second;
-
1055  auto const txn_id = req_ext->get_txn_id();
-
1056  if(chi::is_request_order(req_ext)) {
-
1057  req_order.wait();
-
1058  }
-
1059  if(strict_income_order.value) strict_order_sem.wait();
-
1060  sem_lock txnlck(active_tx_by_id[txn_id]); // wait until running tx with same id is over
-
1061  if(strict_income_order.value) strict_order_sem.post();
-
1062  setExpCompAck(req_ext);
-
1064  auto timing_e = trans.get_extension<atp::timing_params>();
-
1065  if(timing_e != nullptr) { // TPU as it has been defined in TPU
-
1066  auto delay_in_cycles = trans.is_read() ? timing_e->artv : timing_e->awtv;
-
1067  auto current_count = get_clk_cnt();
-
1068  if(current_count - m_prev_clk_cnt < delay_in_cycles) {
-
1069  unsigned delta_cycles = delay_in_cycles - (current_count - m_prev_clk_cnt);
-
1070  while(delta_cycles) {
-
1071  delta_cycles--;
-
1072  wait(clk_i.posedge_event());
-
1073  }
-
1074  }
-
1075  } // no timing info in case of STL
-
1076  {
-
1077  sem_lock lck(req_chnl);
-
1078  // Check if Link-credits are available for sending this transaction and wait if not
-
1079  req_credits.wait();
-
1080  tx_outstanding++;
-
1081  tx_waiting--;
-
1082  SCCTRACE(SCMOD) << "starting transaction with txn_id=" << txn_id;
-
1083  m_prev_clk_cnt = get_clk_cnt();
-
1084  tlm::tlm_phase phase = tlm::BEGIN_REQ;
-
1085  sc_core::sc_time delay;
-
1086  SCCTRACE(SCMOD) << "Send REQ, addr: 0x" << std::hex << trans.get_address() << ", TxnID: 0x" << std::hex
-
1087  << txn_id;
-
1088  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
-
1089  if(ret == tlm::TLM_UPDATED) {
-
1090  sc_assert(phase == tlm::END_REQ);
-
1091  wait(delay);
-
1092  } else {
-
1093  auto entry = txs->peq.get();
-
1094  sc_assert(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::END_REQ);
-
1095  }
-
1096  auto credit_ext = trans.get_extension<chi_credit_extension>();
-
1097  wait(clk_i.posedge_event()); // sync to clock before releasing resource
-
1098  if(credit_ext) {
-
1099  if(credit_ext->type == credit_type_e::REQ) {
-
1100  SCCTRACEALL(SCMOD) << "Received " << credit_ext->count << " req "
-
1101  << (credit_ext->count == 1 ? "credit" : "credits");
-
1102  for(auto i = 0U; i < credit_ext->count; ++i)
-
1103  req_credits.post();
-
1104  trans.set_auto_extension<chi_credit_extension>(nullptr);
-
1105  }
-
1106  }
-
1107  }
-
1108 
-
1109  if((req_optype_e::AtomicLoadAdd <= req_ext->req.get_opcode()) &&
-
1110  (req_ext->req.get_opcode() <= req_optype_e::AtomicCompare))
-
1111  exec_atomic_protocol(txn_id, trans, txs);
-
1112  else {
-
1113  exec_read_write_protocol(txn_id, trans, txs);
-
1114  bool is_atomic = req_ext->req.get_opcode() >= req_optype_e::AtomicStoreAdd &&
-
1115  req_ext->req.get_opcode() <= req_optype_e::AtomicCompare;
-
1116  bool compack_allowed = true;
-
1117  switch(req_ext->req.get_opcode()) {
-
1118  case req_optype_e::WriteUniqueFullStash:
-
1119  case req_optype_e::WriteUniquePtlStash:
-
1120  case req_optype_e::StashOnceShared:
-
1121  case req_optype_e::StashOnceUnique:
-
1122  case req_optype_e::WriteBackPtl:
-
1123  case req_optype_e::WriteBackFull:
-
1124  case req_optype_e::WriteCleanFull:
-
1125  case req_optype_e::WriteCleanPtl:
-
1126  case req_optype_e::CleanSharedPersistSep:
-
1127  case req_optype_e::WriteEvictFull:
-
1128  case req_optype_e::WriteUniqueZero:
-
1129  case req_optype_e::WriteNoSnpZero:
-
1130  case req_optype_e::StashOnceSepShared:
-
1131  case req_optype_e::StashOnceSepUnique:
-
1132  case req_optype_e::WriteBackFullCleanSh:
-
1133  case req_optype_e::WriteBackFullCleanInv:
-
1134  case req_optype_e::WriteBackFullCleanShPerSep:
-
1135  case req_optype_e::WriteCleanFullCleanSh :
-
1136  case req_optype_e::WriteCleanFullCleanShPerSep:
-
1137  compack_allowed = false;
-
1138  break;
-
1139  default:
-
1140  break;
-
1141  }
-
1142  if(!is_atomic && compack_allowed && req_ext->req.is_exp_comp_ack())
-
1143  send_comp_ack(trans, txs);
-
1144  }
-
1145 
-
1146  trans.set_response_status(tlm::TLM_OK_RESPONSE);
-
1147  wait(clk_i.posedge_event()); // sync to clock
-
1148  tx_state_pool.push_back(it->second);
-
1149  tx_state_pool.back()->peq.clear();
-
1150  tx_state_by_trans.erase(it);
-
1151  SCCTRACE(SCMOD) << "finished non-blocking protocol";
-
1152  any_tx_finished.notify(SC_ZERO_TIME);
-
1153  tx_outstanding--;
-
1154  }
-
1155 }
-
1156 
-
1157 void chi::pe::chi_rn_initiator_b::handle_snoop_response(payload_type& trans,
-
1158  chi::pe::chi_rn_initiator_b::tx_state* txs) {
-
1159  auto ext = trans.get_extension<chi_data_extension>();
-
1160  tlm::tlm_phase phase;
-
1161  sc_time delay;
-
1162  if(!ext) {
-
1163  // dataless response or stash
-
1164  auto snp_ext = trans.get_extension<chi_snp_extension>();
-
1165  sc_assert(snp_ext != nullptr);
-
1166 
-
1167  snp_ext->set_src_id(src_id.value);
-
1168  snp_ext->resp.set_tgt_id(snp_ext->get_src_id());
-
1169  snp_ext->resp.set_db_id(snp_ext->get_txn_id());
-
1170 
-
1171  phase = tlm::BEGIN_RESP; // SRSP channel
-
1172  delay = SC_ZERO_TIME;
-
1173  auto not_finish =
-
1174  snp_ext->resp.get_data_pull() ? 0b11U : 0b10U; // bit0: data is ongoing, bit1: ctrl resp. is ongoing
-
1175  {
-
1176  sem_lock lock(sresp_chnl);
-
1177  auto ret = socket_fw->nb_transport_fw(trans, phase, delay);
-
1178  if(ret == tlm::TLM_UPDATED) {
-
1179  sc_assert(phase == tlm::END_RESP); // SRSP channel
-
1180  wait(delay);
-
1181  not_finish &= 0x1; // clear bit1
-
1182  }
-
1183  wait(clk_i.posedge_event()); // sync to clock before releasing resource
-
1184  }
-
1185  if(snp_ext->resp.get_data_pull() && trans.get_data_length() < 64) {
-
1186  delete[] trans.get_data_ptr();
-
1187  trans.set_data_ptr(new uint8_t[64]);
-
1188  trans.set_data_length(64);
-
1189  }
-
1190  auto exp_beat_cnt = calculate_beats(trans);
-
1191  auto beat_cnt = 0U;
-
1192  while(not_finish) {
-
1193  // waiting for response
-
1194  auto entry = txs->peq.get();
-
1195  sc_assert(std::get<0>(entry) == &trans);
-
1196  auto phase = std::get<1>(entry);
-
1197  if(phase == tlm::END_RESP) {
-
1198  not_finish &= 0x1; // clear bit1
-
1199  } else if(snp_ext->resp.get_data_pull() && (phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA)) {
-
1200  SCCTRACE(SCMOD) << "RDAT packet received with phase " << phase << ". Beat count: " << beat_cnt
-
1201  << ", addr: 0x" << std::hex << trans.get_address();
-
1202  not_finish &= 0x1; // clear bit1
-
1203  if(phase == chi::BEGIN_PARTIAL_DATA)
-
1204  phase = chi::END_PARTIAL_DATA;
-
1205  else
-
1206  phase = chi::END_DATA;
-
1207  delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
1208  socket_fw->nb_transport_fw(trans, phase, delay);
-
1209  beat_cnt++;
-
1210  if(phase == chi::END_DATA) {
-
1211  not_finish &= 0x2; // clear bit0
-
1212  if(beat_cnt != exp_beat_cnt)
-
1213  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << beat_cnt;
-
1214  if(bw_o.get_interface())
-
1215  bw_o->transport(trans); //FIXME: explain why this needs to be called- Maybe stash?
-
1216  }
-
1217 
-
1218  } else {
-
1219  SCCFATAL(SCMOD) << "Illegal protocol state (maybe just not implemented?)";
-
1220  }
-
1221  }
-
1222  wait(clk_i.posedge_event()); // sync to clock before releasing resource
-
1223  if(snp_ext->resp.get_data_pull())
-
1224  send_comp_ack(trans, txs);
-
1225  } else {
-
1226  ext->set_src_id(src_id.value);
-
1227  send_wdata(trans, txs);
-
1228  }
-
1229 }
-
1230 
-
1231 // This process handles the SNOOP request received from ICN/HN and dispatches them to the snoop_handler threads
-
1232 void chi::pe::chi_rn_initiator_b::snoop_dispatch() {
-
1233  sc_core::sc_spawn_options opts;
-
1234  opts.set_stack_size(0x10000);
-
1235  payload_type* trans{nullptr};
-
1236  while(true) {
-
1237  while(!(trans = snp_peq.get_next_transaction())) {
-
1238  wait(snp_peq.get_event());
-
1239  }
-
1240  if(thread_avail == 0 && thread_active < 32) {
-
1241  sc_core::sc_spawn(
-
1242  [this]() {
-
1243  payload_type* trans{nullptr};
-
1244  thread_avail++;
-
1245  thread_active++;
-
1246  while(true) {
-
1247  while(!(trans = snp_dispatch_que.get_next_transaction()))
-
1248  wait(snp_dispatch_que.get_event());
-
1249  sc_assert(thread_avail > 0);
-
1250  thread_avail--;
-
1251  this->snoop_handler(trans);
-
1252  thread_avail++;
-
1253  }
-
1254  },
-
1255  nullptr, &opts);
-
1256  }
-
1257  snp_dispatch_que.notify(*trans);
-
1258  }
-
1259 }
-
1260 
-
1261 void chi::pe::chi_rn_initiator_b::snoop_handler(payload_type* trans) {
-
1262  auto req_ext = trans->get_extension<chi_snp_extension>();
-
1263  sc_assert(req_ext != nullptr);
-
1264  auto const txn_id = req_ext->get_txn_id();
-
1265 
-
1266  SCCDEBUG(SCMOD) << "Received SNOOP request: (src_id, txn_id, opcode, command, address) = " << req_ext->get_src_id()
-
1267  << ", " << txn_id << ", " << to_char(req_ext->req.get_opcode()) << ", "
-
1268  << (trans->is_read() ? "READ" : "WRITE") << ", " << std::hex << trans->get_address() << ")";
-
1269 
-
1270  auto it = tx_state_by_trans.find(to_id(trans));
-
1271  if(it == tx_state_by_trans.end()) {
-
1272  if(!tx_state_pool.size())
-
1273  tx_state_pool.push_back(new tx_state(util::strprintf("peq_%d", ++peq_cnt)));
-
1274  bool success;
-
1275  std::tie(it, success) = tx_state_by_trans.insert({to_id(trans), tx_state_pool.back()});
-
1276  tx_state_pool.pop_back();
-
1277  }
-
1278  auto* txs = it->second;
-
1279 
-
1280  sc_time delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
1281  tlm::tlm_phase phase = tlm::END_REQ;
-
1282  socket_fw->nb_transport_fw(*trans, phase, delay);
-
1283  auto cycles = 0U;
-
1284  if(bw_o.get_interface())
-
1285  cycles = bw_o->transport(*trans);
-
1286  if(cycles < std::numeric_limits<unsigned>::max()) {
-
1287  // we handle the snoop access ourselfs
-
1288  for(size_t i = 0; i < cycles + 1; ++i)
-
1289  wait(clk_i.posedge_event());
-
1290  handle_snoop_response(*trans, txs);
-
1291  }
-
1292  tx_state_pool.push_back(it->second);
-
1293  tx_state_pool.back()->peq.clear();
-
1294  tx_state_by_trans.erase(to_id(trans));
-
1295  if(trans->has_mm())
-
1296  trans->release();
-
1297 }
-
chi::pe::chi_rn_initiator_b
Definition: chi_rn_initiator.h:36
-
chi::pe::chi_rn_initiator_b::transport
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
Definition: chi_rn_initiator.cpp:1030
-
chi::pe::chi_rn_initiator_b::snoop_resp
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
Definition: chi_rn_initiator.cpp:561
+
890  send_cresp_response(trans);
+
891  break;
+
892  default:
+
893  SCCFATAL(SCMOD) << "Illegal opcode received: " << to_char(ctrl_ext->resp.get_opcode());
+
894  }
+
895  } else if(trans.is_read()) {
+
896  not_finish &= ~WAIT_CTRL;
+
897  send_cresp_response(trans);
+
898  }
+
899  } else if(trans.is_read() && (phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA)) {
+
900  SCCTRACE(SCMOD) << "RDAT flit received. Beat count: " << beat_cnt << ", addr: 0x" << std::hex
+
901  << trans.get_address();
+
902  if(phase == chi::BEGIN_PARTIAL_DATA)
+
903  phase = chi::END_PARTIAL_DATA;
+
904  else
+
905  phase = chi::END_DATA;
+
906  delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
907  socket_fw->nb_transport_fw(trans, phase, delay);
+
908  beat_cnt++;
+
909  if(phase == chi::END_DATA) {
+
910  not_finish &= ~(WAIT_CTRL | WAIT_DATA); // clear data bit
+
911  if(beat_cnt != exp_beat_cnt)
+
912  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << beat_cnt;
+
913  }
+
914  } else {
+
915  SCCFATAL(SCMOD) << "Illegal protocol state (maybe just not implemented?)";
+
916  }
+
917  }
+
918 }
+
919 
+
920 void chi::pe::chi_rn_initiator_b::send_cresp_response(payload_type& trans) {
+
921  auto resp_ext = trans.get_extension<chi::chi_ctrl_extension>();
+
922  sc_assert(resp_ext != nullptr);
+
923  if(is_request_order(resp_ext))
+
924  req_order.post();
+
925  auto id = (unsigned)(resp_ext->get_txn_id());
+
926  SCCDEBUG(SCMOD) << "got cresp: src_id=" << (unsigned)resp_ext->get_src_id()
+
927  << ", tgt_id=" << (unsigned)resp_ext->resp.get_tgt_id()
+
928  << ", txnid=0x" << std::hex << id << ", " << to_char(resp_ext->resp.get_opcode())
+
929  << ", resp=" << to_char(resp_ext->resp.get_resp())
+
930  << ", db_id=" << (unsigned)resp_ext->resp.get_db_id() << ", addr=0x" << std::hex
+
931  << trans.get_address() << ")";
+
932  tlm::tlm_phase phase = tlm::END_RESP;
+
933  sc_core::sc_time delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
934  socket_fw->nb_transport_fw(trans, phase, delay);
+
935  wait(clk_i.posedge_event());
+
936 }
+
937 
+
938 void chi::pe::chi_rn_initiator_b::exec_atomic_protocol(const unsigned int txn_id, payload_type& trans,
+
939  chi::pe::chi_rn_initiator_b::tx_state*& txs) {
+
940  sc_core::sc_time delay;
+
941  // waiting for response
+
942  auto entry = txs->peq.get();
+
943  sc_assert(std::get<0>(entry) == &trans);
+
944  auto phase = std::get<1>(entry);
+
945  if(phase == tlm::BEGIN_RESP) {
+
946  send_cresp_response(trans);
+
947  auto resp_ext = trans.get_extension<chi::chi_ctrl_extension>();
+
948  if(resp_ext->resp.get_opcode() == chi::rsp_optype_e::DBIDResp) {
+
949  SCCERR(SCMOD) << "CRESP illegal response opcode: " << to_char(resp_ext->resp.get_opcode());
+
950  }
+
951  } else {
+
952  SCCERR(SCMOD) << "Illegal protocol state (maybe just not implemented?) " << phase;
+
953  }
+
954 
+
955  auto not_finish = 0b11U; // bit0: sending data ongoing, bit1: receiving data ongoing
+
956  auto exp_beat_cnt = calculate_beats(trans);
+
957  auto input_beat_cnt = 0U;
+
958  auto output_beat_cnt = 0U;
+
959 
+
960  sem_lock lck(wdat_chnl);
+
961  while(not_finish) {
+
964  if(output_beat_cnt < exp_beat_cnt) {
+
965  ;
+
966  if(auto data_ext = trans.get_extension<chi::chi_data_extension>()) {
+
967  update_data_extension(data_ext, trans);
+
968  } else {
+
969  create_data_ext(trans);
+
970  }
+
971  output_beat_cnt++;
+
972  SCCDEBUG(SCMOD) << "Atomic send data (txn_id,opcode,cmd,addr,len) = (" << txn_id << ","
+
973  << to_char(trans.get_extension<chi::chi_data_extension>()->dat.get_opcode()) << ", "
+
974  << trans.get_command() << ",0x" << std::hex << trans.get_address() << ","
+
975  << trans.get_data_length() << "), beat=" << output_beat_cnt << "/" << exp_beat_cnt;
+
976  if(output_beat_cnt < exp_beat_cnt)
+
977  phase = chi::BEGIN_PARTIAL_DATA;
+
978  else
+
979  phase = chi::BEGIN_DATA;
+
980  send_packet(phase, trans, txs);
+
981  if(output_beat_cnt == exp_beat_cnt) {
+
982  wait(clk_i.posedge_event()); // sync to clock before releasing resource
+
983  not_finish &= 0x2; // clear bit0
+
984  }
+
985  }
+
987  if(input_beat_cnt < exp_beat_cnt && txs->peq.has_next()) {
+
988 
+
989  // waiting for response
+
990  auto entry = txs->peq.get();
+
991  sc_assert(std::get<0>(entry) == &trans);
+
992  phase = std::get<1>(entry);
+
993 
+
994  if(phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA) {
+
995  auto data_ext = trans.get_extension<chi::chi_data_extension>();
+
996  sc_assert(data_ext);
+
997  input_beat_cnt++;
+
998  SCCDEBUG(SCMOD) << "Atomic received data (txn_id,opcode,cmd,addr,len)=(" << txn_id << ","
+
999  << to_char(data_ext->dat.get_opcode()) << "," << trans.get_command() << ",0x"
+
1000  << std::hex << trans.get_address() << "," << trans.get_data_length()
+
1001  << "), beat=" << input_beat_cnt << "/" << exp_beat_cnt;
+
1002  if(phase == chi::BEGIN_PARTIAL_DATA)
+
1003  phase = chi::END_PARTIAL_DATA;
+
1004  else
+
1005  phase = chi::END_DATA;
+
1006  delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
1007  socket_fw->nb_transport_fw(trans, phase, delay);
+
1008  if(phase == chi::END_DATA) {
+
1009  not_finish &= 0x1; // clear bit1
+
1010  if(input_beat_cnt != exp_beat_cnt)
+
1011  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << input_beat_cnt;
+
1012  }
+
1013  } else {
+
1014  SCCERR(SCMOD) << "Illegal protocol state: " << phase;
+
1015  }
+
1016  } else if(output_beat_cnt == exp_beat_cnt)
+
1017  wait(txs->peq.event());
+
1018  }
+
1019 }
+
1020 
+
1021 void chi::pe::chi_rn_initiator_b::transport(payload_type& trans, bool blocking) {
+
1022  SCCTRACE(SCMOD) << "got transport req";
+
1023  if(blocking) {
+
1024  sc_time t;
+
1025  socket_fw->b_transport(trans, t);
+
1026  } else {
+
1027  auto req_ext = trans.get_extension<chi_ctrl_extension>();
+
1028  if(!req_ext) {
+
1029  convert_axi4ace_to_chi(trans, name(), use_legacy_mapping.get_value());
+
1030  req_ext = trans.get_extension<chi_ctrl_extension>();
+
1031  sc_assert(req_ext != nullptr);
+
1032  }
+
1033  req_ext->set_src_id(src_id.get_value());
+
1034  req_ext->req.set_tgt_id(tgt_id.get_value());
+
1035  req_ext->req.set_max_flit(calculate_beats(trans) - 1);
+
1036  tx_waiting++;
+
1037  auto it = tx_state_by_trans.find(to_id(trans));
+
1038  if(it == tx_state_by_trans.end()) {
+
1039  if(!tx_state_pool.size())
+
1040  tx_state_pool.push_back(new tx_state(util::strprintf("peq_%d", ++peq_cnt)));
+
1041  bool success;
+
1042  std::tie(it, success) = tx_state_by_trans.insert({to_id(trans), tx_state_pool.back()});
+
1043  tx_state_pool.pop_back();
+
1044  }
+
1045  auto& txs = it->second;
+
1046  auto const txn_id = req_ext->get_txn_id();
+
1047  if(chi::is_request_order(req_ext)) {
+
1048  req_order.wait();
+
1049  }
+
1050  if(strict_income_order.get_value()) strict_order_sem.wait();
+
1051  sem_lock txnlck(active_tx_by_id[txn_id]); // wait until running tx with same id is over
+
1052  tx_waiting4crd++;
+
1053  tx_waiting--;
+
1054  if(strict_income_order.get_value()) strict_order_sem.post();
+
1055  setExpCompAck(req_ext);
+
1057  auto timing_e = trans.get_extension<atp::timing_params>();
+
1058  if(timing_e != nullptr) { // TPU as it has been defined in TPU
+
1059  auto delay_in_cycles = trans.is_read() ? timing_e->artv : timing_e->awtv;
+
1060  auto current_count = get_clk_cnt();
+
1061  if(current_count - m_prev_clk_cnt < delay_in_cycles) {
+
1062  unsigned delta_cycles = delay_in_cycles - (current_count - m_prev_clk_cnt);
+
1063  while(delta_cycles) {
+
1064  delta_cycles--;
+
1065  wait(clk_i.posedge_event());
+
1066  }
+
1067  }
+
1068  } // no timing info in case of STL
+
1069  {
+
1070  sem_lock lck(req_chnl);
+
1071  // Check if Link-credits are available for sending this transaction and wait if not
+
1072  req_credits.wait();
+
1073  tx_outstanding++;
+
1074  tx_waiting4crd--;
+
1075  SCCTRACE(SCMOD) << "starting transaction with txn_id=" << txn_id;
+
1076  m_prev_clk_cnt = get_clk_cnt();
+
1077  tlm::tlm_phase phase = tlm::BEGIN_REQ;
+
1078  sc_core::sc_time delay;
+
1079  SCCTRACE(SCMOD) << "Send REQ, addr: 0x" << std::hex << trans.get_address() << ", TxnID: 0x" << std::hex
+
1080  << txn_id;
+
1081  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
+
1082  if(ret == tlm::TLM_UPDATED) {
+
1083  sc_assert(phase == tlm::END_REQ);
+
1084  wait(delay);
+
1085  } else {
+
1086  auto entry = txs->peq.get();
+
1087  sc_assert(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::END_REQ);
+
1088  }
+
1089  auto credit_ext = trans.get_extension<chi_credit_extension>();
+
1090  wait(clk_i.posedge_event()); // sync to clock before releasing resource
+
1091  if(credit_ext) {
+
1092  if(credit_ext->type == credit_type_e::REQ) {
+
1093  SCCTRACEALL(SCMOD) << "Received " << credit_ext->count << " req "
+
1094  << (credit_ext->count == 1 ? "credit" : "credits");
+
1095  for(auto i = 0U; i < credit_ext->count; ++i)
+
1096  req_credits.post();
+
1097  trans.set_auto_extension<chi_credit_extension>(nullptr);
+
1098  }
+
1099  }
+
1100  }
+
1101 
+
1102  if((req_optype_e::AtomicLoadAdd <= req_ext->req.get_opcode()) &&
+
1103  (req_ext->req.get_opcode() <= req_optype_e::AtomicCompare))
+
1104  exec_atomic_protocol(txn_id, trans, txs);
+
1105  else {
+
1106  exec_read_write_protocol(txn_id, trans, txs);
+
1107  bool is_atomic = req_ext->req.get_opcode() >= req_optype_e::AtomicStoreAdd &&
+
1108  req_ext->req.get_opcode() <= req_optype_e::AtomicCompare;
+
1109  bool compack_allowed = true;
+
1110  switch(req_ext->req.get_opcode()) {
+
1111  case req_optype_e::WriteUniqueFullStash:
+
1112  case req_optype_e::WriteUniquePtlStash:
+
1113  case req_optype_e::StashOnceShared:
+
1114  case req_optype_e::StashOnceUnique:
+
1115  case req_optype_e::WriteBackPtl:
+
1116  case req_optype_e::WriteBackFull:
+
1117  case req_optype_e::WriteCleanFull:
+
1118  case req_optype_e::WriteCleanPtl:
+
1119  case req_optype_e::CleanSharedPersistSep:
+
1120  case req_optype_e::WriteEvictFull:
+
1121  case req_optype_e::WriteUniqueZero:
+
1122  case req_optype_e::WriteNoSnpZero:
+
1123  case req_optype_e::StashOnceSepShared:
+
1124  case req_optype_e::StashOnceSepUnique:
+
1125  case req_optype_e::WriteBackFullCleanSh:
+
1126  case req_optype_e::WriteBackFullCleanInv:
+
1127  case req_optype_e::WriteBackFullCleanShPerSep:
+
1128  case req_optype_e::WriteCleanFullCleanSh :
+
1129  case req_optype_e::WriteCleanFullCleanShPerSep:
+
1130  compack_allowed = false;
+
1131  break;
+
1132  default:
+
1133  break;
+
1134  }
+
1135  if(!is_atomic && compack_allowed && req_ext->req.is_exp_comp_ack())
+
1136  send_comp_ack(trans, txs);
+
1137  }
+
1138 
+
1139  trans.set_response_status(tlm::TLM_OK_RESPONSE);
+
1140  wait(clk_i.posedge_event()); // sync to clock
+
1141  tx_state_pool.push_back(it->second);
+
1142  tx_state_pool.back()->peq.clear();
+
1143  tx_state_by_trans.erase(it);
+
1144  SCCTRACE(SCMOD) << "finished non-blocking protocol";
+
1145  any_tx_finished.notify(SC_ZERO_TIME);
+
1146  tx_outstanding--;
+
1147  }
+
1148 }
+
1149 
+
1150 void chi::pe::chi_rn_initiator_b::handle_snoop_response(payload_type& trans,
+
1151  chi::pe::chi_rn_initiator_b::tx_state* txs) {
+
1152  auto ext = trans.get_extension<chi_data_extension>();
+
1153  tlm::tlm_phase phase;
+
1154  sc_time delay;
+
1155  if(!ext) {
+
1156  // dataless response or stash
+
1157  auto snp_ext = trans.get_extension<chi_snp_extension>();
+
1158  sc_assert(snp_ext != nullptr);
+
1159 
+
1160  snp_ext->set_src_id(src_id.get_value());
+
1161  snp_ext->resp.set_tgt_id(snp_ext->get_src_id());
+
1162  snp_ext->resp.set_db_id(snp_ext->get_txn_id());
+
1163 
+
1164  phase = tlm::BEGIN_RESP; // SRSP channel
+
1165  delay = SC_ZERO_TIME;
+
1166  auto not_finish =
+
1167  snp_ext->resp.get_data_pull() ? 0b11U : 0b10U; // bit0: data is ongoing, bit1: ctrl resp. is ongoing
+
1168  {
+
1169  sem_lock lock(sresp_chnl);
+
1170  auto ret = socket_fw->nb_transport_fw(trans, phase, delay);
+
1171  if(ret == tlm::TLM_UPDATED) {
+
1172  sc_assert(phase == tlm::END_RESP); // SRSP channel
+
1173  wait(delay);
+
1174  not_finish &= 0x1; // clear bit1
+
1175  }
+
1176  wait(clk_i.posedge_event()); // sync to clock before releasing resource
+
1177  }
+
1178  if(snp_ext->resp.get_data_pull() && trans.get_data_length() < 64) {
+
1179  delete[] trans.get_data_ptr();
+
1180  trans.set_data_ptr(new uint8_t[64]);
+
1181  trans.set_data_length(64);
+
1182  }
+
1183  auto exp_beat_cnt = calculate_beats(trans);
+
1184  auto beat_cnt = 0U;
+
1185  while(not_finish) {
+
1186  // waiting for response
+
1187  auto entry = txs->peq.get();
+
1188  sc_assert(std::get<0>(entry) == &trans);
+
1189  auto phase = std::get<1>(entry);
+
1190  if(phase == tlm::END_RESP) {
+
1191  not_finish &= 0x1; // clear bit1
+
1192  } else if(snp_ext->resp.get_data_pull() && (phase == chi::BEGIN_PARTIAL_DATA || phase == chi::BEGIN_DATA)) {
+
1193  SCCTRACE(SCMOD) << "RDAT packet received with phase " << phase << ". Beat count: " << beat_cnt
+
1194  << ", addr: 0x" << std::hex << trans.get_address();
+
1195  not_finish &= 0x1; // clear bit1
+
1196  if(phase == chi::BEGIN_PARTIAL_DATA)
+
1197  phase = chi::END_PARTIAL_DATA;
+
1198  else
+
1199  phase = chi::END_DATA;
+
1200  delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
1201  socket_fw->nb_transport_fw(trans, phase, delay);
+
1202  beat_cnt++;
+
1203  if(phase == chi::END_DATA) {
+
1204  not_finish &= 0x2; // clear bit0
+
1205  if(beat_cnt != exp_beat_cnt)
+
1206  SCCERR(SCMOD) << "Wrong beat count, expected " << exp_beat_cnt << ", got " << beat_cnt;
+
1207  if(bw_o.get_interface())
+
1208  bw_o->transport(trans); //FIXME: explain why this needs to be called- Maybe stash?
+
1209  }
+
1210 
+
1211  } else {
+
1212  SCCFATAL(SCMOD) << "Illegal protocol state (maybe just not implemented?)";
+
1213  }
+
1214  }
+
1215  wait(clk_i.posedge_event()); // sync to clock before releasing resource
+
1216  if(snp_ext->resp.get_data_pull())
+
1217  send_comp_ack(trans, txs);
+
1218  } else {
+
1219  ext->set_src_id(src_id.get_value());
+
1220  send_wdata(trans, txs);
+
1221  }
+
1222 }
+
1223 
+
1224 // This process handles the SNOOP request received from ICN/HN and dispatches them to the snoop_handler threads
+
1225 void chi::pe::chi_rn_initiator_b::snoop_dispatch() {
+
1226  sc_core::sc_spawn_options opts;
+
1227  opts.set_stack_size(0x10000);
+
1228  payload_type* trans{nullptr};
+
1229  while(true) {
+
1230  while(!(trans = snp_peq.get_next_transaction())) {
+
1231  wait(snp_peq.get_event());
+
1232  }
+
1233  if(thread_avail == 0 && thread_active < 32) {
+
1234  sc_core::sc_spawn(
+
1235  [this]() {
+
1236  payload_type* trans{nullptr};
+
1237  thread_avail++;
+
1238  thread_active++;
+
1239  while(true) {
+
1240  while(!(trans = snp_dispatch_que.get_next_transaction()))
+
1241  wait(snp_dispatch_que.get_event());
+
1242  sc_assert(thread_avail > 0);
+
1243  thread_avail--;
+
1244  this->snoop_handler(trans);
+
1245  thread_avail++;
+
1246  }
+
1247  },
+
1248  nullptr, &opts);
+
1249  }
+
1250  snp_dispatch_que.notify(*trans);
+
1251  }
+
1252 }
+
1253 
+
1254 void chi::pe::chi_rn_initiator_b::snoop_handler(payload_type* trans) {
+
1255  auto req_ext = trans->get_extension<chi_snp_extension>();
+
1256  sc_assert(req_ext != nullptr);
+
1257  auto const txn_id = req_ext->get_txn_id();
+
1258 
+
1259  SCCDEBUG(SCMOD) << "Received SNOOP request: (src_id, txn_id, opcode, command, address) = " << req_ext->get_src_id()
+
1260  << ", " << txn_id << ", " << to_char(req_ext->req.get_opcode()) << ", "
+
1261  << (trans->is_read() ? "READ" : "WRITE") << ", " << std::hex << trans->get_address() << ")";
+
1262 
+
1263  auto it = tx_state_by_trans.find(to_id(trans));
+
1264  if(it == tx_state_by_trans.end()) {
+
1265  if(!tx_state_pool.size())
+
1266  tx_state_pool.push_back(new tx_state(util::strprintf("peq_%d", ++peq_cnt)));
+
1267  bool success;
+
1268  std::tie(it, success) = tx_state_by_trans.insert({to_id(trans), tx_state_pool.back()});
+
1269  tx_state_pool.pop_back();
+
1270  }
+
1271  auto* txs = it->second;
+
1272 
+
1273  sc_time delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
1274  tlm::tlm_phase phase = tlm::END_REQ;
+
1275  socket_fw->nb_transport_fw(*trans, phase, delay);
+
1276  auto cycles = 0U;
+
1277  if(bw_o.get_interface())
+
1278  cycles = bw_o->transport(*trans);
+
1279  if(cycles < std::numeric_limits<unsigned>::max()) {
+
1280  // we handle the snoop access ourselfs
+
1281  for(size_t i = 0; i < cycles + 1; ++i)
+
1282  wait(clk_i.posedge_event());
+
1283  handle_snoop_response(*trans, txs);
+
1284  }
+
1285  tx_state_pool.push_back(it->second);
+
1286  tx_state_pool.back()->peq.clear();
+
1287  tx_state_by_trans.erase(to_id(trans));
+
1288  if(trans->has_mm())
+
1289  trans->release();
+
1290 }
+
chi::pe::chi_rn_initiator_b
Definition: chi_rn_initiator.h:37
+
chi::pe::chi_rn_initiator_b::transport
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
Definition: chi_rn_initiator.cpp:1021
+
chi::pe::chi_rn_initiator_b::snoop_resp
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
Definition: chi_rn_initiator.cpp:553
axi::bar_e::MEMORY_BARRIER
@ MEMORY_BARRIER
Normal access, respecting barriers.
axi::to_char
const char * to_char(E t)
chi
TLM2.0 components modeling CHI.
Definition: chi_tlm.cpp:21
@@ -1359,7 +1352,7 @@
chi::chi_data_extension
Definition: chi_tlm.h:822
chi::chi_snp_extension
Definition: chi_tlm.h:784
chi::common::get_txn_id
unsigned int get_txn_id() const
Definition: chi_tlm.h:1137
-
chi::pe::chi_rn_initiator_b::tx_state
Definition: chi_rn_initiator.h:117
+
chi::pe::chi_rn_initiator_b::tx_state
Definition: chi_rn_initiator.h:118
scc::ordered_semaphore::lock
a lock for the semaphore
Definition: ordered_semaphore.h:144
scc::peq::get
TYPE get()
blocking get
Definition: peq.h:128
scc::peq::event
sc_core::sc_event & event()
get the available event
Definition: peq.h:140
diff --git a/develop/chi__rn__initiator_8h_source.html b/develop/chi__rn__initiator_8h_source.html index 73e3e412..46b22385 100644 --- a/develop/chi__rn__initiator_8h_source.html +++ b/develop/chi__rn__initiator_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -88,183 +88,185 @@
21 #include <scc/ordered_semaphore.h>
22 #include <scc/peq.h>
23 #include <scc/sc_variable.h>
-
24 #include <systemc>
-
25 #include <tlm_utils/peq_with_get.h>
-
26 #include <tuple>
-
27 #include <unordered_map>
-
28 
-
29 namespace chi {
-
30 namespace pe {
-
31 
-
32 class chi_rn_initiator_b :
-
33  public sc_core::sc_module,
-
34  public chi::chi_bw_transport_if<chi::chi_protocol_types>,
-
35  public tlm::scc::pe::intor_fw_b
-
36 {
-
37 public:
-
38  using payload_type = chi::chi_protocol_types::tlm_payload_type;
-
39  using phase_type = chi::chi_protocol_types::tlm_phase_type;
-
40 
-
41  sc_core::sc_in<bool> clk_i{"clk_i"};
-
42 
-
43  sc_core::sc_export<tlm::scc::pe::intor_fw_b> fw_i{"fw_i"};
-
44 
-
45  sc_core::sc_port<tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND> bw_o{"bw_o"};
-
46 
-
47  void b_snoop(payload_type& trans, sc_core::sc_time& t) override;
-
48 
-
49  tlm::tlm_sync_enum nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) override;
-
50 
-
51  void invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) override;
-
52 
-
53  size_t get_transferwith_in_bytes() const { return transfer_width_in_bytes; }
-
63  void transport(payload_type& trans, bool blocking) override;
-
70  void snoop_resp(payload_type& trans, bool sync = false) override;
-
71 
-
72  chi_rn_initiator_b(sc_core::sc_module_name nm,
-
73  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& port, size_t transfer_width);
-
74 
-
75  virtual ~chi_rn_initiator_b();
-
76 
-
77  chi_rn_initiator_b() = delete;
-
78 
-
79  chi_rn_initiator_b(chi_rn_initiator_b const&) = delete;
-
80 
-
81  chi_rn_initiator_b(chi_rn_initiator_b&&) = delete;
-
82 
-
83  chi_rn_initiator_b& operator=(chi_rn_initiator_b const&) = delete;
-
84 
-
85  chi_rn_initiator_b& operator=(chi_rn_initiator_b&&) = delete;
-
86 
-
87  sc_core::sc_attribute<unsigned> src_id{"src_id", 1};
-
88 
-
89  sc_core::sc_attribute<unsigned> tgt_id{"tgt_id", 0}; // home node id will be used as tgt_id in all transaction req
-
90 
-
91  sc_core::sc_attribute<bool> data_interleaving{"data_interleaving", true};
-
92 
-
93  sc_core::sc_attribute<bool> strict_income_order{"strict_income_order", true};
-
94 
-
95  sc_core::sc_attribute<bool> use_legacy_mapping{"use_legacy_mapping", false};
-
96 
-
97 protected:
-
98  void end_of_elaboration() override { clk_if = dynamic_cast<sc_core::sc_clock*>(clk_i.get_interface()); }
-
99 
-
100  unsigned calculate_beats(payload_type& p) {
-
101  // sc_assert(p.get_data_length() > 0);
-
102  return p.get_data_length() < transfer_width_in_bytes ? 1 : p.get_data_length() / transfer_width_in_bytes;
-
103  }
-
104 
-
105  void snoop_dispatch();
-
106 
-
107  void snoop_handler(payload_type* trans);
-
108 
-
109  const size_t transfer_width_in_bytes;
-
110 
-
111  std::string instance_name;
-
112 
-
113  scc::ordered_semaphore req_credits{"req_credits", 0U, true}; // L-credits provided by completer(HN)
-
114 
-
115  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& socket_fw;
-
116 
-
117  struct tx_state {
-
118  scc::peq<std::tuple<payload_type*, tlm::tlm_phase>> peq;
-
119  tx_state(std::string const& name)
-
120  : peq(sc_core::sc_gen_unique_name(name.c_str())) {}
-
121  };
-
122  std::unordered_map<uintptr_t, tx_state*> tx_state_by_trans;
-
123 
-
124  std::vector<tx_state*> tx_state_pool;
-
125 
-
126  std::unordered_map<unsigned, scc::ordered_semaphore> active_tx_by_id;
-
127 
-
128  scc::ordered_semaphore strict_order_sem{1};
-
129 
-
130  tlm_utils::peq_with_get<payload_type> snp_peq{"snp_peq"}, snp_dispatch_que{"snp_dispatch_que"};
-
131 
-
132  unsigned thread_avail{0}, thread_active{0};
-
133 
-
134  scc::ordered_semaphore req_order{1};
-
135 
-
136  scc::ordered_semaphore req_chnl{1};
-
137 
-
138  scc::ordered_semaphore wdat_chnl{1};
-
139 
-
140  scc::ordered_semaphore sresp_chnl{1};
-
141 
-
142  sc_core::sc_event any_tx_finished;
-
143 
-
144  sc_core::sc_time clk_period{10, sc_core::SC_NS};
-
145 
-
146 private:
-
147  void send_wdata(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
-
148  void handle_snoop_response(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
-
149  void send_comp_ack(payload_type& trans, tx_state*& txs);
-
150  void clk_counter() { m_clock_counter++; }
-
151  unsigned get_clk_cnt() { return m_clock_counter; }
-
152 
-
153  void create_data_ext(payload_type& trans);
-
154  void send_packet(tlm::tlm_phase phase, payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
-
155  void exec_read_write_protocol(const unsigned int txn_id, payload_type& trans,
-
156  chi::pe::chi_rn_initiator_b::tx_state*& txs);
-
157  void exec_atomic_protocol(const unsigned int txn_id, payload_type& trans,
-
158  chi::pe::chi_rn_initiator_b::tx_state*& txs);
-
159  void send_cresp_response(payload_type& trans);
-
160  void update_data_extension(chi::chi_data_extension* data_ext, payload_type& trans);
-
161 
-
162  unsigned m_clock_counter{0};
-
163  unsigned m_prev_clk_cnt{0};
-
164 
-
165  sc_core::sc_clock* clk_if{nullptr};
-
166  uint64_t peq_cnt{0};
-
167 
-
168  scc::sc_variable<unsigned> tx_waiting{"TxWaiting", 0};
-
169  scc::sc_variable<unsigned> tx_outstanding{"TxOutstanding", 0};
-
170 };
-
171 
-
175 template <unsigned int BUSWIDTH = 32, typename TYPES = chi::chi_protocol_types, int N = 1,
-
176  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
-
177 class chi_rn_initiator : public chi_rn_initiator_b {
-
178 public:
-
179  using base = chi_rn_initiator_b;
-
180 
-
181  using payload_type = base::payload_type;
-
182  using phase_type = base::phase_type;
-
187  chi_rn_initiator(const sc_core::sc_module_name& nm, chi::chi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
-
188  : chi_rn_initiator_b(nm, socket_.get_base_port(), BUSWIDTH)
-
189  , socket(socket_) {
-
190  socket(*this);
-
191  this->instance_name = socket.name();
-
192  }
-
193 
-
194  chi_rn_initiator() = delete;
+
24 #include <cci_cfg/cci_param_typed.h>
+
25 #include <systemc>
+
26 #include <tlm_utils/peq_with_get.h>
+
27 #include <tuple>
+
28 #include <unordered_map>
+
29 
+
30 namespace chi {
+
31 namespace pe {
+
32 
+
33 class chi_rn_initiator_b :
+
34  public sc_core::sc_module,
+
35  public chi::chi_bw_transport_if<chi::chi_protocol_types>,
+
36  public tlm::scc::pe::intor_fw_b
+
37 {
+
38 public:
+
39  using payload_type = chi::chi_protocol_types::tlm_payload_type;
+
40  using phase_type = chi::chi_protocol_types::tlm_phase_type;
+
41 
+
42  sc_core::sc_in<bool> clk_i{"clk_i"};
+
43 
+
44  sc_core::sc_export<tlm::scc::pe::intor_fw_b> fw_i{"fw_i"};
+
45 
+
46  sc_core::sc_port<tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND> bw_o{"bw_o"};
+
47 
+
48  void b_snoop(payload_type& trans, sc_core::sc_time& t) override;
+
49 
+
50  tlm::tlm_sync_enum nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) override;
+
51 
+
52  void invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) override;
+
53 
+
54  size_t get_transferwith_in_bytes() const { return transfer_width_in_bytes; }
+
64  void transport(payload_type& trans, bool blocking) override;
+
71  void snoop_resp(payload_type& trans, bool sync = false) override;
+
72 
+
73  chi_rn_initiator_b(sc_core::sc_module_name nm,
+
74  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& port, size_t transfer_width);
+
75 
+
76  virtual ~chi_rn_initiator_b();
+
77 
+
78  chi_rn_initiator_b() = delete;
+
79 
+
80  chi_rn_initiator_b(chi_rn_initiator_b const&) = delete;
+
81 
+
82  chi_rn_initiator_b(chi_rn_initiator_b&&) = delete;
+
83 
+
84  chi_rn_initiator_b& operator=(chi_rn_initiator_b const&) = delete;
+
85 
+
86  chi_rn_initiator_b& operator=(chi_rn_initiator_b&&) = delete;
+
87 
+
88  cci::cci_param<unsigned> src_id{"src_id", 1};
+
89 
+
90  cci::cci_param<unsigned> tgt_id{"tgt_id", 0}; // home node id will be used as tgt_id in all transaction req
+
91 
+
92  cci::cci_param<bool> data_interleaving{"data_interleaving", true};
+
93 
+
94  cci::cci_param<bool> strict_income_order{"strict_income_order", false};
+
95 
+
96  cci::cci_param<bool> use_legacy_mapping{"use_legacy_mapping", false};
+
97 
+
98 protected:
+
99  void end_of_elaboration() override { clk_if = dynamic_cast<sc_core::sc_clock*>(clk_i.get_interface()); }
+
100 
+
101  unsigned calculate_beats(payload_type& p) {
+
102  // sc_assert(p.get_data_length() > 0);
+
103  return p.get_data_length() < transfer_width_in_bytes ? 1 : p.get_data_length() / transfer_width_in_bytes;
+
104  }
+
105 
+
106  void snoop_dispatch();
+
107 
+
108  void snoop_handler(payload_type* trans);
+
109 
+
110  const size_t transfer_width_in_bytes;
+
111 
+
112  std::string instance_name;
+
113 
+
114  scc::ordered_semaphore req_credits{"TxReqCredits", 0U, true}; // L-credits provided by completer(HN)
+
115 
+
116  sc_core::sc_port_b<chi::chi_fw_transport_if<chi_protocol_types>>& socket_fw;
+
117 
+
118  struct tx_state {
+
119  scc::peq<std::tuple<payload_type*, tlm::tlm_phase>> peq;
+
120  tx_state(std::string const& name)
+
121  : peq(sc_core::sc_gen_unique_name(name.c_str())) {}
+
122  };
+
123  std::unordered_map<uintptr_t, tx_state*> tx_state_by_trans;
+
124 
+
125  std::vector<tx_state*> tx_state_pool;
+
126 
+
127  std::unordered_map<unsigned, scc::ordered_semaphore> active_tx_by_id;
+
128 
+
129  scc::ordered_semaphore strict_order_sem{1};
+
130 
+
131  tlm_utils::peq_with_get<payload_type> snp_peq{"snp_peq"}, snp_dispatch_que{"snp_dispatch_que"};
+
132 
+
133  unsigned thread_avail{0}, thread_active{0};
+
134 
+
135  scc::ordered_semaphore req_order{1};
+
136 
+
137  scc::ordered_semaphore req_chnl{1};
+
138 
+
139  scc::ordered_semaphore wdat_chnl{1};
+
140 
+
141  scc::ordered_semaphore sresp_chnl{1};
+
142 
+
143  sc_core::sc_event any_tx_finished;
+
144 
+
145  sc_core::sc_time clk_period{10, sc_core::SC_NS};
+
146 
+
147 private:
+
148  void send_wdata(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
+
149  void handle_snoop_response(payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
+
150  void send_comp_ack(payload_type& trans, tx_state*& txs);
+
151  void clk_counter() { m_clock_counter++; }
+
152  unsigned get_clk_cnt() { return m_clock_counter; }
+
153 
+
154  void create_data_ext(payload_type& trans);
+
155  void send_packet(tlm::tlm_phase phase, payload_type& trans, chi::pe::chi_rn_initiator_b::tx_state* txs);
+
156  void exec_read_write_protocol(const unsigned int txn_id, payload_type& trans,
+
157  chi::pe::chi_rn_initiator_b::tx_state*& txs);
+
158  void exec_atomic_protocol(const unsigned int txn_id, payload_type& trans,
+
159  chi::pe::chi_rn_initiator_b::tx_state*& txs);
+
160  void send_cresp_response(payload_type& trans);
+
161  void update_data_extension(chi::chi_data_extension* data_ext, payload_type& trans);
+
162 
+
163  unsigned m_clock_counter{0};
+
164  unsigned m_prev_clk_cnt{0};
+
165 
+
166  sc_core::sc_clock* clk_if{nullptr};
+
167  uint64_t peq_cnt{0};
+
168 
+
169  scc::sc_variable<unsigned> tx_waiting{"TxWaiting4Id", 0};
+
170  scc::sc_variable<unsigned> tx_waiting4crd{"TxWaiting4Credit", 0};
+
171  scc::sc_variable<unsigned> tx_outstanding{"TxOutstanding", 0};
+
172 };
+
173 
+
177 template <unsigned int BUSWIDTH = 32, typename TYPES = chi::chi_protocol_types, int N = 1,
+
178  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
+
179 class chi_rn_initiator : public chi_rn_initiator_b {
+
180 public:
+
181  using base = chi_rn_initiator_b;
+
182 
+
183  using payload_type = base::payload_type;
+
184  using phase_type = base::phase_type;
+
189  chi_rn_initiator(const sc_core::sc_module_name& nm, chi::chi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
+
190  : chi_rn_initiator_b(nm, socket_.get_base_port(), BUSWIDTH)
+
191  , socket(socket_) {
+
192  socket(*this);
+
193  this->instance_name = socket.name();
+
194  }
195 
-
196  chi_rn_initiator(chi_rn_initiator const&) = delete;
+
196  chi_rn_initiator() = delete;
197 
-
198  chi_rn_initiator(chi_rn_initiator&&) = delete;
+
198  chi_rn_initiator(chi_rn_initiator const&) = delete;
199 
-
200  chi_rn_initiator& operator=(chi_rn_initiator const&) = delete;
+
200  chi_rn_initiator(chi_rn_initiator&&) = delete;
201 
-
202  chi_rn_initiator& operator=(chi_rn_initiator&&) = delete;
+
202  chi_rn_initiator& operator=(chi_rn_initiator const&) = delete;
203 
-
204 private:
-
205  chi::chi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket;
-
206 };
-
207 
-
208 } /* namespace pe */
-
209 } /* namespace chi */
+
204  chi_rn_initiator& operator=(chi_rn_initiator&&) = delete;
+
205 
+
206 private:
+
207  chi::chi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket;
+
208 };
+
209 
+
210 } /* namespace pe */
+
211 } /* namespace chi */
chi::chi_bw_transport_if
Definition: chi_tlm.h:933
-
chi::pe::chi_rn_initiator_b
Definition: chi_rn_initiator.h:36
-
chi::pe::chi_rn_initiator_b::transport
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
Definition: chi_rn_initiator.cpp:1030
-
chi::pe::chi_rn_initiator_b::snoop_resp
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
Definition: chi_rn_initiator.cpp:561
-
chi::pe::chi_rn_initiator
Definition: chi_rn_initiator.h:177
-
chi::pe::chi_rn_initiator::chi_rn_initiator
chi_rn_initiator(const sc_core::sc_module_name &nm, chi::chi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
Definition: chi_rn_initiator.h:187
+
chi::pe::chi_rn_initiator_b
Definition: chi_rn_initiator.h:37
+
chi::pe::chi_rn_initiator_b::transport
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
Definition: chi_rn_initiator.cpp:1021
+
chi::pe::chi_rn_initiator_b::snoop_resp
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
Definition: chi_rn_initiator.cpp:553
+
chi::pe::chi_rn_initiator
Definition: chi_rn_initiator.h:179
+
chi::pe::chi_rn_initiator::chi_rn_initiator
chi_rn_initiator(const sc_core::sc_module_name &nm, chi::chi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
Definition: chi_rn_initiator.h:189
scc::ordered_semaphore
The ordered_semaphore primitive channel class.
Definition: ordered_semaphore.h:44
chi
TLM2.0 components modeling CHI.
Definition: chi_tlm.cpp:21
chi::chi_fw_transport_if
tlm::tlm_fw_transport_if< TYPES > chi_fw_transport_if
alias declaration for the forward interface
Definition: chi_tlm.h:910
chi::chi_data_extension
Definition: chi_tlm.h:822
chi::chi_initiator_socket
Definition: chi_tlm.h:942
chi::chi_protocol_types
The AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicate...
Definition: chi_tlm.h:895
-
chi::pe::chi_rn_initiator_b::tx_state
Definition: chi_rn_initiator.h:117
+
chi::pe::chi_rn_initiator_b::tx_state
Definition: chi_rn_initiator.h:118
scc::peq
priority event queue
Definition: peq.h:41
scc::sc_variable< unsigned >
tlm::scc::pe::intor_fw_b
Definition: intor_if.h:61
diff --git a/develop/chi__tlm_8cpp_source.html b/develop/chi__tlm_8cpp_source.html index af18ec5e..3d482d5b 100644 --- a/develop/chi__tlm_8cpp_source.html +++ b/develop/chi__tlm_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/chi__tlm_8h_source.html b/develop/chi__tlm_8h_source.html index 4f0a6a0a..736f4780 100644 --- a/develop/chi__tlm_8h_source.html +++ b/develop/chi__tlm_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classPath.html b/develop/classPath.html index 328dda3a..ea871c72 100644 --- a/develop/classPath.html +++ b/develop/classPath.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb3__initiator-members.html b/develop/classahb_1_1pe_1_1ahb3__initiator-members.html index f0489839..1cda3d6f 100644 --- a/develop/classahb_1_1pe_1_1ahb3__initiator-members.html +++ b/develop/classahb_1_1pe_1_1ahb3__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb3__initiator.html b/develop/classahb_1_1pe_1_1ahb3__initiator.html index 00556090..a54a78b6 100644 --- a/develop/classahb_1_1pe_1_1ahb3__initiator.html +++ b/develop/classahb_1_1pe_1_1ahb3__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb3__target-members.html b/develop/classahb_1_1pe_1_1ahb3__target-members.html index 213a93bf..20e3dcd9 100644 --- a/develop/classahb_1_1pe_1_1ahb3__target-members.html +++ b/develop/classahb_1_1pe_1_1ahb3__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb3__target.html b/develop/classahb_1_1pe_1_1ahb3__target.html index c02c5dfd..2c627007 100644 --- a/develop/classahb_1_1pe_1_1ahb3__target.html +++ b/develop/classahb_1_1pe_1_1ahb3__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb__initiator__b-members.html b/develop/classahb_1_1pe_1_1ahb__initiator__b-members.html index bb8d6486..ba34bedd 100644 --- a/develop/classahb_1_1pe_1_1ahb__initiator__b-members.html +++ b/develop/classahb_1_1pe_1_1ahb__initiator__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb__initiator__b.html b/develop/classahb_1_1pe_1_1ahb__initiator__b.html index f1acb61d..74f6e205 100644 --- a/develop/classahb_1_1pe_1_1ahb__initiator__b.html +++ b/develop/classahb_1_1pe_1_1ahb__initiator__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb__target__b-members.html b/develop/classahb_1_1pe_1_1ahb__target__b-members.html index 9c7a50bc..89c9586b 100644 --- a/develop/classahb_1_1pe_1_1ahb__target__b-members.html +++ b/develop/classahb_1_1pe_1_1ahb__target__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pe_1_1ahb__target__b.html b/develop/classahb_1_1pe_1_1ahb__target__b.html index 60ffb2e1..9ef00b0f 100644 --- a/develop/classahb_1_1pe_1_1ahb__target__b.html +++ b/develop/classahb_1_1pe_1_1ahb__target__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pin_1_1initiator-members.html b/develop/classahb_1_1pin_1_1initiator-members.html index ecabf05f..3c78001d 100644 --- a/develop/classahb_1_1pin_1_1initiator-members.html +++ b/develop/classahb_1_1pin_1_1initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pin_1_1initiator.html b/develop/classahb_1_1pin_1_1initiator.html index cac50d32..3328e815 100644 --- a/develop/classahb_1_1pin_1_1initiator.html +++ b/develop/classahb_1_1pin_1_1initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pin_1_1target-members.html b/develop/classahb_1_1pin_1_1target-members.html index d1c4b5d5..d17c5955 100644 --- a/develop/classahb_1_1pin_1_1target-members.html +++ b/develop/classahb_1_1pin_1_1target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classahb_1_1pin_1_1target.html b/develop/classahb_1_1pin_1_1target.html index 3a5f7a43..25148cad 100644 --- a/develop/classahb_1_1pin_1_1target.html +++ b/develop/classahb_1_1pin_1_1target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__initiator-members.html b/develop/classapb_1_1pe_1_1apb__initiator-members.html index a0f0a7c0..f19fffc0 100644 --- a/develop/classapb_1_1pe_1_1apb__initiator-members.html +++ b/develop/classapb_1_1pe_1_1apb__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__initiator.html b/develop/classapb_1_1pe_1_1apb__initiator.html index 7a0f4e1d..7b4f3e39 100644 --- a/develop/classapb_1_1pe_1_1apb__initiator.html +++ b/develop/classapb_1_1pe_1_1apb__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__initiator__b-members.html b/develop/classapb_1_1pe_1_1apb__initiator__b-members.html index efa00412..c54ee274 100644 --- a/develop/classapb_1_1pe_1_1apb__initiator__b-members.html +++ b/develop/classapb_1_1pe_1_1apb__initiator__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__initiator__b.html b/develop/classapb_1_1pe_1_1apb__initiator__b.html index 70c446dc..73f10eb5 100644 --- a/develop/classapb_1_1pe_1_1apb__initiator__b.html +++ b/develop/classapb_1_1pe_1_1apb__initiator__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__target-members.html b/develop/classapb_1_1pe_1_1apb__target-members.html index 8e6aedf4..e1ab4cda 100644 --- a/develop/classapb_1_1pe_1_1apb__target-members.html +++ b/develop/classapb_1_1pe_1_1apb__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__target.html b/develop/classapb_1_1pe_1_1apb__target.html index 71bdf3cb..c1116b8a 100644 --- a/develop/classapb_1_1pe_1_1apb__target.html +++ b/develop/classapb_1_1pe_1_1apb__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__target__b-members.html b/develop/classapb_1_1pe_1_1apb__target__b-members.html index 5c90932d..e8624f30 100644 --- a/develop/classapb_1_1pe_1_1apb__target__b-members.html +++ b/develop/classapb_1_1pe_1_1apb__target__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classapb_1_1pe_1_1apb__target__b.html b/develop/classapb_1_1pe_1_1apb__target__b.html index 9904e102..e674a77f 100644 --- a/develop/classapb_1_1pe_1_1apb__target__b.html +++ b/develop/classapb_1_1pe_1_1apb__target__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1ace__bw__transport__if-members.html b/develop/classaxi_1_1ace__bw__transport__if-members.html index 53bb174e..38f81eba 100644 --- a/develop/classaxi_1_1ace__bw__transport__if-members.html +++ b/develop/classaxi_1_1ace__bw__transport__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1ace__bw__transport__if.html b/develop/classaxi_1_1ace__bw__transport__if.html index e5646801..fa2cd7ba 100644 --- a/develop/classaxi_1_1ace__bw__transport__if.html +++ b/develop/classaxi_1_1ace__bw__transport__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__initiator-members.html b/develop/classaxi_1_1axi__initiator-members.html index 0fd88c84..2decc508 100644 --- a/develop/classaxi_1_1axi__initiator-members.html +++ b/develop/classaxi_1_1axi__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__initiator.html b/develop/classaxi_1_1axi__initiator.html index 96cd6643..7e392976 100644 --- a/develop/classaxi_1_1axi__initiator.html +++ b/develop/classaxi_1_1axi__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__initiator__base-members.html b/develop/classaxi_1_1axi__initiator__base-members.html index 9353396d..f43ac6b4 100644 --- a/develop/classaxi_1_1axi__initiator__base-members.html +++ b/develop/classaxi_1_1axi__initiator__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__initiator__base.html b/develop/classaxi_1_1axi__initiator__base.html index 9fd0df1b..08cac208 100644 --- a/develop/classaxi_1_1axi__initiator__base.html +++ b/develop/classaxi_1_1axi__initiator__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__target-members.html b/develop/classaxi_1_1axi__target-members.html index 5a2ef5e3..eec6c5f7 100644 --- a/develop/classaxi_1_1axi__target-members.html +++ b/develop/classaxi_1_1axi__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__target.html b/develop/classaxi_1_1axi__target.html index 1db1f11f..ff8b0a0d 100644 --- a/develop/classaxi_1_1axi__target.html +++ b/develop/classaxi_1_1axi__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__target__base-members.html b/develop/classaxi_1_1axi__target__base-members.html index 6a0752c0..b4d015d1 100644 --- a/develop/classaxi_1_1axi__target__base-members.html +++ b/develop/classaxi_1_1axi__target__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1axi__target__base.html b/develop/classaxi_1_1axi__target__base.html index b51de090..20a636aa 100644 --- a/develop/classaxi_1_1axi__target__base.html +++ b/develop/classaxi_1_1axi__target__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1bw__blocking__transport__if-members.html b/develop/classaxi_1_1bw__blocking__transport__if-members.html index 53eb481b..0da09904 100644 --- a/develop/classaxi_1_1bw__blocking__transport__if-members.html +++ b/develop/classaxi_1_1bw__blocking__transport__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1bw__blocking__transport__if.html b/develop/classaxi_1_1bw__blocking__transport__if.html index af2c3bee..180df4e4 100644 --- a/develop/classaxi_1_1bw__blocking__transport__if.html +++ b/develop/classaxi_1_1bw__blocking__transport__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1checker_1_1ace__protocol-members.html b/develop/classaxi_1_1checker_1_1ace__protocol-members.html index 7864fa5d..2a567b49 100644 --- a/develop/classaxi_1_1checker_1_1ace__protocol-members.html +++ b/develop/classaxi_1_1checker_1_1ace__protocol-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1checker_1_1ace__protocol.html b/develop/classaxi_1_1checker_1_1ace__protocol.html index a2f51167..5e3e3c4f 100644 --- a/develop/classaxi_1_1checker_1_1ace__protocol.html +++ b/develop/classaxi_1_1checker_1_1ace__protocol.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1checker_1_1axi__protocol-members.html b/develop/classaxi_1_1checker_1_1axi__protocol-members.html index affef39c..98762ab2 100644 --- a/develop/classaxi_1_1checker_1_1axi__protocol-members.html +++ b/develop/classaxi_1_1checker_1_1axi__protocol-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1checker_1_1axi__protocol.html b/develop/classaxi_1_1checker_1_1axi__protocol.html index 03272fef..4440f0ac 100644 --- a/develop/classaxi_1_1checker_1_1axi__protocol.html +++ b/develop/classaxi_1_1checker_1_1axi__protocol.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__ext__recording-members.html b/develop/classaxi_1_1lwtr_1_1ace__ext__recording-members.html index 1499728a..2a633665 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__ext__recording-members.html +++ b/develop/classaxi_1_1lwtr_1_1ace__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__ext__recording.html b/develop/classaxi_1_1lwtr_1_1ace__ext__recording.html index 69d0a8aa..388cd425 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__ext__recording.html +++ b/develop/classaxi_1_1lwtr_1_1ace__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__lwtr-members.html b/develop/classaxi_1_1lwtr_1_1ace__lwtr-members.html index 2117f24b..4013e121 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__lwtr-members.html +++ b/develop/classaxi_1_1lwtr_1_1ace__lwtr-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__lwtr.html b/develop/classaxi_1_1lwtr_1_1ace__lwtr.html index 2bcfa8cb..87c6f82f 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__lwtr.html +++ b/develop/classaxi_1_1lwtr_1_1ace__lwtr.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder-members.html b/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder-members.html index f1aa94c4..c9c9f1e6 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder-members.html +++ b/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder.html b/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder.html index 66e68c80..85b4fa45 100644 --- a/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder.html +++ b/develop/classaxi_1_1lwtr_1_1ace__lwtr__recorder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi3__ext__recording-members.html b/develop/classaxi_1_1lwtr_1_1axi3__ext__recording-members.html index 63a2a3c4..bceadea5 100644 --- a/develop/classaxi_1_1lwtr_1_1axi3__ext__recording-members.html +++ b/develop/classaxi_1_1lwtr_1_1axi3__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi3__ext__recording.html b/develop/classaxi_1_1lwtr_1_1axi3__ext__recording.html index 287eb7ee..d3ff8814 100644 --- a/develop/classaxi_1_1lwtr_1_1axi3__ext__recording.html +++ b/develop/classaxi_1_1lwtr_1_1axi3__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi4__ext__recording-members.html b/develop/classaxi_1_1lwtr_1_1axi4__ext__recording-members.html index 078a3e80..d40befa5 100644 --- a/develop/classaxi_1_1lwtr_1_1axi4__ext__recording-members.html +++ b/develop/classaxi_1_1lwtr_1_1axi4__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi4__ext__recording.html b/develop/classaxi_1_1lwtr_1_1axi4__ext__recording.html index a8497e7e..51168373 100644 --- a/develop/classaxi_1_1lwtr_1_1axi4__ext__recording.html +++ b/develop/classaxi_1_1lwtr_1_1axi4__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi__lwtr-members.html b/develop/classaxi_1_1lwtr_1_1axi__lwtr-members.html index 5b2a5df0..04c12a65 100644 --- a/develop/classaxi_1_1lwtr_1_1axi__lwtr-members.html +++ b/develop/classaxi_1_1lwtr_1_1axi__lwtr-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi__lwtr.html b/develop/classaxi_1_1lwtr_1_1axi__lwtr.html index 9d10379c..5fd9351b 100644 --- a/develop/classaxi_1_1lwtr_1_1axi__lwtr.html +++ b/develop/classaxi_1_1lwtr_1_1axi__lwtr.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder-members.html b/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder-members.html index cb0d72fd..edc5eded 100644 --- a/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder-members.html +++ b/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder.html b/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder.html index 2b1e05e5..3ccf2dcf 100644 --- a/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder.html +++ b/develop/classaxi_1_1lwtr_1_1axi__lwtr__recorder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording-members.html b/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording-members.html index c803f07f..01d838c7 100644 --- a/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording-members.html +++ b/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording.html b/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording.html index ac3f1f83..66db04b9 100644 --- a/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording.html +++ b/develop/classaxi_1_1lwtr_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1ace__initiator-members.html b/develop/classaxi_1_1pe_1_1ace__initiator-members.html index 438f80c7..993bdb76 100644 --- a/develop/classaxi_1_1pe_1_1ace__initiator-members.html +++ b/develop/classaxi_1_1pe_1_1ace__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -74,23 +74,23 @@ ace_initiator(ace_initiator &&)=delete (defined in axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL > add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)axi::pe::axi_initiator_binline any_tx_finished (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - artvaxi::pe::axi_initiator_b - awtvaxi::pe::axi_initiator_b + artvaxi::pe::axi_initiator_b + awtvaxi::pe::axi_initiator_b axi_initiator_b(sc_core::sc_module_name nm, sc_core::sc_port_b< axi::axi_fw_transport_if< axi_protocol_types >> &port, size_t transfer_width, flavor_e flavor) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b()=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b b_snoop(payload_type &trans, sc_core::sc_time &t) override (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b ace_bw_transport_if< axi::axi_protocol_types >::b_snoop(TYPES::tlm_payload_type &trans, sc_core::sc_time &t)=0axi::bw_blocking_transport_if< TYPES::tlm_payload_type >pure virtual - baaxi::pe::axi_initiator_b + baaxi::pe::axi_initiator_b base typedef (defined in axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL > - braxi::pe::axi_initiator_b + braxi::pe::axi_initiator_b bw_o (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b calculate_beats(payload_type &p) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binlineprotected clk_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b clk_period (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected data_interleaving (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b - enable_id_serializingaxi::pe::axi_initiator_b + enable_id_serializingaxi::pe::axi_initiator_b flavor (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected fw_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b get_transferwith_in_bytes() const (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binline @@ -101,12 +101,14 @@ operator=(ace_initiator &&)=delete (defined in axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL > operator=(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b operator=(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b - outstanding_snoopsaxi::pe::axi_initiator_b + outstanding_snoopsaxi::pe::axi_initiator_b payload_type typedef (defined in axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL > phase_type typedef (defined in axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_initiator< BUSWIDTH, TYPES, N, POL > - rbraxi::pe::axi_initiator_b + rbraxi::pe::axi_initiator_b rd_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - rlaaxi::pe::axi_initiator_b + rd_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + rd_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + rlaaxi::pe::axi_initiator_b snoop_resp(payload_type &trans, bool sync=false) overrideaxi::pe::axi_initiator_bvirtual snoop_thread() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected snp_peq (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected @@ -116,8 +118,10 @@ transfer_width_in_bytes (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected transport(payload_type &trans, bool blocking) overrideaxi::pe::axi_initiator_bvirtual tx_state_by_tx (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - wbvaxi::pe::axi_initiator_b + wbvaxi::pe::axi_initiator_b wr_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + wr_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + wr_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected ~axi_initiator_b() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bvirtual diff --git a/develop/classaxi_1_1pe_1_1ace__initiator.html b/develop/classaxi_1_1pe_1_1ace__initiator.html index 71217109..3c138296 100644 --- a/develop/classaxi_1_1pe_1_1ace__initiator.html +++ b/develop/classaxi_1_1pe_1_1ace__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -92,19 +92,21 @@
Collaboration graph
- - - - - - - - - - - - - + + + + + + + + + + + + + + +
[legend]
@@ -198,45 +200,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -281,6 +283,18 @@ + + + + + + + +
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", false}
 
-sc_core::sc_attribute< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
-sc_core::sc_attribute< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
-sc_core::sc_attribute< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
-sc_core::sc_attribute< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
-sc_core::sc_attribute< unsigned > br {"br", 0}
 Write response valid to ready.
 
-sc_core::sc_attribute< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
-sc_core::sc_attribute< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
-sc_core::sc_attribute< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
-sc_core::sc_attribute< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", false}
 
+cci::cci_param< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
+cci::cci_param< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
+cci::cci_param< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
+cci::cci_param< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
+cci::cci_param< unsigned > br {"br", 0}
 Write response valid to ready.
 
+cci::cci_param< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
+cci::cci_param< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
+cci::cci_param< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
+cci::cci_param< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
- Protected Member Functions inherited from axi::pe::axi_initiator_b
unsigned calculate_beats (payload_type &p)
sc_core::sc_time clk_period {10, sc_core::SC_NS}
 
+scc::sc_variable< unsigned > rd_waiting {"RdWaiting", 0}
 
+scc::sc_variable< unsigned > wr_waiting {"WrWaiting", 0}
 
+scc::sc_variable< unsigned > rd_outstanding {"RdOutstanding", 0}
 
+scc::sc_variable< unsigned > wr_outstanding {"WrOutstanding", 0}
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
@@ -288,7 +302,7 @@

the axi initiator socket protocol engine adapted to a particular initiator socket configuration

-

Definition at line 251 of file axi_initiator.h.

+

Definition at line 258 of file axi_initiator.h.

Constructor & Destructor Documentation

◆ ace_initiator()

@@ -334,7 +348,7 @@

Definition at line 261 of file axi_initiator.h.

+

Definition at line 268 of file axi_initiator.h.

diff --git a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.map b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.map index abe647d5..576721b3 100644 --- a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.map +++ b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.map @@ -1,15 +1,17 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.md5 b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.md5 index e28810ee..3d2636e6 100644 --- a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.md5 +++ b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.md5 @@ -1 +1 @@ -9eae6c1067c7631dae609e7a6dcc42e0 \ No newline at end of file +147add1ed4756d134da11a655e114465 \ No newline at end of file diff --git a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.png b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.png index 3bc86fa8..c582d389 100644 Binary files a/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.png and b/develop/classaxi_1_1pe_1_1ace__initiator__coll__graph.png differ diff --git a/develop/classaxi_1_1pe_1_1ace__lite__initiator-members.html b/develop/classaxi_1_1pe_1_1ace__lite__initiator-members.html index eea2670e..d63ce065 100644 --- a/develop/classaxi_1_1pe_1_1ace__lite__initiator-members.html +++ b/develop/classaxi_1_1pe_1_1ace__lite__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -74,23 +74,23 @@ ace_lite_initiator(ace_lite_initiator &&)=delete (defined in axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL > add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)axi::pe::axi_initiator_binline any_tx_finished (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - artvaxi::pe::axi_initiator_b - awtvaxi::pe::axi_initiator_b + artvaxi::pe::axi_initiator_b + awtvaxi::pe::axi_initiator_b axi_initiator_b(sc_core::sc_module_name nm, sc_core::sc_port_b< axi::axi_fw_transport_if< axi_protocol_types >> &port, size_t transfer_width, flavor_e flavor) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b()=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b axi_initiator_b(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b b_snoop(payload_type &trans, sc_core::sc_time &t) override (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b ace_bw_transport_if< axi::axi_protocol_types >::b_snoop(TYPES::tlm_payload_type &trans, sc_core::sc_time &t)=0axi::bw_blocking_transport_if< TYPES::tlm_payload_type >pure virtual - baaxi::pe::axi_initiator_b + baaxi::pe::axi_initiator_b base typedef (defined in axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL > - braxi::pe::axi_initiator_b + braxi::pe::axi_initiator_b bw_o (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b calculate_beats(payload_type &p) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binlineprotected clk_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b clk_period (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected data_interleaving (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b - enable_id_serializingaxi::pe::axi_initiator_b + enable_id_serializingaxi::pe::axi_initiator_b flavor (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected fw_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b get_transferwith_in_bytes() const (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binline @@ -101,12 +101,14 @@ operator=(ace_lite_initiator &&)=delete (defined in axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL > operator=(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b operator=(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b - outstanding_snoopsaxi::pe::axi_initiator_b + outstanding_snoopsaxi::pe::axi_initiator_b payload_type typedef (defined in axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL > phase_type typedef (defined in axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::ace_lite_initiator< BUSWIDTH, TYPES, N, POL > - rbraxi::pe::axi_initiator_b + rbraxi::pe::axi_initiator_b rd_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - rlaaxi::pe::axi_initiator_b + rd_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + rd_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + rlaaxi::pe::axi_initiator_b snoop_resp(payload_type &trans, bool sync=false) overrideaxi::pe::axi_initiator_bvirtual snoop_thread() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected snp_peq (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected @@ -116,8 +118,10 @@ transfer_width_in_bytes (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected transport(payload_type &trans, bool blocking) overrideaxi::pe::axi_initiator_bvirtual tx_state_by_tx (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected - wbvaxi::pe::axi_initiator_b + wbvaxi::pe::axi_initiator_b wr_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + wr_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected + wr_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected ~axi_initiator_b() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bvirtual diff --git a/develop/classaxi_1_1pe_1_1ace__lite__initiator.html b/develop/classaxi_1_1pe_1_1ace__lite__initiator.html index 399576b8..f28205c9 100644 --- a/develop/classaxi_1_1pe_1_1ace__lite__initiator.html +++ b/develop/classaxi_1_1pe_1_1ace__lite__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -92,19 +92,21 @@
Collaboration graph
- - - - - - - - - - - - - + + + + + + + + + + + + + + +
[legend]
@@ -198,45 +200,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -281,6 +283,18 @@ + + + + + + + +
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", false}
 
-sc_core::sc_attribute< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
-sc_core::sc_attribute< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
-sc_core::sc_attribute< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
-sc_core::sc_attribute< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
-sc_core::sc_attribute< unsigned > br {"br", 0}
 Write response valid to ready.
 
-sc_core::sc_attribute< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
-sc_core::sc_attribute< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
-sc_core::sc_attribute< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
-sc_core::sc_attribute< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", false}
 
+cci::cci_param< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
+cci::cci_param< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
+cci::cci_param< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
+cci::cci_param< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
+cci::cci_param< unsigned > br {"br", 0}
 Write response valid to ready.
 
+cci::cci_param< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
+cci::cci_param< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
+cci::cci_param< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
+cci::cci_param< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
- Protected Member Functions inherited from axi::pe::axi_initiator_b
unsigned calculate_beats (payload_type &p)
sc_core::sc_time clk_period {10, sc_core::SC_NS}
 
+scc::sc_variable< unsigned > rd_waiting {"RdWaiting", 0}
 
+scc::sc_variable< unsigned > wr_waiting {"WrWaiting", 0}
 
+scc::sc_variable< unsigned > rd_outstanding {"RdOutstanding", 0}
 
+scc::sc_variable< unsigned > wr_outstanding {"WrOutstanding", 0}
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
@@ -288,7 +302,7 @@

the axi initiator socket protocol engine adapted to a particular initiator socket configuration

-

Definition at line 216 of file axi_initiator.h.

+

Definition at line 223 of file axi_initiator.h.

Constructor & Destructor Documentation

◆ ace_lite_initiator()

@@ -334,7 +348,7 @@

Definition at line 226 of file axi_initiator.h.

+

Definition at line 233 of file axi_initiator.h.

diff --git a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.map b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.map index 128797d2..4542d5af 100644 --- a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.map +++ b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.map @@ -1,15 +1,17 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.md5 b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.md5 index eb2cdad5..be49f85e 100644 --- a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.md5 +++ b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.md5 @@ -1 +1 @@ -c4a3b25c38cd29fbbfb0ffc4b6d1f007 \ No newline at end of file +f26ef75f8982d2da9926a1b41b1f3c78 \ No newline at end of file diff --git a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.png b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.png index c81bb9ac..ec2de51e 100644 Binary files a/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.png and b/develop/classaxi_1_1pe_1_1ace__lite__initiator__coll__graph.png differ diff --git a/develop/classaxi_1_1pe_1_1ace__target__pe-members.html b/develop/classaxi_1_1pe_1_1ace__target__pe-members.html index be21b741..036a9e5e 100644 --- a/develop/classaxi_1_1pe_1_1ace__target__pe-members.html +++ b/develop/classaxi_1_1pe_1_1ace__target__pe-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1ace__target__pe.html b/develop/classaxi_1_1pe_1_1ace__target__pe.html index 2fa5a71f..2d946300 100644 --- a/develop/classaxi_1_1pe_1_1ace__target__pe.html +++ b/develop/classaxi_1_1pe_1_1ace__target__pe.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1axi__initiator-members.html b/develop/classaxi_1_1pe_1_1axi__initiator-members.html index 6a0eef4b..9fb6ab60 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator-members.html +++ b/develop/classaxi_1_1pe_1_1axi__initiator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -70,8 +70,8 @@ - - + + @@ -82,15 +82,15 @@ - + - + - + @@ -101,12 +101,14 @@ - + - + - + + + @@ -116,8 +118,10 @@ - + + +
add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)axi::pe::axi_initiator_binline
any_tx_finished (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
artvaxi::pe::axi_initiator_b
awtvaxi::pe::axi_initiator_b
artvaxi::pe::axi_initiator_b
awtvaxi::pe::axi_initiator_b
axi_initiator(const sc_core::sc_module_name &nm, axi::axi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >inline
axi_initiator()=delete (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
axi_initiator(axi_initiator const &)=delete (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
axi_initiator_b(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
b_snoop(payload_type &trans, sc_core::sc_time &t) override (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
ace_bw_transport_if< axi::axi_protocol_types >::b_snoop(TYPES::tlm_payload_type &trans, sc_core::sc_time &t)=0axi::bw_blocking_transport_if< TYPES::tlm_payload_type >pure virtual
baaxi::pe::axi_initiator_b
baaxi::pe::axi_initiator_b
base typedef (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
braxi::pe::axi_initiator_b
braxi::pe::axi_initiator_b
bw_o (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
calculate_beats(payload_type &p) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binlineprotected
clk_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
clk_period (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
data_interleaving (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
enable_id_serializingaxi::pe::axi_initiator_b
enable_id_serializingaxi::pe::axi_initiator_b
flavor (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
fw_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
get_transferwith_in_bytes() const (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binline
operator=(axi_initiator &&)=delete (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
operator=(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
operator=(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
outstanding_snoopsaxi::pe::axi_initiator_b
outstanding_snoopsaxi::pe::axi_initiator_b
payload_type typedef (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
phase_type typedef (defined in axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >)axi::pe::axi_initiator< BUSWIDTH, TYPES, N, POL >
rbraxi::pe::axi_initiator_b
rbraxi::pe::axi_initiator_b
rd_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rlaaxi::pe::axi_initiator_b
rd_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rd_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rlaaxi::pe::axi_initiator_b
snoop_resp(payload_type &trans, bool sync=false) overrideaxi::pe::axi_initiator_bvirtual
snoop_thread() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
snp_peq (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
transfer_width_in_bytes (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
transport(payload_type &trans, bool blocking) overrideaxi::pe::axi_initiator_bvirtual
tx_state_by_tx (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wbvaxi::pe::axi_initiator_b
wbvaxi::pe::axi_initiator_b
wr_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wr_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wr_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
~axi_initiator_b() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bvirtual
diff --git a/develop/classaxi_1_1pe_1_1axi__initiator.html b/develop/classaxi_1_1pe_1_1axi__initiator.html index 42ab06d9..a9e2c00f 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator.html +++ b/develop/classaxi_1_1pe_1_1axi__initiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -92,19 +92,21 @@
Collaboration graph
- - - - - - - - - - - - - + + + + + + + + + + + + + + +
[legend]
@@ -198,45 +200,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -281,6 +283,18 @@ + + + + + + + +
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", false}
 
-sc_core::sc_attribute< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
-sc_core::sc_attribute< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
-sc_core::sc_attribute< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
-sc_core::sc_attribute< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
-sc_core::sc_attribute< unsigned > br {"br", 0}
 Write response valid to ready.
 
-sc_core::sc_attribute< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
-sc_core::sc_attribute< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
-sc_core::sc_attribute< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
-sc_core::sc_attribute< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", false}
 
+cci::cci_param< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
+cci::cci_param< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
+cci::cci_param< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
+cci::cci_param< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
+cci::cci_param< unsigned > br {"br", 0}
 Write response valid to ready.
 
+cci::cci_param< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
+cci::cci_param< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
+cci::cci_param< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
+cci::cci_param< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
- Protected Member Functions inherited from axi::pe::axi_initiator_b
unsigned calculate_beats (payload_type &p)
sc_core::sc_time clk_period {10, sc_core::SC_NS}
 
+scc::sc_variable< unsigned > rd_waiting {"RdWaiting", 0}
 
+scc::sc_variable< unsigned > wr_waiting {"WrWaiting", 0}
 
+scc::sc_variable< unsigned > rd_outstanding {"RdOutstanding", 0}
 
+scc::sc_variable< unsigned > wr_outstanding {"WrOutstanding", 0}
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
@@ -288,7 +302,7 @@

the axi initiator socket protocol engine adapted to a particular initiator socket configuration

-

Definition at line 181 of file axi_initiator.h.

+

Definition at line 188 of file axi_initiator.h.

Constructor & Destructor Documentation

◆ axi_initiator()

@@ -334,7 +348,7 @@

Definition at line 191 of file axi_initiator.h.

+

Definition at line 198 of file axi_initiator.h.

diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b-members.html b/develop/classaxi_1_1pe_1_1axi__initiator__b-members.html index 6a071713..2777cc90 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__b-members.html +++ b/develop/classaxi_1_1pe_1_1axi__initiator__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -70,22 +70,22 @@ - - + + - - + + - + @@ -94,12 +94,14 @@ - + - + - + + + @@ -109,8 +111,10 @@ - + + +
add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)axi::pe::axi_initiator_binline
any_tx_finished (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
artvaxi::pe::axi_initiator_b
awtvaxi::pe::axi_initiator_b
artvaxi::pe::axi_initiator_b
awtvaxi::pe::axi_initiator_b
axi_initiator_b(sc_core::sc_module_name nm, sc_core::sc_port_b< axi::axi_fw_transport_if< axi_protocol_types >> &port, size_t transfer_width, flavor_e flavor) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
axi_initiator_b()=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
axi_initiator_b(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
axi_initiator_b(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
b_snoop(payload_type &trans, sc_core::sc_time &t) override (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
ace_bw_transport_if< axi::axi_protocol_types >::b_snoop(TYPES::tlm_payload_type &trans, sc_core::sc_time &t)=0axi::bw_blocking_transport_if< TYPES::tlm_payload_type >pure virtual
baaxi::pe::axi_initiator_b
braxi::pe::axi_initiator_b
baaxi::pe::axi_initiator_b
braxi::pe::axi_initiator_b
bw_o (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
calculate_beats(payload_type &p) (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binlineprotected
clk_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
clk_period (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
data_interleaving (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
enable_id_serializingaxi::pe::axi_initiator_b
enable_id_serializingaxi::pe::axi_initiator_b
flavor (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
fw_i (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
get_transferwith_in_bytes() const (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_binline
nb_transport_bw(payload_type &trans, phase_type &phase, sc_core::sc_time &t) override (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
operator=(axi_initiator_b const &)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
operator=(axi_initiator_b &&)=delete (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
outstanding_snoopsaxi::pe::axi_initiator_b
outstanding_snoopsaxi::pe::axi_initiator_b
payload_type typedef (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
phase_type typedef (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_b
rbraxi::pe::axi_initiator_b
rbraxi::pe::axi_initiator_b
rd_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rlaaxi::pe::axi_initiator_b
rd_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rd_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
rlaaxi::pe::axi_initiator_b
snoop_resp(payload_type &trans, bool sync=false) overrideaxi::pe::axi_initiator_bvirtual
snoop_thread() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
snp_peq (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
transfer_width_in_bytes (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
transport(payload_type &trans, bool blocking) overrideaxi::pe::axi_initiator_bvirtual
tx_state_by_tx (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wbvaxi::pe::axi_initiator_b
wbvaxi::pe::axi_initiator_b
wr_chnl (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wr_outstanding (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
wr_waiting (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bprotected
~axi_initiator_b() (defined in axi::pe::axi_initiator_b)axi::pe::axi_initiator_bvirtual
diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b.html b/develop/classaxi_1_1pe_1_1axi__initiator__b.html index 4db9a102..bd61cabb 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__b.html +++ b/develop/classaxi_1_1pe_1_1axi__initiator__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -96,18 +96,20 @@
Collaboration graph
- - - - - - - - - - - - + + + + + + + + + + + + + +
[legend]
@@ -179,45 +181,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", false}
 
-sc_core::sc_attribute< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
-sc_core::sc_attribute< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
-sc_core::sc_attribute< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
-sc_core::sc_attribute< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
-sc_core::sc_attribute< unsigned > br {"br", 0}
 Write response valid to ready.
 
-sc_core::sc_attribute< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
-sc_core::sc_attribute< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
-sc_core::sc_attribute< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
-sc_core::sc_attribute< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", false}
 
+cci::cci_param< unsigned > artv {"artv", 1}
 Read address valid to next read address valid.
 
+cci::cci_param< unsigned > awtv {"awtv", 1}
 Write address valid to next write address valid.
 
+cci::cci_param< unsigned > wbv {"wbv", 1}
 Write data handshake to next beat valid.
 
+cci::cci_param< unsigned > rbr {"rbr", 0}
 Read data valid to same beat ready.
 
+cci::cci_param< unsigned > br {"br", 0}
 Write response valid to ready.
 
+cci::cci_param< unsigned > rla {"rla", 1}
 Read last data handshake to acknowledge.
 
+cci::cci_param< unsigned > ba {"ba", 1}
 Write response handshake to acknowledge.
 
+cci::cci_param< bool > enable_id_serializing {"enable_id_serializing", false}
 Quirks enable.
 
+cci::cci_param< unsigned > outstanding_snoops {"outstanding_snoops", 8}
 number of snoops which can be handled
 
@@ -266,10 +268,22 @@ + + + + + + + +

Protected Member Functions

sc_core::sc_time clk_period {10, sc_core::SC_NS}
 
+scc::sc_variable< unsigned > rd_waiting {"RdWaiting", 0}
 
+scc::sc_variable< unsigned > wr_waiting {"WrWaiting", 0}
 
+scc::sc_variable< unsigned > rd_outstanding {"RdOutstanding", 0}
 
+scc::sc_variable< unsigned > wr_outstanding {"WrOutstanding", 0}
 

Detailed Description

-

Definition at line 32 of file axi_initiator.h.

+

Definition at line 34 of file axi_initiator.h.

Member Function Documentation

◆ add_protocol_cb()

@@ -315,7 +329,7 @@

Definition at line 120 of file axi_initiator.h.

+

Definition at line 122 of file axi_initiator.h.

@@ -364,7 +378,7 @@

tlm::scc::pe::intor_fw< type::BL >.

-

Definition at line 354 of file axi_initiator.cpp.

+

Definition at line 359 of file axi_initiator.cpp.

@@ -417,7 +431,7 @@

tlm::scc::pe::intor_fw< type::BL >.

-

Definition at line 122 of file axi_initiator.cpp.

+

Definition at line 113 of file axi_initiator.cpp.

diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b.js b/develop/classaxi_1_1pe_1_1axi__initiator__b.js index f290044b..4a823c45 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__b.js +++ b/develop/classaxi_1_1pe_1_1axi__initiator__b.js @@ -20,28 +20,32 @@ var classaxi_1_1pe_1_1axi__initiator__b = [ "snoop_thread", "classaxi_1_1pe_1_1axi__initiator__b.html#ac8553d7b47ddceb68ab773521a6e284c", null ], [ "transport", "classaxi_1_1pe_1_1axi__initiator__b.html#ac469a8a1013930bc3fd6fed14478a4f7", null ], [ "any_tx_finished", "classaxi_1_1pe_1_1axi__initiator__b.html#ae4d7728e369299a6e3a8f2660aa8377e", null ], - [ "artv", "classaxi_1_1pe_1_1axi__initiator__b.html#a1d237e6fb9666501f9f1cdbdfa175507", null ], - [ "awtv", "classaxi_1_1pe_1_1axi__initiator__b.html#a6d264fa28e82d273eb0eae38f7643f72", null ], - [ "ba", "classaxi_1_1pe_1_1axi__initiator__b.html#a533b3c0de316636c983469d4f4f71775", null ], - [ "br", "classaxi_1_1pe_1_1axi__initiator__b.html#a8c368e705a7de51622e7295c78ea22aa", null ], + [ "artv", "classaxi_1_1pe_1_1axi__initiator__b.html#a9d69266d3ff86e23b792d7991205198c", null ], + [ "awtv", "classaxi_1_1pe_1_1axi__initiator__b.html#ad0044e9da5769782ec7412d7cb4ddf69", null ], + [ "ba", "classaxi_1_1pe_1_1axi__initiator__b.html#a4866014b77d6c60043a0f90614982bfd", null ], + [ "br", "classaxi_1_1pe_1_1axi__initiator__b.html#a275f6f209f354bd5289567e777d57566", null ], [ "bw_o", "classaxi_1_1pe_1_1axi__initiator__b.html#aac3d07e27bafee5cd9d1b0a127ac9e91", null ], [ "clk_i", "classaxi_1_1pe_1_1axi__initiator__b.html#a5ace2585101f1232312fdfc5b9ed49ed", null ], [ "clk_period", "classaxi_1_1pe_1_1axi__initiator__b.html#a900600b22eaa72eca6f50bcc74445344", null ], - [ "data_interleaving", "classaxi_1_1pe_1_1axi__initiator__b.html#a272de5bd1429425db81a02af8a72688d", null ], - [ "enable_id_serializing", "classaxi_1_1pe_1_1axi__initiator__b.html#a75e4bddddd3ffc0100122852ff06e414", null ], + [ "data_interleaving", "classaxi_1_1pe_1_1axi__initiator__b.html#a26a6220ee3b90687cb04a36d09f7d129", null ], + [ "enable_id_serializing", "classaxi_1_1pe_1_1axi__initiator__b.html#ad34dbc64f4e93f4d013085824d0c1c22", null ], [ "flavor", "classaxi_1_1pe_1_1axi__initiator__b.html#a7a4090c4604c13e26f23f934c45e44a7", null ], [ "fw_i", "classaxi_1_1pe_1_1axi__initiator__b.html#a0050b5e98dcd0dcb8e28f3e01d5c5da7", null ], [ "id_mtx", "classaxi_1_1pe_1_1axi__initiator__b.html#a4629f469aca4282f7c501739d6be8394", null ], - [ "outstanding_snoops", "classaxi_1_1pe_1_1axi__initiator__b.html#acd0925591c396866d94763febf0ca51d", null ], - [ "rbr", "classaxi_1_1pe_1_1axi__initiator__b.html#a3a6d863d1388dee723b9a96aa3d779ec", null ], + [ "outstanding_snoops", "classaxi_1_1pe_1_1axi__initiator__b.html#a31f9fd4e952c9b4c510e9cd93266e70f", null ], + [ "rbr", "classaxi_1_1pe_1_1axi__initiator__b.html#a81f66f3a05bf48d7a71c7e85eaa7468e", null ], [ "rd_chnl", "classaxi_1_1pe_1_1axi__initiator__b.html#a7b8ed9b5ef52044681a930cebb54b1a1", null ], - [ "rla", "classaxi_1_1pe_1_1axi__initiator__b.html#a66e028e305400fdf2f42e6ba895addaa", null ], + [ "rd_outstanding", "classaxi_1_1pe_1_1axi__initiator__b.html#a6400887331cc6ea37e005144824c9fbf", null ], + [ "rd_waiting", "classaxi_1_1pe_1_1axi__initiator__b.html#aee0a965a88a902339d2507876191c4b8", null ], + [ "rla", "classaxi_1_1pe_1_1axi__initiator__b.html#a0125bdea6010f1fae41e7615dda6a32f", null ], [ "snp_peq", "classaxi_1_1pe_1_1axi__initiator__b.html#a96564f8e5612a96d70e5a85b625d93d4", null ], [ "snp_state_by_id", "classaxi_1_1pe_1_1axi__initiator__b.html#adf054f86f9707a656f06b5af5476ef12", null ], [ "socket_fw", "classaxi_1_1pe_1_1axi__initiator__b.html#a3067a4d748e128b3227748e856e55bbe", null ], [ "sresp_chnl", "classaxi_1_1pe_1_1axi__initiator__b.html#a8b250f9af3b1fec47b2be0fb1a57facc", null ], [ "transfer_width_in_bytes", "classaxi_1_1pe_1_1axi__initiator__b.html#a66949ed2add821dd1ff5d9c8f6edead5", null ], [ "tx_state_by_tx", "classaxi_1_1pe_1_1axi__initiator__b.html#abf459136e26f56117ba680501e5c2e26", null ], - [ "wbv", "classaxi_1_1pe_1_1axi__initiator__b.html#a9f063800aadb28cd7338ff63037119b2", null ], - [ "wr_chnl", "classaxi_1_1pe_1_1axi__initiator__b.html#af01a5db043ec2649e8d1720cc4fb537f", null ] + [ "wbv", "classaxi_1_1pe_1_1axi__initiator__b.html#a0140d5f7a3951321751aaf22665c80bd", null ], + [ "wr_chnl", "classaxi_1_1pe_1_1axi__initiator__b.html#af01a5db043ec2649e8d1720cc4fb537f", null ], + [ "wr_outstanding", "classaxi_1_1pe_1_1axi__initiator__b.html#ae41a4189207c24366242961d3bb915dc", null ], + [ "wr_waiting", "classaxi_1_1pe_1_1axi__initiator__b.html#ae55775e1bd889fbf0762624d3022f00b", null ] ]; \ No newline at end of file diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.map b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.map index 0ff91e03..90c88f43 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.map +++ b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.map @@ -1,14 +1,16 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.md5 b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.md5 index ee531e92..cd0d7fb6 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.md5 +++ b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.md5 @@ -1 +1 @@ -acb383600d3a6ae27413a39d05cf75c3 \ No newline at end of file +87521066944fbead5ec5e3d906fe948f \ No newline at end of file diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.png b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.png index 0e0ba6d1..16dd89e8 100644 Binary files a/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.png and b/develop/classaxi_1_1pe_1_1axi__initiator__b__coll__graph.png differ diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.map b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.map index a743fb73..cfbc6314 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.map +++ b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.map @@ -1,15 +1,17 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.md5 b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.md5 index f493ec82..81d32163 100644 --- a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.md5 +++ b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.md5 @@ -1 +1 @@ -c91abcf5af3b3c9cd23c099c7ae33198 \ No newline at end of file +ebb166b8f4e3caff1cc9b51209eb372b \ No newline at end of file diff --git a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.png b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.png index d9d7054d..68b15ac7 100644 Binary files a/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.png and b/develop/classaxi_1_1pe_1_1axi__initiator__coll__graph.png differ diff --git a/develop/classaxi_1_1pe_1_1axi__target__pe-members.html b/develop/classaxi_1_1pe_1_1axi__target__pe-members.html index 84cf906f..649cabd8 100644 --- a/develop/classaxi_1_1pe_1_1axi__target__pe-members.html +++ b/develop/classaxi_1_1pe_1_1axi__target__pe-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1axi__target__pe.html b/develop/classaxi_1_1pe_1_1axi__target__pe.html index 04527981..67792abf 100644 --- a/develop/classaxi_1_1pe_1_1axi__target__pe.html +++ b/develop/classaxi_1_1pe_1_1axi__target__pe.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1ordered__target-members.html b/develop/classaxi_1_1pe_1_1ordered__target-members.html index 12665837..00084495 100644 --- a/develop/classaxi_1_1pe_1_1ordered__target-members.html +++ b/develop/classaxi_1_1pe_1_1ordered__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1ordered__target.html b/develop/classaxi_1_1pe_1_1ordered__target.html index 88923aa6..afd63ef5 100644 --- a/develop/classaxi_1_1pe_1_1ordered__target.html +++ b/develop/classaxi_1_1pe_1_1ordered__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1rate__limiting__buffer-members.html b/develop/classaxi_1_1pe_1_1rate__limiting__buffer-members.html index 24f3210c..343b7f12 100644 --- a/develop/classaxi_1_1pe_1_1rate__limiting__buffer-members.html +++ b/develop/classaxi_1_1pe_1_1rate__limiting__buffer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classaxi_1_1pe_1_1rate__limiting__buffer.html b/develop/classaxi_1_1pe_1_1rate__limiting__buffer.html index 1a72bae7..449135b0 100644 --- a/develop/classaxi_1_1pe_1_1rate__limiting__buffer.html +++ b/develop/classaxi_1_1pe_1_1rate__limiting__buffer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -136,15 +136,15 @@   cci::cci_param< double > rd_bw_limit_byte_per_sec {"rd_bw_limit_byte_per_sec", -1.0} - the bandwidth limit for read accesses
+ the bandwidth limit for read accesses. A value of -1 disables the limiting
  cci::cci_param< double > wr_bw_limit_byte_per_sec {"wr_bw_limit_byte_per_sec", -1.0} - the bandwidth limit for write accesses
+ the bandwidth limit for write accesses. A value of -1 disables the limiting
  cci::cci_param< double > total_bw_limit_byte_per_sec {"total_bw_limit_byte_per_sec", -1.0} - the bandwidth limit for read accesses
+ the bandwidth limit for read accesses. A value of -1 disables the limiting
  diff --git a/develop/classaxi_1_1pe_1_1reordering__target.html b/develop/classaxi_1_1pe_1_1reordering__target.html index b3062163..bd72878b 100644 --- a/develop/classaxi_1_1pe_1_1reordering__target.html +++ b/develop/classaxi_1_1pe_1_1reordering__target.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__ace__initiator-members.html b/develop/classaxi_1_1pe_1_1simple__ace__initiator-members.html index 9ef2491e..91c37ded 100644 --- a/develop/classaxi_1_1pe_1_1simple__ace__initiator-members.html +++ b/develop/classaxi_1_1pe_1_1simple__ace__initiator-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__ace__initiator.html b/develop/classaxi_1_1pe_1_1simple__ace__initiator.html index 7631ed99..449d2f72 100644 --- a/develop/classaxi_1_1pe_1_1simple__ace__initiator.html +++ b/develop/classaxi_1_1pe_1_1simple__ace__initiator.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__ace__target-members.html b/develop/classaxi_1_1pe_1_1simple__ace__target-members.html index fbef6487..c6e18c1b 100644 --- a/develop/classaxi_1_1pe_1_1simple__ace__target-members.html +++ b/develop/classaxi_1_1pe_1_1simple__ace__target-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__ace__target.html b/develop/classaxi_1_1pe_1_1simple__ace__target.html index 93271e3b..616d944d 100644 --- a/develop/classaxi_1_1pe_1_1simple__ace__target.html +++ b/develop/classaxi_1_1pe_1_1simple__ace__target.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__axi__initiator-members.html b/develop/classaxi_1_1pe_1_1simple__axi__initiator-members.html index a179d7a2..890c0314 100644 --- a/develop/classaxi_1_1pe_1_1simple__axi__initiator-members.html +++ b/develop/classaxi_1_1pe_1_1simple__axi__initiator-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__axi__initiator.html b/develop/classaxi_1_1pe_1_1simple__axi__initiator.html index 4978bac7..ea827302 100644 --- a/develop/classaxi_1_1pe_1_1simple__axi__initiator.html +++ b/develop/classaxi_1_1pe_1_1simple__axi__initiator.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__initiator__b-members.html b/develop/classaxi_1_1pe_1_1simple__initiator__b-members.html index 599bcae6..2843cedc 100644 --- a/develop/classaxi_1_1pe_1_1simple__initiator__b-members.html +++ b/develop/classaxi_1_1pe_1_1simple__initiator__b-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__initiator__b.html b/develop/classaxi_1_1pe_1_1simple__initiator__b.html index 98de780a..a3c4939e 100644 --- a/develop/classaxi_1_1pe_1_1simple__initiator__b.html +++ b/develop/classaxi_1_1pe_1_1simple__initiator__b.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__target-members.html b/develop/classaxi_1_1pe_1_1simple__target-members.html index 1db0cb9c..9d757f99 100644 --- a/develop/classaxi_1_1pe_1_1simple__target-members.html +++ b/develop/classaxi_1_1pe_1_1simple__target-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1simple__target.html b/develop/classaxi_1_1pe_1_1simple__target.html index 5d7ca978..3fe9b1a2 100644 --- a/develop/classaxi_1_1pe_1_1simple__target.html +++ b/develop/classaxi_1_1pe_1_1simple__target.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1target__info__if-members.html b/develop/classaxi_1_1pe_1_1target__info__if-members.html index 8237411a..aefbea4d 100644 --- a/develop/classaxi_1_1pe_1_1target__info__if-members.html +++ b/develop/classaxi_1_1pe_1_1target__info__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1target__info__if.html b/develop/classaxi_1_1pe_1_1target__info__if.html index 4a5f53ca..7a2d7b78 100644 --- a/develop/classaxi_1_1pe_1_1target__info__if.html +++ b/develop/classaxi_1_1pe_1_1target__info__if.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1tx__reorderer-members.html b/develop/classaxi_1_1pe_1_1tx__reorderer-members.html index 7f155bac..203f428b 100644 --- a/develop/classaxi_1_1pe_1_1tx__reorderer-members.html +++ b/develop/classaxi_1_1pe_1_1tx__reorderer-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1pe_1_1tx__reorderer.html b/develop/classaxi_1_1pe_1_1tx__reorderer.html index 15a8b497..c1a32651 100644 --- a/develop/classaxi_1_1pe_1_1tx__reorderer.html +++ b/develop/classaxi_1_1pe_1_1tx__reorderer.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__ext__recording-members.html b/develop/classaxi_1_1scv_1_1ace__ext__recording-members.html index a488ee48..5344a5f3 100644 --- a/develop/classaxi_1_1scv_1_1ace__ext__recording-members.html +++ b/develop/classaxi_1_1scv_1_1ace__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__ext__recording.html b/develop/classaxi_1_1scv_1_1ace__ext__recording.html index 13ce9ae5..5482ed2e 100644 --- a/develop/classaxi_1_1scv_1_1ace__ext__recording.html +++ b/develop/classaxi_1_1scv_1_1ace__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket-members.html b/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket-members.html index 642e9164..bfa561d3 100644 --- a/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket-members.html +++ b/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket.html b/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket.html index 7f2a4541..605affb6 100644 --- a/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket.html +++ b/develop/classaxi_1_1scv_1_1ace__rec__initiator__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__recorder-members.html b/develop/classaxi_1_1scv_1_1ace__recorder-members.html index 16f2fc1e..a91d077a 100644 --- a/develop/classaxi_1_1scv_1_1ace__recorder-members.html +++ b/develop/classaxi_1_1scv_1_1ace__recorder-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1ace__recorder.html b/develop/classaxi_1_1scv_1_1ace__recorder.html index 66de55e1..c5a2cb46 100644 --- a/develop/classaxi_1_1scv_1_1ace__recorder.html +++ b/develop/classaxi_1_1scv_1_1ace__recorder.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi3__ext__recording-members.html b/develop/classaxi_1_1scv_1_1axi3__ext__recording-members.html index 1657aa73..5891dc1b 100644 --- a/develop/classaxi_1_1scv_1_1axi3__ext__recording-members.html +++ b/develop/classaxi_1_1scv_1_1axi3__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi3__ext__recording.html b/develop/classaxi_1_1scv_1_1axi3__ext__recording.html index 39cd3a52..7f8c3cd8 100644 --- a/develop/classaxi_1_1scv_1_1axi3__ext__recording.html +++ b/develop/classaxi_1_1scv_1_1axi3__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi4__ext__recording-members.html b/develop/classaxi_1_1scv_1_1axi4__ext__recording-members.html index 5ac08dbc..c7e1a851 100644 --- a/develop/classaxi_1_1scv_1_1axi4__ext__recording-members.html +++ b/develop/classaxi_1_1scv_1_1axi4__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi4__ext__recording.html b/develop/classaxi_1_1scv_1_1axi4__ext__recording.html index f8e48c7a..480d995e 100644 --- a/develop/classaxi_1_1scv_1_1axi4__ext__recording.html +++ b/develop/classaxi_1_1scv_1_1axi4__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket-members.html b/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket-members.html index d037d51c..ddb568be 100644 --- a/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket-members.html +++ b/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket.html b/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket.html index 641ff0c5..54e0df48 100644 --- a/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket.html +++ b/develop/classaxi_1_1scv_1_1axi__rec__initiator__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__rec__target__socket-members.html b/develop/classaxi_1_1scv_1_1axi__rec__target__socket-members.html index 6e2acb1d..0c74a5da 100644 --- a/develop/classaxi_1_1scv_1_1axi__rec__target__socket-members.html +++ b/develop/classaxi_1_1scv_1_1axi__rec__target__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__rec__target__socket.html b/develop/classaxi_1_1scv_1_1axi__rec__target__socket.html index 1c01c91e..fba86559 100644 --- a/develop/classaxi_1_1scv_1_1axi__rec__target__socket.html +++ b/develop/classaxi_1_1scv_1_1axi__rec__target__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__recorder-members.html b/develop/classaxi_1_1scv_1_1axi__recorder-members.html index da8372fb..afb4716b 100644 --- a/develop/classaxi_1_1scv_1_1axi__recorder-members.html +++ b/develop/classaxi_1_1scv_1_1axi__recorder-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axi__recorder.html b/develop/classaxi_1_1scv_1_1axi__recorder.html index c7936771..1ce5eb8b 100644 --- a/develop/classaxi_1_1scv_1_1axi__recorder.html +++ b/develop/classaxi_1_1scv_1_1axi__recorder.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axitlm__recorder__module-members.html b/develop/classaxi_1_1scv_1_1axitlm__recorder__module-members.html index 2259e9aa..05da3520 100644 --- a/develop/classaxi_1_1scv_1_1axitlm__recorder__module-members.html +++ b/develop/classaxi_1_1scv_1_1axitlm__recorder__module-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1axitlm__recorder__module.html b/develop/classaxi_1_1scv_1_1axitlm__recorder__module.html index 0e026f4b..dde9d6f6 100644 --- a/develop/classaxi_1_1scv_1_1axitlm__recorder__module.html +++ b/develop/classaxi_1_1scv_1_1axitlm__recorder__module.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload-members.html b/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload-members.html index 9fd0e6a2..660b05f2 100644 --- a/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload-members.html +++ b/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload.html b/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload.html index 6dce060a..ef012622 100644 --- a/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload.html +++ b/develop/classaxi_1_1scv_1_1impl_1_1ace__recording__payload.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1tlm__id__ext__recording-members.html b/develop/classaxi_1_1scv_1_1tlm__id__ext__recording-members.html index 98a10ad3..b25e184b 100644 --- a/develop/classaxi_1_1scv_1_1tlm__id__ext__recording-members.html +++ b/develop/classaxi_1_1scv_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classaxi_1_1scv_1_1tlm__id__ext__recording.html b/develop/classaxi_1_1scv_1_1tlm__id__ext__recording.html index 8b06f0d6..22afbe23 100644 --- a/develop/classaxi_1_1scv_1_1tlm__id__ext__recording.html +++ b/develop/classaxi_1_1scv_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1bw__blocking__transport__if-members.html b/develop/classchi_1_1bw__blocking__transport__if-members.html index 943c6e3b..f3be8d2c 100644 --- a/develop/classchi_1_1bw__blocking__transport__if-members.html +++ b/develop/classchi_1_1bw__blocking__transport__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1bw__blocking__transport__if.html b/develop/classchi_1_1bw__blocking__transport__if.html index 852b508b..107af2cc 100644 --- a/develop/classchi_1_1bw__blocking__transport__if.html +++ b/develop/classchi_1_1bw__blocking__transport__if.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__bw__transport__if-members.html b/develop/classchi_1_1chi__bw__transport__if-members.html index 0484f425..2b89f5ab 100644 --- a/develop/classchi_1_1chi__bw__transport__if-members.html +++ b/develop/classchi_1_1chi__bw__transport__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__bw__transport__if.html b/develop/classchi_1_1chi__bw__transport__if.html index 80b7ce93..84dc4f36 100644 --- a/develop/classchi_1_1chi__bw__transport__if.html +++ b/develop/classchi_1_1chi__bw__transport__if.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__credit__ext__recording-members.html b/develop/classchi_1_1chi__credit__ext__recording-members.html index d39fa9c0..4ebc5d8f 100644 --- a/develop/classchi_1_1chi__credit__ext__recording-members.html +++ b/develop/classchi_1_1chi__credit__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__credit__ext__recording.html b/develop/classchi_1_1chi__credit__ext__recording.html index 3ab93fb8..ae5ab307 100644 --- a/develop/classchi_1_1chi__credit__ext__recording.html +++ b/develop/classchi_1_1chi__credit__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__ctrl__ext__recording-members.html b/develop/classchi_1_1chi__ctrl__ext__recording-members.html index daf55e99..a05dd476 100644 --- a/develop/classchi_1_1chi__ctrl__ext__recording-members.html +++ b/develop/classchi_1_1chi__ctrl__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__ctrl__ext__recording.html b/develop/classchi_1_1chi__ctrl__ext__recording.html index 2a87c26c..92ef2e4c 100644 --- a/develop/classchi_1_1chi__ctrl__ext__recording.html +++ b/develop/classchi_1_1chi__ctrl__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__data__ext__recording-members.html b/develop/classchi_1_1chi__data__ext__recording-members.html index 170a3226..65553385 100644 --- a/develop/classchi_1_1chi__data__ext__recording-members.html +++ b/develop/classchi_1_1chi__data__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__data__ext__recording.html b/develop/classchi_1_1chi__data__ext__recording.html index e3085ff8..0c6814ca 100644 --- a/develop/classchi_1_1chi__data__ext__recording.html +++ b/develop/classchi_1_1chi__data__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__snp__ext__recording-members.html b/develop/classchi_1_1chi__snp__ext__recording-members.html index 442608e3..9fbe11ec 100644 --- a/develop/classchi_1_1chi__snp__ext__recording-members.html +++ b/develop/classchi_1_1chi__snp__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1chi__snp__ext__recording.html b/develop/classchi_1_1chi__snp__ext__recording.html index c8a1be10..d4551b3f 100644 --- a/develop/classchi_1_1chi__snp__ext__recording.html +++ b/develop/classchi_1_1chi__snp__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording-members.html b/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording-members.html index a7dcb474..425ab30c 100644 --- a/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording.html b/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording.html index 0c822dde..5de8e9c4 100644 --- a/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording.html +++ b/develop/classchi_1_1lwtr_1_1chi__ctrl__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__data__ext__recording-members.html b/develop/classchi_1_1lwtr_1_1chi__data__ext__recording-members.html index 8930f67f..35f33ada 100644 --- a/develop/classchi_1_1lwtr_1_1chi__data__ext__recording-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__data__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__data__ext__recording.html b/develop/classchi_1_1lwtr_1_1chi__data__ext__recording.html index 7bd17a70..a88811f9 100644 --- a/develop/classchi_1_1lwtr_1_1chi__data__ext__recording.html +++ b/develop/classchi_1_1lwtr_1_1chi__data__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__link__ext__recording-members.html b/develop/classchi_1_1lwtr_1_1chi__link__ext__recording-members.html index 8543178f..a218eb51 100644 --- a/develop/classchi_1_1lwtr_1_1chi__link__ext__recording-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__link__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__link__ext__recording.html b/develop/classchi_1_1lwtr_1_1chi__link__ext__recording.html index 84f64ff5..f443042f 100644 --- a/develop/classchi_1_1lwtr_1_1chi__link__ext__recording.html +++ b/develop/classchi_1_1lwtr_1_1chi__link__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__lwtr-members.html b/develop/classchi_1_1lwtr_1_1chi__lwtr-members.html index d318cb4d..351d744f 100644 --- a/develop/classchi_1_1lwtr_1_1chi__lwtr-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__lwtr-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__lwtr.html b/develop/classchi_1_1lwtr_1_1chi__lwtr.html index 1f04e22f..b49ee057 100644 --- a/develop/classchi_1_1lwtr_1_1chi__lwtr.html +++ b/develop/classchi_1_1lwtr_1_1chi__lwtr.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder-members.html b/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder-members.html index 922aea48..dc5f3fe6 100644 --- a/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder.html b/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder.html index 7425f675..228a283f 100644 --- a/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder.html +++ b/develop/classchi_1_1lwtr_1_1chi__lwtr__recorder.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording-members.html b/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording-members.html index 60bb9fe8..cac6b5b0 100644 --- a/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording-members.html +++ b/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording.html b/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording.html index a65c7cc6..1ce8a90e 100644 --- a/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording.html +++ b/develop/classchi_1_1lwtr_1_1chi__snp__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording-members.html b/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording-members.html index 136093ca..9d17dbc2 100644 --- a/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording-members.html +++ b/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording.html b/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording.html index fa8190cd..5f4daaac 100644 --- a/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording.html +++ b/develop/classchi_1_1lwtr_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1pe_1_1chi__rn__initiator-members.html b/develop/classchi_1_1pe_1_1chi__rn__initiator-members.html index 8950f1c6..9b4decee 100644 --- a/develop/classchi_1_1pe_1_1chi__rn__initiator-members.html +++ b/develop/classchi_1_1pe_1_1chi__rn__initiator-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classchi_1_1pe_1_1chi__rn__initiator.html b/develop/classchi_1_1pe_1_1chi__rn__initiator.html index 0054ff37..8ee10593 100644 --- a/develop/classchi_1_1pe_1_1chi__rn__initiator.html +++ b/develop/classchi_1_1pe_1_1chi__rn__initiator.html @@ -24,7 +24,7 @@ @@ -195,21 +195,21 @@ - - - - - - - - - - + + + + + + + + + + @@ -231,7 +231,7 @@ std::string  +scc::ordered_semaphore  @@ -285,7 +285,7 @@

the CHI initiator socket protocol engine adapted to a particular initiator socket configuration

-

Definition at line 177 of file chi_rn_initiator.h.

+

Definition at line 179 of file chi_rn_initiator.h.

Constructor & Destructor Documentation

◆ chi_rn_initiator()

@@ -331,7 +331,7 @@

Definition at line 187 of file chi_rn_initiator.h.

+

Definition at line 189 of file chi_rn_initiator.h.

diff --git a/develop/classchi_1_1pe_1_1chi__rn__initiator__b-members.html b/develop/classchi_1_1pe_1_1chi__rn__initiator__b-members.html index 7818ded5..8ee2f8fd 100644 --- a/develop/classchi_1_1pe_1_1chi__rn__initiator__b-members.html +++ b/develop/classchi_1_1pe_1_1chi__rn__initiator__b-members.html @@ -24,7 +24,7 @@

diff --git a/develop/classchi_1_1pe_1_1chi__rn__initiator__b.html b/develop/classchi_1_1pe_1_1chi__rn__initiator__b.html index ac5c3866..1c870678 100644 --- a/develop/classchi_1_1pe_1_1chi__rn__initiator__b.html +++ b/develop/classchi_1_1pe_1_1chi__rn__initiator__b.html @@ -24,7 +24,7 @@ @@ -174,21 +174,21 @@ - - - - - - - - - - + + + + + + + + + +

diff --git a/develop/classaxi_1_1pe_1_1reordering__target-members.html b/develop/classaxi_1_1pe_1_1reordering__target-members.html index cb1872b0..50d51ebc 100644 --- a/develop/classaxi_1_1pe_1_1reordering__target-members.html +++ b/develop/classaxi_1_1pe_1_1reordering__target-members.html @@ -24,7 +24,7 @@

scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< unsigned > src_id {"src_id", 1}
 
-sc_core::sc_attribute< unsigned > tgt_id {"tgt_id", 0}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", true}
 
-sc_core::sc_attribute< bool > strict_income_order {"strict_income_order", true}
 
-sc_core::sc_attribute< bool > use_legacy_mapping {"use_legacy_mapping", false}
 
+cci::cci_param< unsigned > src_id {"src_id", 1}
 
+cci::cci_param< unsigned > tgt_id {"tgt_id", 0}
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", true}
 
+cci::cci_param< bool > strict_income_order {"strict_income_order", false}
 
+cci::cci_param< bool > use_legacy_mapping {"use_legacy_mapping", false}
 
- Protected Member Functions inherited from chi::pe::chi_rn_initiator_b
void end_of_elaboration () override
instance_name
 
-scc::ordered_semaphore req_credits {"req_credits", 0U, true}
req_credits {"TxReqCredits", 0U, true}
 
sc_core::sc_port_b< chi::chi_fw_transport_if< chi_protocol_types > > & socket_fw
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
sc_core::sc_port< tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND > bw_o {"bw_o"}
 
-sc_core::sc_attribute< unsigned > src_id {"src_id", 1}
 
-sc_core::sc_attribute< unsigned > tgt_id {"tgt_id", 0}
 
-sc_core::sc_attribute< bool > data_interleaving {"data_interleaving", true}
 
-sc_core::sc_attribute< bool > strict_income_order {"strict_income_order", true}
 
-sc_core::sc_attribute< bool > use_legacy_mapping {"use_legacy_mapping", false}
 
+cci::cci_param< unsigned > src_id {"src_id", 1}
 
+cci::cci_param< unsigned > tgt_id {"tgt_id", 0}
 
+cci::cci_param< bool > data_interleaving {"data_interleaving", true}
 
+cci::cci_param< bool > strict_income_order {"strict_income_order", false}
 
+cci::cci_param< bool > use_legacy_mapping {"use_legacy_mapping", false}
 
@@ -214,7 +214,7 @@ std::string  +scc::ordered_semaphore  @@ -264,7 +264,7 @@

Protected Member Functions

instance_name
 
-scc::ordered_semaphore req_credits {"req_credits", 0U, true}
req_credits {"TxReqCredits", 0U, true}
 
sc_core::sc_port_b< chi::chi_fw_transport_if< chi_protocol_types > > & socket_fw

Detailed Description

-

Definition at line 32 of file chi_rn_initiator.h.

+

Definition at line 33 of file chi_rn_initiator.h.

Member Function Documentation

◆ snoop_resp()

@@ -311,7 +311,7 @@

tlm::scc::pe::intor_fw< type::BL >.

-

Definition at line 561 of file chi_rn_initiator.cpp.

+

Definition at line 553 of file chi_rn_initiator.cpp.

@@ -362,7 +362,7 @@

tlm::scc::pe::intor_fw< type::BL >.

-

Definition at line 1030 of file chi_rn_initiator.cpp.

+

Definition at line 1021 of file chi_rn_initiator.cpp.

diff --git a/develop/classchi_1_1pe_1_1chi__rn__initiator__b.js b/develop/classchi_1_1pe_1_1chi__rn__initiator__b.js index ac9c99e1..566d9ce6 100644 --- a/develop/classchi_1_1pe_1_1chi__rn__initiator__b.js +++ b/develop/classchi_1_1pe_1_1chi__rn__initiator__b.js @@ -25,7 +25,7 @@ var classchi_1_1pe_1_1chi__rn__initiator__b = [ "bw_o", "classchi_1_1pe_1_1chi__rn__initiator__b.html#aa15d6d1134aecb909b0357173bef3a29", null ], [ "clk_i", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a9ba6e25a2d359317acb8e8558d0234f8", null ], [ "clk_period", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a24411dba4198be5919b01f1b1230916b", null ], - [ "data_interleaving", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a713d59ff7d60bf4b631c60ac7e40206f", null ], + [ "data_interleaving", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a732242cf4fe1ec463797d514ea409563", null ], [ "fw_i", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a9a727c0baf5f2a5b63ebff9886ae129d", null ], [ "instance_name", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a7e4c066edf56efe615e38d3538d87d91", null ], [ "req_chnl", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a6d241e936adb3fa06adee0a7b416ecd4", null ], @@ -34,16 +34,16 @@ var classchi_1_1pe_1_1chi__rn__initiator__b = [ "snp_dispatch_que", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a86f588b6682a18b124072c7bdd4ddee0", null ], [ "snp_peq", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a09ecac16512c8dfc144c979e6296b9c7", null ], [ "socket_fw", "classchi_1_1pe_1_1chi__rn__initiator__b.html#af42da6f21710721cb3477bf814cd2444", null ], - [ "src_id", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a13c7b85bc26adf31e22355f9d67ae81b", null ], + [ "src_id", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a7b3e59d06905c9e4a83f6d34635ef941", null ], [ "sresp_chnl", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a8e2a9f85f63ba2f3e6ba9ed510666fe7", null ], - [ "strict_income_order", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a0c5d69dfdc58ef24608ba48b13461c91", null ], + [ "strict_income_order", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a002f5c51799a94561e4ea4e5acad407a", null ], [ "strict_order_sem", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a791e09e0ddd8573bce60421258c1df91", null ], - [ "tgt_id", "classchi_1_1pe_1_1chi__rn__initiator__b.html#aa4f58b7a926f07a0c39d3985696a44ff", null ], + [ "tgt_id", "classchi_1_1pe_1_1chi__rn__initiator__b.html#ae60d51cec81d3a5ba42ba5bf4f7a9baa", null ], [ "thread_active", "classchi_1_1pe_1_1chi__rn__initiator__b.html#ae6e6a01efbcd16e4b8333813386b35a2", null ], [ "thread_avail", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a1346bae723e1cb2b7655630430c8b6a3", null ], [ "transfer_width_in_bytes", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a49a058b28b7e8107269d15c943995538", null ], [ "tx_state_by_trans", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a38265f0ec5ad5f6f7f67e7d8cc6d03ba", null ], [ "tx_state_pool", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a7d53f7be49161542aa600dd822b16386", null ], - [ "use_legacy_mapping", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a3ee5d3c1790ae476eb79e9effd7f5f4c", null ], + [ "use_legacy_mapping", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a23e7e3d705db1e3b7eae7c88f626aed7", null ], [ "wdat_chnl", "classchi_1_1pe_1_1chi__rn__initiator__b.html#a577d20e6e40381b9979af6a5febd985d", null ] ]; \ No newline at end of file diff --git a/develop/classchi_1_1scv_1_1chi__trx__recorder-members.html b/develop/classchi_1_1scv_1_1chi__trx__recorder-members.html index e0f8819e..3aa71c00 100644 --- a/develop/classchi_1_1scv_1_1chi__trx__recorder-members.html +++ b/develop/classchi_1_1scv_1_1chi__trx__recorder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1scv_1_1chi__trx__recorder.html b/develop/classchi_1_1scv_1_1chi__trx__recorder.html index dcc63d8e..630c7652 100644 --- a/develop/classchi_1_1scv_1_1chi__trx__recorder.html +++ b/develop/classchi_1_1scv_1_1chi__trx__recorder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1scv_1_1chitlm__recorder__module-members.html b/develop/classchi_1_1scv_1_1chitlm__recorder__module-members.html index 972eec7c..7533774f 100644 --- a/develop/classchi_1_1scv_1_1chitlm__recorder__module-members.html +++ b/develop/classchi_1_1scv_1_1chitlm__recorder__module-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1scv_1_1chitlm__recorder__module.html b/develop/classchi_1_1scv_1_1chitlm__recorder__module.html index e5407659..8778c015 100644 --- a/develop/classchi_1_1scv_1_1chitlm__recorder__module.html +++ b/develop/classchi_1_1scv_1_1chitlm__recorder__module.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload-members.html b/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload-members.html index 65d758ee..97cfff33 100644 --- a/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload-members.html +++ b/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload.html b/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload.html index 3f89da72..8b41f8fa 100644 --- a/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload.html +++ b/develop/classchi_1_1scv_1_1impl_1_1chi__recording__payload.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1tlm__id__ext__recording-members.html b/develop/classchi_1_1tlm__id__ext__recording-members.html index 3fa5d833..faf0e59f 100644 --- a/develop/classchi_1_1tlm__id__ext__recording-members.html +++ b/develop/classchi_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classchi_1_1tlm__id__ext__recording.html b/develop/classchi_1_1tlm__id__ext__recording.html index 398e6bd9..cd491186 100644 --- a/develop/classchi_1_1tlm__id__ext__recording.html +++ b/develop/classchi_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classes.html b/develop/classes.html index 7e6076eb..0d34e27f 100644 --- a/develop/classes.html +++ b/develop/classes.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -65,7 +65,7 @@
Class Index
-
A | B | C | D | E | F | G | H | I | L | M | N | O | P | Q | R | S | T | V | W | _
+
A | B | C | D | E | F | G | H | I | L | M | N | O | P | Q | R | S | T | V | W
diff --git a/develop/classinitiator.html b/develop/classinitiator.html index 840e7947..3976973d 100644 --- a/develop/classinitiator.html +++ b/develop/classinitiator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classlogging_1_1DEFAULT.html b/develop/classlogging_1_1DEFAULT.html index 480551a7..206ff20a 100644 --- a/develop/classlogging_1_1DEFAULT.html +++ b/develop/classlogging_1_1DEFAULT.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classlogging_1_1Log-members.html b/develop/classlogging_1_1Log-members.html index 20ddc487..014253fe 100644 --- a/develop/classlogging_1_1Log-members.html +++ b/develop/classlogging_1_1Log-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classlogging_1_1Log.html b/develop/classlogging_1_1Log.html index b3725a5d..92d46910 100644 --- a/develop/classlogging_1_1Log.html +++ b/develop/classlogging_1_1Log.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classlogging_1_1Output2FILE-members.html b/develop/classlogging_1_1Output2FILE-members.html index e342c2d8..90abf719 100644 --- a/develop/classlogging_1_1Output2FILE-members.html +++ b/develop/classlogging_1_1Output2FILE-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classlogging_1_1Output2FILE.html b/develop/classlogging_1_1Output2FILE.html index e52feb8f..7ad37cb1 100644 --- a/develop/classlogging_1_1Output2FILE.html +++ b/develop/classlogging_1_1Output2FILE.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classobi_1_1pin_1_1target-members.html b/develop/classobi_1_1pin_1_1target-members.html index ccbcb90f..b985e58c 100644 --- a/develop/classobi_1_1pin_1_1target-members.html +++ b/develop/classobi_1_1pin_1_1target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classobi_1_1pin_1_1target.html b/develop/classobi_1_1pin_1_1target.html index 15ac0547..0f102bba 100644 --- a/develop/classobi_1_1pin_1_1target.html +++ b/develop/classobi_1_1pin_1_1target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1MT19937-members.html b/develop/classscc_1_1MT19937-members.html index 2c21d2db..3f92c7d6 100644 --- a/develop/classscc_1_1MT19937-members.html +++ b/develop/classscc_1_1MT19937-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1MT19937.html b/develop/classscc_1_1MT19937.html index 8e4499e0..23858d29 100644 --- a/develop/classscc_1_1MT19937.html +++ b/develop/classscc_1_1MT19937.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1abstract__bitfield-members.html b/develop/classscc_1_1abstract__bitfield-members.html index 5282a451..e159c240 100644 --- a/develop/classscc_1_1abstract__bitfield-members.html +++ b/develop/classscc_1_1abstract__bitfield-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1abstract__bitfield.html b/develop/classscc_1_1abstract__bitfield.html index 4a88816f..3456f903 100644 --- a/develop/classscc_1_1abstract__bitfield.html +++ b/develop/classscc_1_1abstract__bitfield.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1bitfield-members.html b/develop/classscc_1_1bitfield-members.html index 41e78b19..88906c24 100644 --- a/develop/classscc_1_1bitfield-members.html +++ b/develop/classscc_1_1bitfield-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1bitfield.html b/develop/classscc_1_1bitfield.html index 8586ac94..4574bb0d 100644 --- a/develop/classscc_1_1bitfield.html +++ b/develop/classscc_1_1bitfield.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1bitfield__register-members.html b/develop/classscc_1_1bitfield__register-members.html index 64ff666b..99984f88 100644 --- a/develop/classscc_1_1bitfield__register-members.html +++ b/develop/classscc_1_1bitfield__register-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1bitfield__register.html b/develop/classscc_1_1bitfield__register.html index b7fff4b1..3c362f31 100644 --- a/develop/classscc_1_1bitfield__register.html +++ b/develop/classscc_1_1bitfield__register.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1cci__broker-members.html b/develop/classscc_1_1cci__broker-members.html index a13d0e64..798c3bf7 100644 --- a/develop/classscc_1_1cci__broker-members.html +++ b/develop/classscc_1_1cci__broker-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1cci__broker.html b/develop/classscc_1_1cci__broker.html index 22438feb..83251dde 100644 --- a/develop/classscc_1_1cci__broker.html +++ b/develop/classscc_1_1cci__broker.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1configurable__tracer-members.html b/develop/classscc_1_1configurable__tracer-members.html index ebd5529e..1e05eddd 100644 --- a/develop/classscc_1_1configurable__tracer-members.html +++ b/develop/classscc_1_1configurable__tracer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1configurable__tracer.html b/develop/classscc_1_1configurable__tracer.html index 704736c8..e900de5e 100644 --- a/develop/classscc_1_1configurable__tracer.html +++ b/develop/classscc_1_1configurable__tracer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1configurer-members.html b/develop/classscc_1_1configurer-members.html index a8230785..adcef8be 100644 --- a/develop/classscc_1_1configurer-members.html +++ b/develop/classscc_1_1configurer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1configurer.html b/develop/classscc_1_1configurer.html index f3e6e2c3..00922976 100644 --- a/develop/classscc_1_1configurer.html +++ b/develop/classscc_1_1configurer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -240,7 +240,7 @@

Definition at line 627 of file configurer.cpp.

+

Definition at line 643 of file configurer.cpp.

@@ -261,7 +261,7 @@

configure the design hierarchy using the input file. Apply the values to sc_core::sc_attribute in th edsign hierarchy

-

Definition at line 683 of file configurer.cpp.

+

Definition at line 702 of file configurer.cpp.

@@ -311,7 +311,7 @@

Definition at line 661 of file configurer.cpp.

+

Definition at line 677 of file configurer.cpp.

@@ -423,7 +423,7 @@

Definition at line 685 of file configurer.cpp.

+

Definition at line 704 of file configurer.cpp.

diff --git a/develop/classscc_1_1dt_1_1sc__logic__7-members.html b/develop/classscc_1_1dt_1_1sc__logic__7-members.html index d17bf584..976847f8 100644 --- a/develop/classscc_1_1dt_1_1sc__logic__7-members.html +++ b/develop/classscc_1_1dt_1_1sc__logic__7-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1dt_1_1sc__logic__7.html b/develop/classscc_1_1dt_1_1sc__logic__7.html index 464dbb5d..0e6b1292 100644 --- a/develop/classscc_1_1dt_1_1sc__logic__7.html +++ b/develop/classscc_1_1dt_1_1sc__logic__7.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1ext__attribute-members.html b/develop/classscc_1_1ext__attribute-members.html index 5ffe869d..4967cb0d 100644 --- a/develop/classscc_1_1ext__attribute-members.html +++ b/develop/classscc_1_1ext__attribute-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1ext__attribute.html b/develop/classscc_1_1ext__attribute.html index e1c1e2a7..653592bc 100644 --- a/develop/classscc_1_1ext__attribute.html +++ b/develop/classscc_1_1ext__attribute.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1fifo__w__cb-members.html b/develop/classscc_1_1fifo__w__cb-members.html index eb59d5c7..a6d37e0d 100644 --- a/develop/classscc_1_1fifo__w__cb-members.html +++ b/develop/classscc_1_1fifo__w__cb-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -70,24 +70,30 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + +
avail() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
avail_cb (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
back() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
back() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
data_written_event() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
data_written_evt (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
empty() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
empty_cb (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
fifo_w_cb() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
fifo_w_cb(const char *name) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
front() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
front() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
in_queue (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
out_queue (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
pop_front() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
push_back(T &t) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
push_back(const T &t) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
set_avail_cb(std::function< void(void)> f) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
set_empty_cb(std::function< void(void)> f) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
update() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inlineprotectedvirtual
available (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
back() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
back() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
data_written_event() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
data_written_evt (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
empty() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
empty_cb (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
fifo_w_cb() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
fifo_w_cb(const char *name) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
front() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
front() const (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
in_queue (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
num_avail() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
num_written() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
out_queue (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
pop_front() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
push_back(T &t) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
push_back(const T &t) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
push_back(T &&t) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
read() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
set_avail_cb(std::function< void(void)> f) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
set_empty_cb(std::function< void(void)> f) (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inline
update() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inlineprotectedvirtual
written (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >protected
~fifo_w_cb() (defined in scc::fifo_w_cb< T >)scc::fifo_w_cb< T >inlinevirtual
diff --git a/develop/classscc_1_1fifo__w__cb.html b/develop/classscc_1_1fifo__w__cb.html index 81bbdb46..08c0a2ea 100644 --- a/develop/classscc_1_1fifo__w__cb.html +++ b/develop/classscc_1_1fifo__w__cb.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -105,6 +105,9 @@ void push_back (const T &t)   + +void push_back (T &&t) +  T & back ()   @@ -120,6 +123,9 @@ const T & front () const   + +T read () +  size_t avail () const   @@ -135,6 +141,12 @@ sc_core::sc_event const & data_written_event () const   + +unsigned num_avail () +  + +unsigned num_written () +  @@ -156,6 +168,12 @@ + + + + diff --git a/develop/classscc_1_1fifo__w__cb.js b/develop/classscc_1_1fifo__w__cb.js index 9ab1e2e3..65efd978 100644 --- a/develop/classscc_1_1fifo__w__cb.js +++ b/develop/classscc_1_1fifo__w__cb.js @@ -10,15 +10,21 @@ var classscc_1_1fifo__w__cb = [ "empty", "classscc_1_1fifo__w__cb.html#afeb9a825396f23bc0c2815c2153666b5", null ], [ "front", "classscc_1_1fifo__w__cb.html#abda6cd877c957ca3e2ed0751d108b254", null ], [ "front", "classscc_1_1fifo__w__cb.html#a83bce8e999ad0acbe7e52c447696bca0", null ], + [ "num_avail", "classscc_1_1fifo__w__cb.html#a7fe71d60cb5cdff2ac3f01c38a6a3ce0", null ], + [ "num_written", "classscc_1_1fifo__w__cb.html#ade720fb63d9a8a4de87917c9cdd06578", null ], [ "pop_front", "classscc_1_1fifo__w__cb.html#a3c3e3cb79b1336344ba3ade476af8130", null ], [ "push_back", "classscc_1_1fifo__w__cb.html#aa09198b16eff92d8ac66fa3118ba02e9", null ], + [ "push_back", "classscc_1_1fifo__w__cb.html#a4c1a2240c34748008485baad5ddc7948", null ], [ "push_back", "classscc_1_1fifo__w__cb.html#a47cf32853d447e206f83363ba04fa1b2", null ], + [ "read", "classscc_1_1fifo__w__cb.html#a31b56f74fdf30872e8a18cd0084d4732", null ], [ "set_avail_cb", "classscc_1_1fifo__w__cb.html#ad28824990f41d68dfdc3ebd22eff5aa7", null ], [ "set_empty_cb", "classscc_1_1fifo__w__cb.html#adaca03e6eab0e7ba8fe875da6d9de32d", null ], [ "update", "classscc_1_1fifo__w__cb.html#aa837fb31c24fe42093bfa6787d072c3b", null ], [ "avail_cb", "classscc_1_1fifo__w__cb.html#a0377b3840b15811d148a198a03c9730d", null ], + [ "available", "classscc_1_1fifo__w__cb.html#a065a85c77c7140627fbb4193784707af", null ], [ "data_written_evt", "classscc_1_1fifo__w__cb.html#ae60b38c1a97620e1f3d2a3c96666f23a", null ], [ "empty_cb", "classscc_1_1fifo__w__cb.html#a859e4555a5b650077f93a58b046e7968", null ], [ "in_queue", "classscc_1_1fifo__w__cb.html#a7244e48834829b93fe334c7940521533", null ], - [ "out_queue", "classscc_1_1fifo__w__cb.html#ac0cafc885abdf7bae41e631787696d72", null ] + [ "out_queue", "classscc_1_1fifo__w__cb.html#ac0cafc885abdf7bae41e631787696d72", null ], + [ "written", "classscc_1_1fifo__w__cb.html#a1d98157e2bb7319c863f6c6e000daad9", null ] ]; \ No newline at end of file diff --git a/develop/classscc_1_1hierarchy__dumper-members.html b/develop/classscc_1_1hierarchy__dumper-members.html index 3fa7d5bd..cbc099bf 100644 --- a/develop/classscc_1_1hierarchy__dumper-members.html +++ b/develop/classscc_1_1hierarchy__dumper-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1hierarchy__dumper.html b/develop/classscc_1_1hierarchy__dumper.html index 91c55263..ec22d4bd 100644 --- a/develop/classscc_1_1hierarchy__dumper.html +++ b/develop/classscc_1_1hierarchy__dumper.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1helper.html b/develop/classscc_1_1impl_1_1helper.html index 83d9e6c0..3e84948b 100644 --- a/develop/classscc_1_1impl_1_1helper.html +++ b/develop/classscc_1_1impl_1_1helper.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4-members.html b/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4-members.html index 85af48a7..50b49c7a 100644 --- a/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4-members.html +++ b/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html b/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html index fec5c607..d0116d6e 100644 --- a/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html +++ b/develop/classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4-members.html b/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4-members.html index b49fcb75..edd42681 100644 --- a/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4-members.html +++ b/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4.html b/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4.html index 6c30ebb7..1ae7ca57 100644 --- a/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4.html +++ b/develop/classscc_1_1impl_1_1helper_3_01T_00_01true_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1sc__register-members.html b/develop/classscc_1_1impl_1_1sc__register-members.html index bdc14a03..20a27709 100644 --- a/develop/classscc_1_1impl_1_1sc__register-members.html +++ b/develop/classscc_1_1impl_1_1sc__register-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1impl_1_1sc__register.html b/develop/classscc_1_1impl_1_1sc__register.html index 09f85e04..716cb41f 100644 --- a/develop/classscc_1_1impl_1_1sc__register.html +++ b/develop/classscc_1_1impl_1_1sc__register.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1indexed__resource__access__if-members.html b/develop/classscc_1_1indexed__resource__access__if-members.html index 2cc20d09..cbef55e3 100644 --- a/develop/classscc_1_1indexed__resource__access__if-members.html +++ b/develop/classscc_1_1indexed__resource__access__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1indexed__resource__access__if.html b/develop/classscc_1_1indexed__resource__access__if.html index 775175cb..9208c783 100644 --- a/develop/classscc_1_1indexed__resource__access__if.html +++ b/develop/classscc_1_1indexed__resource__access__if.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1memory-members.html b/develop/classscc_1_1memory-members.html index 1db2bb84..55f38f50 100644 --- a/develop/classscc_1_1memory-members.html +++ b/develop/classscc_1_1memory-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1memory.html b/develop/classscc_1_1memory.html index b1ef1e6d..1d851092 100644 --- a/develop/classscc_1_1memory.html +++ b/develop/classscc_1_1memory.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1ordered__semaphore-members.html b/develop/classscc_1_1ordered__semaphore-members.html index b8f3c420..ee4e1633 100644 --- a/develop/classscc_1_1ordered__semaphore-members.html +++ b/develop/classscc_1_1ordered__semaphore-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1ordered__semaphore.html b/develop/classscc_1_1ordered__semaphore.html index c63ed1bc..838641d3 100644 --- a/develop/classscc_1_1ordered__semaphore.html +++ b/develop/classscc_1_1ordered__semaphore.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1perf__estimator-members.html b/develop/classscc_1_1perf__estimator-members.html index 00e11b49..bad1bd84 100644 --- a/develop/classscc_1_1perf__estimator-members.html +++ b/develop/classscc_1_1perf__estimator-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1perf__estimator.html b/develop/classscc_1_1perf__estimator.html index 175c0d77..f9ab0261 100644 --- a/develop/classscc_1_1perf__estimator.html +++ b/develop/classscc_1_1perf__estimator.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1resetable-members.html b/develop/classscc_1_1resetable-members.html index 395aeac3..59f29b02 100644 --- a/develop/classscc_1_1resetable-members.html +++ b/develop/classscc_1_1resetable-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1resetable.html b/develop/classscc_1_1resetable.html index a1671e29..18d6b092 100644 --- a/develop/classscc_1_1resetable.html +++ b/develop/classscc_1_1resetable.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1resource__access__if-members.html b/develop/classscc_1_1resource__access__if-members.html index a633196d..c6d86f44 100644 --- a/develop/classscc_1_1resource__access__if-members.html +++ b/develop/classscc_1_1resource__access__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1resource__access__if.html b/develop/classscc_1_1resource__access__if.html index fc81d054..e31caf72 100644 --- a/develop/classscc_1_1resource__access__if.html +++ b/develop/classscc_1_1resource__access__if.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1router-members.html b/develop/classscc_1_1router-members.html index 6ee8a177..36f424a1 100644 --- a/develop/classscc_1_1router-members.html +++ b/develop/classscc_1_1router-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1router.html b/develop/classscc_1_1router.html index 1b81ef8c..d5a8efb4 100644 --- a/develop/classscc_1_1router.html +++ b/develop/classscc_1_1router.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__attribute__randomized-members.html b/develop/classscc_1_1sc__attribute__randomized-members.html index b4e231b0..a3eed15b 100644 --- a/develop/classscc_1_1sc__attribute__randomized-members.html +++ b/develop/classscc_1_1sc__attribute__randomized-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__attribute__randomized.html b/develop/classscc_1_1sc__attribute__randomized.html index d4839f01..28c0e080 100644 --- a/develop/classscc_1_1sc__attribute__randomized.html +++ b/develop/classscc_1_1sc__attribute__randomized.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt-members.html b/develop/classscc_1_1sc__in__opt-members.html index 1b7b0a10..6285f5a4 100644 --- a/develop/classscc_1_1sc__in__opt-members.html +++ b/develop/classscc_1_1sc__in__opt-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt.html b/develop/classscc_1_1sc__in__opt.html index cdb5b451..be26863e 100644 --- a/develop/classscc_1_1sc__in__opt.html +++ b/develop/classscc_1_1sc__in__opt.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt_3_01bool_01_4-members.html b/develop/classscc_1_1sc__in__opt_3_01bool_01_4-members.html index b1cbdf1c..ed4f78aa 100644 --- a/develop/classscc_1_1sc__in__opt_3_01bool_01_4-members.html +++ b/develop/classscc_1_1sc__in__opt_3_01bool_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt_3_01bool_01_4.html b/develop/classscc_1_1sc__in__opt_3_01bool_01_4.html index 3711c38d..d55f4129 100644 --- a/develop/classscc_1_1sc__in__opt_3_01bool_01_4.html +++ b/develop/classscc_1_1sc__in__opt_3_01bool_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4-members.html b/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4-members.html index 9e98df7d..208b6ffa 100644 --- a/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4-members.html +++ b/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html b/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html index 61b58ef8..7221e547 100644 --- a/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html +++ b/develop/classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt-members.html b/develop/classscc_1_1sc__inout__opt-members.html index 75a79f0a..7b582bb0 100644 --- a/develop/classscc_1_1sc__inout__opt-members.html +++ b/develop/classscc_1_1sc__inout__opt-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt.html b/develop/classscc_1_1sc__inout__opt.html index 63c26916..9da825f5 100644 --- a/develop/classscc_1_1sc__inout__opt.html +++ b/develop/classscc_1_1sc__inout__opt.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt_3_01bool_01_4-members.html b/develop/classscc_1_1sc__inout__opt_3_01bool_01_4-members.html index 8b1f2816..d752276c 100644 --- a/develop/classscc_1_1sc__inout__opt_3_01bool_01_4-members.html +++ b/develop/classscc_1_1sc__inout__opt_3_01bool_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt_3_01bool_01_4.html b/develop/classscc_1_1sc__inout__opt_3_01bool_01_4.html index cfd74ace..3a25c8a4 100644 --- a/develop/classscc_1_1sc__inout__opt_3_01bool_01_4.html +++ b/develop/classscc_1_1sc__inout__opt_3_01bool_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4-members.html b/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4-members.html index 15d94a98..b42af3c9 100644 --- a/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4-members.html +++ b/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html b/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html index a81e662d..610b56d6 100644 --- a/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html +++ b/develop/classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__out__opt-members.html b/develop/classscc_1_1sc__out__opt-members.html index 509d8de7..f184a985 100644 --- a/develop/classscc_1_1sc__out__opt-members.html +++ b/develop/classscc_1_1sc__out__opt-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__out__opt.html b/develop/classscc_1_1sc__out__opt.html index e74901dc..fd5269eb 100644 --- a/develop/classscc_1_1sc__out__opt.html +++ b/develop/classscc_1_1sc__out__opt.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__owning__signal-members.html b/develop/classscc_1_1sc__owning__signal-members.html index 1d06be86..0ccd9c0f 100644 --- a/develop/classscc_1_1sc__owning__signal-members.html +++ b/develop/classscc_1_1sc__owning__signal-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__owning__signal.html b/develop/classscc_1_1sc__owning__signal.html index 61708fd9..2a6ad69f 100644 --- a/develop/classscc_1_1sc__owning__signal.html +++ b/develop/classscc_1_1sc__owning__signal.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__register__indexed-members.html b/develop/classscc_1_1sc__register__indexed-members.html index 17668aad..27e71540 100644 --- a/develop/classscc_1_1sc__register__indexed-members.html +++ b/develop/classscc_1_1sc__register__indexed-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__register__indexed.html b/develop/classscc_1_1sc__register__indexed.html index 61985937..6255fe6f 100644 --- a/develop/classscc_1_1sc__register__indexed.html +++ b/develop/classscc_1_1sc__register__indexed.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__register__masked-members.html b/develop/classscc_1_1sc__register__masked-members.html index 3320d38e..50f1da5b 100644 --- a/develop/classscc_1_1sc__register__masked-members.html +++ b/develop/classscc_1_1sc__register__masked-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__register__masked.html b/develop/classscc_1_1sc__register__masked.html index 437ad4f9..2e5e10b9 100644 --- a/develop/classscc_1_1sc__register__masked.html +++ b/develop/classscc_1_1sc__register__masked.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__thread__pool-members.html b/develop/classscc_1_1sc__thread__pool-members.html index 7b070ed1..2304dcc3 100644 --- a/develop/classscc_1_1sc__thread__pool-members.html +++ b/develop/classscc_1_1sc__thread__pool-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1sc__thread__pool.html b/develop/classscc_1_1sc__thread__pool.html index b06e761b..286ac732 100644 --- a/develop/classscc_1_1sc__thread__pool.html +++ b/develop/classscc_1_1sc__thread__pool.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1stream__redirection-members.html b/develop/classscc_1_1stream__redirection-members.html index b49c4bb6..11248b98 100644 --- a/develop/classscc_1_1stream__redirection-members.html +++ b/develop/classscc_1_1stream__redirection-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1stream__redirection.html b/develop/classscc_1_1stream__redirection.html index 77dd1295..20d3758d 100644 --- a/develop/classscc_1_1stream__redirection.html +++ b/develop/classscc_1_1stream__redirection.html @@ -24,7 +24,7 @@ @@ -145,7 +145,7 @@

stream redirector

the stream redirector allows to redirect std::cout and std::cerr into SystemC log messages

-

Definition at line 463 of file report.h.

+

Definition at line 473 of file report.h.

Constructor & Destructor Documentation

◆ stream_redirection()

diff --git a/develop/classscc_1_1ticking__clock-members.html b/develop/classscc_1_1ticking__clock-members.html index a84650a7..ffba4c35 100644 --- a/develop/classscc_1_1ticking__clock-members.html +++ b/develop/classscc_1_1ticking__clock-members.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1ticking__clock.html b/develop/classscc_1_1ticking__clock.html index 77c5bb6e..d0489da7 100644 --- a/develop/classscc_1_1ticking__clock.html +++ b/develop/classscc_1_1ticking__clock.html @@ -24,7 +24,7 @@ diff --git a/develop/classscc_1_1tickless__clock-members.html b/develop/classscc_1_1tickless__clock-members.html index 8e08c1ae..c2766395 100644 --- a/develop/classscc_1_1tickless__clock-members.html +++ b/develop/classscc_1_1tickless__clock-members.html @@ -24,7 +24,7 @@ @@ -70,6 +70,7 @@

Protected Member Functions

std::function< void(void)> empty_cb {}
 
+unsigned available = 0
 
+unsigned written = 0
 
sc_core::sc_event data_written_evt {}
 
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
scc -  2022.4.0 +  2024.03
SystemC components library
+
clk_i (defined in scc::tickless_clock< BASE >)scc::tickless_clock< BASE >
tickless_clock(sc_core::sc_module_name const &nm) (defined in scc::tickless_clock< BASE >)scc::tickless_clock< BASE >inline
~tickless_clock()=default (defined in scc::tickless_clock< BASE >)scc::tickless_clock< BASE >virtual
diff --git a/develop/classscc_1_1tickless__clock.html b/develop/classscc_1_1tickless__clock.html index 12eaab68..3a3137f4 100644 --- a/develop/classscc_1_1tickless__clock.html +++ b/develop/classscc_1_1tickless__clock.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tickless__clock.js b/develop/classscc_1_1tickless__clock.js index d16112ef..90448e83 100644 --- a/develop/classscc_1_1tickless__clock.js +++ b/develop/classscc_1_1tickless__clock.js @@ -1,5 +1,6 @@ var classscc_1_1tickless__clock = [ [ "tickless_clock", "classscc_1_1tickless__clock.html#a58d1a6e05c8d6a070de172dfa36c067d", null ], + [ "~tickless_clock", "classscc_1_1tickless__clock.html#a21f2b9a8c27b7adf3f6be224c1fa7dc5", null ], [ "clk_i", "classscc_1_1tickless__clock.html#acc806a6b4e68f07ab55230528d9d8b58", null ] ]; \ No newline at end of file diff --git a/develop/classscc_1_1tlm__target-members.html b/develop/classscc_1_1tlm__target-members.html index 4f2e3051..a2189ccc 100644 --- a/develop/classscc_1_1tlm__target-members.html +++ b/develop/classscc_1_1tlm__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target.html b/develop/classscc_1_1tlm__target.html index 8bc90985..fab1f237 100644 --- a/develop/classscc_1_1tlm__target.html +++ b/develop/classscc_1_1tlm__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs-members.html b/develop/classscc_1_1tlm__target__bfs-members.html index ce885891..373df0d9 100644 --- a/develop/classscc_1_1tlm__target__bfs-members.html +++ b/develop/classscc_1_1tlm__target__bfs-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs.html b/develop/classscc_1_1tlm__target__bfs.html index f68b6a60..839bd2e2 100644 --- a/develop/classscc_1_1tlm__target__bfs.html +++ b/develop/classscc_1_1tlm__target__bfs.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor-members.html b/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor-members.html index 1e1b9dd5..98c93417 100644 --- a/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor-members.html +++ b/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor.html b/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor.html index d8864b6d..bad3661a 100644 --- a/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor.html +++ b/develop/classscc_1_1tlm__target__bfs_1_1socket__accessor.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs__base-members.html b/develop/classscc_1_1tlm__target__bfs__base-members.html index 5559e418..2539851a 100644 --- a/develop/classscc_1_1tlm__target__bfs__base-members.html +++ b/develop/classscc_1_1tlm__target__bfs__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs__base.html b/develop/classscc_1_1tlm__target__bfs__base.html index 7f4426a3..7eaeea24 100644 --- a/develop/classscc_1_1tlm__target__bfs__base.html +++ b/develop/classscc_1_1tlm__target__bfs__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs__register__base-members.html b/develop/classscc_1_1tlm__target__bfs__register__base-members.html index 387a06aa..684ef8f6 100644 --- a/develop/classscc_1_1tlm__target__bfs__register__base-members.html +++ b/develop/classscc_1_1tlm__target__bfs__register__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tlm__target__bfs__register__base.html b/develop/classscc_1_1tlm__target__bfs__register__base.html index a9ca8da2..1acd8a08 100644 --- a/develop/classscc_1_1tlm__target__bfs__register__base.html +++ b/develop/classscc_1_1tlm__target__bfs__register__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1trace_1_1gz__writer-members.html b/develop/classscc_1_1trace_1_1gz__writer-members.html index 16d235b4..6475e185 100644 --- a/develop/classscc_1_1trace_1_1gz__writer-members.html +++ b/develop/classscc_1_1trace_1_1gz__writer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1trace_1_1gz__writer.html b/develop/classscc_1_1trace_1_1gz__writer.html index 005107f2..dff4744e 100644 --- a/develop/classscc_1_1trace_1_1gz__writer.html +++ b/develop/classscc_1_1trace_1_1gz__writer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1traceable-members.html b/develop/classscc_1_1traceable-members.html index 05f58a88..11a50b28 100644 --- a/develop/classscc_1_1traceable-members.html +++ b/develop/classscc_1_1traceable-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1traceable.html b/develop/classscc_1_1traceable.html index 44f1f0aa..86f97e4c 100644 --- a/develop/classscc_1_1traceable.html +++ b/develop/classscc_1_1traceable.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tracer-members.html b/develop/classscc_1_1tracer-members.html index 328437f0..4c8b9906 100644 --- a/develop/classscc_1_1tracer-members.html +++ b/develop/classscc_1_1tracer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tracer.html b/develop/classscc_1_1tracer.html index c75c31f2..d64acf2d 100644 --- a/develop/classscc_1_1tracer.html +++ b/develop/classscc_1_1tracer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tracer__base-members.html b/develop/classscc_1_1tracer__base-members.html index 8aa8a01f..89fea6c6 100644 --- a/develop/classscc_1_1tracer__base-members.html +++ b/develop/classscc_1_1tracer__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1tracer__base.html b/develop/classscc_1_1tracer__base.html index 09dff0c0..5bf2c46a 100644 --- a/develop/classscc_1_1tracer__base.html +++ b/develop/classscc_1_1tracer__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1value__registry-members.html b/develop/classscc_1_1value__registry-members.html index 1c357416..c0ddd1c2 100644 --- a/develop/classscc_1_1value__registry-members.html +++ b/develop/classscc_1_1value__registry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1value__registry.html b/develop/classscc_1_1value__registry.html index a47c8e89..8f1e140f 100644 --- a/develop/classscc_1_1value__registry.html +++ b/develop/classscc_1_1value__registry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1value__registry__impl-members.html b/develop/classscc_1_1value__registry__impl-members.html index 0955ce31..fba16ec2 100644 --- a/develop/classscc_1_1value__registry__impl-members.html +++ b/develop/classscc_1_1value__registry__impl-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscc_1_1value__registry__impl.html b/develop/classscc_1_1value__registry__impl.html index 5604d15b..f5c2a67c 100644 --- a/develop/classscc_1_1value__registry__impl.html +++ b/develop/classscc_1_1value__registry__impl.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscp_1_1tlm__extensions_1_1initiator__id-members.html b/develop/classscp_1_1tlm__extensions_1_1initiator__id-members.html index b67b3c7c..a8d15162 100644 --- a/develop/classscp_1_1tlm__extensions_1_1initiator__id-members.html +++ b/develop/classscp_1_1tlm__extensions_1_1initiator__id-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscp_1_1tlm__extensions_1_1initiator__id.html b/develop/classscp_1_1tlm__extensions_1_1initiator__id.html index 00cfcc5c..ac7412c3 100644 --- a/develop/classscp_1_1tlm__extensions_1_1initiator__id.html +++ b/develop/classscp_1_1tlm__extensions_1_1initiator__id.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscp_1_1tlm__extensions_1_1path__trace-members.html b/develop/classscp_1_1tlm__extensions_1_1path__trace-members.html index 0af1bdaa..ff54d5ad 100644 --- a/develop/classscp_1_1tlm__extensions_1_1path__trace-members.html +++ b/develop/classscp_1_1tlm__extensions_1_1path__trace-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscp_1_1tlm__extensions_1_1path__trace.html b/develop/classscp_1_1tlm__extensions_1_1path__trace.html index c32ae903..27a8f5d1 100644 --- a/develop/classscp_1_1tlm__extensions_1_1path__trace.html +++ b/develop/classscp_1_1tlm__extensions_1_1path__trace.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1SQLiteDB-members.html b/develop/classscv__tr_1_1SQLiteDB-members.html index 4b1a8ec9..3619889b 100644 --- a/develop/classscv__tr_1_1SQLiteDB-members.html +++ b/develop/classscv__tr_1_1SQLiteDB-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1SQLiteDB.html b/develop/classscv__tr_1_1SQLiteDB.html index 70c9f3af..07d560cb 100644 --- a/develop/classscv__tr_1_1SQLiteDB.html +++ b/develop/classscv__tr_1_1SQLiteDB.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException-members.html b/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException-members.html index fafbe038..8868a4ca 100644 --- a/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException-members.html +++ b/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException.html b/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException.html index 4907e530..8ee9011f 100644 --- a/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException.html +++ b/develop/classscv__tr_1_1SQLiteDB_1_1SQLiteException.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4-members.html index fe165007..403ec9e8 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4.html index 11c7dc38..a64fda36 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__dmi__data_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4-members.html index 207db49b..7cfc8f7a 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4.html index b746a626..bfaadcef 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__gp__data_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4-members.html index d984c3dd..f1a0a065 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4.html index 0cfcbedf..d93058f2 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1scc_1_1scv_1_1tlm__phase__enum_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4-members.html index 5df23adf..b1b172bf 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4.html index d963739d..8bfcdfb2 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__command_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html index 95c5c50b..1b31d203 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html index acdee00d..106ae542 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4-members.html index c9aa9e8d..df1c1bb5 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4.html index 74f4349e..1983946f 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__gp__option_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4-members.html index c122fc96..8570a694 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4.html index b68766aa..f82cb4b9 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__response__status_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4-members.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4-members.html index 9ebfb87c..23bcf4f0 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4-members.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4.html b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4.html index 5eff3e35..9bfa641f 100644 --- a/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4.html +++ b/develop/classscv__tr_1_1scv__extensions_3_01tlm_1_1tlm__sync__enum_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4-members.html b/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4-members.html index dbe26671..ae2e0df2 100644 --- a/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4-members.html +++ b/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4.html b/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4.html index 96715bb0..41b1eadb 100644 --- a/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4.html +++ b/develop/classstd_1_1hash_3_01util_1_1delegate_3_01R_07A_8_8_8_08_4_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1initiator__mixin-members.html b/develop/classtlm_1_1scc_1_1initiator__mixin-members.html index 22f7586d..719d681d 100644 --- a/develop/classtlm_1_1scc_1_1initiator__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1initiator__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1initiator__mixin.html b/develop/classtlm_1_1scc_1_1initiator__mixin.html index 7b3e40d2..1ce3897d 100644 --- a/develop/classtlm_1_1scc_1_1initiator__mixin.html +++ b/develop/classtlm_1_1scc_1_1initiator__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry-members.html b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry-members.html index 1a474150..e84e6294 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry-members.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry.html b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry.html index 8dcdf0c7..cb62b773 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if-members.html b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if-members.html index c696d951..662f62af 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if-members.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if.html b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if.html index 6a624239..91020165 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1lwtr4tlm2__extension__registry__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr-members.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr-members.html index 9998cb10..8374dc8a 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr-members.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr.html index a7e71e1d..08b86be7 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder-members.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder-members.html index 44fe827d..dcea0540 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder-members.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder.html index 2f0e7a02..8fe70a6d 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm2__lwtr__recorder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording-members.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording-members.html index 4e8a1e7a..4251c54e 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording-members.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording.html b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording.html index fa2209da..5ac08238 100644 --- a/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording.html +++ b/develop/classtlm_1_1scc_1_1lwtr_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe-members.html b/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe-members.html index 36c29741..16eef65d 100644 --- a/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe-members.html +++ b/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe.html b/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe.html index 944e3af4..32bc9fc5 100644 --- a/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe.html +++ b/develop/classtlm_1_1scc_1_1pe_1_1parallel__pe.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload-members.html b/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload-members.html index 31072153..2aec593a 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload.html b/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload.html index 24dec951..54e47793 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__payload.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data-members.html index 75e72984..fa55edbb 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data.html index d17d0bbe..1ca857c7 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__dmi__data.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry-members.html index 090abf87..39e0089d 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry.html index 425b6dbe..14fe9b06 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extension__recording__registry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if-members.html index 8c74b0e9..b4ebea24 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if.html index 63e667fd..597603e8 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__extensions__recording__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data-members.html index 550c4609..ebb996e8 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data.html index 2c95dc2a..d951d763 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__gp__data.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording-members.html index d5a16fe0..6b1739b8 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording.html index 91df8bd1..bc3aede7 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__id__ext__recording.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket-members.html index 92f72f59..e43bc2c5 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket.html index 290a79b7..d10a9e7d 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__initiator__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket-members.html index bbe380c7..db2007e0 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html index 5035c6cb..990524a2 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder-members.html index 875339cb..d567e83f 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder.html index b0825c5f..4ca3ba4b 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module-members.html index 86072fe8..21da3fc9 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module.html index b5846b33..84d54200 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recorder__module.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension-members.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension-members.html index 2e3da8e0..62b5ed04 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension-members.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension.html b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension.html index 7f56d6aa..d14cb6e0 100644 --- a/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension.html +++ b/develop/classtlm_1_1scc_1_1scv_1_1tlm__recording__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1signal__initiator__mixin-members.html b/develop/classtlm_1_1scc_1_1signal__initiator__mixin-members.html index ca10a99b..f29399dd 100644 --- a/develop/classtlm_1_1scc_1_1signal__initiator__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1signal__initiator__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1signal__initiator__mixin.html b/develop/classtlm_1_1scc_1_1signal__initiator__mixin.html index 2e4913f6..2253d0a7 100644 --- a/develop/classtlm_1_1scc_1_1signal__initiator__mixin.html +++ b/develop/classtlm_1_1scc_1_1signal__initiator__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1signal__target__mixin-members.html b/develop/classtlm_1_1scc_1_1signal__target__mixin-members.html index 8fd22952..5ee6d286 100644 --- a/develop/classtlm_1_1scc_1_1signal__target__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1signal__target__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1signal__target__mixin.html b/develop/classtlm_1_1scc_1_1signal__target__mixin.html index f3fc0e27..52055124 100644 --- a/develop/classtlm_1_1scc_1_1signal__target__mixin.html +++ b/develop/classtlm_1_1scc_1_1signal__target__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tagged__initiator__mixin-members.html b/develop/classtlm_1_1scc_1_1tagged__initiator__mixin-members.html index 17ed42de..5f0ad319 100644 --- a/develop/classtlm_1_1scc_1_1tagged__initiator__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1tagged__initiator__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tagged__initiator__mixin.html b/develop/classtlm_1_1scc_1_1tagged__initiator__mixin.html index c2107fda..2cc5725c 100644 --- a/develop/classtlm_1_1scc_1_1tagged__initiator__mixin.html +++ b/develop/classtlm_1_1scc_1_1tagged__initiator__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tagged__target__mixin-members.html b/develop/classtlm_1_1scc_1_1tagged__target__mixin-members.html index bdbdee5e..c3b11bbc 100644 --- a/develop/classtlm_1_1scc_1_1tagged__target__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1tagged__target__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tagged__target__mixin.html b/develop/classtlm_1_1scc_1_1tagged__target__mixin.html index 79680cf6..58030ab6 100644 --- a/develop/classtlm_1_1scc_1_1tagged__target__mixin.html +++ b/develop/classtlm_1_1scc_1_1tagged__target__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1target__mixin-members.html b/develop/classtlm_1_1scc_1_1target__mixin-members.html index c113a7d4..743dbd1e 100644 --- a/develop/classtlm_1_1scc_1_1target__mixin-members.html +++ b/develop/classtlm_1_1scc_1_1target__mixin-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1target__mixin.html b/develop/classtlm_1_1scc_1_1target__mixin.html index 4eb3b7c6..1dc3a5b0 100644 --- a/develop/classtlm_1_1scc_1_1target__mixin.html +++ b/develop/classtlm_1_1scc_1_1target__mixin.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter-members.html b/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter-members.html index 7d83b976..774f3cda 100644 --- a/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter-members.html +++ b/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter.html b/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter.html index 560f4e74..afd67218 100644 --- a/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter.html +++ b/develop/classtlm_1_1scc_1_1tlm2__pv__av__initiator__adapter.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter-members.html b/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter-members.html index 41b352cc..07d7c743 100644 --- a/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter-members.html +++ b/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter.html b/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter.html index 30418ceb..48d00ad7 100644 --- a/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter.html +++ b/develop/classtlm_1_1scc_1_1tlm2__pv__av__target__adapter.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__base__mm__interface-members.html b/develop/classtlm_1_1scc_1_1tlm__base__mm__interface-members.html index a741ed55..b0196fab 100644 --- a/develop/classtlm_1_1scc_1_1tlm__base__mm__interface-members.html +++ b/develop/classtlm_1_1scc_1_1tlm__base__mm__interface-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__base__mm__interface.html b/develop/classtlm_1_1scc_1_1tlm__base__mm__interface.html index 6c169b09..340fa473 100644 --- a/develop/classtlm_1_1scc_1_1tlm__base__mm__interface.html +++ b/develop/classtlm_1_1scc_1_1tlm__base__mm__interface.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr-members.html b/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr-members.html index 101c002b..9f1f0f96 100644 --- a/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr-members.html +++ b/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr.html b/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr.html index ff4165b5..070b5e6e 100644 --- a/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr.html +++ b/develop/classtlm_1_1scc_1_1tlm__gp__shared__ptr.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__mm-members.html b/develop/classtlm_1_1scc_1_1tlm__mm-members.html index 2a8cab4c..cbcf3764 100644 --- a/develop/classtlm_1_1scc_1_1tlm__mm-members.html +++ b/develop/classtlm_1_1scc_1_1tlm__mm-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classtlm_1_1scc_1_1tlm__mm.html b/develop/classtlm_1_1scc_1_1tlm__mm.html index 06d12c26..fc1ae38d 100644 --- a/develop/classtlm_1_1scc_1_1tlm__mm.html +++ b/develop/classtlm_1_1scc_1_1tlm__mm.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1BitFieldArray-members.html b/develop/classutil_1_1BitFieldArray-members.html index 490f5eb4..2873ad51 100644 --- a/develop/classutil_1_1BitFieldArray-members.html +++ b/develop/classutil_1_1BitFieldArray-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1BitFieldArray.html b/develop/classutil_1_1BitFieldArray.html index 52704b75..dffba465 100644 --- a/develop/classutil_1_1BitFieldArray.html +++ b/develop/classutil_1_1BitFieldArray.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1BitFieldArray_1_1Element-members.html b/develop/classutil_1_1BitFieldArray_1_1Element-members.html index 2a45f551..6ea50e33 100644 --- a/develop/classutil_1_1BitFieldArray_1_1Element-members.html +++ b/develop/classutil_1_1BitFieldArray_1_1Element-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1BitFieldArray_1_1Element.html b/develop/classutil_1_1BitFieldArray_1_1Element.html index c81c208d..5e40443e 100644 --- a/develop/classutil_1_1BitFieldArray_1_1Element.html +++ b/develop/classutil_1_1BitFieldArray_1_1Element.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1IoRedirector-members.html b/develop/classutil_1_1IoRedirector-members.html index 329e4f33..c67ea382 100644 --- a/develop/classutil_1_1IoRedirector-members.html +++ b/develop/classutil_1_1IoRedirector-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1IoRedirector.html b/develop/classutil_1_1IoRedirector.html index f414300c..70bf66be 100644 --- a/develop/classutil_1_1IoRedirector.html +++ b/develop/classutil_1_1IoRedirector.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1MT19937-members.html b/develop/classutil_1_1MT19937-members.html index 1a76b3ac..5e90bdf2 100644 --- a/develop/classutil_1_1MT19937-members.html +++ b/develop/classutil_1_1MT19937-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1MT19937.html b/develop/classutil_1_1MT19937.html index 589dad09..cee34162 100644 --- a/develop/classutil_1_1MT19937.html +++ b/develop/classutil_1_1MT19937.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1delegate.html b/develop/classutil_1_1delegate.html index 142f9b86..567078af 100644 --- a/develop/classutil_1_1delegate.html +++ b/develop/classutil_1_1delegate.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4-members.html b/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4-members.html index 4be57105..22b567de 100644 --- a/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4-members.html +++ b/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4.html b/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4.html index d91d54bd..aa11862d 100644 --- a/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4.html +++ b/develop/classutil_1_1delegate_3_01R_07A_8_8_8_08_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1lz4c__steambuf-members.html b/develop/classutil_1_1lz4c__steambuf-members.html index e31b4bba..6da2fb0c 100644 --- a/develop/classutil_1_1lz4c__steambuf-members.html +++ b/develop/classutil_1_1lz4c__steambuf-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1lz4c__steambuf.html b/develop/classutil_1_1lz4c__steambuf.html index 703a8e60..ae58a023 100644 --- a/develop/classutil_1_1lz4c__steambuf.html +++ b/develop/classutil_1_1lz4c__steambuf.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1lz4d__streambuf-members.html b/develop/classutil_1_1lz4d__streambuf-members.html index 0c486adf..bd7710c2 100644 --- a/develop/classutil_1_1lz4d__streambuf-members.html +++ b/develop/classutil_1_1lz4d__streambuf-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1lz4d__streambuf.html b/develop/classutil_1_1lz4d__streambuf.html index 089bd641..e9f87e7d 100644 --- a/develop/classutil_1_1lz4d__streambuf.html +++ b/develop/classutil_1_1lz4d__streambuf.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1pool__allocator-members.html b/develop/classutil_1_1pool__allocator-members.html index 64fda048..d16d2bf0 100644 --- a/develop/classutil_1_1pool__allocator-members.html +++ b/develop/classutil_1_1pool__allocator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1pool__allocator.html b/develop/classutil_1_1pool__allocator.html index 3bbd3124..ec98f370 100644 --- a/develop/classutil_1_1pool__allocator.html +++ b/develop/classutil_1_1pool__allocator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1range__lut-members.html b/develop/classutil_1_1range__lut-members.html index f894bf13..a7c0a530 100644 --- a/develop/classutil_1_1range__lut-members.html +++ b/develop/classutil_1_1range__lut-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1range__lut.html b/develop/classutil_1_1range__lut.html index b5927bed..a42f43e0 100644 --- a/develop/classutil_1_1range__lut.html +++ b/develop/classutil_1_1range__lut.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1sparse__array-members.html b/develop/classutil_1_1sparse__array-members.html index 9e511315..1ea7d857 100644 --- a/develop/classutil_1_1sparse__array-members.html +++ b/develop/classutil_1_1sparse__array-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1sparse__array.html b/develop/classutil_1_1sparse__array.html index e9a1014f..b0cab5d5 100644 --- a/develop/classutil_1_1sparse__array.html +++ b/develop/classutil_1_1sparse__array.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1stl__pool__allocator-members.html b/develop/classutil_1_1stl__pool__allocator-members.html index 63805e98..1071a454 100644 --- a/develop/classutil_1_1stl__pool__allocator-members.html +++ b/develop/classutil_1_1stl__pool__allocator-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1stl__pool__allocator.html b/develop/classutil_1_1stl__pool__allocator.html index 96e4882f..5d002839 100644 --- a/develop/classutil_1_1stl__pool__allocator.html +++ b/develop/classutil_1_1stl__pool__allocator.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1thread__syncronizer-members.html b/develop/classutil_1_1thread__syncronizer-members.html index 6f423fdc..ef3334a2 100644 --- a/develop/classutil_1_1thread__syncronizer-members.html +++ b/develop/classutil_1_1thread__syncronizer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1thread__syncronizer.html b/develop/classutil_1_1thread__syncronizer.html index be0dd786..d45d3a92 100644 --- a/develop/classutil_1_1thread__syncronizer.html +++ b/develop/classutil_1_1thread__syncronizer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1watchdog-members.html b/develop/classutil_1_1watchdog-members.html index d3af115b..351762c0 100644 --- a/develop/classutil_1_1watchdog-members.html +++ b/develop/classutil_1_1watchdog-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/classutil_1_1watchdog.html b/develop/classutil_1_1watchdog.html index 35b0ac5e..f00ad6a7 100644 --- a/develop/classutil_1_1watchdog.html +++ b/develop/classutil_1_1watchdog.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/clock__if__mixins_8h_source.html b/develop/clock__if__mixins_8h_source.html index 8527e02d..b31b6e69 100644 --- a/develop/clock__if__mixins_8h_source.html +++ b/develop/clock__if__mixins_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -135,12 +135,13 @@
68  SC_METHOD(clock_cb);
69  this->sensitive << clk_i;
70  }
-
71 
-
72 private:
-
73  void clock_cb() { this->set_clock_period(clk_i.read()); }
-
74 };
-
75 } // namespace scc
-
76 #endif // _SYSC_CLOCK_IF_MIXINS_H_
+
71  virtual ~tickless_clock() = default;
+
72 
+
73 private:
+
74  void clock_cb() { this->set_clock_period(clk_i.read()); }
+
75 };
+
76 } // namespace scc
+
77 #endif // _SYSC_CLOCK_IF_MIXINS_H_
SCC SystemC utilities.
diff --git a/develop/common_2util_2mt19937__rng_8h_source.html b/develop/common_2util_2mt19937__rng_8h_source.html index aef72798..af9a157a 100644 --- a/develop/common_2util_2mt19937__rng_8h_source.html +++ b/develop/common_2util_2mt19937__rng_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/configurable__tracer_8cpp_source.html b/develop/configurable__tracer_8cpp_source.html index 491e03fe..88db0ffa 100644 --- a/develop/configurable__tracer_8cpp_source.html +++ b/develop/configurable__tracer_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/configurable__tracer_8h_source.html b/develop/configurable__tracer_8h_source.html index 421c6ce9..a0ba03a1 100644 --- a/develop/configurable__tracer_8h_source.html +++ b/develop/configurable__tracer_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/configurer_8cpp_source.html b/develop/configurer_8cpp_source.html index 3e7a2ed9..7052663a 100644 --- a/develop/configurer_8cpp_source.html +++ b/develop/configurer_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -85,752 +85,771 @@
18 #include "rapidjson/document.h"
19 #include "rapidjson/error/en.h"
20 #include "report.h"
-
21 #ifdef FMT_SPDLOG_INTERNAL
-
22 #include <fmt/fmt.h>
-
23 #else
+
21 #include <cci_configuration>
+
22 #include <cci_utils/broker.h>
+
23 #include <cstring>
24 #include <fmt/format.h>
-
25 #endif
-
26 #include <cci_configuration>
-
27 #include <cci_utils/broker.h>
-
28 #include <cstring>
-
29 #include <fstream>
-
30 #include <rapidjson/istreamwrapper.h>
-
31 #include <rapidjson/ostreamwrapper.h>
-
32 #include <rapidjson/prettywriter.h>
-
33 #include <unordered_map>
-
34 #ifdef HAS_YAMPCPP
-
35 #include <yaml-cpp/exceptions.h>
-
36 #include <yaml-cpp/node/parse.h>
-
37 #include <yaml-cpp/yaml.h>
-
38 
-
39 namespace {
-
40 template <typename T> struct optional {
-
41  T val{};
-
42  bool initialized{false};
-
43  optional& operator=(T&& val) {
-
44  this->val = std::move(val);
-
45  initialized = true;
-
46  return *this;
-
47  }
-
48  operator bool() const { return initialized; }
-
49  T value() { return val; }
-
50 };
-
51 } // namespace
-
52 
-
53 namespace YAML {
-
54 template <typename T> struct as_if<T, optional<T>> {
-
55  explicit as_if(const YAML::Node& node_)
-
56  : node(node_) {}
-
57  const YAML::Node& node;
-
58  const optional<T> operator()() const {
-
59  optional<T> val;
-
60  T t;
-
61  if(node.m_pNode && YAML::convert<T>::decode(node, t))
-
62  val = std::move(t);
-
63  return val;
-
64  }
-
65 };
-
66 
-
67 // There is already a std::string partial specialisation, so we need a full specialisation here
-
68 template <> struct as_if<std::string, optional<std::string>> {
-
69  explicit as_if(const YAML::Node& node_)
-
70  : node(node_) {}
-
71  const YAML::Node& node;
-
72  const optional<std::string> operator()() const {
-
73  optional<std::string> val;
-
74  std::string t;
-
75  if(node.m_pNode && YAML::convert<std::string>::decode(node, t))
-
76  val = std::move(t);
-
77  return val;
-
78  }
-
79 };
-
80 } // namespace YAML
-
81 #endif
-
82 namespace scc {
-
83 namespace {
-
84 inline auto get_sc_objects(sc_core::sc_object* obj = nullptr) -> const std::vector<sc_core::sc_object*>& {
-
85  if(obj)
-
86  return obj->get_child_objects();
-
87  else
-
88  return sc_core::sc_get_top_level_objects();
-
89 }
-
90 
-
91 #ifdef WIN32
-
92 #define DIR_SEPARATOR '\\'
-
93 #else
-
94 #define DIR_SEPARATOR '/'
-
95 #endif
-
96 
-
97 struct config_reader {
-
98  std::vector<std::string> includes{"."};
-
99  void add_to_includes(std::string const& path) {
-
100  for(auto& e : includes) {
-
101  if(e == path)
-
102  return;
-
103  }
-
104  includes.push_back(path);
-
105  }
-
106 
-
107  std::string find_in_include_path(std::string const& file_name) {
-
108  if(file_name[0] == '/' || file_name[0] == '\\')
-
109  return file_name;
-
110  else
-
111  for(auto& incl : includes) {
-
112  auto full_name = incl + DIR_SEPARATOR + file_name;
-
113  std::ifstream ifs(full_name);
-
114  if(ifs.is_open())
-
115  return full_name;
-
116  }
-
117  return file_name;
-
118  }
-
119 };
-
120 /*************************************************************************************************
-
121  * JSON config start
-
122  ************************************************************************************************/
-
123 using namespace rapidjson;
-
124 using writer_type = PrettyWriter<OStreamWrapper>;
-
125 
-
126 #define FDECL(TYPE, FUNC) \
-
127  inline void writeValue(writer_type& writer, std::string const& key, TYPE value) { \
-
128  writer.Key(key.c_str()); \
-
129  writer.FUNC(value); \
-
130  }
-
131 FDECL(int, Int)
-
132 FDECL(unsigned int, Uint)
-
133 FDECL(long, Int64)
-
134 FDECL(unsigned long, Uint64)
-
135 FDECL(long long, Int64)
-
136 FDECL(unsigned long long, Uint64)
-
137 FDECL(bool, Bool)
-
138 FDECL(float, Double)
-
139 FDECL(double, Double)
-
140 FDECL(char const*, String)
-
141 inline void writeValue(writer_type& writer, std::string const& key, std::string const& value) {
-
142  writer.Key(key.c_str());
-
143  writer.String(value.c_str());
-
144 }
-
145 
-
146 inline bool start_object(writer_type& writer, char const* key, bool started) {
-
147  if(!started) {
-
148  writer.Key(key);
-
149  writer.StartObject();
-
150  }
-
151  return true;
-
152 }
-
153 
-
154 struct json_config_dumper {
-
155  configurer::broker_t const& broker;
-
156  std::unordered_map<std::string, std::vector<cci::cci_param_untyped_handle>> lut;
-
157  json_config_dumper(configurer::broker_t const& broker)
-
158  : broker(broker) {
-
159  for(auto& h : broker.get_param_handles()) {
-
160  auto value = h.get_cci_value();
-
161  std::string paramname{h.name()};
-
162  auto sep = paramname.rfind('.');
-
163  auto basename = paramname.substr(0, sep);
-
164  lut[basename].push_back(h);
-
165  }
-
166  }
-
167 
-
168  void dump_config(sc_core::sc_object* obj, writer_type& writer) {
-
169  auto basename = std::string(obj->basename());
-
170  if(basename.substr(0, 3) == "$$$")
-
171  return;
-
172  auto obj_started = false;
-
173  auto log_lvl_set = false;
-
174  auto it = lut.find(obj->name());
-
175  if(it != lut.end())
-
176  for(auto& h : it->second) {
-
177  obj_started = start_object(writer, obj->basename(), obj_started);
-
178  auto value = h.get_cci_value();
-
179  std::string paramname{h.name()};
-
180  auto basename = paramname.substr(paramname.rfind('.') + 1);
-
181  if(basename == SCC_LOG_LEVEL_PARAM_NAME)
-
182  log_lvl_set = true;
-
183  if(value.is_bool())
-
184  writeValue(writer, basename, (bool)value.get_bool());
-
185  else if(value.is_int())
-
186  writeValue(writer, basename, (int)value.get_int());
-
187  else if(value.is_int64())
-
188  writeValue(writer, basename, static_cast<int64_t>(value.get_int64()));
-
189  else if(value.is_uint())
-
190  writeValue(writer, basename, value.get_uint());
-
191  else if(value.is_uint64())
-
192  writeValue(writer, basename, static_cast<uint64_t>(value.get_uint64()));
-
193  else if(value.is_double())
-
194  writeValue(writer, basename, value.get_double());
-
195  else if(value.is_string())
-
196  writeValue(writer, basename, value.get_string().c_str());
-
197  }
-
198  auto mod = dynamic_cast<sc_core::sc_module*>(obj);
-
199  if(scc::is_logging_initialized() && !log_lvl_set && mod) {
-
200  obj_started = start_object(writer, obj->basename(), obj_started);
-
201  auto val = broker.get_preset_cci_value(fmt::format("{}.{}", obj->name(), SCC_LOG_LEVEL_PARAM_NAME));
-
202  if(basename.substr(0, 3) != "$$$")
-
203  writeValue(writer, SCC_LOG_LEVEL_PARAM_NAME, val.is_int() ? val.get_int() : static_cast<int>(get_logging_level()));
+
25 #include <fstream>
+
26 #include <rapidjson/istreamwrapper.h>
+
27 #include <rapidjson/ostreamwrapper.h>
+
28 #include <rapidjson/prettywriter.h>
+
29 #include <unordered_map>
+
30 #ifdef HAS_YAMPCPP
+
31 #include <yaml-cpp/exceptions.h>
+
32 #include <yaml-cpp/node/parse.h>
+
33 #include <yaml-cpp/yaml.h>
+
34 
+
35 namespace {
+
36 template <typename T> struct optional {
+
37  T val{};
+
38  bool initialized{false};
+
39  optional& operator=(T&& val) {
+
40  this->val = std::move(val);
+
41  initialized = true;
+
42  return *this;
+
43  }
+
44  operator bool() const { return initialized; }
+
45  T value() { return val; }
+
46 };
+
47 } // namespace
+
48 
+
49 namespace YAML {
+
50 template <typename T> struct as_if<T, optional<T>> {
+
51  explicit as_if(const YAML::Node& node_)
+
52  : node(node_) {}
+
53  const YAML::Node& node;
+
54  const optional<T> operator()() const {
+
55  optional<T> val;
+
56  T t;
+
57  if(node.m_pNode && YAML::convert<T>::decode(node, t))
+
58  val = std::move(t);
+
59  return val;
+
60  }
+
61 };
+
62 
+
63 // There is already a std::string partial specialisation, so we need a full specialisation here
+
64 template <> struct as_if<std::string, optional<std::string>> {
+
65  explicit as_if(const YAML::Node& node_)
+
66  : node(node_) {}
+
67  const YAML::Node& node;
+
68  const optional<std::string> operator()() const {
+
69  optional<std::string> val;
+
70  std::string t;
+
71  if(node.m_pNode && YAML::convert<std::string>::decode(node, t))
+
72  val = std::move(t);
+
73  return val;
+
74  }
+
75 };
+
76 } // namespace YAML
+
77 #endif
+
78 namespace scc {
+
79 namespace {
+
80 inline auto get_sc_objects(sc_core::sc_object* obj = nullptr) -> const std::vector<sc_core::sc_object*>& {
+
81  if(obj)
+
82  return obj->get_child_objects();
+
83  else
+
84  return sc_core::sc_get_top_level_objects();
+
85 }
+
86 
+
87 #ifdef WIN32
+
88 #define DIR_SEPARATOR '\\'
+
89 #else
+
90 #define DIR_SEPARATOR '/'
+
91 #endif
+
92 
+
93 struct config_reader {
+
94  std::vector<std::string> includes{"."};
+
95  void add_to_includes(std::string const& path) {
+
96  for(auto& e : includes) {
+
97  if(e == path)
+
98  return;
+
99  }
+
100  includes.push_back(path);
+
101  }
+
102 
+
103  std::string find_in_include_path(std::string const& file_name) {
+
104  if(file_name[0] == '/' || file_name[0] == '\\')
+
105  return file_name;
+
106  else
+
107  for(auto& incl : includes) {
+
108  auto full_name = incl + DIR_SEPARATOR + file_name;
+
109  std::ifstream ifs(full_name);
+
110  if(ifs.is_open())
+
111  return full_name;
+
112  }
+
113  return file_name;
+
114  }
+
115 };
+
116 /*************************************************************************************************
+
117  * JSON config start
+
118  ************************************************************************************************/
+
119 using namespace rapidjson;
+
120 using writer_type = PrettyWriter<OStreamWrapper>;
+
121 
+
122 #define FDECL(TYPE, FUNC) \
+
123  inline void writeValue(writer_type& writer, std::string const& key, TYPE value) { \
+
124  writer.Key(key.c_str()); \
+
125  writer.FUNC(value); \
+
126  }
+
127 FDECL(int, Int)
+
128 FDECL(unsigned int, Uint)
+
129 FDECL(long, Int64)
+
130 FDECL(unsigned long, Uint64)
+
131 FDECL(long long, Int64)
+
132 FDECL(unsigned long long, Uint64)
+
133 FDECL(bool, Bool)
+
134 FDECL(float, Double)
+
135 FDECL(double, Double)
+
136 FDECL(char const*, String)
+
137 inline void writeValue(writer_type& writer, std::string const& key, std::string const& value) {
+
138  writer.Key(key.c_str());
+
139  writer.String(value.c_str());
+
140 }
+
141 
+
142 inline bool start_object(writer_type& writer, char const* key, bool started) {
+
143  if(!started) {
+
144  writer.Key(key);
+
145  writer.StartObject();
+
146  }
+
147  return true;
+
148 }
+
149 
+
150 struct json_config_dumper {
+
151  configurer::broker_t const& broker;
+
152  std::unordered_map<std::string, std::vector<cci::cci_param_untyped_handle>> lut;
+
153  json_config_dumper(configurer::broker_t const& broker)
+
154  : broker(broker) {
+
155  for(auto& h : broker.get_param_handles()) {
+
156  auto value = h.get_cci_value();
+
157  std::string paramname{h.name()};
+
158  auto sep = paramname.rfind('.');
+
159  auto basename = paramname.substr(0, sep);
+
160  lut[basename].push_back(h);
+
161  }
+
162  }
+
163 
+
164  void dump_config(sc_core::sc_object* obj, writer_type& writer) {
+
165  auto basename = std::string(obj->basename());
+
166  if(basename.substr(0, 3) == "$$$")
+
167  return;
+
168  auto obj_started = false;
+
169  auto log_lvl_set = false;
+
170  auto it = lut.find(obj->name());
+
171  if(it != lut.end())
+
172  for(auto& h : it->second) {
+
173  obj_started = start_object(writer, obj->basename(), obj_started);
+
174  auto value = h.get_cci_value();
+
175  std::string paramname{h.name()};
+
176  auto basename = paramname.substr(paramname.rfind('.') + 1);
+
177  if(basename == SCC_LOG_LEVEL_PARAM_NAME)
+
178  log_lvl_set = true;
+
179  if(value.is_bool())
+
180  writeValue(writer, basename, (bool)value.get_bool());
+
181  else if(value.is_int())
+
182  writeValue(writer, basename, (int)value.get_int());
+
183  else if(value.is_int64())
+
184  writeValue(writer, basename, static_cast<int64_t>(value.get_int64()));
+
185  else if(value.is_uint())
+
186  writeValue(writer, basename, value.get_uint());
+
187  else if(value.is_uint64())
+
188  writeValue(writer, basename, static_cast<uint64_t>(value.get_uint64()));
+
189  else if(value.is_double())
+
190  writeValue(writer, basename, value.get_double());
+
191  else if(value.is_string())
+
192  writeValue(writer, basename, value.get_string().c_str());
+
193  }
+
194  auto mod = dynamic_cast<sc_core::sc_module*>(obj);
+
195  if(scc::is_logging_initialized() && !log_lvl_set && mod) {
+
196  obj_started = start_object(writer, obj->basename(), obj_started);
+
197  auto val = broker.get_preset_cci_value(fmt::format("{}.{}", obj->name(), SCC_LOG_LEVEL_PARAM_NAME));
+
198  if(basename.substr(0, 3) != "$$$")
+
199  writeValue(writer, SCC_LOG_LEVEL_PARAM_NAME, val.is_int() ? val.get_int() : static_cast<int>(get_logging_level()));
+
200  }
+
201  for(auto* o : get_sc_objects(obj)) {
+
202  obj_started = start_object(writer, obj->basename(), obj_started);
+
203  dump_config(o, writer);
204  }
-
205  for(auto* o : get_sc_objects(obj)) {
-
206  obj_started = start_object(writer, obj->basename(), obj_started);
-
207  dump_config(o, writer);
-
208  }
-
209  if(obj_started)
-
210  writer.EndObject();
-
211  }
-
212 };
-
213 
-
214 struct json_config_reader : public config_reader {
-
215  configurer::broker_t& broker;
-
216  Document document;
-
217  bool valid{false};
-
218 
-
219  json_config_reader(configurer::broker_t& broker)
-
220  : broker(broker) {}
-
221 
-
222  void parse(std::istream& is) {
-
223  IStreamWrapper stream(is);
-
224  document.ParseStream(stream);
-
225  valid = !document.HasParseError();
-
226  }
-
227  std::string get_error_msg() {
-
228  std::ostringstream os;
-
229  os << " location " << (unsigned)document.GetErrorOffset() << ", reason: " << GetParseError_En(document.GetParseError());
-
230  return os.str();
-
231  }
-
232 
-
233  inline void configure_cci() { configure_cci_hierarchical(document, ""); }
-
234 
-
235  void configure_cci_hierarchical(Value const& value, std::string prefix) {
-
236  if(value.IsObject()) {
-
237  auto o = value.GetObject();
-
238  for(auto itr = o.MemberBegin(); itr != o.MemberEnd(); ++itr) {
-
239  if(!itr->name.IsString())
-
240  return;
-
241  std::string key_name = itr->name.GetString();
-
242  Value const& val = itr->value;
-
243  auto hier_name = prefix.size() ? prefix + "." + key_name : key_name;
-
244  if(val.IsNull() || val.IsArray())
-
245  return;
-
246  else if(val.IsObject())
-
247  configure_cci_hierarchical(val, hier_name);
-
248  else {
-
249  if(key_name == "!include") {
-
250  json_config_reader sub_reader(broker);
-
251  std::ifstream ifs(find_in_include_path(val.GetString()));
-
252  if(ifs.is_open()) {
-
253  sub_reader.parse(ifs);
-
254  if(sub_reader.valid) {
-
255  sub_reader.configure_cci_hierarchical(sub_reader.document, prefix);
-
256  } else {
-
257  std::ostringstream os;
-
258  os << "Could not parse include file " << val.GetString();
-
259  throw std::runtime_error(os.str());
-
260  }
-
261  } else {
-
262  std::ostringstream os;
-
263  os << "Could not open include file " << val.GetString();
-
264  throw std::runtime_error(os.str());
-
265  }
-
266  } else {
-
267  auto param_handle = broker.get_param_handle(hier_name);
-
268  if(param_handle.is_valid()) {
-
269  if(val.IsString()) {
-
270  param_handle.set_cci_value(cci::cci_value(std::string(val.GetString())));
-
271  } else if(val.IsBool()) {
-
272  param_handle.set_cci_value(cci::cci_value(val.Get<bool>()));
-
273  } else if(val.IsInt()) {
-
274  param_handle.set_cci_value(cci::cci_value(val.Get<int>()));
-
275  } else if(val.IsInt64()) {
-
276  param_handle.set_cci_value(cci::cci_value(val.Get<int64_t>()));
-
277  } else if(val.IsUint()) {
-
278  param_handle.set_cci_value(cci::cci_value(val.Get<unsigned>()));
-
279  } else if(val.IsUint64()) {
-
280  param_handle.set_cci_value(cci::cci_value(val.Get<uint64_t>()));
-
281  } else if(val.IsDouble()) {
-
282  param_handle.set_cci_value(cci::cci_value(val.Get<double>()));
-
283  }
-
284  } else {
-
285  if(val.IsString()) {
-
286  broker.set_preset_cci_value(hier_name, cci::cci_value(std::string(val.GetString())));
-
287  } else if(val.IsBool()) {
-
288  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<bool>()));
-
289  } else if(val.IsInt()) {
-
290  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<int>()));
-
291  } else if(val.IsInt64()) {
-
292  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<int64_t>()));
-
293  } else if(val.IsUint()) {
-
294  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<unsigned>()));
-
295  } else if(val.IsUint64()) {
-
296  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<uint64_t>()));
-
297  } else if(val.IsDouble()) {
-
298  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<double>()));
-
299  }
-
300  }
-
301  }
-
302  }
-
303  }
-
304  }
-
305  }
-
306 };
+
205  if(obj_started)
+
206  writer.EndObject();
+
207  }
+
208 };
+
209 
+
210 struct json_config_reader : public config_reader {
+
211  configurer::broker_t& broker;
+
212  Document document;
+
213  bool valid{false};
+
214 
+
215  json_config_reader(configurer::broker_t& broker)
+
216  : broker(broker) {}
+
217 
+
218  void parse(std::istream& is) {
+
219  IStreamWrapper stream(is);
+
220  document.ParseStream(stream);
+
221  valid = !document.HasParseError();
+
222  }
+
223  std::string get_error_msg() {
+
224  std::ostringstream os;
+
225  os << " location " << (unsigned)document.GetErrorOffset() << ", reason: " << GetParseError_En(document.GetParseError());
+
226  return os.str();
+
227  }
+
228 
+
229  inline void configure_cci() { configure_cci_hierarchical(document, ""); }
+
230 
+
231  void configure_cci_hierarchical(Value const& value, std::string prefix) {
+
232  if(value.IsObject()) {
+
233  auto o = value.GetObject();
+
234  for(auto itr = o.MemberBegin(); itr != o.MemberEnd(); ++itr) {
+
235  if(!itr->name.IsString())
+
236  return;
+
237  std::string key_name = itr->name.GetString();
+
238  Value const& val = itr->value;
+
239  auto hier_name = prefix.size() ? prefix + "." + key_name : key_name;
+
240  if(val.IsNull() || val.IsArray())
+
241  return;
+
242  else if(val.IsObject())
+
243  configure_cci_hierarchical(val, hier_name);
+
244  else {
+
245  if(key_name == "!include") {
+
246  json_config_reader sub_reader(broker);
+
247  std::ifstream ifs(find_in_include_path(val.GetString()));
+
248  if(ifs.is_open()) {
+
249  sub_reader.parse(ifs);
+
250  if(sub_reader.valid) {
+
251  sub_reader.configure_cci_hierarchical(sub_reader.document, prefix);
+
252  } else {
+
253  std::ostringstream os;
+
254  os << "Could not parse include file " << val.GetString();
+
255  throw std::runtime_error(os.str());
+
256  }
+
257  } else {
+
258  std::ostringstream os;
+
259  os << "Could not open include file " << val.GetString();
+
260  throw std::runtime_error(os.str());
+
261  }
+
262  } else {
+
263  auto param_handle = broker.get_param_handle(hier_name);
+
264  if(param_handle.is_valid()) {
+
265  if(val.IsString()) {
+
266  param_handle.set_cci_value(cci::cci_value(std::string(val.GetString())));
+
267  } else if(val.IsBool()) {
+
268  param_handle.set_cci_value(cci::cci_value(val.Get<bool>()));
+
269  } else if(val.IsInt()) {
+
270  param_handle.set_cci_value(cci::cci_value(val.Get<int>()));
+
271  } else if(val.IsInt64()) {
+
272  param_handle.set_cci_value(cci::cci_value(val.Get<int64_t>()));
+
273  } else if(val.IsUint()) {
+
274  param_handle.set_cci_value(cci::cci_value(val.Get<unsigned>()));
+
275  } else if(val.IsUint64()) {
+
276  param_handle.set_cci_value(cci::cci_value(val.Get<uint64_t>()));
+
277  } else if(val.IsDouble()) {
+
278  param_handle.set_cci_value(cci::cci_value(val.Get<double>()));
+
279  }
+
280  } else {
+
281  if(val.IsString()) {
+
282  broker.set_preset_cci_value(hier_name, cci::cci_value(std::string(val.GetString())));
+
283  } else if(val.IsBool()) {
+
284  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<bool>()));
+
285  } else if(val.IsInt()) {
+
286  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<int>()));
+
287  } else if(val.IsInt64()) {
+
288  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<int64_t>()));
+
289  } else if(val.IsUint()) {
+
290  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<unsigned>()));
+
291  } else if(val.IsUint64()) {
+
292  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<uint64_t>()));
+
293  } else if(val.IsDouble()) {
+
294  broker.set_preset_cci_value(hier_name, cci::cci_value(val.Get<double>()));
+
295  }
+
296  }
+
297  }
+
298  }
+
299  }
+
300  }
+
301  }
+
302 };
+
303 /*************************************************************************************************
+
304  * JSON config end
+
305  ************************************************************************************************/
+
306 #ifdef HAS_YAMPCPP
307 /*************************************************************************************************
-
308  * JSON config end
+
308  * YAML config start
309  ************************************************************************************************/
-
310 #ifdef HAS_YAMPCPP
-
311 /*************************************************************************************************
-
312  * YAML config start
-
313  ************************************************************************************************/
-
314 struct yaml_config_dumper {
-
315  configurer::broker_t const& broker;
-
316  bool with_description{false};
-
317  std::unordered_map<std::string, std::vector<cci::cci_param_untyped_handle>> lut;
-
318  yaml_config_dumper(configurer::broker_t const& broker, bool with_description)
-
319  : broker(broker)
-
320  , with_description(with_description) {
-
321  for(auto& h : broker.get_param_handles()) {
-
322  auto value = h.get_cci_value();
-
323  std::string paramname{h.name()};
-
324  auto sep = paramname.rfind('.');
-
325  auto basename = paramname.substr(0, sep);
-
326  lut[basename].push_back(h);
-
327  }
-
328  }
-
329 
-
330  void dump_config(sc_core::sc_object* obj, YAML::Node& base_node) {
-
331  auto basename = std::string(obj->basename());
-
332  if(basename.substr(0, 3) == "$$$")
-
333  return;
-
334  auto obj_started = false;
-
335  auto log_lvl_set = false;
-
336  auto it = lut.find(obj->name());
-
337  YAML::Node this_node;
-
338  if(it != lut.end())
-
339  for(auto& h : it->second) {
-
340  auto value = h.get_cci_value();
-
341  std::string paramname{h.name()};
-
342  auto basename = paramname.substr(paramname.rfind('.') + 1);
-
343  if(basename == SCC_LOG_LEVEL_PARAM_NAME)
-
344  log_lvl_set = true;
-
345  auto descr = h.get_description();
-
346  if(with_description && descr.size()) {
-
347  auto descr_name = fmt::format("{}::descr", basename);
-
348  this_node[descr_name] = descr;
-
349  this_node[descr_name].SetTag("desc");
-
350  }
-
351  sc_core::sc_time t;
-
352  if(value.is_bool())
-
353  this_node[basename] = (bool)value.get_bool();
-
354  else if(value.is_int())
-
355  this_node[basename] = (int)value.get_int();
-
356  else if(value.is_int64())
-
357  this_node[basename] = static_cast<int64_t>(value.get_int64());
-
358  else if(value.is_uint())
-
359  this_node[basename] = value.get_uint();
-
360  else if(value.is_uint64())
-
361  this_node[basename] = static_cast<uint64_t>(value.get_uint64());
-
362  else if(value.is_double())
-
363  this_node[basename] = value.get_double();
-
364  else if(value.is_string())
-
365  this_node[basename] = value.get_string().c_str();
-
366  else if(value.try_get(t))
-
367  this_node[basename] = t.to_string();
-
368  }
-
369  auto mod = dynamic_cast<sc_core::sc_module*>(obj);
-
370  if(!log_lvl_set && mod) {
-
371  auto val = broker.get_preset_cci_value(fmt::format("{}.{}", obj->name(), SCC_LOG_LEVEL_PARAM_NAME));
-
372  auto global_verb = static_cast<int>(get_logging_level());
-
373  if(basename.substr(0, 11) != "scc_tracer")
-
374  this_node["log_level"] = val.is_int() ? val.get_int() : global_verb;
-
375  }
-
376  for(auto* o : get_sc_objects(obj)) {
-
377  dump_config(o, this_node);
-
378  }
-
379  if(this_node.size())
-
380  base_node[obj->basename()] = this_node;
-
381  }
-
382 };
-
383 
-
384 struct yaml_config_reader : public config_reader {
-
385  configurer::broker_t& broker;
-
386  YAML::Node document;
-
387  bool valid{false};
-
388 
-
389  yaml_config_reader(configurer::broker_t& broker)
-
390  : broker(broker) {}
-
391 
-
392  void parse(std::istream& is) {
-
393  std::string buf((std::istreambuf_iterator<char>(is)), std::istreambuf_iterator<char>());
-
394  document = YAML::Load(buf);
-
395  valid = document.IsDefined() && document.IsMap();
-
396  }
-
397 
-
398  std::string get_error_msg() { return "YAML file does not start with a map"; }
+
310 struct yaml_config_dumper {
+
311  configurer::broker_t const& broker;
+
312  bool with_description{false};
+
313  std::unordered_map<std::string, std::vector<cci::cci_param_untyped_handle>> lut;
+
314  std::vector<cci::cci_param_untyped_handle> tl_lut;
+
315  yaml_config_dumper(configurer::broker_t const& broker, bool with_description)
+
316  : broker(broker)
+
317  , with_description(with_description) {
+
318  for(auto& h : broker.get_param_handles()) {
+
319  auto value = h.get_cci_value();
+
320  std::string paramname{h.name()};
+
321  auto sep = paramname.rfind('.');
+
322  if(sep == std::string::npos) {
+
323  tl_lut.push_back(h);
+
324  } else {
+
325  auto basename = paramname.substr(0, sep);
+
326  lut[basename].push_back(h);
+
327  }
+
328  }
+
329  }
+
330 
+
331  void dump_config(YAML::Node& base_node) {
+
332  copy2yaml(tl_lut, base_node);
+
333  for(auto* o : sc_core::sc_get_top_level_objects()) {
+
334  dump_config(o, base_node);
+
335  }
+
336  }
+
337 
+
338  void dump_config(sc_core::sc_object* obj, YAML::Node& base_node) {
+
339  auto basename = std::string(obj->basename());
+
340  if(basename.substr(0, 3) == "$$$")
+
341  return;
+
342  auto obj_started = false;
+
343  auto log_lvl_set = false;
+
344  auto it = lut.find(obj->name());
+
345  YAML::Node this_node;
+
346  if(it != lut.end())
+
347  log_lvl_set |= copy2yaml(it->second, this_node);
+
348  auto mod = dynamic_cast<sc_core::sc_module*>(obj);
+
349  if(!log_lvl_set && mod) {
+
350  auto val = broker.get_preset_cci_value(fmt::format("{}.{}", obj->name(), SCC_LOG_LEVEL_PARAM_NAME));
+
351  auto global_verb = static_cast<int>(get_logging_level());
+
352  if(basename.substr(0, 11) != "scc_tracer")
+
353  this_node["log_level"] = val.is_int() ? val.get_int() : global_verb;
+
354  }
+
355  for(auto* o : get_sc_objects(obj)) {
+
356  dump_config(o, this_node);
+
357  }
+
358  if(this_node.size())
+
359  base_node[obj->basename()] = this_node;
+
360  }
+
361 
+
362 private:
+
363  bool copy2yaml(const std::vector<cci::cci_param_untyped_handle>& params, YAML::Node& this_node) {
+
364  bool log_lvl_set = false;
+
365  for(auto& h : params) {
+
366  auto value = h.get_cci_value();
+
367  std::string paramname{h.name()};
+
368  auto basename = paramname.substr(paramname.rfind('.') + 1);
+
369  if(basename == SCC_LOG_LEVEL_PARAM_NAME)
+
370  log_lvl_set = true;
+
371 
+
372  auto descr = h.get_description();
+
373  if(with_description && descr.size()) {
+
374  auto descr_name = fmt::format("{}::descr", basename);
+
375  this_node[descr_name] = descr;
+
376  this_node[descr_name].SetTag("desc");
+
377  }
+
378  sc_core::sc_time t;
+
379  if(value.is_bool())
+
380  this_node[basename] = (bool)(value.get_bool());
+
381  else if(value.is_int())
+
382  this_node[basename] = (int)(value.get_int());
+
383  else if(value.is_int64())
+
384  this_node[basename] = static_cast<int64_t>(value.get_int64());
+
385  else if(value.is_uint())
+
386  this_node[basename] = value.get_uint();
+
387  else if(value.is_uint64())
+
388  this_node[basename] = static_cast<uint64_t>(value.get_uint64());
+
389  else if(value.is_double())
+
390  this_node[basename] = value.get_double();
+
391  else if(value.is_string())
+
392  this_node[basename] = value.get_string().c_str();
+
393  else if(value.try_get(t))
+
394  this_node[basename] = t.to_string();
+
395  }
+
396  return log_lvl_set;
+
397  }
+
398 };
399 
-
400  inline void configure_cci() {
-
401  try {
-
402  configure_cci_hierarchical(document, "");
-
403  } catch(YAML::ParserException& e) {
-
404  throw std::runtime_error(e.what());
-
405  } catch(YAML::BadFile& e) {
-
406  throw std::runtime_error(e.what());
-
407  } catch(YAML::Exception& e) {
-
408  throw std::runtime_error(e.what());
-
409  }
-
410  }
-
411 
-
412  void configure_cci_hierarchical(YAML::Node const& value, std::string const& prefix) {
-
413  if(value.IsMap()) {
-
414  for(auto it = value.begin(); it != value.end(); ++it) {
-
415  auto key_name = it->first.as<std::string>();
-
416  YAML::Node const& val = it->second;
-
417  auto hier_name = prefix.size() ? prefix + "." + key_name : key_name;
-
418  if(!val.IsDefined() || val.IsSequence())
-
419  return;
-
420  else if(val.IsMap())
-
421  configure_cci_hierarchical(val, hier_name);
-
422  else if(val.IsScalar()) {
-
423  auto& tag = val.Tag();
-
424  if(tag == "!include") {
-
425  yaml_config_reader sub_reader(broker);
-
426  std::ifstream ifs(find_in_include_path(val.as<std::string>()));
-
427  if(ifs.is_open()) {
-
428  sub_reader.parse(ifs);
-
429  if(sub_reader.valid) {
-
430  sub_reader.configure_cci_hierarchical(sub_reader.document, hier_name);
-
431  } else {
-
432  std::ostringstream os;
-
433  os << "Could not parse include file " << val.as<std::string>();
-
434  throw std::runtime_error(os.str());
-
435  }
-
436  } else {
-
437  std::ostringstream os;
-
438  os << "Could not open include file " << val.as<std::string>();
-
439  throw std::runtime_error(os.str());
-
440  }
-
441  } else if(tag.size() && tag[0] == '?') {
-
442  auto param_handle = broker.get_param_handle(hier_name);
-
443  if(param_handle.is_valid()) {
-
444  auto param = param_handle.get_cci_value();
-
445  if(param.is_bool()) {
-
446  param.set_bool(val.as<bool>());
-
447  } else if(param.is_int()) {
-
448  param.set_int(val.as<int>());
-
449  } else if(param.is_uint()) {
-
450  param.set_uint(val.as<unsigned>());
-
451  } else if(param.is_int64()) {
-
452  param.set_int64(val.as<int64_t>());
-
453  } else if(param.is_uint64()) {
-
454  param.set_uint64(val.as<uint64_t>());
-
455  } else if(param.is_double()) {
-
456  param.set_double(val.as<double>());
-
457  } else if(param.is_string()) {
-
458  param.set_string(val.as<std::string>());
-
459  }
-
460  } else {
-
461  if(auto res = YAML::as_if<bool, optional<bool>>(val)()) {
-
462  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
463  } else if(auto res = YAML::as_if<unsigned, optional<unsigned>>(val)()) {
-
464  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
465  } else if(auto res = YAML::as_if<uint64_t, optional<uint64_t>>(val)()) {
-
466  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
467  } else if(auto res = YAML::as_if<int, optional<int>>(val)()) {
-
468  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
469  } else if(auto res = YAML::as_if<int64_t, optional<int64_t>>(val)()) {
-
470  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
471  } else if(auto res = YAML::as_if<double, optional<double>>(val)()) {
-
472  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
-
473  } else if(auto res = YAML::as_if<std::string, optional<std::string>>(val)()) {
-
474  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
400 struct yaml_config_reader : public config_reader {
+
401  configurer::broker_t& broker;
+
402  YAML::Node document;
+
403  bool valid{false};
+
404 
+
405  yaml_config_reader(configurer::broker_t& broker)
+
406  : broker(broker) {}
+
407 
+
408  void parse(std::istream& is) {
+
409  std::string buf((std::istreambuf_iterator<char>(is)), std::istreambuf_iterator<char>());
+
410  document = YAML::Load(buf);
+
411  valid = document.IsDefined() && document.IsMap();
+
412  }
+
413 
+
414  std::string get_error_msg() { return "YAML file does not start with a map"; }
+
415 
+
416  inline void configure_cci() {
+
417  try {
+
418  configure_cci_hierarchical(document, "");
+
419  } catch(YAML::ParserException& e) {
+
420  throw std::runtime_error(e.what());
+
421  } catch(YAML::BadFile& e) {
+
422  throw std::runtime_error(e.what());
+
423  } catch(YAML::Exception& e) {
+
424  throw std::runtime_error(e.what());
+
425  }
+
426  }
+
427 
+
428  void configure_cci_hierarchical(YAML::Node const& value, std::string const& prefix) {
+
429  if(value.IsMap()) {
+
430  for(auto it = value.begin(); it != value.end(); ++it) {
+
431  auto key_name = it->first.as<std::string>();
+
432  YAML::Node const& val = it->second;
+
433  auto hier_name = prefix.size() ? prefix + "." + key_name : key_name;
+
434  if(!val.IsDefined() || val.IsSequence())
+
435  return;
+
436  else if(val.IsMap())
+
437  configure_cci_hierarchical(val, hier_name);
+
438  else if(val.IsScalar()) {
+
439  auto& tag = val.Tag();
+
440  if(tag == "!include") {
+
441  yaml_config_reader sub_reader(broker);
+
442  std::ifstream ifs(find_in_include_path(val.as<std::string>()));
+
443  if(ifs.is_open()) {
+
444  sub_reader.parse(ifs);
+
445  if(sub_reader.valid) {
+
446  sub_reader.configure_cci_hierarchical(sub_reader.document, hier_name);
+
447  } else {
+
448  std::ostringstream os;
+
449  os << "Could not parse include file " << val.as<std::string>();
+
450  throw std::runtime_error(os.str());
+
451  }
+
452  } else {
+
453  std::ostringstream os;
+
454  os << "Could not open include file " << val.as<std::string>();
+
455  throw std::runtime_error(os.str());
+
456  }
+
457  } else if(tag.size() && tag[0] == '?') {
+
458  auto param_handle = broker.get_param_handle(hier_name);
+
459  if(param_handle.is_valid()) {
+
460  auto param = param_handle.get_cci_value();
+
461  if(param.is_bool()) {
+
462  param.set_bool(val.as<bool>());
+
463  } else if(param.is_int()) {
+
464  param.set_int(val.as<int>());
+
465  } else if(param.is_uint()) {
+
466  param.set_uint(val.as<unsigned>());
+
467  } else if(param.is_int64()) {
+
468  param.set_int64(val.as<int64_t>());
+
469  } else if(param.is_uint64()) {
+
470  param.set_uint64(val.as<uint64_t>());
+
471  } else if(param.is_double()) {
+
472  param.set_double(val.as<double>());
+
473  } else if(param.is_string()) {
+
474  param.set_string(val.as<std::string>());
475  }
-
476  }
-
477  }
-
478  }
-
479  }
-
480  }
-
481  }
-
482 };
-
483 /*************************************************************************************************
-
484  * YAML config end
-
485  ************************************************************************************************/
-
486 #endif
-
487 template <typename T>
-
488 inline bool create_cci_param(sc_core::sc_attr_base* base_attr, const std::string& hier_name, configurer::cci_param_cln& params,
-
489  configurer::broker_t& broker, cci::cci_originator& cci_originator) {
-
490  if(auto attr = dynamic_cast<sc_core::sc_attribute<T>*>(base_attr)) {
-
491  auto par = new cci::cci_param_typed<T>(hier_name, attr->value, broker, "", cci::CCI_ABSOLUTE_NAME, cci_originator);
-
492  params.emplace_back(cci::cci_param_post_write_callback_untyped([attr](const cci::cci_param_write_event<>& ev) {
-
493  T result;
-
494  if(ev.new_value.try_get(result))
-
495  attr->value = result;
-
496  }),
-
497  par);
-
498  par->register_post_write_callback(params.back().first);
-
499  attr->value = par->get_value(); // if we have a preset
-
500  return true;
-
501  }
-
502  return false;
-
503 }
-
504 
-
505 template <>
-
506 inline bool create_cci_param<char*>(sc_core::sc_attr_base* base_attr, const std::string& hier_name, configurer::cci_param_cln& params,
-
507  configurer::broker_t& broker, cci::cci_originator& cci_originator) {
-
508  if(auto attr = dynamic_cast<sc_core::sc_attribute<char*>*>(base_attr)) {
-
509  auto par = new cci::cci_param_typed<std::string>(hier_name, attr->value, broker, "", cci::CCI_ABSOLUTE_NAME);
-
510  params.emplace_back(cci::cci_param_post_write_callback_untyped([attr](const cci::cci_param_write_event<>& ev) {
-
511  if(attr->value)
-
512  free(attr->value);
-
513  attr->value = strdup(ev.new_value.get<std::string>().c_str());
-
514  }),
-
515  par);
-
516  par->register_post_write_callback(params.back().first);
-
517  attr->value = strdup(par->get_value().c_str()); // if we have a preset
-
518  return true;
-
519  }
-
520  return false;
-
521 }
-
522 
-
523 template <typename T> inline bool update_cci_param(cci::cci_param_untyped_handle& param_handle, sc_core::sc_attr_base* base_attr) {
-
524  if(auto attr = dynamic_cast<sc_core::sc_attribute<T>*>(base_attr)) {
-
525  param_handle.set_cci_value(cci::cci_value(attr->value));
-
526  return true;
-
527  }
-
528  return false;
-
529 }
-
530 
-
531 template <> inline bool update_cci_param<char*>(cci::cci_param_untyped_handle& param_handle, sc_core::sc_attr_base* base_attr) {
-
532  if(auto attr = dynamic_cast<sc_core::sc_attribute<char*>*>(base_attr)) {
-
533  param_handle.set_cci_value(cci::cci_value(std::string(attr->value)));
+
476  } else {
+
477  if(auto res = YAML::as_if<bool, optional<bool>>(val)()) {
+
478  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
479  } else if(auto res = YAML::as_if<int, optional<int>>(val)()) {
+
480  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
481  } else if(auto res = YAML::as_if<int64_t, optional<int64_t>>(val)()) {
+
482  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
483  } else if(auto res = YAML::as_if<unsigned, optional<unsigned>>(val)()) {
+
484  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
485  } else if(auto res = YAML::as_if<uint64_t, optional<uint64_t>>(val)()) {
+
486  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
487  } else if(auto res = YAML::as_if<double, optional<double>>(val)()) {
+
488  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
489  } else if(auto res = YAML::as_if<std::string, optional<std::string>>(val)()) {
+
490  broker.set_preset_cci_value(hier_name, cci::cci_value(res.value()));
+
491  }
+
492  }
+
493  }
+
494  }
+
495  }
+
496  }
+
497  }
+
498 };
+
499 /*************************************************************************************************
+
500  * YAML config end
+
501  ************************************************************************************************/
+
502 #endif
+
503 template <typename T>
+
504 inline bool create_cci_param(sc_core::sc_attr_base* base_attr, const std::string& hier_name, configurer::cci_param_cln& params,
+
505  configurer::broker_t& broker, cci::cci_originator& cci_originator) {
+
506  if(auto attr = dynamic_cast<sc_core::sc_attribute<T>*>(base_attr)) {
+
507  auto par = new cci::cci_param_typed<T>(hier_name, attr->value, broker, "", cci::CCI_ABSOLUTE_NAME, cci_originator);
+
508  params.emplace_back(cci::cci_param_post_write_callback_untyped([attr](const cci::cci_param_write_event<>& ev) {
+
509  T result;
+
510  if(ev.new_value.try_get(result))
+
511  attr->value = result;
+
512  }),
+
513  par);
+
514  par->register_post_write_callback(params.back().first);
+
515  attr->value = par->get_value(); // if we have a preset
+
516  return true;
+
517  }
+
518  return false;
+
519 }
+
520 
+
521 template <>
+
522 inline bool create_cci_param<char*>(sc_core::sc_attr_base* base_attr, const std::string& hier_name, configurer::cci_param_cln& params,
+
523  configurer::broker_t& broker, cci::cci_originator& cci_originator) {
+
524  if(auto attr = dynamic_cast<sc_core::sc_attribute<char*>*>(base_attr)) {
+
525  auto par = new cci::cci_param_typed<std::string>(hier_name, attr->value, broker, "", cci::CCI_ABSOLUTE_NAME);
+
526  params.emplace_back(cci::cci_param_post_write_callback_untyped([attr](const cci::cci_param_write_event<>& ev) {
+
527  if(attr->value)
+
528  free(attr->value);
+
529  attr->value = strdup(ev.new_value.get<std::string>().c_str());
+
530  }),
+
531  par);
+
532  par->register_post_write_callback(params.back().first);
+
533  attr->value = strdup(par->get_value().c_str()); // if we have a preset
534  return true;
535  }
536  return false;
537 }
538 
-
539 inline bool mirror_sc_attribute(configurer::broker_t& broker, configurer::cci_param_cln& params, cci::cci_originator& cci_originator,
-
540  std::string hier_name, sc_core::sc_attr_base* base_attr, bool update = false) {
-
541  auto param_handle = broker.get_param_handle(hier_name);
-
542  if(!param_handle.is_valid()) {
-
543  if(create_cci_param<int>(base_attr, hier_name, params, broker, cci_originator))
-
544  return true;
-
545  if(create_cci_param<unsigned>(base_attr, hier_name, params, broker, cci_originator))
-
546  return true;
-
547  if(create_cci_param<long>(base_attr, hier_name, params, broker, cci_originator))
-
548  return true;
-
549  if(create_cci_param<unsigned long>(base_attr, hier_name, params, broker, cci_originator))
-
550  return true;
-
551  if(create_cci_param<long long>(base_attr, hier_name, params, broker, cci_originator))
-
552  return true;
-
553  if(create_cci_param<unsigned long long>(base_attr, hier_name, params, broker, cci_originator))
-
554  return true;
-
555  if(create_cci_param<bool>(base_attr, hier_name, params, broker, cci_originator))
-
556  return true;
-
557  if(create_cci_param<float>(base_attr, hier_name, params, broker, cci_originator))
-
558  return true;
-
559  if(create_cci_param<double>(base_attr, hier_name, params, broker, cci_originator))
+
539 template <typename T> inline bool update_cci_param(cci::cci_param_untyped_handle& param_handle, sc_core::sc_attr_base* base_attr) {
+
540  if(auto attr = dynamic_cast<sc_core::sc_attribute<T>*>(base_attr)) {
+
541  param_handle.set_cci_value(cci::cci_value(attr->value));
+
542  return true;
+
543  }
+
544  return false;
+
545 }
+
546 
+
547 template <> inline bool update_cci_param<char*>(cci::cci_param_untyped_handle& param_handle, sc_core::sc_attr_base* base_attr) {
+
548  if(auto attr = dynamic_cast<sc_core::sc_attribute<char*>*>(base_attr)) {
+
549  param_handle.set_cci_value(cci::cci_value(std::string(attr->value)));
+
550  return true;
+
551  }
+
552  return false;
+
553 }
+
554 
+
555 inline bool mirror_sc_attribute(configurer::broker_t& broker, configurer::cci_param_cln& params, cci::cci_originator& cci_originator,
+
556  std::string hier_name, sc_core::sc_attr_base* base_attr, bool update = false) {
+
557  auto param_handle = broker.get_param_handle(hier_name);
+
558  if(!param_handle.is_valid()) {
+
559  if(create_cci_param<int>(base_attr, hier_name, params, broker, cci_originator))
560  return true;
-
561  if(create_cci_param<std::string>(base_attr, hier_name, params, broker, cci_originator))
+
561  if(create_cci_param<unsigned>(base_attr, hier_name, params, broker, cci_originator))
562  return true;
-
563  if(create_cci_param<char*>(base_attr, hier_name, params, broker, cci_originator))
+
563  if(create_cci_param<long>(base_attr, hier_name, params, broker, cci_originator))
564  return true;
-
565  } else if(update) {
-
566  if(update_cci_param<int>(param_handle, base_attr))
-
567  return true;
-
568  if(update_cci_param<unsigned>(param_handle, base_attr))
-
569  return true;
-
570  if(update_cci_param<long>(param_handle, base_attr))
-
571  return true;
-
572  if(update_cci_param<unsigned long>(param_handle, base_attr))
-
573  return true;
-
574  if(update_cci_param<long long>(param_handle, base_attr))
-
575  return true;
-
576  if(update_cci_param<unsigned long long>(param_handle, base_attr))
-
577  return true;
-
578  if(update_cci_param<bool>(param_handle, base_attr))
-
579  return true;
-
580  if(update_cci_param<float>(param_handle, base_attr))
-
581  return true;
-
582  if(update_cci_param<double>(param_handle, base_attr))
+
565  if(create_cci_param<unsigned long>(base_attr, hier_name, params, broker, cci_originator))
+
566  return true;
+
567  if(create_cci_param<long long>(base_attr, hier_name, params, broker, cci_originator))
+
568  return true;
+
569  if(create_cci_param<unsigned long long>(base_attr, hier_name, params, broker, cci_originator))
+
570  return true;
+
571  if(create_cci_param<bool>(base_attr, hier_name, params, broker, cci_originator))
+
572  return true;
+
573  if(create_cci_param<float>(base_attr, hier_name, params, broker, cci_originator))
+
574  return true;
+
575  if(create_cci_param<double>(base_attr, hier_name, params, broker, cci_originator))
+
576  return true;
+
577  if(create_cci_param<std::string>(base_attr, hier_name, params, broker, cci_originator))
+
578  return true;
+
579  if(create_cci_param<char*>(base_attr, hier_name, params, broker, cci_originator))
+
580  return true;
+
581  } else if(update) {
+
582  if(update_cci_param<int>(param_handle, base_attr))
583  return true;
-
584  if(update_cci_param<std::string>(param_handle, base_attr))
+
584  if(update_cci_param<unsigned>(param_handle, base_attr))
585  return true;
-
586  if(update_cci_param<char*>(param_handle, base_attr))
+
586  if(update_cci_param<long>(param_handle, base_attr))
587  return true;
-
588  }
-
589  return false;
-
590 }
-
591 
-
592 void mirror_sc_attributes(configurer::broker_t& broker, configurer::cci_param_cln& params, cci::cci_originator& cci_originator,
-
593  sc_core::sc_object* topobj = nullptr, bool update = false) {
-
594  for(auto obj : get_sc_objects(topobj)) {
-
595  if(auto mod = dynamic_cast<sc_core::sc_module*>(obj)) {
-
596  for(auto base_attr : mod->attr_cltn()) {
-
597  std::string hier_name = fmt::format("{}.{}", mod->name(), base_attr->name());
-
598  mirror_sc_attribute(broker, params, cci_originator, hier_name, base_attr, update);
-
599  }
-
600  mirror_sc_attributes(broker, params, cci_originator, mod, update);
-
601  }
-
602  }
-
603 }
-
604 
-
605 bool cci_name_ignore(std::pair<std::string, cci::cci_value> const& preset_value) {
-
606  std::string ending(SCC_LOG_LEVEL_PARAM_NAME);
-
607  auto& name = preset_value.first;
-
608  if(name.length() >= ending.length()) {
-
609  return (0 == name.compare(name.length() - ending.length(), ending.length(), ending));
-
610  } else {
-
611  return false;
-
612  }
-
613 }
-
614 } // namespace
-
615 #ifdef HAS_YAMPCPP
-
616 struct configurer::ConfigHolder : public yaml_config_reader {
-
617  ConfigHolder(configurer::broker_t& broker)
-
618  : yaml_config_reader(broker) {}
-
619 };
-
620 #else
-
621 struct configurer::ConfigHolder : public json_config_reader {
-
622  ConfigHolder(configurer::broker_t& broker)
-
623  : json_config_reader(broker) {}
-
624 };
-
625 #endif
-
626 
-
627 configurer::configurer(const std::string& filename, unsigned config_phases)
-
628 : configurer(filename, config_phases, "$$$configurer$$$") {}
-
629 
-
630 configurer::configurer(const std::string& filename, unsigned config_phases, sc_core::sc_module_name nm)
-
631 : base_type(nm)
-
632 , config_phases(config_phases)
-
633 , cci_broker(cci::cci_get_broker())
-
634 , cci_originator(cci_broker.get_originator())
-
635 , root(new ConfigHolder(cci_broker)) {
-
636  if(filename.length() > 0)
-
637  read_input_file(filename);
-
638 }
-
639 
-
640 configurer::~configurer() {}
-
641 
-
642 void configurer::read_input_file(const std::string& filename) {
-
643  root->add_to_includes(util::dir_name(filename));
-
644  std::ifstream is(filename);
-
645  if(is.is_open()) {
-
646  try {
-
647  root->parse(is);
-
648  if(!root->valid) {
-
649  SCCERR() << "Could not parse input file " << filename << ", " << root->get_error_msg();
-
650  } else {
-
651  root->configure_cci();
-
652  }
-
653  } catch(std::runtime_error& e) {
-
654  SCCERR() << "Could not parse input file " << filename << ", reason: " << e.what();
-
655  }
-
656  } else {
-
657  SCCWARN() << "Could not open input file " << filename;
-
658  }
-
659 }
-
660 
-
661 void configurer::dump_configuration(std::ostream& os, bool as_yaml, bool with_description, sc_core::sc_object* obj) {
-
662 #ifdef HAS_YAMPCPP
-
663  if(as_yaml) {
-
664  YAML::Node root; // starts out as null
-
665  yaml_config_dumper dumper(cci_broker, with_description);
-
666  for(auto* o : get_sc_objects(obj)) {
-
667  dumper.dump_config(o, root);
-
668  }
-
669  os << root;
-
670  return;
-
671  }
-
672 #endif
-
673  OStreamWrapper stream(os);
-
674  writer_type writer(stream);
-
675  writer.StartObject();
-
676  json_config_dumper dumper(cci_broker);
-
677  for(auto* o : get_sc_objects(obj)) {
-
678  dumper.dump_config(o, writer);
-
679  }
-
680  writer.EndObject();
-
681 }
-
682 
-
683 void configurer::configure() { mirror_sc_attributes(cci_broker, cci2sc_attr, cci_originator); }
-
684 
-
685 void configurer::set_configuration_value(sc_core::sc_attr_base* attr_base, sc_core::sc_object* owner) {
-
686  std::string hier_name = fmt::format("{}.{}", owner->name(), attr_base->name());
-
687  mirror_sc_attribute(cci_broker, cci2sc_attr, cci_originator, hier_name, attr_base);
-
688 }
-
689 
-
690 inline std::string hier_name_as_regex(std::string const& parname) {
-
691  if(parname.find_first_of("*?[") != std::string::npos) {
-
692  return util::glob_to_regex(parname);
-
693  } else if(parname[0] == '^') {
-
694  return parname;
-
695  } else
-
696  return "";
-
697 }
-
698 
-
699 void configurer::set_value(const std::string& hier_name, cci::cci_value value) {
-
700  auto regex_str = hier_name_as_regex(hier_name);
-
701  if(regex_str.length()) {
-
702  auto rr = std::regex(regex_str);
-
703  cci::cci_param_predicate pred = [rr](cci::cci_param_untyped_handle const& hndl) { return regex_match(hndl.name(), rr); };
-
704  for(auto& hndl : cci_broker.get_param_handles(pred)) {
-
705  hndl.set_cci_value(value);
-
706  }
-
707  } else {
-
708  cci::cci_param_handle param_handle = cci_broker.get_param_handle(hier_name);
-
709  if(param_handle.is_valid()) {
-
710  param_handle.set_cci_value(value);
-
711  } else {
-
712  cci_broker.set_preset_cci_value(hier_name, value);
-
713  }
-
714  }
-
715 }
-
716 
-
717 void configurer::config_check() {
-
718  try {
-
719  cci_broker.ignore_unconsumed_preset_values(&cci_name_ignore);
-
720  auto res = cci_broker.get_unconsumed_preset_values();
-
721  if(res.size()) {
-
722  std::ostringstream oss;
-
723  for(auto& val : res)
-
724  oss << "\t - " << val.first << "\n";
-
725  if(res.size() == 1) {
-
726  SCCWARN("scc::configurer") << "There is " << res.size() << " unused CCI preset value:\n"
-
727  << oss.str() << "Please check your setup!";
-
728  } else {
-
729  SCCWARN("scc::configurer") << "There are " << res.size() << " unused CCI preset values:\n"
-
730  << oss.str() << "Please check your setup!";
-
731  }
+
588  if(update_cci_param<unsigned long>(param_handle, base_attr))
+
589  return true;
+
590  if(update_cci_param<long long>(param_handle, base_attr))
+
591  return true;
+
592  if(update_cci_param<unsigned long long>(param_handle, base_attr))
+
593  return true;
+
594  if(update_cci_param<bool>(param_handle, base_attr))
+
595  return true;
+
596  if(update_cci_param<float>(param_handle, base_attr))
+
597  return true;
+
598  if(update_cci_param<double>(param_handle, base_attr))
+
599  return true;
+
600  if(update_cci_param<std::string>(param_handle, base_attr))
+
601  return true;
+
602  if(update_cci_param<char*>(param_handle, base_attr))
+
603  return true;
+
604  }
+
605  return false;
+
606 }
+
607 
+
608 void mirror_sc_attributes(configurer::broker_t& broker, configurer::cci_param_cln& params, cci::cci_originator& cci_originator,
+
609  sc_core::sc_object* topobj = nullptr, bool update = false) {
+
610  for(auto obj : get_sc_objects(topobj)) {
+
611  if(auto mod = dynamic_cast<sc_core::sc_module*>(obj)) {
+
612  for(auto base_attr : mod->attr_cltn()) {
+
613  std::string hier_name = fmt::format("{}.{}", mod->name(), base_attr->name());
+
614  mirror_sc_attribute(broker, params, cci_originator, hier_name, base_attr, update);
+
615  }
+
616  mirror_sc_attributes(broker, params, cci_originator, mod, update);
+
617  }
+
618  }
+
619 }
+
620 
+
621 bool cci_name_ignore(std::pair<std::string, cci::cci_value> const& preset_value) {
+
622  std::string ending(SCC_LOG_LEVEL_PARAM_NAME);
+
623  auto& name = preset_value.first;
+
624  if(name.length() >= ending.length()) {
+
625  return (0 == name.compare(name.length() - ending.length(), ending.length(), ending));
+
626  } else {
+
627  return false;
+
628  }
+
629 }
+
630 } // namespace
+
631 #ifdef HAS_YAMPCPP
+
632 struct configurer::ConfigHolder : public yaml_config_reader {
+
633  ConfigHolder(configurer::broker_t& broker)
+
634  : yaml_config_reader(broker) {}
+
635 };
+
636 #else
+
637 struct configurer::ConfigHolder : public json_config_reader {
+
638  ConfigHolder(configurer::broker_t& broker)
+
639  : json_config_reader(broker) {}
+
640 };
+
641 #endif
+
642 
+
643 configurer::configurer(const std::string& filename, unsigned config_phases)
+
644 : configurer(filename, config_phases, "$$$configurer$$$") {}
+
645 
+
646 configurer::configurer(const std::string& filename, unsigned config_phases, sc_core::sc_module_name nm)
+
647 : base_type(nm)
+
648 , config_phases(config_phases)
+
649 , cci_broker(cci::cci_get_broker())
+
650 , cci_originator(cci_broker.get_originator())
+
651 , root(new ConfigHolder(cci_broker)) {
+
652  if(filename.length() > 0)
+
653  read_input_file(filename);
+
654 }
+
655 
+
656 configurer::~configurer() {}
+
657 
+
658 void configurer::read_input_file(const std::string& filename) {
+
659  root->add_to_includes(util::dir_name(filename));
+
660  std::ifstream is(filename);
+
661  if(is.is_open()) {
+
662  try {
+
663  root->parse(is);
+
664  if(!root->valid) {
+
665  SCCERR() << "Could not parse input file " << filename << ", " << root->get_error_msg();
+
666  } else {
+
667  root->configure_cci();
+
668  }
+
669  } catch(std::runtime_error& e) {
+
670  SCCERR() << "Could not parse input file " << filename << ", reason: " << e.what();
+
671  }
+
672  } else {
+
673  SCCWARN() << "Could not open input file " << filename;
+
674  }
+
675 }
+
676 
+
677 void configurer::dump_configuration(std::ostream& os, bool as_yaml, bool with_description, sc_core::sc_object* obj) {
+
678 #ifdef HAS_YAMPCPP
+
679  if(as_yaml) {
+
680  YAML::Node root; // starts out as null
+
681  yaml_config_dumper dumper(cci_broker, with_description);
+
682  if(obj)
+
683  for(auto* o : obj->get_child_objects()) {
+
684  dumper.dump_config(o, root);
+
685  }
+
686  else
+
687  dumper.dump_config(root);
+
688  os << root;
+
689  return;
+
690  }
+
691 #endif
+
692  OStreamWrapper stream(os);
+
693  writer_type writer(stream);
+
694  writer.StartObject();
+
695  json_config_dumper dumper(cci_broker);
+
696  for(auto* o : get_sc_objects(obj)) {
+
697  dumper.dump_config(o, writer);
+
698  }
+
699  writer.EndObject();
+
700 }
+
701 
+
702 void configurer::configure() { mirror_sc_attributes(cci_broker, cci2sc_attr, cci_originator); }
+
703 
+
704 void configurer::set_configuration_value(sc_core::sc_attr_base* attr_base, sc_core::sc_object* owner) {
+
705  std::string hier_name = fmt::format("{}.{}", owner->name(), attr_base->name());
+
706  mirror_sc_attribute(cci_broker, cci2sc_attr, cci_originator, hier_name, attr_base);
+
707 }
+
708 
+
709 inline std::string hier_name_as_regex(std::string const& parname) {
+
710  if(parname.find_first_of("*?[") != std::string::npos) {
+
711  return util::glob_to_regex(parname);
+
712  } else if(parname[0] == '^') {
+
713  return parname;
+
714  } else
+
715  return "";
+
716 }
+
717 
+
718 void configurer::set_value(const std::string& hier_name, cci::cci_value value) {
+
719  auto regex_str = hier_name_as_regex(hier_name);
+
720  if(regex_str.length()) {
+
721  auto rr = std::regex(regex_str);
+
722  cci::cci_param_predicate pred = [rr](cci::cci_param_untyped_handle const& hndl) { return regex_match(hndl.name(), rr); };
+
723  for(auto& hndl : cci_broker.get_param_handles(pred)) {
+
724  hndl.set_cci_value(value);
+
725  }
+
726  } else {
+
727  cci::cci_param_handle param_handle = cci_broker.get_param_handle(hier_name);
+
728  if(param_handle.is_valid()) {
+
729  param_handle.set_cci_value(value);
+
730  } else {
+
731  cci_broker.set_preset_cci_value(hier_name, value);
732  }
-
733  } catch(std::domain_error& e) {
-
734  SCCFATAL("scc::configurer") << "Illegal hierarchy name: '" << e.what() << "'";
-
735  } catch(std::invalid_argument& e) {
-
736  SCCFATAL("scc::configurer") << "Illegal parameter name: '" << e.what() << "'";
-
737  }
-
738 }
-
739 
-
740 void configurer::start_of_simulation() {
-
741  if(config_phases & START_OF_SIMULATION)
-
742  configure();
-
743  config_check();
-
744  if(dump_file_name.size()) {
-
745  auto as_json = util::ends_with(dump_file_name, "json");
-
746  std::ofstream of{dump_file_name};
-
747  if(of.is_open()) {
-
748  mirror_sc_attributes(cci_broker, cci2sc_attr, cci_originator, nullptr, true);
-
749  dump_configuration(of, !as_json, with_description);
-
750  }
-
751  }
-
752 }
-
753 
-
754 } // namespace scc
+
733  }
+
734 }
+
735 
+
736 void configurer::config_check() {
+
737  try {
+
738  cci_broker.ignore_unconsumed_preset_values(&cci_name_ignore);
+
739  auto res = cci_broker.get_unconsumed_preset_values();
+
740  if(res.size()) {
+
741  std::ostringstream oss;
+
742  for(auto& val : res)
+
743  oss << "\t - " << val.first << "\n";
+
744  if(res.size() == 1) {
+
745  SCCWARN("scc::configurer") << "There is " << res.size() << " unused CCI preset value:\n"
+
746  << oss.str() << "Please check your setup!";
+
747  } else {
+
748  SCCWARN("scc::configurer") << "There are " << res.size() << " unused CCI preset values:\n"
+
749  << oss.str() << "Please check your setup!";
+
750  }
+
751  }
+
752  } catch(std::domain_error& e) {
+
753  SCCFATAL("scc::configurer") << "Illegal hierarchy name: '" << e.what() << "'";
+
754  } catch(std::invalid_argument& e) {
+
755  SCCFATAL("scc::configurer") << "Illegal parameter name: '" << e.what() << "'";
+
756  }
+
757 }
+
758 
+
759 void configurer::start_of_simulation() {
+
760  if(config_phases & START_OF_SIMULATION)
+
761  configure();
+
762  config_check();
+
763  if(dump_file_name.size()) {
+
764  auto as_json = util::ends_with(dump_file_name, "json");
+
765  std::ofstream of{dump_file_name};
+
766  if(of.is_open()) {
+
767  mirror_sc_attributes(cci_broker, cci2sc_attr, cci_originator, nullptr, true);
+
768  dump_configuration(of, !as_json, with_description);
+
769  }
+
770  }
+
771 }
+
772 
+
773 } // namespace scc
design configuration reader
Definition: configurer.h:41
- -
void set_configuration_value(sc_core::sc_attr_base *attr_base, sc_core::sc_object *owner)
Definition: configurer.cpp:685
-
void dump_configuration(std::ostream &os=std::cout, bool as_yaml=true, bool with_description=false, sc_core::sc_object *obj=nullptr)
Definition: configurer.cpp:661
+ +
void set_configuration_value(sc_core::sc_attr_base *attr_base, sc_core::sc_object *owner)
Definition: configurer.cpp:704
+
void dump_configuration(std::ostream &os=std::cout, bool as_yaml=true, bool with_description=false, sc_core::sc_object *obj=nullptr)
Definition: configurer.cpp:677
void set_value(std::string const &hier_name, T value)
Definition: configurer.h:101
SCC SystemC utilities.
-
bool is_logging_initialized()
get the state of the SCC logging system
Definition: report.cpp:436
-
log get_logging_level()
get the SystemC logging level
Definition: report.cpp:460
+
bool is_logging_initialized()
get the state of the SCC logging system
Definition: report.cpp:440
+
log get_logging_level()
get the SystemC logging level
Definition: report.cpp:464
std::string glob_to_regex(std::string val)
Definition: ities.h:385
T dir_name(T const &path, T const &delims="/\\")
Definition: ities.h:352
- + diff --git a/develop/configurer_8h_source.html b/develop/configurer_8h_source.html index 852bf841..b21e591a 100644 --- a/develop/configurer_8h_source.html +++ b/develop/configurer_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -156,15 +156,15 @@
144 } // namespace scc // end of scc-sysc
146 #endif /* _SYSC_CONFIGURER_H_ */
design configuration reader
Definition: configurer.h:41
- -
void set_configuration_value(sc_core::sc_attr_base *attr_base, sc_core::sc_object *owner)
Definition: configurer.cpp:685
+ +
void set_configuration_value(sc_core::sc_attr_base *attr_base, sc_core::sc_object *owner)
Definition: configurer.cpp:704
void dump_configuration(std::string const &file_name, bool with_description=false)
Definition: configurer.h:88
-
void dump_configuration(std::ostream &os=std::cout, bool as_yaml=true, bool with_description=false, sc_core::sc_object *obj=nullptr)
Definition: configurer.cpp:661
+
void dump_configuration(std::ostream &os=std::cout, bool as_yaml=true, bool with_description=false, sc_core::sc_object *obj=nullptr)
Definition: configurer.cpp:677
static configurer & get()
Definition: configurer.h:115
-
configurer(std::string const &filename, unsigned sc_attr_config_phases=BEFORE_END_OF_ELABORATION)
Definition: configurer.cpp:627
+
configurer(std::string const &filename, unsigned sc_attr_config_phases=BEFORE_END_OF_ELABORATION)
Definition: configurer.cpp:643
void set_value(std::string const &hier_name, T value)
Definition: configurer.h:101
SCC SystemC utilities.
- + diff --git a/develop/configurer__nocci_8cpp_source.html b/develop/configurer__nocci_8cpp_source.html index 948a0434..773d7556 100644 --- a/develop/configurer__nocci_8cpp_source.html +++ b/develop/configurer__nocci_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/delegate_8h_source.html b/develop/delegate_8h_source.html index 9e59a31e..161cf9a2 100644 --- a/develop/delegate_8h_source.html +++ b/develop/delegate_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/deprecated.html b/develop/deprecated.html index 50a8adaa..42154b7a 100644 --- a/develop/deprecated.html +++ b/develop/deprecated.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_0e219418303dc644f9d277f9c9d57d1a.html b/develop/dir_0e219418303dc644f9d277f9c9d57d1a.html index 72ca6f39..32fcae5f 100644 --- a/develop/dir_0e219418303dc644f9d277f9c9d57d1a.html +++ b/develop/dir_0e219418303dc644f9d277f9c9d57d1a.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_16d984d572b7d730d14f016ac620cfd6.html b/develop/dir_16d984d572b7d730d14f016ac620cfd6.html index 6c8303b3..f709fc7a 100644 --- a/develop/dir_16d984d572b7d730d14f016ac620cfd6.html +++ b/develop/dir_16d984d572b7d730d14f016ac620cfd6.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_17208d574043cc69bca219bb6ee20a2c.html b/develop/dir_17208d574043cc69bca219bb6ee20a2c.html index fb18a123..c721f2e2 100644 --- a/develop/dir_17208d574043cc69bca219bb6ee20a2c.html +++ b/develop/dir_17208d574043cc69bca219bb6ee20a2c.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_17d1f64d038bb3ce9d53b72e1f5c6380.html b/develop/dir_17d1f64d038bb3ce9d53b72e1f5c6380.html index 9cec456d..e01ec3ac 100644 --- a/develop/dir_17d1f64d038bb3ce9d53b72e1f5c6380.html +++ b/develop/dir_17d1f64d038bb3ce9d53b72e1f5c6380.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_19eacb6860fbff213eb6b10b93e67c65.html b/develop/dir_19eacb6860fbff213eb6b10b93e67c65.html index 9c77f282..ca90c3d5 100644 --- a/develop/dir_19eacb6860fbff213eb6b10b93e67c65.html +++ b/develop/dir_19eacb6860fbff213eb6b10b93e67c65.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_1d44905cb2b6dd4aab1d790cca8cd3ec.html b/develop/dir_1d44905cb2b6dd4aab1d790cca8cd3ec.html index 526e9e9c..42ddd971 100644 --- a/develop/dir_1d44905cb2b6dd4aab1d790cca8cd3ec.html +++ b/develop/dir_1d44905cb2b6dd4aab1d790cca8cd3ec.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_2e5638b409f3ace0c6070b175318504a.html b/develop/dir_2e5638b409f3ace0c6070b175318504a.html index 9ed48066..d854b8b8 100644 --- a/develop/dir_2e5638b409f3ace0c6070b175318504a.html +++ b/develop/dir_2e5638b409f3ace0c6070b175318504a.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_329be5ca57f96bdb5f7769de5f126350.html b/develop/dir_329be5ca57f96bdb5f7769de5f126350.html index 0d8e0c7c..e7a0b5c9 100644 --- a/develop/dir_329be5ca57f96bdb5f7769de5f126350.html +++ b/develop/dir_329be5ca57f96bdb5f7769de5f126350.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_34549985f03eab2019456e46b6924631.html b/develop/dir_34549985f03eab2019456e46b6924631.html index 261dff1f..f125b1a4 100644 --- a/develop/dir_34549985f03eab2019456e46b6924631.html +++ b/develop/dir_34549985f03eab2019456e46b6924631.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_3c4c7c1a85608ccd561c026bec818e51.html b/develop/dir_3c4c7c1a85608ccd561c026bec818e51.html index 941767cb..794c5fc8 100644 --- a/develop/dir_3c4c7c1a85608ccd561c026bec818e51.html +++ b/develop/dir_3c4c7c1a85608ccd561c026bec818e51.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_44f42edf5dd23d4deca0321224e9ce90.html b/develop/dir_44f42edf5dd23d4deca0321224e9ce90.html index 10594c57..0d888c66 100644 --- a/develop/dir_44f42edf5dd23d4deca0321224e9ce90.html +++ b/develop/dir_44f42edf5dd23d4deca0321224e9ce90.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_47442d965ec8ba98945afaeb09ef6dfa.html b/develop/dir_47442d965ec8ba98945afaeb09ef6dfa.html index ab352293..e848bb8c 100644 --- a/develop/dir_47442d965ec8ba98945afaeb09ef6dfa.html +++ b/develop/dir_47442d965ec8ba98945afaeb09ef6dfa.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_4b4439fcc6b4628cd8783772fc9df8bf.html b/develop/dir_4b4439fcc6b4628cd8783772fc9df8bf.html index 4f8bce85..6f26bbfa 100644 --- a/develop/dir_4b4439fcc6b4628cd8783772fc9df8bf.html +++ b/develop/dir_4b4439fcc6b4628cd8783772fc9df8bf.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_57834e824c433ac75eed52948c872685.html b/develop/dir_57834e824c433ac75eed52948c872685.html index 5146098d..21473d78 100644 --- a/develop/dir_57834e824c433ac75eed52948c872685.html +++ b/develop/dir_57834e824c433ac75eed52948c872685.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_5a81cb97cf39ae2ce47704391afae617.html b/develop/dir_5a81cb97cf39ae2ce47704391afae617.html index 6e8cfd58..b57f282e 100644 --- a/develop/dir_5a81cb97cf39ae2ce47704391afae617.html +++ b/develop/dir_5a81cb97cf39ae2ce47704391afae617.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/develop/dir_68267d1309a1af8e8297ef4c3efbcdba.html index 88329061..83975dbb 100644 --- a/develop/dir_68267d1309a1af8e8297ef4c3efbcdba.html +++ b/develop/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_743dff7038988bd9ebb48a40c41fef05.html b/develop/dir_743dff7038988bd9ebb48a40c41fef05.html index faa93bef..9e37ff05 100644 --- a/develop/dir_743dff7038988bd9ebb48a40c41fef05.html +++ b/develop/dir_743dff7038988bd9ebb48a40c41fef05.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_7537d1288b3a249fd86aea49b2e996f1.html b/develop/dir_7537d1288b3a249fd86aea49b2e996f1.html index b10854d3..af1a4810 100644 --- a/develop/dir_7537d1288b3a249fd86aea49b2e996f1.html +++ b/develop/dir_7537d1288b3a249fd86aea49b2e996f1.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_7ccbfd23fc50d4b5cbc3fada7d7470b5.html b/develop/dir_7ccbfd23fc50d4b5cbc3fada7d7470b5.html index 27b5bee7..eb635c49 100644 --- a/develop/dir_7ccbfd23fc50d4b5cbc3fada7d7470b5.html +++ b/develop/dir_7ccbfd23fc50d4b5cbc3fada7d7470b5.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_8400f74b819af6408e1b24b7b1ac1666.html b/develop/dir_8400f74b819af6408e1b24b7b1ac1666.html index 61c077b0..ba925b6c 100644 --- a/develop/dir_8400f74b819af6408e1b24b7b1ac1666.html +++ b/develop/dir_8400f74b819af6408e1b24b7b1ac1666.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_8400f74b819af6408e1b24b7b1ac1666.js b/develop/dir_8400f74b819af6408e1b24b7b1ac1666.js index 2ad55c55..e088f454 100644 --- a/develop/dir_8400f74b819af6408e1b24b7b1ac1666.js +++ b/develop/dir_8400f74b819af6408e1b24b7b1ac1666.js @@ -5,6 +5,7 @@ var dir_8400f74b819af6408e1b24b7b1ac1666 = [ "cci_broker.cpp", "cci__broker_8cpp_source.html", null ], [ "cci_broker.h", "cci__broker_8h_source.html", null ], [ "cci_param_restricted.h", "cci__param__restricted_8h_source.html", null ], + [ "cci_util.h", "cci__util_8h_source.html", null ], [ "configurable_tracer.cpp", "configurable__tracer_8cpp_source.html", null ], [ "configurable_tracer.h", "configurable__tracer_8h_source.html", null ], [ "configurer.cpp", "configurer_8cpp_source.html", null ], diff --git a/develop/dir_955b364f56dde5185eeff637940bb478.html b/develop/dir_955b364f56dde5185eeff637940bb478.html index e59e7e5c..a8dec321 100644 --- a/develop/dir_955b364f56dde5185eeff637940bb478.html +++ b/develop/dir_955b364f56dde5185eeff637940bb478.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_961f08dba74ea3acadab8de2d97fa990.html b/develop/dir_961f08dba74ea3acadab8de2d97fa990.html index 061c0672..75242b7f 100644 --- a/develop/dir_961f08dba74ea3acadab8de2d97fa990.html +++ b/develop/dir_961f08dba74ea3acadab8de2d97fa990.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_9dbdeab66cc4aaf1ebb921a8aafc09a0.html b/develop/dir_9dbdeab66cc4aaf1ebb921a8aafc09a0.html index 2e6747ea..8acac759 100644 --- a/develop/dir_9dbdeab66cc4aaf1ebb921a8aafc09a0.html +++ b/develop/dir_9dbdeab66cc4aaf1ebb921a8aafc09a0.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_b0d728736680b9e07b367cd03d988303.html b/develop/dir_b0d728736680b9e07b367cd03d988303.html index eb4e2629..e029c203 100644 --- a/develop/dir_b0d728736680b9e07b367cd03d988303.html +++ b/develop/dir_b0d728736680b9e07b367cd03d988303.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_b15734cf159de6866dca9e5c34ba1e1c.html b/develop/dir_b15734cf159de6866dca9e5c34ba1e1c.html index 4035f7bd..9da182dc 100644 --- a/develop/dir_b15734cf159de6866dca9e5c34ba1e1c.html +++ b/develop/dir_b15734cf159de6866dca9e5c34ba1e1c.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_b4eeed443285a981339f45b6d7507c05.html b/develop/dir_b4eeed443285a981339f45b6d7507c05.html index 2bfc1759..1b4df350 100644 --- a/develop/dir_b4eeed443285a981339f45b6d7507c05.html +++ b/develop/dir_b4eeed443285a981339f45b6d7507c05.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_be04617272aece3468352586f0f1ec2c.html b/develop/dir_be04617272aece3468352586f0f1ec2c.html index f8ac5e76..17383d45 100644 --- a/develop/dir_be04617272aece3468352586f0f1ec2c.html +++ b/develop/dir_be04617272aece3468352586f0f1ec2c.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_bed8ebd7925b24f23de7138ce76e2425.html b/develop/dir_bed8ebd7925b24f23de7138ce76e2425.html index 9460268f..19defa3a 100644 --- a/develop/dir_bed8ebd7925b24f23de7138ce76e2425.html +++ b/develop/dir_bed8ebd7925b24f23de7138ce76e2425.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_c25699a233caeec50cf3bdc90fd76ff6.html b/develop/dir_c25699a233caeec50cf3bdc90fd76ff6.html index db25ad21..46e5bdf7 100644 --- a/develop/dir_c25699a233caeec50cf3bdc90fd76ff6.html +++ b/develop/dir_c25699a233caeec50cf3bdc90fd76ff6.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_c300acfaf76be35507e54190f8e2eab8.html b/develop/dir_c300acfaf76be35507e54190f8e2eab8.html index d2340659..a0862dcc 100644 --- a/develop/dir_c300acfaf76be35507e54190f8e2eab8.html +++ b/develop/dir_c300acfaf76be35507e54190f8e2eab8.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_cf72741535ac650021958afb725ed543.html b/develop/dir_cf72741535ac650021958afb725ed543.html index c9f1754d..b071df92 100644 --- a/develop/dir_cf72741535ac650021958afb725ed543.html +++ b/develop/dir_cf72741535ac650021958afb725ed543.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_d2b7454bc87c9c98c052f492b4d92548.html b/develop/dir_d2b7454bc87c9c98c052f492b4d92548.html index 5c26f099..771400c5 100644 --- a/develop/dir_d2b7454bc87c9c98c052f492b4d92548.html +++ b/develop/dir_d2b7454bc87c9c98c052f492b4d92548.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_d87af8e2b499dff1da3e679c52ce5646.html b/develop/dir_d87af8e2b499dff1da3e679c52ce5646.html index 7c45daec..10ef414b 100644 --- a/develop/dir_d87af8e2b499dff1da3e679c52ce5646.html +++ b/develop/dir_d87af8e2b499dff1da3e679c52ce5646.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_dce7ea34a91c0189183270decd6916da.html b/develop/dir_dce7ea34a91c0189183270decd6916da.html index a5ef9dff..16c60200 100644 --- a/develop/dir_dce7ea34a91c0189183270decd6916da.html +++ b/develop/dir_dce7ea34a91c0189183270decd6916da.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_e617fe9c9bac53cf4104c40a60f7993d.html b/develop/dir_e617fe9c9bac53cf4104c40a60f7993d.html index 35060c1e..b7a57968 100644 --- a/develop/dir_e617fe9c9bac53cf4104c40a60f7993d.html +++ b/develop/dir_e617fe9c9bac53cf4104c40a60f7993d.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_ecd2599f241f99e60c436470b0a1e2a4.html b/develop/dir_ecd2599f241f99e60c436470b0a1e2a4.html index 9e9bb75d..7e088851 100644 --- a/develop/dir_ecd2599f241f99e60c436470b0a1e2a4.html +++ b/develop/dir_ecd2599f241f99e60c436470b0a1e2a4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_fdedb0aba14d44ce9d99bc100e026e6a.html b/develop/dir_fdedb0aba14d44ce9d99bc100e026e6a.html index 96a0c331..cf7622cb 100644 --- a/develop/dir_fdedb0aba14d44ce9d99bc100e026e6a.html +++ b/develop/dir_fdedb0aba14d44ce9d99bc100e026e6a.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/dir_ff9f1cc2327aca43a3ba2b9ea3b4cb19.html b/develop/dir_ff9f1cc2327aca43a3ba2b9ea3b4cb19.html index 9cd924e1..b9a00919 100644 --- a/develop/dir_ff9f1cc2327aca43a3ba2b9ea3b4cb19.html +++ b/develop/dir_ff9f1cc2327aca43a3ba2b9ea3b4cb19.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1__max__restriction-members.html b/develop/examples.html similarity index 62% rename from develop/structscc_1_1__max__restriction-members.html rename to develop/examples.html index cbacc95e..4737588e 100644 --- a/develop/structscc_1_1__max__restriction-members.html +++ b/develop/examples.html @@ -5,7 +5,7 @@ -scc: Member List +scc: Examples @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -56,22 +56,20 @@
-
scc::_max_restriction< T > Member List
+
Examples
+
Here is a list of all examples:
+ + diff --git a/develop/files.html b/develop/files.html index 32a54458..7025c798 100644 --- a/develop/files.html +++ b/develop/files.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -157,58 +157,59 @@  cci_broker.cpp  cci_broker.h  cci_param_restricted.h - configurable_tracer.cpp - configurable_tracer.h - configurer.cpp - configurer.h - configurer_nocci.cpp - ext_attribute.h - fifo_w_cb.h - fst_trace.cpp - fst_trace.hh - hierarchy_dumper.cpp - hierarchy_dumper.h - mt19937_rng.cpp - mt19937_rng.h - observer.h - ordered_semaphore.cpp - ordered_semaphore.h - peq.h - perf_estimator.cpp - perf_estimator.h - report.cpp - report.h - sc_attribute_randomized.h - sc_clock_ext.h - sc_logic_7.cpp - sc_logic_7.h - sc_owning_signal.h - sc_thread_pool.cpp - sc_thread_pool.h - sc_variable.h - sc_vcd_trace.h - signal_opt_ports.cpp - signal_opt_ports.h - tick2time.h - time2tick.h - time_n_tick.cpp - trace.h - traceable.h - tracer.cpp - tracer.h - tracer_base.cpp - tracer_base.h - utilities.cpp - utilities.h - value_registry.cpp - value_registry.h - vcd_mt_trace.cpp - vcd_mt_trace.hh - vcd_pull_trace.cpp - vcd_pull_trace.hh - vcd_push_trace.cpp - vcd_push_trace.hh - verilator_callbacks.cpp + cci_util.h + configurable_tracer.cpp + configurable_tracer.h + configurer.cpp + configurer.h + configurer_nocci.cpp + ext_attribute.h + fifo_w_cb.h + fst_trace.cpp + fst_trace.hh + hierarchy_dumper.cpp + hierarchy_dumper.h + mt19937_rng.cpp + mt19937_rng.h + observer.h + ordered_semaphore.cpp + ordered_semaphore.h + peq.h + perf_estimator.cpp + perf_estimator.h + report.cpp + report.h + sc_attribute_randomized.h + sc_clock_ext.h + sc_logic_7.cpp + sc_logic_7.h + sc_owning_signal.h + sc_thread_pool.cpp + sc_thread_pool.h + sc_variable.h + sc_vcd_trace.h + signal_opt_ports.cpp + signal_opt_ports.h + tick2time.h + time2tick.h + time_n_tick.cpp + trace.h + traceable.h + tracer.cpp + tracer.h + tracer_base.cpp + tracer_base.h + utilities.cpp + utilities.h + value_registry.cpp + value_registry.h + vcd_mt_trace.cpp + vcd_mt_trace.hh + vcd_pull_trace.cpp + vcd_pull_trace.hh + vcd_push_trace.cpp + vcd_push_trace.hh + verilator_callbacks.cpp   scp   tlm_extensions  initiator_id.h diff --git a/develop/fst__trace_8cpp_source.html b/develop/fst__trace_8cpp_source.html index d9729ce9..76893750 100644 --- a/develop/fst__trace_8cpp_source.html +++ b/develop/fst__trace_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/fst__trace_8hh_source.html b/develop/fst__trace_8hh_source.html index 609cf607..33c9e6ee 100644 --- a/develop/fst__trace_8hh_source.html +++ b/develop/fst__trace_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/functions.html b/develop/functions.html index eca3105d..ad35ed65 100644 --- a/develop/functions.html +++ b/develop/functions.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -139,7 +139,7 @@

- a -

  • artv : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
  • at() : scc::sc_register_indexed< DATATYPE, SIZE, START > @@ -149,7 +149,7 @@

    - a -

    • awtv : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
    • axi3_extension() : axi::axi3_extension diff --git a/develop/functions_b.html b/develop/functions_b.html index 60f14cba..430cf61a 100644 --- a/develop/functions_b.html +++ b/develop/functions_b.html @@ -24,7 +24,7 @@
      scc -  2022.4.0 +  2024.03
      SystemC components library
      @@ -88,7 +88,7 @@

      - b -

        , tlm::scc::scv::tlm_recorder< TYPES >
      • ba -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
      • base() : axi::fsm::base @@ -115,7 +115,7 @@

        - b -

        • br : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
        • bw_port : axi::lwtr::ace_lwtr< TYPES > diff --git a/develop/functions_c.html b/develop/functions_c.html index 0be7ba43..d460c60c 100644 --- a/develop/functions_c.html +++ b/develop/functions_c.html @@ -24,7 +24,7 @@
          scc -  2022.4.0 +  2024.03
          SystemC components library
          @@ -71,7 +71,7 @@

          - c -

            : scc::tracer
          • cci_param_restricted() -: scc::cci_param_restricted< T, TM > +: scc::cci_param_restricted< T, TM >
          • chi_credit_extension() : chi::chi_credit_extension diff --git a/develop/functions_d.html b/develop/functions_d.html index 8569acbe..cea67fbe 100644 --- a/develop/functions_d.html +++ b/develop/functions_d.html @@ -24,7 +24,7 @@
            scc -  2022.4.0 +  2024.03
            SystemC components library
            diff --git a/develop/functions_e.html b/develop/functions_e.html index 551bca38..631b7627 100644 --- a/develop/functions_e.html +++ b/develop/functions_e.html @@ -24,7 +24,7 @@
            scc -  2022.4.0 +  2024.03
            SystemC components library
            @@ -68,7 +68,7 @@

            - e -

              : scc::MT19937
            • enable_id_serializing -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
            • enableBlTracing : axi::lwtr::ace_lwtr< TYPES > diff --git a/develop/functions_enum.html b/develop/functions_enum.html index d5bff93a..12661ed2 100644 --- a/develop/functions_enum.html +++ b/develop/functions_enum.html @@ -24,7 +24,7 @@
              scc -  2022.4.0 +  2024.03
              SystemC components library
              diff --git a/develop/functions_f.html b/develop/functions_f.html index 5e674e2d..9519273f 100644 --- a/develop/functions_f.html +++ b/develop/functions_f.html @@ -24,7 +24,7 @@
              scc -  2022.4.0 +  2024.03
              SystemC components library
              diff --git a/develop/functions_func.html b/develop/functions_func.html index 538fd01f..4fdcf951 100644 --- a/develop/functions_func.html +++ b/develop/functions_func.html @@ -24,7 +24,7 @@
              scc -  2022.4.0 +  2024.03
              SystemC components library
              diff --git a/develop/functions_func_b.html b/develop/functions_func_b.html index bc2a151a..53aabb10 100644 --- a/develop/functions_func_b.html +++ b/develop/functions_func_b.html @@ -24,7 +24,7 @@
              scc -  2022.4.0 +  2024.03
              SystemC components library
              diff --git a/develop/functions_func_c.html b/develop/functions_func_c.html index 1103177d..88eee805 100644 --- a/develop/functions_func_c.html +++ b/develop/functions_func_c.html @@ -24,7 +24,7 @@
              scc -  2022.4.0 +  2024.03
              SystemC components library
              @@ -68,7 +68,7 @@

              - c -

                : scc::peq< TYPE >
              • cci_param_restricted() -: scc::cci_param_restricted< T, TM > +: scc::cci_param_restricted< T, TM >
              • chi_credit_extension() : chi::chi_credit_extension diff --git a/develop/functions_func_d.html b/develop/functions_func_d.html index 0644b717..441a8907 100644 --- a/develop/functions_func_d.html +++ b/develop/functions_func_d.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_e.html b/develop/functions_func_e.html index d920952a..d8dd656a 100644 --- a/develop/functions_func_e.html +++ b/develop/functions_func_e.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_f.html b/develop/functions_func_f.html index aca96f87..d188ca74 100644 --- a/develop/functions_func_f.html +++ b/develop/functions_func_f.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_g.html b/develop/functions_func_g.html index dd6bd859..c2123587 100644 --- a/develop/functions_func_g.html +++ b/develop/functions_func_g.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_h.html b/develop/functions_func_h.html index d4b06ec6..de4802fd 100644 --- a/develop/functions_func_h.html +++ b/develop/functions_func_h.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_i.html b/develop/functions_func_i.html index 8e925493..d76f1392 100644 --- a/develop/functions_func_i.html +++ b/develop/functions_func_i.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_k.html b/develop/functions_func_k.html index 1e393704..c434eb25 100644 --- a/develop/functions_func_k.html +++ b/develop/functions_func_k.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_l.html b/develop/functions_func_l.html index 6f7d94fb..bbdddcc9 100644 --- a/develop/functions_func_l.html +++ b/develop/functions_func_l.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_m.html b/develop/functions_func_m.html index 86d5cdb2..2321a659 100644 --- a/develop/functions_func_m.html +++ b/develop/functions_func_m.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_n.html b/develop/functions_func_n.html index 4072a185..7c676a75 100644 --- a/develop/functions_func_n.html +++ b/develop/functions_func_n.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_o.html b/develop/functions_func_o.html index b1f2483a..fd41cb7d 100644 --- a/develop/functions_func_o.html +++ b/develop/functions_func_o.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_p.html b/develop/functions_func_p.html index 79612922..29a27656 100644 --- a/develop/functions_func_p.html +++ b/develop/functions_func_p.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_r.html b/develop/functions_func_r.html index de55cd27..a2ebec4c 100644 --- a/develop/functions_func_r.html +++ b/develop/functions_func_r.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_s.html b/develop/functions_func_s.html index 397f3abc..db9c30e3 100644 --- a/develop/functions_func_s.html +++ b/develop/functions_func_s.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_t.html b/develop/functions_func_t.html index b360644d..582a4e9c 100644 --- a/develop/functions_func_t.html +++ b/develop/functions_func_t.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_u.html b/develop/functions_func_u.html index 52609796..32c51068 100644 --- a/develop/functions_func_u.html +++ b/develop/functions_func_u.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_v.html b/develop/functions_func_v.html index 2aee1c6d..b0161ccc 100644 --- a/develop/functions_func_v.html +++ b/develop/functions_func_v.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_w.html b/develop/functions_func_w.html index 5aa0fa6f..a05d46ff 100644 --- a/develop/functions_func_w.html +++ b/develop/functions_func_w.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_func_~.html b/develop/functions_func_~.html index cc670da7..a7d02a5c 100644 --- a/develop/functions_func_~.html +++ b/develop/functions_func_~.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_g.html b/develop/functions_g.html index db071aed..da712090 100644 --- a/develop/functions_g.html +++ b/develop/functions_g.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_h.html b/develop/functions_h.html index de713685..d66db04b 100644 --- a/develop/functions_h.html +++ b/develop/functions_h.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_i.html b/develop/functions_i.html index 551d9821..cb092ce0 100644 --- a/develop/functions_i.html +++ b/develop/functions_i.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_k.html b/develop/functions_k.html index 861f3c88..5b6e2690 100644 --- a/develop/functions_k.html +++ b/develop/functions_k.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_l.html b/develop/functions_l.html index 84aecee6..822fee66 100644 --- a/develop/functions_l.html +++ b/develop/functions_l.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_m.html b/develop/functions_m.html index 58b7c61d..ffce93fd 100644 --- a/develop/functions_m.html +++ b/develop/functions_m.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_n.html b/develop/functions_n.html index 68262bae..95d40f57 100644 --- a/develop/functions_n.html +++ b/develop/functions_n.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                diff --git a/develop/functions_o.html b/develop/functions_o.html index 866b3486..efe8850d 100644 --- a/develop/functions_o.html +++ b/develop/functions_o.html @@ -24,7 +24,7 @@
                scc -  2022.4.0 +  2024.03
                SystemC components library
                @@ -154,7 +154,7 @@

                - o -

                  : logging::Output2FILE< CATEGORY >
                • outstanding_snoops -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
                • owner : scc::ext_attribute< T > diff --git a/develop/functions_p.html b/develop/functions_p.html index ef2ae75f..ed8509eb 100644 --- a/develop/functions_p.html +++ b/develop/functions_p.html @@ -24,7 +24,7 @@
                  scc -  2022.4.0 +  2024.03
                  SystemC components library
                  diff --git a/develop/functions_r.html b/develop/functions_r.html index 9511c216..baaa265c 100644 --- a/develop/functions_r.html +++ b/develop/functions_r.html @@ -24,7 +24,7 @@
                  scc -  2022.4.0 +  2024.03
                  SystemC components library
                  @@ -69,7 +69,7 @@

                  - r -

                  • rbr : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
                  • rd_addr_accept_delay : ahb::pe::ahb_target_b @@ -204,7 +204,7 @@

                    - r -

                      : util::pool_allocator< ELEM_SIZE, CHUNK_SIZE >
                    • rla -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
                    • router() : scc::router< BUSWIDTH > diff --git a/develop/functions_s.html b/develop/functions_s.html index 14dbec0a..5863827b 100644 --- a/develop/functions_s.html +++ b/develop/functions_s.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      diff --git a/develop/functions_t.html b/develop/functions_t.html index 339d0c94..474673c2 100644 --- a/develop/functions_t.html +++ b/develop/functions_t.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      diff --git a/develop/functions_type.html b/develop/functions_type.html index 43805f80..3b78df67 100644 --- a/develop/functions_type.html +++ b/develop/functions_type.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      diff --git a/develop/functions_u.html b/develop/functions_u.html index f92f3315..7c36c03f 100644 --- a/develop/functions_u.html +++ b/develop/functions_u.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      diff --git a/develop/functions_v.html b/develop/functions_v.html index 50508ed8..49474267 100644 --- a/develop/functions_v.html +++ b/develop/functions_v.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      diff --git a/develop/functions_vars.html b/develop/functions_vars.html index d496d620..ad4bf001 100644 --- a/develop/functions_vars.html +++ b/develop/functions_vars.html @@ -24,7 +24,7 @@
                      scc -  2022.4.0 +  2024.03
                      SystemC components library
                      @@ -69,25 +69,25 @@

                      - a -

                      - b -

                      • ba -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
                      • beat_count : axi::fsm::fsm_handle
                      • br : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
                      • bw_port : axi::lwtr::ace_lwtr< TYPES > @@ -127,7 +127,7 @@

                        - d -

                          - e -

                          • enable_id_serializing -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
                          • enableBlTracing : axi::lwtr::ace_lwtr< TYPES > @@ -248,7 +248,7 @@

                            - n -

                              - o -

                              • outstanding_snoops -: axi::pe::axi_initiator_b +: axi::pe::axi_initiator_b
                              • owner : scc::ext_attribute< T > @@ -272,7 +272,7 @@

                                - p -

                                  - r -

                                  • rbr : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
                                  • rd_addr_accept_delay : ahb::pe::ahb_target_b @@ -313,7 +313,7 @@

                                    - r -

                                    @@ -374,7 +374,7 @@

                                    - v -

                                      - w -

                                      • wbv : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
                                      • window_size : axi::pe::tx_reorderer diff --git a/develop/functions_w.html b/develop/functions_w.html index ebf2852b..7e6c7263 100644 --- a/develop/functions_w.html +++ b/develop/functions_w.html @@ -24,7 +24,7 @@
                                        scc -  2022.4.0 +  2024.03
                                        SystemC components library
                                        @@ -72,7 +72,7 @@

                                        - w -

                                        • wbv : ahb::pe::ahb_initiator_b -, axi::pe::axi_initiator_b +, axi::pe::axi_initiator_b
                                        • window_size : axi::pe::tx_reorderer diff --git a/develop/functions_~.html b/develop/functions_~.html index c142171d..8df58494 100644 --- a/develop/functions_~.html +++ b/develop/functions_~.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/graph_legend.html b/develop/graph_legend.html index 95bf65d0..9c7b4cb3 100644 --- a/develop/graph_legend.html +++ b/develop/graph_legend.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/group__scc-common.html b/develop/group__scc-common.html index 4b70a7d1..1df64e3a 100644 --- a/develop/group__scc-common.html +++ b/develop/group__scc-common.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/group__scc-sysc.html b/develop/group__scc-sysc.html index 15585fa7..c1fa5a7f 100644 --- a/develop/group__scc-sysc.html +++ b/develop/group__scc-sysc.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/gz__writer_8hh_source.html b/develop/gz__writer_8hh_source.html index 8975f6b6..8a697e6a 100644 --- a/develop/gz__writer_8hh_source.html +++ b/develop/gz__writer_8hh_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          @@ -180,7 +180,7 @@
                                          113 #endif /* _SCC_TRACE_GZ_WRITER_HH_ */
                                          SCC SystemC utilities.
                                          -
                                          log
                                          enum defining the log levels
                                          Definition: report.h:84
                                          +
                                          log
                                          enum defining the log levels
                                          Definition: report.h:85
                                          diff --git a/develop/hierarchy.html b/develop/hierarchy.html index 5c68ee2a..870d6fa5 100644 --- a/develop/hierarchy.html +++ b/develop/hierarchy.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          @@ -69,673 +69,667 @@

                                          Go to the graphical class hierarchy

                                          This inheritance list is sorted roughly, but not completely, alphabetically:
                                          [detail level 12345]
                                          - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                           Cscc::_discrete_restriction< T >
                                           Cscc::_max_excl_restriction< T >
                                           Cscc::_max_restriction< T >
                                           Cscc::_min_excl_restriction< T >
                                           Cscc::_min_max_excl_restriction< T >
                                           Cscc::_min_max_restriction< T >
                                           Cscc::_min_restriction< T >
                                           Cscc::abstract_bitfield< datatype_t >Abstract baseclass for bitfield
                                           Caxi::ac_ace< CFG, TYPES >Snoop address(AC) channel signals
                                           Caxi::ac_ace< CFG, CFG::master_types >
                                           Cscc::abstract_bitfield< datatype_t >Abstract baseclass for bitfield
                                           Caxi::ac_ace< CFG, TYPES >Snoop address(AC) channel signals
                                           Caxi::ac_ace< CFG, CFG::master_types >
                                           Caxi::ac_ace< CFG, CFG::slave_types >
                                           Caxi::ace_cfg< BUSWDTH, ADDRWDTH, IDWDTH, USERWDTH, AWSNOOPWDTH, RESPWDTH >
                                           Caxi::ace_fw_transport_if
                                           Caxi::scv::impl::ace_recording_types< TYPES >
                                           Cscc::addr_rangeStruct representing address range
                                           Caxi::ar_ace< CFG, TYPES >
                                           Caxi::ar_ace< CFG, CFG::master_types >
                                           Caxi::ac_ace< CFG, CFG::slave_types >
                                           Caxi::ar_ace< CFG, CFG::slave_types >
                                           Caxi::ace_cfg< BUSWDTH, ADDRWDTH, IDWDTH, USERWDTH, AWSNOOPWDTH, RESPWDTH >
                                           Caxi::ace_fw_transport_if
                                           Caxi::scv::impl::ace_recording_types< TYPES >
                                           Cscc::addr_rangeStruct representing address range
                                           Caxi::ar_ace< CFG, TYPES >
                                           Caxi::ar_ace< CFG, CFG::master_types >
                                           Caxi::ar_ace< CFG, CFG::slave_types >
                                           Caxi::ar_axi< CFG, TYPES >
                                           Caxi::ar_axi< CFG, CFG::master_types >
                                           Caxi::ar_axi< CFG, CFG::slave_types >
                                           Caxi::ar_axi_lite< CFG, TYPES >Read address channel signals
                                           Cscv_tr::AttrDesc
                                           Caxi::aw_ace< CFG, TYPES >
                                           Caxi::aw_ace< CFG, CFG::master_types >
                                           Caxi::aw_ace< CFG, CFG::slave_types >
                                           Caxi::aw_axi< CFG, TYPES >
                                           Caxi::aw_axi< CFG, CFG::master_types >
                                           Caxi::aw_axi< CFG, CFG::slave_types >
                                           Caxi::aw_axi_lite< CFG, TYPES >Write address channel signals
                                           Caxi::axi4_cfg< BUSWDTH, ADDRWDTH, IDWDTH, USERWDTH >
                                           Caxi::axi4_lite_cfg< BUSWDTH, ADDRWDTH >
                                           Caxi::axi_bw_transport_if
                                           Caxi::axi_fw_transport_if
                                           Caxi::axi_protocol_typesThe AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicated protocol traits class has to be defined
                                           Caxi::b_axi< CFG, TYPES >
                                           Caxi::b_axi< CFG, CFG::master_types >
                                           Caxi::b_axi< CFG, CFG::slave_types >
                                           Caxi::b_axi_lite< CFG, TYPES >Write response channel signals
                                           Caxi::fsm::baseBase class of all AXITLM based adapters and interfaces
                                           CBASE
                                           Cbase_type
                                           CBASE_TYPE
                                           Cutil::BitFieldArray< T, BaseOffset, BitsPerItem, NumItems >Array of bit field elements
                                           Cutil::BitFieldMember< T, Offset, Bits >Bit field element
                                           CCATEGORY
                                           Ccci::cci_param
                                           Caxi::cd_ace< CFG, TYPES >Snoop data(cd) channel signals
                                           Caxi::cd_ace< CFG, CFG::master_types >
                                           Caxi::cd_ace< CFG, CFG::slave_types >
                                           Caxi::checker::checker_if< TYPES >
                                           Caxi::checker::checker_if< axi::axi_protocol_types >
                                           Cchi::chi_fw_transport_if
                                           Cchi::chi_protocol_typesThe AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicated protocol traits class has to be defined
                                           Cchi::scv::impl::chi_recording_types< TYPES >
                                           Caxi::common
                                           Cchi::common
                                           Cscc::configurer::ConfigHolder
                                           Ccci_utils::consuming_broker
                                           Caxi::cr_ace< CFG, TYPES >Snoop response(cr) channel signals
                                           Caxi::cr_ace< CFG, CFG::master_types >
                                           Caxi::cr_ace< CFG, CFG::slave_types >
                                           Cscc::sc_variable< T >::creator
                                           Cscc::sc_variable< bool >::creator
                                           Cchi::credit
                                           Cchi::data
                                           Clogging::DEFAULTDefault logging category
                                           Cutil::delegate< T >
                                           Cutil::delegate< bool(const scc::impl::sc_register &, DATATYPE &, sc_core::sc_time &)>
                                           Cutil::delegate< bool(scc::impl::sc_register &, DATATYPE &, sc_core::sc_time &)>
                                           Cutil::delegate< R(A...)>Fast alternative to std::function
                                           Cutil::BitFieldArray< T, BaseOffset, BitsPerItem, NumItems >::Element
                                           Cahb::enable_for_enum< Enum >
                                           Caxi::enable_for_enum< Enum >
                                           Cchi::enable_for_enum< Enum >
                                           Caxi::enable_for_enum< bar_e >
                                           Caxi::enable_for_enum< burst_e >
                                           Cchi::enable_for_enum< dat_optype_e >
                                           Cchi::enable_for_enum< dat_resptype_e >
                                           Caxi::enable_for_enum< domain_e >
                                           Caxi::enable_for_enum< lock_e >
                                           Cchi::enable_for_enum< req_optype_e >
                                           Caxi::enable_for_enum< resp_e >
                                           Cchi::enable_for_enum< rsp_optype_e >
                                           Cchi::enable_for_enum< rsp_resperrtype_e >
                                           Cchi::enable_for_enum< rsp_resptype_e >
                                           Caxi::enable_for_enum< snoop_e >
                                           Cchi::enable_for_enum< snp_optype_e >
                                           Cboost::statechart::event
                                           CEXT
                                           Cscc::ForLoop< SIZE >
                                           Cscc::ForLoop< 1 >
                                           Caxi::fsm::fsm_handle
                                           Cscc::trace::fst_trace
                                           Cscc::trace::gz_writer
                                           Cstd::hash< util::delegate< R(A...)> >Hash overload for delegate<T, A...>
                                           Cscc::impl::helper< T, bool >
                                           Cscc::impl::helper< T, false >
                                           Cscc::impl::helper< T, true >
                                           Cscc::indexed_resource_access_ifInterface defining access to an indexed resource e.g. register file
                                           CinitiatorInitiator ID recording TLM extension
                                           Cutil::IoRedirectorAllows to capture the strings written to std::cout and std::cerr (MT-safe)
                                           Caxi::lite_master_types
                                           Caxi::lite_slave_types
                                           Cscc::ordered_semaphore::lockLock for the semaphore
                                           Clogging::Log< T >
                                           Cscc::LogConfigConfiguration class for the logging setup
                                           Cutil::range_lut< T >::lut_entryLut entry
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry< TYPES >The TLM transaction extensions recorder registry
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< TYPES >The TLM transaction extensions recorder interface
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< axi_protocol_types >
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< chi_protocol_types >
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< tlm::tlm_base_protocol_types >
                                           Caxi::master_types
                                           Cscc::MT19937Mersenne-twister based random number generator
                                           Cutil::MT19937Mersenne-Twister pseudo random number generator
                                           Ctlm::scc::lwtr::nb_rec_entry
                                           Cscc::observer::notification_handleA handle to be used be the observed object to notify the observer about a change
                                           Cscc::observerThe interface defining an observer
                                           CPathPath recording TLM extension
                                           Ctlm::scc::tlm_managed_extension< T >::pool
                                           Cutil::pool_allocator< ELEM_SIZE, CHUNK_SIZE >Generic pool allocator singleton not being MT-safe
                                           Cutil::pool_allocator< sizeof(payload_type)>
                                           Caxi::pe::tx_reorderer::que_entry
                                           Cscc::router< BUSWIDTH >::range_entry
                                           Cutil::range_lut< T >Range based lookup table
                                           Cutil::range_lut< std::pair< scc::resource_access_if *, uint64_t > >
                                           Cutil::range_lut< unsigned >
                                           Cutil::stl_pool_allocator< T >::rebind< U >
                                           CREQ
                                           Caxi::request
                                           Cchi::request
                                           Cscc::resetableBase class for components having a reset
                                           Cscc::resource_access_ifInterface defining access to a resource e.g. a register
                                           Caxi::response
                                           Cchi::response
                                           Caxi::rresp_ace< CFG, TYPES >
                                           Caxi::rresp_ace< CFG, CFG::master_types >
                                           Caxi::rresp_ace< CFG, CFG::slave_types >
                                           Caxi::rresp_axi< CFG, TYPES >
                                           Caxi::rresp_axi< CFG, CFG::master_types >
                                           Caxi::rresp_axi< CFG, CFG::slave_types >
                                           Caxi::rresp_axi_lite< CFG, TYPES >Read data channel signals
                                           Cruntime_error
                                           Csc_core::sc_attribute
                                           Cscc::sc_bigint_tester< size >
                                           Cscc::sc_biguint_tester< size >
                                           Cscc::sc_bv_tester< size >
                                           Csc_core::sc_clock
                                           Cscc::sc_int_tester< size >
                                           Csc_core::sc_interface
                                           Cscc::dt::sc_logic_7
                                           Cscc::sc_lv_tester< size >
                                           Csc_core::sc_module
                                           Csc_core::sc_object
                                           Csc_core::sc_port
                                           Csc_core::sc_prim_channel
                                           Csc_core::sc_semaphore_if
                                           Csc_core::sc_signal
                                           Csc_core::sc_signal_in_if
                                           Csc_core::sc_trace_file
                                           Csc_trace_file
                                           Cscc::sc_uint_tester< size >
                                           Cscc::sc_variable_vector< T >
                                           Cscc::ScLogger< SEVERITY >Logger class
                                           Cscv_enum_base
                                           Cscv_extensions_base
                                           Caxi::select_if< Cond, T, S >
                                           Caxi::select_if< true, T, S >
                                           Caxi::signal_types
                                           Cboost::statechart::simple_state
                                           Caxi::slave_types
                                           Cchi::snp_request
                                           Cscc::tlm_target_bfs< regs_t, owner_t >::socket_accessor
                                           Cutil::sparse_array< T, SIZE, PAGE_ADDR_BITS >Sparse array suitable for large sizes
                                           Cutil::sparse_array< uint8_t, SIZE >
                                           Cscv_tr::SQLiteDB
                                           Cboost::statechart::state
                                           Cboost::statechart::state_machine
                                           Cutil::stl_pool_allocator< T >
                                           Cstd::streambuf
                                           Cstd::stringbuf
                                           Caxi::pe::target_info_if
                                           Cscc::target_memory_map_entry< BUSWIDTH >
                                           Cscc::target_name_map_entry< BUSWIDTH >
                                           Cutil::thread_poolSimple thread pool
                                           Cutil::thread_syncronizerExecutes a function syncronized in another thread
                                           Ctlm::tlm_base_initiator_socket
                                           Ctlm::scc::tlm_base_mm_interface
                                           Ctlm::tlm_base_target_socket
                                           Ctlm::tlm_bw_transport_if
                                           Ctlm::scc::scv::tlm_dmi_data
                                           Ctlm::tlm_extension
                                           Ctlm::scc::scv::tlm_extension_recording_registry< TYPES >The TLM transaction extensions recorder registry
                                           Ctlm::scc::scv::tlm_extensions_recording_if< TYPES >The TLM transaction extensions recorder interface
                                           Ctlm::scc::scv::tlm_extensions_recording_if< axi_protocol_types >
                                           Ctlm::scc::scv::tlm_extensions_recording_if< chi_protocol_types >
                                           Ctlm::scc::scv::tlm_extensions_recording_if< tlm::tlm_base_protocol_types >
                                           Ctlm::tlm_fw_transport_if
                                           Ctlm::scc::tlm_generic_payload_base
                                           Ctlm::scc::scv::tlm_gp_data
                                           Ctlm::scc::tlm_gp_shared_ptr
                                           Ctlm::tlm_initiator_socket
                                           Ctlm::scc::tlm_managed_extension< T >
                                           Ctlm::tlm_mm_interface
                                           CTYPES::tlm_payload_type
                                           Ctlm::scc::scv::impl::tlm_recording_types< TYPES >
                                           Ctlm::scc::tlm_signal_baseprotocol_types< SIG >
                                           Cscc::tlm_target< BUSWIDTH, ADDR_UNIT_WIDTH >Simple access-width based bus interface (no DMI support)
                                           Cscc::tlm_target< LT, 8 >
                                           Cscc::tlm_target_bfs_base< owner_t >
                                           Cscc::tlm_target_bfs_params
                                           Ctlm::tlm_target_socket
                                           Cscc::traceableInterface defining a traceable component
                                           Cscc::trace::traits< T >
                                           Cahb::pe::ahb_initiator_b::tx_state
                                           Caxi::pe::axi_initiator_b::tx_state
                                           Cchi::pe::chi_rn_initiator_b::tx_state
                                           Clwtr::value_converter< tlm::tlm_command >
                                           Clwtr::value_converter< tlm::tlm_dmi::dmi_access_e >
                                           Clwtr::value_converter< tlm::tlm_gp_option >
                                           Clwtr::value_converter< tlm::tlm_phase >
                                           Clwtr::value_converter< tlm::tlm_response_status >
                                           Clwtr::value_converter< tlm::tlm_sync_enum >
                                           Cscc::value_registry_if::value_holder
                                           Cscc::value_registry_if
                                           Cscc::trace::vcd_scope_stack< T >
                                           Cscc::trace::vcd_trace
                                           Cutil::watchdogWatch dog based on https://github.com/didenko/TimeoutGuard
                                           Caxi::wdata_axi< CFG, TYPES >
                                           Caxi::wdata_axi< CFG, CFG::master_types >
                                           Caxi::wdata_axi< CFG, CFG::slave_types >
                                           Caxi::wdata_axi_lite< CFG, TYPES >Write data channel signals
                                           Caxi::ar_axi< CFG, TYPES >
                                           Caxi::ar_axi< CFG, CFG::master_types >
                                           Caxi::ar_axi< CFG, CFG::slave_types >
                                           Caxi::ar_axi_lite< CFG, TYPES >Read address channel signals
                                           Cscv_tr::AttrDesc
                                           Caxi::aw_ace< CFG, TYPES >
                                           Caxi::aw_ace< CFG, CFG::master_types >
                                           Caxi::aw_ace< CFG, CFG::slave_types >
                                           Caxi::aw_axi< CFG, TYPES >
                                           Caxi::aw_axi< CFG, CFG::master_types >
                                           Caxi::aw_axi< CFG, CFG::slave_types >
                                           Caxi::aw_axi_lite< CFG, TYPES >Write address channel signals
                                           Caxi::axi4_cfg< BUSWDTH, ADDRWDTH, IDWDTH, USERWDTH >
                                           Caxi::axi4_lite_cfg< BUSWDTH, ADDRWDTH >
                                           Caxi::axi_bw_transport_if
                                           Caxi::axi_fw_transport_if
                                           Caxi::axi_protocol_typesThe AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicated protocol traits class has to be defined
                                           Caxi::b_axi< CFG, TYPES >
                                           Caxi::b_axi< CFG, CFG::master_types >
                                           Caxi::b_axi< CFG, CFG::slave_types >
                                           Caxi::b_axi_lite< CFG, TYPES >Write response channel signals
                                           Caxi::fsm::baseBase class of all AXITLM based adapters and interfaces
                                           CBASE
                                           Cbase_type
                                           CBASE_TYPE
                                           Cutil::BitFieldArray< T, BaseOffset, BitsPerItem, NumItems >Array of bit field elements
                                           Cutil::BitFieldMember< T, Offset, Bits >Bit field element
                                           CCATEGORY
                                           Ccci::cci_param
                                           Caxi::cd_ace< CFG, TYPES >Snoop data(cd) channel signals
                                           Caxi::cd_ace< CFG, CFG::master_types >
                                           Caxi::cd_ace< CFG, CFG::slave_types >
                                           Caxi::checker::checker_if< TYPES >
                                           Caxi::checker::checker_if< axi::axi_protocol_types >
                                           Cchi::chi_fw_transport_if
                                           Cchi::chi_protocol_typesThe AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicated protocol traits class has to be defined
                                           Cchi::scv::impl::chi_recording_types< TYPES >
                                           Caxi::common
                                           Cchi::common
                                           Cscc::configurer::ConfigHolder
                                           Ccci_utils::consuming_broker
                                           Caxi::cr_ace< CFG, TYPES >Snoop response(cr) channel signals
                                           Caxi::cr_ace< CFG, CFG::master_types >
                                           Caxi::cr_ace< CFG, CFG::slave_types >
                                           Cscc::sc_variable< T >::creator
                                           Cscc::sc_variable< bool >::creator
                                           Cchi::credit
                                           Cchi::data
                                           Clogging::DEFAULTDefault logging category
                                           Cutil::delegate< T >
                                           Cutil::delegate< bool(const scc::impl::sc_register &, DATATYPE &, sc_core::sc_time &)>
                                           Cutil::delegate< bool(scc::impl::sc_register &, DATATYPE &, sc_core::sc_time &)>
                                           Cutil::delegate< R(A...)>Fast alternative to std::function
                                           Cutil::BitFieldArray< T, BaseOffset, BitsPerItem, NumItems >::Element
                                           Cahb::enable_for_enum< Enum >
                                           Caxi::enable_for_enum< Enum >
                                           Cchi::enable_for_enum< Enum >
                                           Caxi::enable_for_enum< bar_e >
                                           Caxi::enable_for_enum< burst_e >
                                           Cchi::enable_for_enum< dat_optype_e >
                                           Cchi::enable_for_enum< dat_resptype_e >
                                           Caxi::enable_for_enum< domain_e >
                                           Caxi::enable_for_enum< lock_e >
                                           Cchi::enable_for_enum< req_optype_e >
                                           Caxi::enable_for_enum< resp_e >
                                           Cchi::enable_for_enum< rsp_optype_e >
                                           Cchi::enable_for_enum< rsp_resperrtype_e >
                                           Cchi::enable_for_enum< rsp_resptype_e >
                                           Caxi::enable_for_enum< snoop_e >
                                           Cchi::enable_for_enum< snp_optype_e >
                                           Cboost::statechart::event
                                           CEXT
                                           Cscc::ForLoop< SIZE >
                                           Cscc::ForLoop< 1 >
                                           Caxi::fsm::fsm_handle
                                           Cscc::trace::fst_trace
                                           Cscc::trace::gz_writer
                                           Cstd::hash< util::delegate< R(A...)> >Hash overload for delegate<T, A...>
                                           Cscc::impl::helper< T, bool >
                                           Cscc::impl::helper< T, false >
                                           Cscc::impl::helper< T, true >
                                           Cscc::indexed_resource_access_ifInterface defining access to an indexed resource e.g. register file
                                           CinitiatorInitiator ID recording TLM extension
                                           Cutil::IoRedirectorAllows to capture the strings written to std::cout and std::cerr (MT-safe)
                                           Caxi::lite_master_types
                                           Caxi::lite_slave_types
                                           Cscc::ordered_semaphore::lockLock for the semaphore
                                           Clogging::Log< T >
                                           Cscc::LogConfigConfiguration class for the logging setup
                                           Cutil::range_lut< T >::lut_entryLut entry
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry< TYPES >The TLM transaction extensions recorder registry
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< TYPES >The TLM transaction extensions recorder interface
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< axi_protocol_types >
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< chi_protocol_types >
                                           Ctlm::scc::lwtr::lwtr4tlm2_extension_registry_if< tlm::tlm_base_protocol_types >
                                           Caxi::master_types
                                           Cscc::MT19937Mersenne-twister based random number generator
                                           Cutil::MT19937Mersenne-Twister pseudo random number generator
                                           Ctlm::scc::lwtr::nb_rec_entry
                                           Cscc::observer::notification_handleA handle to be used be the observed object to notify the observer about a change
                                           Cscc::observerThe interface defining an observer
                                           CPathPath recording TLM extension
                                           Ctlm::scc::tlm_managed_extension< T >::pool
                                           Cutil::pool_allocator< ELEM_SIZE, CHUNK_SIZE >Generic pool allocator singleton not being MT-safe
                                           Cutil::pool_allocator< sizeof(payload_type)>
                                           Caxi::pe::tx_reorderer::que_entry
                                           Cscc::router< BUSWIDTH >::range_entry
                                           Cutil::range_lut< T >Range based lookup table
                                           Cutil::range_lut< std::pair< scc::resource_access_if *, uint64_t > >
                                           Cutil::range_lut< unsigned >
                                           Cutil::stl_pool_allocator< T >::rebind< U >
                                           CREQ
                                           Caxi::request
                                           Cchi::request
                                           Cscc::resetableBase class for components having a reset
                                           Cscc::resource_access_ifInterface defining access to a resource e.g. a register
                                           Caxi::response
                                           Cchi::response
                                           Caxi::rresp_ace< CFG, TYPES >
                                           Caxi::rresp_ace< CFG, CFG::master_types >
                                           Caxi::rresp_ace< CFG, CFG::slave_types >
                                           Caxi::rresp_axi< CFG, TYPES >
                                           Caxi::rresp_axi< CFG, CFG::master_types >
                                           Caxi::rresp_axi< CFG, CFG::slave_types >
                                           Caxi::rresp_axi_lite< CFG, TYPES >Read data channel signals
                                           Cruntime_error
                                           Csc_core::sc_attribute
                                           Cscc::sc_bigint_tester< size >
                                           Cscc::sc_biguint_tester< size >
                                           Cscc::sc_bv_tester< size >
                                           Csc_core::sc_clock
                                           Cscc::sc_int_tester< size >
                                           Csc_core::sc_interface
                                           Cscc::dt::sc_logic_7
                                           Cscc::sc_lv_tester< size >
                                           Csc_core::sc_module
                                           Csc_core::sc_object
                                           Csc_core::sc_port
                                           Csc_core::sc_prim_channel
                                           Csc_core::sc_semaphore_if
                                           Csc_core::sc_signal
                                           Csc_core::sc_signal_in_if
                                           Csc_core::sc_trace_file
                                           Csc_trace_file
                                           Cscc::sc_uint_tester< size >
                                           Cscc::sc_variable_vector< T >
                                           Cscc::ScLogger< SEVERITY >Logger class
                                           Cscv_enum_base
                                           Cscv_extensions_base
                                           Caxi::select_if< Cond, T, S >
                                           Caxi::select_if< true, T, S >
                                           Caxi::signal_types
                                           Cboost::statechart::simple_state
                                           Caxi::slave_types
                                           Cchi::snp_request
                                           Cscc::tlm_target_bfs< regs_t, owner_t >::socket_accessor
                                           Cutil::sparse_array< T, SIZE, PAGE_ADDR_BITS >Sparse array suitable for large sizes
                                           Cutil::sparse_array< uint8_t, SIZE >
                                           Cscv_tr::SQLiteDB
                                           Cboost::statechart::state
                                           Cboost::statechart::state_machine
                                           Cutil::stl_pool_allocator< T >
                                           Cstd::streambuf
                                           Cstd::stringbuf
                                           Caxi::pe::target_info_if
                                           Cscc::target_memory_map_entry< BUSWIDTH >
                                           Cscc::target_name_map_entry< BUSWIDTH >
                                           Cutil::thread_poolSimple thread pool
                                           Cutil::thread_syncronizerExecutes a function syncronized in another thread
                                           Ctlm::tlm_base_initiator_socket
                                           Ctlm::scc::tlm_base_mm_interface
                                           Ctlm::tlm_base_target_socket
                                           Ctlm::tlm_bw_transport_if
                                           Ctlm::scc::scv::tlm_dmi_data
                                           Ctlm::tlm_extension
                                           Ctlm::scc::scv::tlm_extension_recording_registry< TYPES >The TLM transaction extensions recorder registry
                                           Ctlm::scc::scv::tlm_extensions_recording_if< TYPES >The TLM transaction extensions recorder interface
                                           Ctlm::scc::scv::tlm_extensions_recording_if< axi_protocol_types >
                                           Ctlm::scc::scv::tlm_extensions_recording_if< chi_protocol_types >
                                           Ctlm::scc::scv::tlm_extensions_recording_if< tlm::tlm_base_protocol_types >
                                           Ctlm::tlm_fw_transport_if
                                           Ctlm::scc::tlm_generic_payload_base
                                           Ctlm::scc::scv::tlm_gp_data
                                           Ctlm::scc::tlm_gp_shared_ptr
                                           Ctlm::tlm_initiator_socket
                                           Ctlm::scc::tlm_managed_extension< T >
                                           Ctlm::tlm_mm_interface
                                           CTYPES::tlm_payload_type
                                           Ctlm::scc::scv::impl::tlm_recording_types< TYPES >
                                           Ctlm::scc::tlm_signal_baseprotocol_types< SIG >
                                           Cscc::tlm_target< BUSWIDTH, ADDR_UNIT_WIDTH >Simple access-width based bus interface (no DMI support)
                                           Cscc::tlm_target< LT, 8 >
                                           Cscc::tlm_target_bfs_base< owner_t >
                                           Cscc::tlm_target_bfs_params
                                           Ctlm::tlm_target_socket
                                           Cscc::traceableInterface defining a traceable component
                                           Cscc::trace::traits< T >
                                           Cahb::pe::ahb_initiator_b::tx_state
                                           Caxi::pe::axi_initiator_b::tx_state
                                           Cchi::pe::chi_rn_initiator_b::tx_state
                                           Clwtr::value_converter< tlm::tlm_command >
                                           Clwtr::value_converter< tlm::tlm_dmi::dmi_access_e >
                                           Clwtr::value_converter< tlm::tlm_gp_option >
                                           Clwtr::value_converter< tlm::tlm_phase >
                                           Clwtr::value_converter< tlm::tlm_response_status >
                                           Clwtr::value_converter< tlm::tlm_sync_enum >
                                           Cscc::value_registry_if::value_holder
                                           Cscc::value_registry_if
                                           Cscc::trace::vcd_scope_stack< T >
                                           Cscc::trace::vcd_trace
                                           Cutil::watchdogWatch dog based on https://github.com/didenko/TimeoutGuard
                                           Caxi::wdata_axi< CFG, TYPES >
                                           Caxi::wdata_axi< CFG, CFG::master_types >
                                           Caxi::wdata_axi< CFG, CFG::slave_types >
                                           Caxi::wdata_axi_lite< CFG, TYPES >Write data channel signals
                                          diff --git a/develop/hierarchy.js b/develop/hierarchy.js index 32241fe4..5a608041 100644 --- a/develop/hierarchy.js +++ b/develop/hierarchy.js @@ -1,12 +1,5 @@ var hierarchy = [ - [ "scc::_discrete_restriction< T >", "structscc_1_1__discrete__restriction.html", null ], - [ "scc::_max_excl_restriction< T >", "structscc_1_1__max__excl__restriction.html", null ], - [ "scc::_max_restriction< T >", "structscc_1_1__max__restriction.html", null ], - [ "scc::_min_excl_restriction< T >", "structscc_1_1__min__excl__restriction.html", null ], - [ "scc::_min_max_excl_restriction< T >", "structscc_1_1__min__max__excl__restriction.html", null ], - [ "scc::_min_max_restriction< T >", "structscc_1_1__min__max__restriction.html", null ], - [ "scc::_min_restriction< T >", "structscc_1_1__min__restriction.html", null ], [ "scc::abstract_bitfield< datatype_t >", "classscc_1_1abstract__bitfield.html", [ [ "scc::bitfield< datatype_t >", "classscc_1_1bitfield.html", null ] ] ], @@ -551,6 +544,7 @@ var hierarchy = [ "scc::fifo_w_cb< std::tuple< payload_type *, unsigned > >", "classscc_1_1fifo__w__cb.html", null ], [ "scc::fifo_w_cb< std::tuple< tlm::tlm_generic_payload *, unsigned > >", "classscc_1_1fifo__w__cb.html", null ], [ "scc::fifo_w_cb< std::tuple< axi::fsm::protocol_time_point_e, payload_type *, unsigned > >", "classscc_1_1fifo__w__cb.html", null ], + [ "scc::fifo_w_cb< fifo_entry >", "classscc_1_1fifo__w__cb.html", null ], [ "scc::fifo_w_cb< T >", "classscc_1_1fifo__w__cb.html", null ] ] ], [ "sc_core::sc_semaphore_if", null, [ diff --git a/develop/hierarchy__dumper_8cpp_source.html b/develop/hierarchy__dumper_8cpp_source.html index df11af8b..6ea15686 100644 --- a/develop/hierarchy__dumper_8cpp_source.html +++ b/develop/hierarchy__dumper_8cpp_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          @@ -90,678 +90,679 @@
                                          23 #include "report.h"
                                          24 #include "tracer.h"
                                          25 #include <deque>
                                          -
                                          26 #include <fstream>
                                          -
                                          27 #include <iostream>
                                          -
                                          28 #include <memory>
                                          -
                                          29 #include <rapidjson/istreamwrapper.h>
                                          -
                                          30 #include <rapidjson/ostreamwrapper.h>
                                          -
                                          31 #include <rapidjson/prettywriter.h>
                                          -
                                          32 #include <rapidjson/rapidjson.h>
                                          -
                                          33 #include <regex>
                                          -
                                          34 #include <scc/utilities.h>
                                          -
                                          35 #include <sstream>
                                          -
                                          36 #include <tlm>
                                          -
                                          37 #include <unordered_map>
                                          -
                                          38 #include <unordered_set>
                                          -
                                          39 #ifdef FMT_SPDLOG_INTERNAL
                                          -
                                          40 #include <fmt/fmt.h>
                                          -
                                          41 #else
                                          -
                                          42 #include <fmt/format.h>
                                          -
                                          43 #endif
                                          -
                                          44 
                                          -
                                          45 #include <string>
                                          -
                                          46 #include <typeinfo>
                                          -
                                          47 #ifdef __GNUG__
                                          -
                                          48 #include <cstdlib>
                                          -
                                          49 #include <cxxabi.h>
                                          -
                                          50 #endif
                                          +
                                          26 #include <fmt/format.h>
                                          +
                                          27 #include <fstream>
                                          +
                                          28 #include <iostream>
                                          +
                                          29 #include <memory>
                                          +
                                          30 #include <rapidjson/istreamwrapper.h>
                                          +
                                          31 #include <rapidjson/ostreamwrapper.h>
                                          +
                                          32 #include <rapidjson/prettywriter.h>
                                          +
                                          33 #include <rapidjson/rapidjson.h>
                                          +
                                          34 #include <regex>
                                          +
                                          35 #include <scc/utilities.h>
                                          +
                                          36 #include <sstream>
                                          +
                                          37 #include <tlm>
                                          +
                                          38 #include <unordered_map>
                                          +
                                          39 #include <unordered_set>
                                          +
                                          40 
                                          +
                                          41 #include <string>
                                          +
                                          42 #include <typeinfo>
                                          +
                                          43 #ifdef __GNUG__
                                          +
                                          44 #include <cstdlib>
                                          +
                                          45 #include <cxxabi.h>
                                          +
                                          46 #endif
                                          +
                                          47 
                                          +
                                          48 namespace scc {
                                          +
                                          49 using namespace rapidjson;
                                          +
                                          50 using writer_type = PrettyWriter<OStreamWrapper>;
                                          51 
                                          -
                                          52 namespace scc {
                                          -
                                          53 using namespace rapidjson;
                                          -
                                          54 using writer_type = PrettyWriter<OStreamWrapper>;
                                          -
                                          55 
                                          -
                                          56 namespace {
                                          -
                                          57 #ifdef __GNUG__
                                          -
                                          58 std::string demangle(const char* name) {
                                          -
                                          59  int status = -4; // some arbitrary value to eliminate the compiler warning
                                          -
                                          60  // enable c++11 by passing the flag -std=c++11 to g++
                                          -
                                          61  std::unique_ptr<char, void (*)(void*)> res{abi::__cxa_demangle(name, NULL, NULL, &status), std::free};
                                          -
                                          62  return (status == 0) ? res.get() : name;
                                          -
                                          63 }
                                          -
                                          64 #else
                                          -
                                          65 // does nothing if not g++
                                          -
                                          66 std::string demangle(const char* name) { return name; }
                                          -
                                          67 #endif
                                          -
                                          68 std::string demangle(const char* name);
                                          +
                                          52 namespace {
                                          +
                                          53 #ifdef __GNUG__
                                          +
                                          54 std::string demangle(const char* name) {
                                          +
                                          55  int status = -4; // some arbitrary value to eliminate the compiler warning
                                          +
                                          56  // enable c++11 by passing the flag -std=c++11 to g++
                                          +
                                          57  std::unique_ptr<char, void (*)(void*)> res{abi::__cxa_demangle(name, NULL, NULL, &status), std::free};
                                          +
                                          58  return (status == 0) ? res.get() : name;
                                          +
                                          59 }
                                          +
                                          60 #else
                                          +
                                          61 // does nothing if not g++
                                          +
                                          62 std::string demangle(const char* name) { return name; }
                                          +
                                          63 #endif
                                          +
                                          64 std::string demangle(const char* name);
                                          +
                                          65 
                                          +
                                          66 template <class T> std::string type(const T& t) { return demangle(typeid(t).name()); }
                                          +
                                          67 
                                          +
                                          68 unsigned object_counter{0};
                                          69 
                                          -
                                          70 template <class T> std::string type(const T& t) { return demangle(typeid(t).name()); }
                                          +
                                          70 struct Module;
                                          71 
                                          -
                                          72 unsigned object_counter{0};
                                          -
                                          73 
                                          -
                                          74 struct Module;
                                          -
                                          75 
                                          -
                                          76 struct Port {
                                          -
                                          77  std::string const fullname;
                                          -
                                          78  std::string const name;
                                          -
                                          79  void const* port_if{nullptr};
                                          -
                                          80  bool input{false};
                                          -
                                          81  std::string const type;
                                          -
                                          82  std::string const sig_name;
                                          -
                                          83  std::string const id{fmt::format("{}", ++object_counter)};
                                          -
                                          84  Module* const owner;
                                          -
                                          85 
                                          -
                                          86  Port(std::string const& fullname, std::string const& name, void const* ptr, bool input, std::string const& type, Module& owner,
                                          -
                                          87  std::string const& sig_name = "")
                                          -
                                          88  : fullname(fullname)
                                          -
                                          89  , name(name)
                                          -
                                          90  , port_if(ptr)
                                          -
                                          91  , input(input)
                                          -
                                          92  , type(type)
                                          -
                                          93  , sig_name(sig_name)
                                          -
                                          94  , owner(&owner) {}
                                          -
                                          95 };
                                          -
                                          96 
                                          -
                                          97 struct Module {
                                          -
                                          98  std::string const fullname;
                                          -
                                          99  std::string const name;
                                          -
                                          100  std::string const type;
                                          -
                                          101  Module* const parent;
                                          -
                                          102  std::string const id{fmt::format("{}", ++object_counter)};
                                          -
                                          103  std::deque<Module> submodules;
                                          -
                                          104  std::deque<Port> ports;
                                          -
                                          105 
                                          -
                                          106  Module(std::string const& fullname, std::string const& name, std::string const& type, Module& parent)
                                          -
                                          107  : fullname(fullname)
                                          -
                                          108  , name(name)
                                          -
                                          109  , type(type)
                                          -
                                          110  , parent(&parent) {}
                                          -
                                          111  Module(std::string const& fullname, std::string const& name, std::string const& type)
                                          -
                                          112  : fullname(fullname)
                                          -
                                          113  , name(name)
                                          -
                                          114  , type(type)
                                          -
                                          115  , parent(nullptr) {}
                                          -
                                          116 };
                                          -
                                          117 
                                          -
                                          118 const std::unordered_set<std::string> ignored_entities = {"tlm_initiator_socket",
                                          -
                                          119  "sc_export",
                                          -
                                          120  "sc_thread_process",
                                          -
                                          121  "sc_signal",
                                          -
                                          122  "sc_object",
                                          -
                                          123  "sc_fifo",
                                          -
                                          124  "sc_method_process",
                                          -
                                          125  "sc_mutex",
                                          -
                                          126  "sc_vector",
                                          -
                                          127  "sc_semaphore_ordered",
                                          -
                                          128  "sc_variable",
                                          -
                                          129  "sc_prim_channel",
                                          -
                                          130  "tlm_signal",
                                          -
                                          131  "tlm_fifo",
                                          -
                                          132  "sc_register",
                                          -
                                          133  "sc_buffer"};
                                          +
                                          72 struct Port {
                                          +
                                          73  std::string const fullname;
                                          +
                                          74  std::string const name;
                                          +
                                          75  void const* port_if{nullptr};
                                          +
                                          76  bool input{false};
                                          +
                                          77  std::string const type;
                                          +
                                          78  std::string const sig_name;
                                          +
                                          79  std::string const id{fmt::format("{}", ++object_counter)};
                                          +
                                          80  Module* const owner;
                                          +
                                          81 
                                          +
                                          82  Port(std::string const& fullname, std::string const& name, void const* ptr, bool input, std::string const& type, Module& owner,
                                          +
                                          83  std::string const& sig_name = "")
                                          +
                                          84  : fullname(fullname)
                                          +
                                          85  , name(name)
                                          +
                                          86  , port_if(ptr)
                                          +
                                          87  , input(input)
                                          +
                                          88  , type(type)
                                          +
                                          89  , sig_name(sig_name)
                                          +
                                          90  , owner(&owner) {}
                                          +
                                          91 };
                                          +
                                          92 
                                          +
                                          93 struct Module {
                                          +
                                          94  std::string const fullname;
                                          +
                                          95  std::string const name;
                                          +
                                          96  std::string const type;
                                          +
                                          97  Module* const parent;
                                          +
                                          98  std::string const id{fmt::format("{}", ++object_counter)};
                                          +
                                          99  std::deque<std::unique_ptr<Module>> submodules;
                                          +
                                          100  std::deque<Port> ports;
                                          +
                                          101 
                                          +
                                          102  Module(std::string const& fullname, std::string const& name, std::string const& type, Module& parent)
                                          +
                                          103  : fullname(fullname)
                                          +
                                          104  , name(name)
                                          +
                                          105  , type(type)
                                          +
                                          106  , parent(&parent) {}
                                          +
                                          107  Module(std::string const& fullname, std::string const& name, std::string const& type)
                                          +
                                          108  : fullname(fullname)
                                          +
                                          109  , name(name)
                                          +
                                          110  , type(type)
                                          +
                                          111  , parent(nullptr) {}
                                          +
                                          112 };
                                          +
                                          113 
                                          +
                                          114 const std::unordered_set<std::string> ignored_entities = {"tlm_initiator_socket",
                                          +
                                          115  "sc_export",
                                          +
                                          116  "sc_thread_process",
                                          +
                                          117  "sc_signal",
                                          +
                                          118  "sc_object",
                                          +
                                          119  "sc_fifo",
                                          +
                                          120  "sc_method_process",
                                          +
                                          121  "sc_mutex",
                                          +
                                          122  "sc_vector",
                                          +
                                          123  "sc_semaphore_ordered",
                                          +
                                          124  "sc_variable",
                                          +
                                          125  "sc_prim_channel",
                                          +
                                          126  "tlm_signal",
                                          +
                                          127  "tlm_fifo",
                                          +
                                          128  "sc_register",
                                          +
                                          129  "sc_buffer"};
                                          +
                                          130 
                                          +
                                          131 const std::unordered_set<std::string> module_entities = {
                                          +
                                          132  "sc_module", "uvm::uvm_root", "uvm::uvm_test", "uvm::uvm_env", "uvm::uvm_component",
                                          +
                                          133  "uvm::uvm_agent", "uvm::uvm_monitor", "uvm::uvm_scoreboard", "uvm::uvm_driver", "uvm::uvm_sequencer"};
                                          134 
                                          -
                                          135 const std::unordered_set<std::string> module_entities = {
                                          -
                                          136  "sc_module", "uvm::uvm_root", "uvm::uvm_test", "uvm::uvm_env", "uvm::uvm_component",
                                          -
                                          137  "uvm::uvm_agent", "uvm::uvm_monitor", "uvm::uvm_scoreboard", "uvm::uvm_driver", "uvm::uvm_sequencer"};
                                          -
                                          138 
                                          -
                                          139 std::string indent{" "};
                                          -
                                          140 std::string operator*(std::string const& str, const unsigned int level) {
                                          -
                                          141  std::ostringstream ss;
                                          -
                                          142  for(unsigned int i = 0; i < level; i++)
                                          -
                                          143  ss << str;
                                          -
                                          144  return ss.str();
                                          -
                                          145 }
                                          -
                                          146 
                                          -
                                          147 #if TLM_VERSION_MAJOR == 2 and TLM_VERSION_MINOR == 0
                                          -
                                          148 #if TLM_VERSION_PATCH == 6
                                          -
                                          149 #define GET_EXPORT_IF(tptr) tptr->get_base_export().get_interface()
                                          -
                                          150 #define GET_PORT_IF(tptr) tptr->get_base_port().get_interface()
                                          -
                                          151 #elif TLM_VERSION_PATCH == 5
                                          -
                                          152 #define GET_EXPORT_IF(tptr) tptr->get_export_base().get_interface()
                                          -
                                          153 #define GET_PORT_IF(tptr) tptr->get_port_base().get_interface()
                                          -
                                          154 #else
                                          -
                                          155 #define NO_TLM_EXTRACT
                                          -
                                          156 #endif
                                          -
                                          157 #endif
                                          -
                                          158 
                                          -
                                          159 std::vector<std::string> scan_object(sc_core::sc_object const* obj, Module& currentModule, unsigned const level) {
                                          -
                                          160  std::string name{obj->basename()};
                                          -
                                          161  if(name.substr(0, 3) == "$$$")
                                          -
                                          162  return {};
                                          -
                                          163  SCCDEBUG() << indent * level << obj->name() << "(" << obj->kind() << "), id=" << (object_counter + 1);
                                          -
                                          164  std::string kind{obj->kind()};
                                          -
                                          165  if(auto const* mod = dynamic_cast<sc_core::sc_module const*>(obj)) {
                                          -
                                          166  currentModule.submodules.push_back(Module(obj->name(), name, type(*obj), currentModule));
                                          -
                                          167  std::unordered_set<std::string> keep_outs;
                                          -
                                          168  for(auto* child : mod->get_child_objects()) {
                                          -
                                          169  const std::string child_name{child->basename()};
                                          -
                                          170  if(child_name.substr(0, 3) == "$$$")
                                          -
                                          171  continue;
                                          -
                                          172  if(!keep_outs.empty()) {
                                          -
                                          173  auto it = std::find_if(std::begin(keep_outs), std::end(keep_outs), [&child_name](std::string const& e) {
                                          -
                                          174  return child_name.size() > e.size() && child_name.substr(0, e.size()) == e;
                                          -
                                          175  });
                                          -
                                          176  if(it != std::end(keep_outs))
                                          -
                                          177  continue;
                                          -
                                          178  }
                                          -
                                          179  auto ks = scan_object(child, currentModule.submodules.back(), level + 1);
                                          -
                                          180  if(ks.size())
                                          -
                                          181  for(auto& s : ks)
                                          -
                                          182  keep_outs.insert(s);
                                          -
                                          183  }
                                          -
                                          184  } else if(kind == "sc_clock") {
                                          -
                                          185  sc_core::sc_prim_channel const* prim_chan = dynamic_cast<sc_core::sc_prim_channel const*>(obj);
                                          -
                                          186  currentModule.submodules.push_back(Module(obj->name(), name, type(*obj), currentModule));
                                          -
                                          187  currentModule.submodules.back().ports.push_back(Port(std::string(obj->name()) + "." + name, name, prim_chan, false, obj->kind(),
                                          -
                                          188  currentModule.submodules.back(), obj->basename()));
                                          -
                                          189 #ifndef NO_TLM_EXTRACT
                                          -
                                          190 #ifndef NCSC
                                          -
                                          191  } else if(auto const* tptr = dynamic_cast<tlm::tlm_base_socket_if const*>(obj)) {
                                          -
                                          192  auto cat = tptr->get_socket_category();
                                          -
                                          193  bool input = (cat & tlm::TLM_TARGET_SOCKET) == tlm::TLM_TARGET_SOCKET;
                                          -
                                          194  if(input) {
                                          -
                                          195  currentModule.ports.push_back(Port(obj->name(), name, GET_EXPORT_IF(tptr), input, kind, currentModule));
                                          -
                                          196  return {name + "_port", name + "_port_0"};
                                          -
                                          197  } else {
                                          -
                                          198  currentModule.ports.push_back(Port(obj->name(), name, GET_PORT_IF(tptr), input, kind, currentModule));
                                          -
                                          199  return {name + "_export", name + "_export_0"};
                                          -
                                          200  }
                                          -
                                          201 #endif
                                          -
                                          202 #endif
                                          -
                                          203  } else if(auto const* optr = dynamic_cast<sc_core::sc_port_base const*>(obj)) {
                                          -
                                          204  sc_core::sc_interface const* if_ptr = optr->get_interface();
                                          -
                                          205  sc_core::sc_prim_channel const* if_obj = dynamic_cast<sc_core::sc_prim_channel const*>(if_ptr);
                                          -
                                          206  bool is_input = kind == "sc_in" || kind == "sc_fifo_in";
                                          -
                                          207  currentModule.ports.push_back(Port(obj->name(), name, if_obj ? static_cast<void const*>(if_obj) : static_cast<void const*>(if_ptr),
                                          -
                                          208  is_input, obj->kind(), currentModule, if_obj ? if_obj->basename() : ""));
                                          -
                                          209  } else if(auto const* optr = dynamic_cast<sc_core::sc_export_base const*>(obj)) {
                                          -
                                          210  sc_core::sc_interface const* pointer = optr->get_interface();
                                          -
                                          211  currentModule.ports.push_back(Port(obj->name(), name, pointer, true, obj->kind(), currentModule));
                                          -
                                          212 #if defined(RECORD_UVM_ANALYSIS)
                                          -
                                          213  } else if(kind == "sc_object" && dynamic_cast<sc_core::sc_interface const*>(obj)) {
                                          -
                                          214  auto const* ifptr = dynamic_cast<sc_core::sc_interface const*>(obj);
                                          -
                                          215  currentModule.ports.push_back(Port(obj->name(), name, ifptr, false, obj->kind(), currentModule));
                                          -
                                          216 #endif
                                          -
                                          217  } else if(ignored_entities.find(kind) == ignored_entities.end()) {
                                          -
                                          218  SCCWARN() << "object not known (" << kind << ")";
                                          -
                                          219  }
                                          -
                                          220  return {};
                                          -
                                          221 }
                                          -
                                          222 
                                          -
                                          223 using stack_t = std::deque<Module const*>;
                                          -
                                          224 using registry_t = std::unordered_map<void const*, std::vector<Port*>>;
                                          -
                                          225 
                                          -
                                          226 void collect_ports_rec(Module& m, registry_t& registry) {
                                          -
                                          227  for(auto& port : m.ports)
                                          -
                                          228  registry[port.port_if].emplace_back(&port);
                                          -
                                          229  for(auto& child : m.submodules)
                                          -
                                          230  collect_ports_rec(child, registry);
                                          -
                                          231 }
                                          -
                                          232 
                                          -
                                          233 using breadcrumb_t = std::tuple<Module*, bool>;
                                          -
                                          234 bool get_path_to(Module const* i, std::vector<breadcrumb_t>& bread_crumb, std::unordered_set<Module*>& visited) {
                                          -
                                          235  auto current_mod = std::get<0>(bread_crumb.back());
                                          -
                                          236  bool upwards = std::get<1>(bread_crumb.back());
                                          -
                                          237  if(current_mod == i)
                                          -
                                          238  return true;
                                          -
                                          239  if(visited.count(current_mod))
                                          -
                                          240  return false;
                                          -
                                          241  visited.insert(current_mod);
                                          -
                                          242  for(auto& c : current_mod->submodules) {
                                          -
                                          243  bread_crumb.emplace_back(&c, false);
                                          -
                                          244  if(get_path_to(i, bread_crumb, visited))
                                          -
                                          245  return true;
                                          -
                                          246  bread_crumb.pop_back();
                                          -
                                          247  }
                                          -
                                          248  if(upwards && current_mod->parent) {
                                          -
                                          249  bread_crumb.emplace_back(current_mod->parent, true);
                                          -
                                          250  if(get_path_to(i, bread_crumb, visited))
                                          -
                                          251  return true;
                                          -
                                          252  bread_crumb.pop_back();
                                          -
                                          253  }
                                          -
                                          254  return false;
                                          -
                                          255 }
                                          -
                                          256 
                                          -
                                          257 void infer_implicit_ports(Module& m) {
                                          -
                                          258  registry_t registry;
                                          -
                                          259  collect_ports_rec(m, registry);
                                          -
                                          260  for(auto& entry : registry) {
                                          -
                                          261  auto& ports = entry.second;
                                          -
                                          262  if(ports.size() > 1) {
                                          -
                                          263  auto o = std::find_if(std::begin(ports), std::end(ports), [](Port const* p) -> bool { return !p->input; });
                                          -
                                          264  auto i = std::find_if(std::begin(ports), std::end(ports), [](Port const* p) -> bool { return p->input; });
                                          -
                                          265  while(o != std::end(ports)) {
                                          -
                                          266  Port* start_port = *o;
                                          -
                                          267  Module* start_mod = start_port->owner;
                                          -
                                          268  while(i != std::end(ports)) {
                                          -
                                          269  Port* end_port = *i;
                                          -
                                          270  std::vector<breadcrumb_t> bread_crumb{std::make_tuple(start_mod, true)};
                                          -
                                          271  std::unordered_set<Module*> visited;
                                          -
                                          272  if(get_path_to(end_port->owner, bread_crumb, visited) && bread_crumb.size() > 1) {
                                          -
                                          273  void const* port_if = end_port->port_if;
                                          -
                                          274  auto last_upwards = false;
                                          -
                                          275  while(bread_crumb.size() > 1) {
                                          -
                                          276  auto mod = std::get<0>(bread_crumb.back());
                                          -
                                          277  auto upwards = std::get<1>(bread_crumb.back());
                                          -
                                          278  auto port_iter = std::find_if(std::begin(mod->ports), std::end(mod->ports),
                                          -
                                          279  [port_if](Port const& p) -> bool { return p.port_if == port_if; });
                                          -
                                          280  if(port_iter == std::end(mod->ports) && upwards == last_upwards) {
                                          -
                                          281  std::ostringstream oss;
                                          -
                                          282  auto ref_port = upwards ? start_port : end_port;
                                          -
                                          283  oss << mod->fullname << "." << ref_port->name;
                                          -
                                          284  mod->ports.push_back(Port(oss.str(), ref_port->name, port_if, !upwards, ref_port->type, *mod));
                                          -
                                          285  }
                                          -
                                          286  last_upwards = upwards;
                                          -
                                          287  bread_crumb.pop_back();
                                          -
                                          288  }
                                          -
                                          289  }
                                          -
                                          290  i++;
                                          -
                                          291  }
                                          -
                                          292  o++;
                                          -
                                          293  }
                                          -
                                          294  }
                                          -
                                          295  }
                                          -
                                          296 }
                                          -
                                          297 void generate_elk(std::ostream& e, Module const& module, unsigned level = 0) {
                                          -
                                          298  SCCDEBUG() << module.name;
                                          -
                                          299  unsigned num_in{0}, num_out{0};
                                          -
                                          300  for(auto& port : module.ports)
                                          -
                                          301  if(port.input)
                                          -
                                          302  num_in++;
                                          -
                                          303  else
                                          -
                                          304  num_out++;
                                          -
                                          305  if(!module.ports.size() && !module.submodules.size())
                                          -
                                          306  return;
                                          -
                                          307  e << indent * level << "node " << module.name << " {"
                                          -
                                          308  << "\n";
                                          -
                                          309  level++;
                                          -
                                          310  e << indent * level << "layout [ size: 50, " << std::max(80U, std::max(num_in, num_out) * 20) << " ]\n";
                                          -
                                          311  e << indent * level << "portConstraints: FIXED_SIDE\n";
                                          -
                                          312  e << indent * level << "label \"" << module.name << "\"\n";
                                          -
                                          313 
                                          -
                                          314  for(auto& port : module.ports) {
                                          -
                                          315  SCCDEBUG() << " " << port.name << "\n";
                                          -
                                          316  auto side = port.input ? "WEST" : "EAST";
                                          -
                                          317  e << indent * level << "port " << port.name << " { ^port.side: " << side << " label '" << port.name << "' }\n";
                                          -
                                          318  }
                                          -
                                          319 
                                          -
                                          320  for(auto& m : module.submodules)
                                          -
                                          321  generate_elk(e, m, level);
                                          -
                                          322  // Draw edges module <-> submodule:
                                          -
                                          323  for(auto& srcport : module.ports) {
                                          -
                                          324  if(srcport.port_if)
                                          -
                                          325  for(auto& tgtmod : module.submodules) {
                                          -
                                          326  for(auto& tgtport : tgtmod.ports) {
                                          -
                                          327  if(tgtport.port_if == srcport.port_if)
                                          -
                                          328  e << indent * level << "edge " << srcport.fullname << " -> " << tgtport.fullname << "\n";
                                          -
                                          329  }
                                          -
                                          330  }
                                          -
                                          331  }
                                          -
                                          332  // Draw edges submodule -> submodule:
                                          -
                                          333  for(auto& srcmod : module.submodules) {
                                          -
                                          334  for(auto& srcport : srcmod.ports) {
                                          -
                                          335  if(!srcport.input && srcport.port_if)
                                          -
                                          336  for(auto& tgtmod : module.submodules) {
                                          -
                                          337  for(auto& tgtport : tgtmod.ports) {
                                          -
                                          338  if(srcmod.fullname == tgtmod.fullname && tgtport.fullname == srcport.fullname)
                                          -
                                          339  continue;
                                          -
                                          340  if(tgtport.port_if == srcport.port_if && tgtport.input)
                                          -
                                          341  e << indent * level << "edge " << srcport.fullname << " -> " << tgtport.fullname << "\n";
                                          -
                                          342  }
                                          -
                                          343  }
                                          -
                                          344  }
                                          -
                                          345  }
                                          -
                                          346  level--;
                                          -
                                          347  e << indent * level << "}\n"
                                          -
                                          348  << "\n";
                                          -
                                          349 }
                                          -
                                          350 
                                          -
                                          351 void generate_port_json(writer_type& writer, hierarchy_dumper::file_type type, const scc::Port& p) {
                                          -
                                          352  writer.StartObject();
                                          -
                                          353  {
                                          -
                                          354  writer.Key("id");
                                          -
                                          355  writer.String(p.id.c_str());
                                          -
                                          356  if(type != hierarchy_dumper::D3JSON) {
                                          -
                                          357  writer.Key("labels");
                                          -
                                          358  writer.StartArray();
                                          -
                                          359  {
                                          -
                                          360  writer.StartObject();
                                          -
                                          361  {
                                          -
                                          362  writer.Key("text");
                                          -
                                          363  writer.String(p.name.c_str());
                                          -
                                          364  }
                                          -
                                          365  writer.EndObject();
                                          -
                                          366  }
                                          -
                                          367  writer.EndArray();
                                          -
                                          368  writer.Key("width");
                                          -
                                          369  writer.Uint(6);
                                          -
                                          370  writer.Key("height");
                                          -
                                          371  writer.Uint(6);
                                          -
                                          372  writer.Key("layoutOptions");
                                          -
                                          373  writer.StartObject();
                                          -
                                          374  {
                                          -
                                          375  writer.Key("port.side");
                                          -
                                          376  writer.String(p.input ? "WEST" : "EAST");
                                          -
                                          377  }
                                          -
                                          378  writer.EndObject();
                                          -
                                          379  if(type == hierarchy_dumper::DBGJSON) {
                                          -
                                          380  writer.Key("type");
                                          -
                                          381  writer.String(p.type.c_str());
                                          -
                                          382  writer.Key("input");
                                          -
                                          383  writer.Bool(p.input);
                                          -
                                          384  writer.Key("interface");
                                          -
                                          385  writer.Uint64(reinterpret_cast<uintptr_t>(p.port_if));
                                          -
                                          386  }
                                          -
                                          387  } else {
                                          -
                                          388  writer.Key("direction");
                                          -
                                          389  writer.String(p.input ? "INPUT" : "OUTPUT");
                                          -
                                          390  writer.Key("hwMeta");
                                          -
                                          391  writer.StartObject();
                                          -
                                          392  {
                                          -
                                          393  writer.Key("name");
                                          -
                                          394  writer.String(p.name.c_str());
                                          -
                                          395  // writer.Key("cssClass"); writer.String("node-style0");
                                          -
                                          396  // writer.Key("cssStyle"); writer.String("fill:red");
                                          -
                                          397  writer.Key("connectedAsParent");
                                          -
                                          398  writer.Bool(false);
                                          -
                                          399  }
                                          -
                                          400  writer.EndObject();
                                          -
                                          401  writer.Key("properties");
                                          -
                                          402  writer.StartObject();
                                          -
                                          403  {
                                          -
                                          404  writer.Key("side");
                                          -
                                          405  writer.String(p.input ? "WEST" : "EAST");
                                          -
                                          406  // writer.Key("index"); writer.Int(0);
                                          -
                                          407  }
                                          -
                                          408  writer.EndObject();
                                          -
                                          409  writer.Key("children");
                                          -
                                          410  writer.StartArray();
                                          -
                                          411  writer.EndArray();
                                          -
                                          412  }
                                          -
                                          413  }
                                          -
                                          414  writer.EndObject();
                                          -
                                          415 }
                                          -
                                          416 
                                          -
                                          417 void generate_edge_json(writer_type& writer, const scc::Port& srcport, const scc::Port& tgtport) {
                                          -
                                          418  writer.StartObject();
                                          -
                                          419  {
                                          -
                                          420  auto edge_name = fmt::format("{}", ++object_counter);
                                          -
                                          421  writer.Key("id");
                                          -
                                          422  writer.String(edge_name.c_str());
                                          -
                                          423  writer.Key("sources");
                                          +
                                          135 std::string indent{" "};
                                          +
                                          136 std::string operator*(std::string const& str, const unsigned int level) {
                                          +
                                          137  std::ostringstream ss;
                                          +
                                          138  for(unsigned int i = 0; i < level; i++)
                                          +
                                          139  ss << str;
                                          +
                                          140  return ss.str();
                                          +
                                          141 }
                                          +
                                          142 
                                          +
                                          143 #if TLM_VERSION_MAJOR == 2 and TLM_VERSION_MINOR == 0
                                          +
                                          144 #if TLM_VERSION_PATCH == 6
                                          +
                                          145 #define GET_EXPORT_IF(tptr) tptr->get_base_export().get_interface()
                                          +
                                          146 #define GET_PORT_IF(tptr) tptr->get_base_port().get_interface()
                                          +
                                          147 #elif TLM_VERSION_PATCH == 5
                                          +
                                          148 #define GET_EXPORT_IF(tptr) tptr->get_export_base().get_interface()
                                          +
                                          149 #define GET_PORT_IF(tptr) tptr->get_port_base().get_interface()
                                          +
                                          150 #else
                                          +
                                          151 #define NO_TLM_EXTRACT
                                          +
                                          152 #endif
                                          +
                                          153 #endif
                                          +
                                          154 
                                          +
                                          155 std::vector<std::string> scan_object(sc_core::sc_object const* obj, Module& currentModule, unsigned const level) {
                                          +
                                          156  std::string name{obj->basename()};
                                          +
                                          157  if(name.substr(0, 3) == "$$$")
                                          +
                                          158  return {};
                                          +
                                          159  SCCDEBUG() << indent * level << obj->name() << "(" << obj->kind() << "), id=" << (object_counter + 1);
                                          +
                                          160  std::string kind{obj->kind()};
                                          +
                                          161  if(auto const* mod = dynamic_cast<sc_core::sc_module const*>(obj)) {
                                          +
                                          162  currentModule.submodules.emplace_back(new Module(obj->name(), name, type(*obj), currentModule));
                                          +
                                          163  std::unordered_set<std::string> keep_outs;
                                          +
                                          164  for(auto* child : mod->get_child_objects()) {
                                          +
                                          165  const std::string child_name{child->basename()};
                                          +
                                          166  if(child_name.substr(0, 3) == "$$$")
                                          +
                                          167  continue;
                                          +
                                          168  if(!keep_outs.empty()) {
                                          +
                                          169  auto it = std::find_if(std::begin(keep_outs), std::end(keep_outs), [&child_name](std::string const& e) {
                                          +
                                          170  return child_name.size() > e.size() && child_name.substr(0, e.size()) == e;
                                          +
                                          171  });
                                          +
                                          172  if(it != std::end(keep_outs))
                                          +
                                          173  continue;
                                          +
                                          174  }
                                          +
                                          175  auto ks = scan_object(child, *currentModule.submodules.back(), level + 1);
                                          +
                                          176  if(ks.size())
                                          +
                                          177  for(auto& s : ks)
                                          +
                                          178  keep_outs.insert(s);
                                          +
                                          179  }
                                          +
                                          180  } else if(kind == "sc_clock") {
                                          +
                                          181  sc_core::sc_prim_channel const* prim_chan = dynamic_cast<sc_core::sc_prim_channel const*>(obj);
                                          +
                                          182  currentModule.submodules.emplace_back(new Module(obj->name(), name, type(*obj), currentModule));
                                          +
                                          183  currentModule.submodules.back()->ports.push_back(Port(std::string(obj->name()) + "." + name, name, prim_chan, false, obj->kind(),
                                          +
                                          184  *currentModule.submodules.back(), obj->basename()));
                                          +
                                          185 #ifndef NO_TLM_EXTRACT
                                          +
                                          186 #ifndef NCSC
                                          +
                                          187  } else if(auto const* tptr = dynamic_cast<tlm::tlm_base_socket_if const*>(obj)) {
                                          +
                                          188  auto cat = tptr->get_socket_category();
                                          +
                                          189  bool input = (cat & tlm::TLM_TARGET_SOCKET) == tlm::TLM_TARGET_SOCKET;
                                          +
                                          190  if(input) {
                                          +
                                          191  currentModule.ports.push_back(Port(obj->name(), name, GET_EXPORT_IF(tptr), input, kind, currentModule));
                                          +
                                          192  return {name + "_port", name + "_port_0"};
                                          +
                                          193  } else {
                                          +
                                          194  currentModule.ports.push_back(Port(obj->name(), name, GET_PORT_IF(tptr), input, kind, currentModule));
                                          +
                                          195  return {name + "_export", name + "_export_0"};
                                          +
                                          196  }
                                          +
                                          197 #endif
                                          +
                                          198 #endif
                                          +
                                          199  } else if(auto const* optr = dynamic_cast<sc_core::sc_port_base const*>(obj)) {
                                          +
                                          200  sc_core::sc_interface const* if_ptr = optr->get_interface();
                                          +
                                          201  sc_core::sc_prim_channel const* if_obj = dynamic_cast<sc_core::sc_prim_channel const*>(if_ptr);
                                          +
                                          202  bool is_input = kind == "sc_in" || kind == "sc_fifo_in";
                                          +
                                          203  currentModule.ports.push_back(Port(obj->name(), name, if_obj ? static_cast<void const*>(if_obj) : static_cast<void const*>(if_ptr),
                                          +
                                          204  is_input, obj->kind(), currentModule, if_obj ? if_obj->basename() : ""));
                                          +
                                          205  } else if(auto const* optr = dynamic_cast<sc_core::sc_export_base const*>(obj)) {
                                          +
                                          206  sc_core::sc_interface const* pointer = optr->get_interface();
                                          +
                                          207  currentModule.ports.push_back(Port(obj->name(), name, pointer, true, obj->kind(), currentModule));
                                          +
                                          208 #if defined(RECORD_UVM_ANALYSIS)
                                          +
                                          209  } else if(kind == "sc_object" && dynamic_cast<sc_core::sc_interface const*>(obj)) {
                                          +
                                          210  auto const* ifptr = dynamic_cast<sc_core::sc_interface const*>(obj);
                                          +
                                          211  currentModule.ports.push_back(Port(obj->name(), name, ifptr, false, obj->kind(), currentModule));
                                          +
                                          212 #endif
                                          +
                                          213  } else if(ignored_entities.find(kind) == ignored_entities.end()) {
                                          +
                                          214  SCCWARN() << "object not known (" << kind << ")";
                                          +
                                          215  }
                                          +
                                          216  return {};
                                          +
                                          217 }
                                          +
                                          218 
                                          +
                                          219 using stack_t = std::deque<Module const*>;
                                          +
                                          220 using registry_t = std::unordered_map<void const*, std::vector<Port*>>;
                                          +
                                          221 
                                          +
                                          222 void collect_ports_rec(Module& m, registry_t& registry) {
                                          +
                                          223  for(auto& port : m.ports)
                                          +
                                          224  registry[port.port_if].emplace_back(&port);
                                          +
                                          225  for(auto& child : m.submodules)
                                          +
                                          226  collect_ports_rec(*child, registry);
                                          +
                                          227 }
                                          +
                                          228 
                                          +
                                          229 using breadcrumb_t = std::tuple<Module*, bool>;
                                          +
                                          230 bool get_path_to(Module const* i, std::vector<breadcrumb_t>& bread_crumb, std::unordered_set<Module*>& visited) {
                                          +
                                          231  auto current_mod = std::get<0>(bread_crumb.back());
                                          +
                                          232  bool upwards = std::get<1>(bread_crumb.back());
                                          +
                                          233  if(current_mod == i)
                                          +
                                          234  return true;
                                          +
                                          235  if(visited.count(current_mod))
                                          +
                                          236  return false;
                                          +
                                          237  visited.insert(current_mod);
                                          +
                                          238  for(auto& c : current_mod->submodules) {
                                          +
                                          239  bread_crumb.emplace_back(c.get(), false);
                                          +
                                          240  if(get_path_to(i, bread_crumb, visited))
                                          +
                                          241  return true;
                                          +
                                          242  bread_crumb.pop_back();
                                          +
                                          243  }
                                          +
                                          244  if(upwards && current_mod->parent) {
                                          +
                                          245  bread_crumb.emplace_back(current_mod->parent, true);
                                          +
                                          246  if(get_path_to(i, bread_crumb, visited))
                                          +
                                          247  return true;
                                          +
                                          248  bread_crumb.pop_back();
                                          +
                                          249  }
                                          +
                                          250  return false;
                                          +
                                          251 }
                                          +
                                          252 
                                          +
                                          253 void infer_implicit_ports(Module& m) {
                                          +
                                          254  registry_t registry;
                                          +
                                          255  collect_ports_rec(m, registry);
                                          +
                                          256  for(auto& entry : registry) {
                                          +
                                          257  auto& ports = entry.second;
                                          +
                                          258  if(ports.size() > 1) {
                                          +
                                          259  auto o = std::find_if(std::begin(ports), std::end(ports), [](Port const* p) -> bool { return !p->input; });
                                          +
                                          260  auto i = std::find_if(std::begin(ports), std::end(ports), [](Port const* p) -> bool { return p->input; });
                                          +
                                          261  while(o != std::end(ports)) {
                                          +
                                          262  Port* start_port = *o;
                                          +
                                          263  Module* start_mod = start_port->owner;
                                          +
                                          264  while(i != std::end(ports)) {
                                          +
                                          265  Port* end_port = *i;
                                          +
                                          266  std::vector<breadcrumb_t> bread_crumb{std::make_tuple(start_mod, true)};
                                          +
                                          267  std::unordered_set<Module*> visited;
                                          +
                                          268  if(get_path_to(end_port->owner, bread_crumb, visited) && bread_crumb.size() > 1) {
                                          +
                                          269  void const* port_if = end_port->port_if;
                                          +
                                          270  auto last_upwards = false;
                                          +
                                          271  while(bread_crumb.size() > 1) {
                                          +
                                          272  auto mod = std::get<0>(bread_crumb.back());
                                          +
                                          273  auto upwards = std::get<1>(bread_crumb.back());
                                          +
                                          274  auto port_iter = std::find_if(std::begin(mod->ports), std::end(mod->ports),
                                          +
                                          275  [port_if](Port const& p) -> bool { return p.port_if == port_if; });
                                          +
                                          276  if(port_iter == std::end(mod->ports) && upwards == last_upwards) {
                                          +
                                          277  std::ostringstream oss;
                                          +
                                          278  auto ref_port = upwards ? start_port : end_port;
                                          +
                                          279  oss << mod->fullname << "." << ref_port->name;
                                          +
                                          280  mod->ports.push_back(Port(oss.str(), ref_port->name, port_if, !upwards, ref_port->type, *mod));
                                          +
                                          281  }
                                          +
                                          282  last_upwards = upwards;
                                          +
                                          283  bread_crumb.pop_back();
                                          +
                                          284  }
                                          +
                                          285  }
                                          +
                                          286  i++;
                                          +
                                          287  }
                                          +
                                          288  o++;
                                          +
                                          289  }
                                          +
                                          290  }
                                          +
                                          291  }
                                          +
                                          292 }
                                          +
                                          293 void generate_elk(std::ostream& e, Module const& module, unsigned level = 0) {
                                          +
                                          294  SCCDEBUG() << module.name;
                                          +
                                          295  unsigned num_in{0}, num_out{0};
                                          +
                                          296  for(auto& port : module.ports)
                                          +
                                          297  if(port.input)
                                          +
                                          298  num_in++;
                                          +
                                          299  else
                                          +
                                          300  num_out++;
                                          +
                                          301  if(!module.ports.size() && !module.submodules.size())
                                          +
                                          302  return;
                                          +
                                          303  e << indent * level << "node " << module.name << " {"
                                          +
                                          304  << "\n";
                                          +
                                          305  level++;
                                          +
                                          306  e << indent * level << "layout [ size: 50, " << std::max(80U, std::max(num_in, num_out) * 20) << " ]\n";
                                          +
                                          307  e << indent * level << "portConstraints: FIXED_SIDE\n";
                                          +
                                          308  e << indent * level << "label \"" << module.name << "\"\n";
                                          +
                                          309 
                                          +
                                          310  for(auto& port : module.ports) {
                                          +
                                          311  SCCDEBUG() << " " << port.name << "\n";
                                          +
                                          312  auto side = port.input ? "WEST" : "EAST";
                                          +
                                          313  e << indent * level << "port " << port.name << " { ^port.side: " << side << " label '" << port.name << "' }\n";
                                          +
                                          314  }
                                          +
                                          315 
                                          +
                                          316  for(auto& m : module.submodules)
                                          +
                                          317  generate_elk(e, *m, level);
                                          +
                                          318  // Draw edges module <-> submodule:
                                          +
                                          319  for(auto& srcport : module.ports) {
                                          +
                                          320  if(srcport.port_if)
                                          +
                                          321  for(auto& tgtmod : module.submodules) {
                                          +
                                          322  for(auto& tgtport : tgtmod->ports) {
                                          +
                                          323  if(tgtport.port_if == srcport.port_if)
                                          +
                                          324  e << indent * level << "edge " << srcport.fullname << " -> " << tgtport.fullname << "\n";
                                          +
                                          325  }
                                          +
                                          326  }
                                          +
                                          327  }
                                          +
                                          328  // Draw edges submodule -> submodule:
                                          +
                                          329  for(auto& srcmod : module.submodules) {
                                          +
                                          330  for(auto& srcport : srcmod->ports) {
                                          +
                                          331  if(!srcport.input && srcport.port_if)
                                          +
                                          332  for(auto& tgtmod : module.submodules) {
                                          +
                                          333  for(auto& tgtport : tgtmod->ports) {
                                          +
                                          334  if(srcmod->fullname == tgtmod->fullname && tgtport.fullname == srcport.fullname)
                                          +
                                          335  continue;
                                          +
                                          336  if(tgtport.port_if == srcport.port_if && tgtport.input)
                                          +
                                          337  e << indent * level << "edge " << srcport.fullname << " -> " << tgtport.fullname << "\n";
                                          +
                                          338  }
                                          +
                                          339  }
                                          +
                                          340  }
                                          +
                                          341  }
                                          +
                                          342  level--;
                                          +
                                          343  e << indent * level << "}\n"
                                          +
                                          344  << "\n";
                                          +
                                          345 }
                                          +
                                          346 
                                          +
                                          347 void generate_port_json(writer_type& writer, hierarchy_dumper::file_type type, const scc::Port& p) {
                                          +
                                          348  writer.StartObject();
                                          +
                                          349  {
                                          +
                                          350  writer.Key("id");
                                          +
                                          351  writer.String(p.id.c_str());
                                          +
                                          352  if(type != hierarchy_dumper::D3JSON) {
                                          +
                                          353  writer.Key("labels");
                                          +
                                          354  writer.StartArray();
                                          +
                                          355  {
                                          +
                                          356  writer.StartObject();
                                          +
                                          357  {
                                          +
                                          358  writer.Key("text");
                                          +
                                          359  writer.String(p.name.c_str());
                                          +
                                          360  }
                                          +
                                          361  writer.EndObject();
                                          +
                                          362  }
                                          +
                                          363  writer.EndArray();
                                          +
                                          364  writer.Key("width");
                                          +
                                          365  writer.Uint(6);
                                          +
                                          366  writer.Key("height");
                                          +
                                          367  writer.Uint(6);
                                          +
                                          368  writer.Key("layoutOptions");
                                          +
                                          369  writer.StartObject();
                                          +
                                          370  {
                                          +
                                          371  writer.Key("port.side");
                                          +
                                          372  writer.String(p.input ? "WEST" : "EAST");
                                          +
                                          373  }
                                          +
                                          374  writer.EndObject();
                                          +
                                          375  if(type == hierarchy_dumper::DBGJSON) {
                                          +
                                          376  writer.Key("type");
                                          +
                                          377  writer.String(p.type.c_str());
                                          +
                                          378  writer.Key("input");
                                          +
                                          379  writer.Bool(p.input);
                                          +
                                          380  writer.Key("interface");
                                          +
                                          381  writer.Uint64(reinterpret_cast<uintptr_t>(p.port_if));
                                          +
                                          382  }
                                          +
                                          383  } else {
                                          +
                                          384  writer.Key("direction");
                                          +
                                          385  writer.String(p.input ? "INPUT" : "OUTPUT");
                                          +
                                          386  writer.Key("hwMeta");
                                          +
                                          387  writer.StartObject();
                                          +
                                          388  {
                                          +
                                          389  writer.Key("name");
                                          +
                                          390  writer.String(p.name.c_str());
                                          +
                                          391  // writer.Key("cssClass"); writer.String("node-style0");
                                          +
                                          392  // writer.Key("cssStyle"); writer.String("fill:red");
                                          +
                                          393  writer.Key("connectedAsParent");
                                          +
                                          394  writer.Bool(false);
                                          +
                                          395  }
                                          +
                                          396  writer.EndObject();
                                          +
                                          397  writer.Key("properties");
                                          +
                                          398  writer.StartObject();
                                          +
                                          399  {
                                          +
                                          400  writer.Key("side");
                                          +
                                          401  writer.String(p.input ? "WEST" : "EAST");
                                          +
                                          402  // writer.Key("index"); writer.Int(0);
                                          +
                                          403  }
                                          +
                                          404  writer.EndObject();
                                          +
                                          405  writer.Key("children");
                                          +
                                          406  writer.StartArray();
                                          +
                                          407  writer.EndArray();
                                          +
                                          408  }
                                          +
                                          409  }
                                          +
                                          410  writer.EndObject();
                                          +
                                          411 }
                                          +
                                          412 
                                          +
                                          413 void generate_edge_json(writer_type& writer, const scc::Port& srcport, const scc::Port& tgtport) {
                                          +
                                          414  writer.StartObject();
                                          +
                                          415  {
                                          +
                                          416  auto edge_name = fmt::format("{}", ++object_counter);
                                          +
                                          417  writer.Key("id");
                                          +
                                          418  writer.String(edge_name.c_str());
                                          +
                                          419  writer.Key("sources");
                                          +
                                          420  writer.StartArray();
                                          +
                                          421  { writer.String(srcport.id.c_str()); }
                                          +
                                          422  writer.EndArray();
                                          +
                                          423  writer.Key("targets");
                                          424  writer.StartArray();
                                          -
                                          425  { writer.String(srcport.id.c_str()); }
                                          +
                                          425  { writer.String(tgtport.id.c_str()); }
                                          426  writer.EndArray();
                                          -
                                          427  writer.Key("targets");
                                          -
                                          428  writer.StartArray();
                                          -
                                          429  { writer.String(tgtport.id.c_str()); }
                                          -
                                          430  writer.EndArray();
                                          -
                                          431  }
                                          -
                                          432  writer.EndObject();
                                          -
                                          433 }
                                          -
                                          434 
                                          -
                                          435 void generate_edge_d3_json(writer_type& writer, const scc::Module& srcmod, const scc::Port& srcport, const scc::Module& tgtmod,
                                          -
                                          436  const scc::Port& tgtport) {
                                          -
                                          437  writer.StartObject();
                                          -
                                          438  {
                                          -
                                          439  auto edge_name = fmt::format("{}", ++object_counter);
                                          -
                                          440  writer.Key("id");
                                          -
                                          441  writer.String(edge_name.c_str());
                                          -
                                          442  writer.Key("source");
                                          -
                                          443  writer.String(srcmod.id.c_str());
                                          -
                                          444  writer.Key("sourcePort");
                                          -
                                          445  writer.String(srcport.id.c_str());
                                          -
                                          446  writer.Key("target");
                                          -
                                          447  writer.String(tgtmod.id.c_str());
                                          -
                                          448  writer.Key("targetPort");
                                          -
                                          449  writer.String(tgtport.id.c_str());
                                          -
                                          450  writer.Key("hwMeta");
                                          -
                                          451  writer.StartObject();
                                          -
                                          452  {
                                          -
                                          453  if(srcport.sig_name.size()) {
                                          -
                                          454  writer.Key("name");
                                          -
                                          455  writer.String(srcport.sig_name.c_str());
                                          -
                                          456  } else if(tgtport.sig_name.size()) {
                                          -
                                          457  writer.Key("name");
                                          -
                                          458  writer.String(tgtport.sig_name.c_str());
                                          -
                                          459  } else {
                                          -
                                          460  writer.Key("name");
                                          -
                                          461  writer.String(fmt::format("{}_to_{}", srcport.name, tgtport.name).c_str());
                                          -
                                          462  }
                                          -
                                          463  // writer.Key("cssClass"); writer.String("link-style0");
                                          -
                                          464  // writer.Key("cssStyle"); writer.String("stroke:red");
                                          -
                                          465  }
                                          -
                                          466  writer.EndObject();
                                          -
                                          467  }
                                          -
                                          468  writer.EndObject();
                                          -
                                          469 }
                                          -
                                          470 
                                          -
                                          471 void generate_mod_json(writer_type& writer, hierarchy_dumper::file_type type, Module const& module, unsigned level = 0) {
                                          -
                                          472  unsigned num_in{0}, num_out{0};
                                          -
                                          473  for(auto& port : module.ports)
                                          -
                                          474  if(port.input)
                                          -
                                          475  num_in++;
                                          -
                                          476  else
                                          -
                                          477  num_out++;
                                          -
                                          478  writer.StartObject();
                                          -
                                          479  {
                                          -
                                          480  writer.Key("id");
                                          -
                                          481  writer.String(module.id.c_str());
                                          -
                                          482  // process ports
                                          -
                                          483  writer.Key("ports");
                                          -
                                          484  writer.StartArray();
                                          -
                                          485  {
                                          -
                                          486  for(auto& p : module.ports)
                                          -
                                          487  generate_port_json(writer, type, p);
                                          -
                                          488  }
                                          -
                                          489  writer.EndArray();
                                          -
                                          490  // process modules
                                          -
                                          491  if(type == hierarchy_dumper::D3JSON && module.parent)
                                          -
                                          492  writer.Key("_children");
                                          -
                                          493  else
                                          -
                                          494  writer.Key("children");
                                          -
                                          495  writer.StartArray();
                                          -
                                          496  {
                                          -
                                          497  for(auto& c : module.submodules)
                                          -
                                          498  generate_mod_json(writer, type, c, level * 1);
                                          -
                                          499  }
                                          -
                                          500  writer.EndArray();
                                          -
                                          501  // process connections
                                          -
                                          502  if(type == hierarchy_dumper::D3JSON && module.parent)
                                          -
                                          503  writer.Key("_edges");
                                          -
                                          504  else
                                          -
                                          505  writer.Key("edges");
                                          -
                                          506  writer.StartArray();
                                          -
                                          507  {
                                          -
                                          508  // Draw edges module <-> submodule:
                                          -
                                          509  for(auto& srcport : module.ports) {
                                          -
                                          510  if(srcport.port_if) {
                                          -
                                          511  for(auto& tgtmod : module.submodules) {
                                          -
                                          512  for(auto& tgtport : tgtmod.ports) {
                                          -
                                          513  if(tgtport.port_if == srcport.port_if)
                                          -
                                          514  if(type == hierarchy_dumper::D3JSON)
                                          -
                                          515  generate_edge_d3_json(writer, module, srcport, tgtmod, tgtport);
                                          -
                                          516  else
                                          -
                                          517  generate_edge_json(writer, srcport, tgtport);
                                          -
                                          518  }
                                          -
                                          519  }
                                          -
                                          520  }
                                          -
                                          521  }
                                          -
                                          522  // Draw edges submodule -> submodule:
                                          -
                                          523  for(auto& srcmod : module.submodules) {
                                          -
                                          524  for(auto& srcport : srcmod.ports) {
                                          -
                                          525  if(!srcport.input && srcport.port_if) {
                                          -
                                          526  for(auto& tgtmod : module.submodules) {
                                          -
                                          527  for(auto& tgtport : tgtmod.ports) {
                                          -
                                          528  if(srcmod.fullname == tgtmod.fullname && tgtport.fullname == srcport.fullname)
                                          -
                                          529  continue;
                                          -
                                          530  if(tgtport.port_if == srcport.port_if && tgtport.input)
                                          -
                                          531  if(type == hierarchy_dumper::D3JSON)
                                          -
                                          532  generate_edge_d3_json(writer, srcmod, srcport, tgtmod, tgtport);
                                          -
                                          533  else
                                          -
                                          534  generate_edge_json(writer, srcport, tgtport);
                                          -
                                          535  }
                                          -
                                          536  }
                                          -
                                          537  }
                                          -
                                          538  }
                                          -
                                          539  }
                                          -
                                          540  }
                                          -
                                          541  writer.EndArray();
                                          -
                                          542  if(type != hierarchy_dumper::D3JSON) {
                                          -
                                          543  writer.Key("labels");
                                          -
                                          544  writer.StartArray();
                                          -
                                          545  {
                                          -
                                          546  writer.StartObject();
                                          -
                                          547  {
                                          -
                                          548  writer.Key("text");
                                          -
                                          549  writer.String(module.name.c_str());
                                          -
                                          550  }
                                          -
                                          551  writer.EndObject();
                                          -
                                          552  }
                                          -
                                          553  writer.EndArray();
                                          -
                                          554  writer.Key("width");
                                          -
                                          555  writer.Uint(50);
                                          -
                                          556  writer.Key("height");
                                          -
                                          557  writer.Uint(std::max(80U, std::max(num_in, num_out) * 20));
                                          -
                                          558  if(type == hierarchy_dumper::DBGJSON) {
                                          -
                                          559  writer.Key("name");
                                          -
                                          560  writer.String(module.name.c_str());
                                          -
                                          561  writer.Key("type");
                                          -
                                          562  writer.String(module.type.c_str());
                                          -
                                          563  writer.Key("topmodule");
                                          -
                                          564  writer.Bool(!module.parent);
                                          -
                                          565  }
                                          -
                                          566  } else {
                                          -
                                          567  writer.Key("hwMeta");
                                          -
                                          568  writer.StartObject();
                                          -
                                          569  {
                                          -
                                          570  writer.Key("name");
                                          -
                                          571  writer.String(module.name.c_str());
                                          -
                                          572  writer.Key("cls");
                                          -
                                          573  writer.String(module.type.c_str());
                                          -
                                          574  // writer.Key("bodyText"); writer.String(module.type.c_str());
                                          -
                                          575  writer.Key("maxId");
                                          -
                                          576  writer.Uint(object_counter);
                                          -
                                          577  writer.Key("isExternalPort");
                                          -
                                          578  writer.Bool(false);
                                          -
                                          579  // writer.Key("cssClass"); writer.String("node-style0");
                                          -
                                          580  // writer.Key("cssStyle"); writer.String("fill:red");
                                          -
                                          581  }
                                          -
                                          582  writer.EndObject();
                                          -
                                          583  writer.Key("properties");
                                          -
                                          584  writer.StartObject();
                                          -
                                          585  {
                                          -
                                          586  writer.Key("org.eclipse.elk.layered.mergeEdges");
                                          -
                                          587  writer.Uint(1);
                                          -
                                          588  writer.Key("org.eclipse.elk.portConstraints");
                                          -
                                          589  writer.String("FIXED_SIDE");
                                          -
                                          590  }
                                          -
                                          591  writer.EndObject();
                                          -
                                          592  }
                                          -
                                          593  }
                                          -
                                          594  writer.EndObject();
                                          -
                                          595 }
                                          -
                                          596 
                                          -
                                          597 std::unique_ptr<Module> scan_object_tree() {
                                          -
                                          598  std::vector<sc_core::sc_object*> obja = sc_core::sc_get_top_level_objects();
                                          -
                                          599  if(obja.size() == 1 && std::string(obja[0]->kind()) == "sc_module" && std::string(obja[0]->basename()).substr(0, 3) != "$$$") {
                                          -
                                          600  SCCDEBUG() << obja[0]->name() << "(" << obja[0]->kind() << ")";
                                          -
                                          601  auto topModule = scc::make_unique<Module>(obja[0]->name(), obja[0]->basename(), type(*obja[0]));
                                          -
                                          602  for(auto* child : obja[0]->get_child_objects())
                                          -
                                          603  scan_object(child, *topModule, 1);
                                          -
                                          604  return topModule;
                                          -
                                          605  } else {
                                          -
                                          606  SCCDEBUG() << "sc_main ( function sc_main() )";
                                          -
                                          607  auto topModule = scc::make_unique<Module>("sc_main", "sc_main", "sc_main()");
                                          -
                                          608  for(auto* child : obja)
                                          -
                                          609  scan_object(child, *topModule, 1);
                                          -
                                          610  return topModule;
                                          -
                                          611  }
                                          -
                                          612 }
                                          -
                                          613 void dump_structure(std::ostream& e, hierarchy_dumper::file_type format) {
                                          -
                                          614  auto topModule = scan_object_tree();
                                          -
                                          615  infer_implicit_ports(*topModule);
                                          -
                                          616  if(format == hierarchy_dumper::ELKT) {
                                          -
                                          617  e << "algorithm: org.eclipse.elk.layered\n";
                                          -
                                          618  e << "edgeRouting: ORTHOGONAL\n";
                                          -
                                          619  generate_elk(e, *topModule);
                                          -
                                          620  SCCINFO() << "SystemC Structure Dumped to ELK file";
                                          -
                                          621  } else {
                                          -
                                          622  OStreamWrapper stream(e);
                                          -
                                          623  writer_type writer(stream);
                                          -
                                          624  writer.StartObject();
                                          -
                                          625  {
                                          -
                                          626  auto elems = util::split(sc_core::sc_argv()[0], '/');
                                          -
                                          627  writer.Key("id");
                                          -
                                          628  writer.String("0");
                                          -
                                          629  writer.Key("labels");
                                          -
                                          630  writer.StartArray();
                                          -
                                          631  {
                                          -
                                          632  writer.StartObject();
                                          -
                                          633  {
                                          -
                                          634  writer.Key("text");
                                          -
                                          635  writer.String(elems[elems.size() - 1].c_str());
                                          -
                                          636  }
                                          -
                                          637  writer.EndObject();
                                          -
                                          638  }
                                          -
                                          639  writer.EndArray();
                                          -
                                          640  writer.Key("layoutOptions");
                                          -
                                          641  writer.StartObject();
                                          -
                                          642  {
                                          -
                                          643  writer.Key("algorithm");
                                          -
                                          644  writer.String("layered");
                                          -
                                          645  }
                                          -
                                          646  writer.EndObject();
                                          -
                                          647  writer.Key("children");
                                          -
                                          648  writer.StartArray();
                                          -
                                          649  { generate_mod_json(writer, format, *topModule); }
                                          -
                                          650  writer.EndArray();
                                          -
                                          651  writer.Key("edges");
                                          -
                                          652  writer.StartArray();
                                          -
                                          653  writer.EndArray();
                                          -
                                          654  if(format == hierarchy_dumper::D3JSON) {
                                          -
                                          655  writer.Key("hwMeta");
                                          -
                                          656  writer.StartObject();
                                          -
                                          657  {
                                          -
                                          658  writer.Key("cls");
                                          -
                                          659  writer.Null();
                                          -
                                          660  writer.Key("maxId");
                                          -
                                          661  writer.Uint(65536);
                                          -
                                          662  writer.Key("name");
                                          -
                                          663  writer.String(elems[elems.size() - 1].c_str());
                                          -
                                          664  }
                                          -
                                          665  writer.EndObject();
                                          -
                                          666  writer.Key("properties");
                                          -
                                          667  writer.StartObject();
                                          -
                                          668  {
                                          -
                                          669  writer.Key("org.eclipse.elk.layered.mergeEdges");
                                          -
                                          670  writer.Uint(1);
                                          -
                                          671  writer.Key("org.eclipse.elk.portConstraints");
                                          -
                                          672  writer.String("FIXED_ORDER");
                                          -
                                          673  }
                                          -
                                          674  writer.EndObject();
                                          -
                                          675  }
                                          -
                                          676  }
                                          -
                                          677  writer.EndObject();
                                          -
                                          678  SCCINFO() << "SystemC Structure Dumped to JSON file";
                                          -
                                          679  }
                                          -
                                          680 }
                                          -
                                          681 } // namespace
                                          -
                                          682 
                                          -
                                          683 hierarchy_dumper::hierarchy_dumper(const std::string& filename, file_type format)
                                          -
                                          684 : sc_core::sc_module(sc_core::sc_module_name("$$$hierarchy_dumper$$$"))
                                          -
                                          685 , dump_hier_file_name{filename}
                                          -
                                          686 , dump_format{format} {}
                                          -
                                          687 
                                          -
                                          688 hierarchy_dumper::~hierarchy_dumper() {}
                                          -
                                          689 
                                          -
                                          690 void hierarchy_dumper::start_of_simulation() {
                                          -
                                          691  if(dump_hier_file_name.size()) {
                                          -
                                          692  std::ofstream of{dump_hier_file_name};
                                          -
                                          693  if(of.is_open())
                                          -
                                          694  dump_structure(of, dump_format);
                                          -
                                          695  }
                                          -
                                          696 }
                                          -
                                          697 } // namespace scc
                                          +
                                          427  }
                                          +
                                          428  writer.EndObject();
                                          +
                                          429 }
                                          +
                                          430 
                                          +
                                          431 void generate_edge_d3_json(writer_type& writer, const scc::Module& srcmod, const scc::Port& srcport, const scc::Module& tgtmod,
                                          +
                                          432  const scc::Port& tgtport) {
                                          +
                                          433  writer.StartObject();
                                          +
                                          434  {
                                          +
                                          435  auto edge_name = fmt::format("{}", ++object_counter);
                                          +
                                          436  writer.Key("id");
                                          +
                                          437  writer.String(edge_name.c_str());
                                          +
                                          438  writer.Key("source");
                                          +
                                          439  writer.String(srcmod.id.c_str());
                                          +
                                          440  writer.Key("sourcePort");
                                          +
                                          441  writer.String(srcport.id.c_str());
                                          +
                                          442  writer.Key("target");
                                          +
                                          443  writer.String(tgtmod.id.c_str());
                                          +
                                          444  writer.Key("targetPort");
                                          +
                                          445  writer.String(tgtport.id.c_str());
                                          +
                                          446  writer.Key("hwMeta");
                                          +
                                          447  writer.StartObject();
                                          +
                                          448  {
                                          +
                                          449  if(srcport.sig_name.size()) {
                                          +
                                          450  writer.Key("name");
                                          +
                                          451  writer.String(srcport.sig_name.c_str());
                                          +
                                          452  } else if(tgtport.sig_name.size()) {
                                          +
                                          453  writer.Key("name");
                                          +
                                          454  writer.String(tgtport.sig_name.c_str());
                                          +
                                          455  } else {
                                          +
                                          456  writer.Key("name");
                                          +
                                          457  writer.String(fmt::format("{}_to_{}", srcport.name, tgtport.name).c_str());
                                          +
                                          458  }
                                          +
                                          459  // writer.Key("cssClass"); writer.String("link-style0");
                                          +
                                          460  // writer.Key("cssStyle"); writer.String("stroke:red");
                                          +
                                          461  }
                                          +
                                          462  writer.EndObject();
                                          +
                                          463  }
                                          +
                                          464  writer.EndObject();
                                          +
                                          465 }
                                          +
                                          466 
                                          +
                                          467 void generate_mod_json(writer_type& writer, hierarchy_dumper::file_type type, Module const& module, unsigned level = 0) {
                                          +
                                          468  unsigned num_in{0}, num_out{0};
                                          +
                                          469  for(auto& port : module.ports)
                                          +
                                          470  if(port.input)
                                          +
                                          471  num_in++;
                                          +
                                          472  else
                                          +
                                          473  num_out++;
                                          +
                                          474  writer.StartObject();
                                          +
                                          475  {
                                          +
                                          476  writer.Key("id");
                                          +
                                          477  writer.String(module.id.c_str());
                                          +
                                          478  // process ports
                                          +
                                          479  writer.Key("ports");
                                          +
                                          480  writer.StartArray();
                                          +
                                          481  {
                                          +
                                          482  for(auto& p : module.ports)
                                          +
                                          483  generate_port_json(writer, type, p);
                                          +
                                          484  }
                                          +
                                          485  writer.EndArray();
                                          +
                                          486  // process modules
                                          +
                                          487  if(type == hierarchy_dumper::D3JSON && module.parent)
                                          +
                                          488  writer.Key("_children");
                                          +
                                          489  else
                                          +
                                          490  writer.Key("children");
                                          +
                                          491  writer.StartArray();
                                          +
                                          492  {
                                          +
                                          493  for(auto& c : module.submodules)
                                          +
                                          494  generate_mod_json(writer, type, *c, level * 1);
                                          +
                                          495  }
                                          +
                                          496  writer.EndArray();
                                          +
                                          497  // process connections
                                          +
                                          498  if(type == hierarchy_dumper::D3JSON && module.parent)
                                          +
                                          499  writer.Key("_edges");
                                          +
                                          500  else
                                          +
                                          501  writer.Key("edges");
                                          +
                                          502  writer.StartArray();
                                          +
                                          503  {
                                          +
                                          504  // Draw edges module <-> submodule:
                                          +
                                          505  for(auto& srcport : module.ports) {
                                          +
                                          506  if(srcport.port_if) {
                                          +
                                          507  for(auto& tgtmod : module.submodules) {
                                          +
                                          508  for(auto& tgtport : tgtmod->ports) {
                                          +
                                          509  if(tgtport.port_if == srcport.port_if) {
                                          +
                                          510  if(type == hierarchy_dumper::D3JSON) {
                                          +
                                          511  generate_edge_d3_json(writer, module, srcport, *tgtmod, tgtport);
                                          +
                                          512  } else {
                                          +
                                          513  generate_edge_json(writer, srcport, tgtport);
                                          +
                                          514  }
                                          +
                                          515  }
                                          +
                                          516  }
                                          +
                                          517  }
                                          +
                                          518  }
                                          +
                                          519  }
                                          +
                                          520  // Draw edges submodule -> submodule:
                                          +
                                          521  for(auto& srcmod : module.submodules) {
                                          +
                                          522  for(auto& srcport : srcmod->ports) {
                                          +
                                          523  if(!srcport.input && srcport.port_if) {
                                          +
                                          524  for(auto& tgtmod : module.submodules) {
                                          +
                                          525  for(auto& tgtport : tgtmod->ports) {
                                          +
                                          526  if(srcmod->fullname == tgtmod->fullname && tgtport.fullname == srcport.fullname) {
                                          +
                                          527  continue;
                                          +
                                          528  }
                                          +
                                          529  if(tgtport.port_if == srcport.port_if && tgtport.input) {
                                          +
                                          530  if(type == hierarchy_dumper::D3JSON) {
                                          +
                                          531  generate_edge_d3_json(writer, *srcmod, srcport, *tgtmod, tgtport);
                                          +
                                          532  } else {
                                          +
                                          533  generate_edge_json(writer, srcport, tgtport);
                                          +
                                          534  }
                                          +
                                          535  }
                                          +
                                          536  }
                                          +
                                          537  }
                                          +
                                          538  }
                                          +
                                          539  }
                                          +
                                          540  }
                                          +
                                          541  }
                                          +
                                          542  writer.EndArray();
                                          +
                                          543  if(type != hierarchy_dumper::D3JSON) {
                                          +
                                          544  writer.Key("labels");
                                          +
                                          545  writer.StartArray();
                                          +
                                          546  {
                                          +
                                          547  writer.StartObject();
                                          +
                                          548  {
                                          +
                                          549  writer.Key("text");
                                          +
                                          550  writer.String(module.name.c_str());
                                          +
                                          551  }
                                          +
                                          552  writer.EndObject();
                                          +
                                          553  }
                                          +
                                          554  writer.EndArray();
                                          +
                                          555  writer.Key("width");
                                          +
                                          556  writer.Uint(50);
                                          +
                                          557  writer.Key("height");
                                          +
                                          558  writer.Uint(std::max(80U, std::max(num_in, num_out) * 20));
                                          +
                                          559  if(type == hierarchy_dumper::DBGJSON) {
                                          +
                                          560  writer.Key("name");
                                          +
                                          561  writer.String(module.name.c_str());
                                          +
                                          562  writer.Key("type");
                                          +
                                          563  writer.String(module.type.c_str());
                                          +
                                          564  writer.Key("topmodule");
                                          +
                                          565  writer.Bool(!module.parent);
                                          +
                                          566  }
                                          +
                                          567  } else {
                                          +
                                          568  writer.Key("hwMeta");
                                          +
                                          569  writer.StartObject();
                                          +
                                          570  {
                                          +
                                          571  writer.Key("name");
                                          +
                                          572  writer.String(module.name.c_str());
                                          +
                                          573  writer.Key("cls");
                                          +
                                          574  writer.String(module.type.c_str());
                                          +
                                          575  // writer.Key("bodyText"); writer.String(module.type.c_str());
                                          +
                                          576  writer.Key("maxId");
                                          +
                                          577  writer.Uint(object_counter);
                                          +
                                          578  writer.Key("isExternalPort");
                                          +
                                          579  writer.Bool(false);
                                          +
                                          580  // writer.Key("cssClass"); writer.String("node-style0");
                                          +
                                          581  // writer.Key("cssStyle"); writer.String("fill:red");
                                          +
                                          582  }
                                          +
                                          583  writer.EndObject();
                                          +
                                          584  writer.Key("properties");
                                          +
                                          585  writer.StartObject();
                                          +
                                          586  {
                                          +
                                          587  writer.Key("org.eclipse.elk.layered.mergeEdges");
                                          +
                                          588  writer.Uint(1);
                                          +
                                          589  writer.Key("org.eclipse.elk.portConstraints");
                                          +
                                          590  writer.String("FIXED_SIDE");
                                          +
                                          591  }
                                          +
                                          592  writer.EndObject();
                                          +
                                          593  }
                                          +
                                          594  }
                                          +
                                          595  writer.EndObject();
                                          +
                                          596 }
                                          +
                                          597 
                                          +
                                          598 std::unique_ptr<Module> scan_object_tree() {
                                          +
                                          599  std::vector<sc_core::sc_object*> obja = sc_core::sc_get_top_level_objects();
                                          +
                                          600  if(obja.size() == 1 && std::string(obja[0]->kind()) == "sc_module" && std::string(obja[0]->basename()).substr(0, 3) != "$$$") {
                                          +
                                          601  SCCDEBUG() << obja[0]->name() << "(" << obja[0]->kind() << ")";
                                          +
                                          602  auto topModule = scc::make_unique<Module>(obja[0]->name(), obja[0]->basename(), type(*obja[0]));
                                          +
                                          603  for(auto* child : obja[0]->get_child_objects())
                                          +
                                          604  scan_object(child, *topModule, 1);
                                          +
                                          605  return topModule;
                                          +
                                          606  } else {
                                          +
                                          607  SCCDEBUG() << "sc_main ( function sc_main() )";
                                          +
                                          608  auto topModule = scc::make_unique<Module>("sc_main", "sc_main", "sc_main()");
                                          +
                                          609  for(auto* child : obja)
                                          +
                                          610  scan_object(child, *topModule, 1);
                                          +
                                          611  return topModule;
                                          +
                                          612  }
                                          +
                                          613 }
                                          +
                                          614 void dump_structure(std::ostream& e, hierarchy_dumper::file_type format) {
                                          +
                                          615  auto topModule = scan_object_tree();
                                          +
                                          616  infer_implicit_ports(*topModule);
                                          +
                                          617  if(format == hierarchy_dumper::ELKT) {
                                          +
                                          618  e << "algorithm: org.eclipse.elk.layered\n";
                                          +
                                          619  e << "edgeRouting: ORTHOGONAL\n";
                                          +
                                          620  generate_elk(e, *topModule);
                                          +
                                          621  SCCINFO() << "SystemC Structure Dumped to ELK file";
                                          +
                                          622  } else {
                                          +
                                          623  OStreamWrapper stream(e);
                                          +
                                          624  writer_type writer(stream);
                                          +
                                          625  writer.StartObject();
                                          +
                                          626  {
                                          +
                                          627  auto elems = util::split(sc_core::sc_argv()[0], '/');
                                          +
                                          628  writer.Key("id");
                                          +
                                          629  writer.String("0");
                                          +
                                          630  writer.Key("labels");
                                          +
                                          631  writer.StartArray();
                                          +
                                          632  {
                                          +
                                          633  writer.StartObject();
                                          +
                                          634  {
                                          +
                                          635  writer.Key("text");
                                          +
                                          636  writer.String(elems[elems.size() - 1].c_str());
                                          +
                                          637  }
                                          +
                                          638  writer.EndObject();
                                          +
                                          639  }
                                          +
                                          640  writer.EndArray();
                                          +
                                          641  writer.Key("layoutOptions");
                                          +
                                          642  writer.StartObject();
                                          +
                                          643  {
                                          +
                                          644  writer.Key("algorithm");
                                          +
                                          645  writer.String("layered");
                                          +
                                          646  }
                                          +
                                          647  writer.EndObject();
                                          +
                                          648  writer.Key("children");
                                          +
                                          649  writer.StartArray();
                                          +
                                          650  { generate_mod_json(writer, format, *topModule); }
                                          +
                                          651  writer.EndArray();
                                          +
                                          652  writer.Key("edges");
                                          +
                                          653  writer.StartArray();
                                          +
                                          654  writer.EndArray();
                                          +
                                          655  if(format == hierarchy_dumper::D3JSON) {
                                          +
                                          656  writer.Key("hwMeta");
                                          +
                                          657  writer.StartObject();
                                          +
                                          658  {
                                          +
                                          659  writer.Key("cls");
                                          +
                                          660  writer.Null();
                                          +
                                          661  writer.Key("maxId");
                                          +
                                          662  writer.Uint(65536);
                                          +
                                          663  writer.Key("name");
                                          +
                                          664  writer.String(elems[elems.size() - 1].c_str());
                                          +
                                          665  }
                                          +
                                          666  writer.EndObject();
                                          +
                                          667  writer.Key("properties");
                                          +
                                          668  writer.StartObject();
                                          +
                                          669  {
                                          +
                                          670  writer.Key("org.eclipse.elk.layered.mergeEdges");
                                          +
                                          671  writer.Uint(1);
                                          +
                                          672  writer.Key("org.eclipse.elk.portConstraints");
                                          +
                                          673  writer.String("FIXED_ORDER");
                                          +
                                          674  }
                                          +
                                          675  writer.EndObject();
                                          +
                                          676  }
                                          +
                                          677  }
                                          +
                                          678  writer.EndObject();
                                          +
                                          679  SCCINFO() << "SystemC Structure Dumped to JSON file";
                                          +
                                          680  }
                                          +
                                          681 }
                                          +
                                          682 } // namespace
                                          +
                                          683 
                                          +
                                          684 hierarchy_dumper::hierarchy_dumper(const std::string& filename, file_type format)
                                          +
                                          685 : sc_core::sc_module(sc_core::sc_module_name("$$$hierarchy_dumper$$$"))
                                          +
                                          686 , dump_hier_file_name{filename}
                                          +
                                          687 , dump_format{format} {}
                                          +
                                          688 
                                          +
                                          689 hierarchy_dumper::~hierarchy_dumper() {}
                                          +
                                          690 
                                          +
                                          691 void hierarchy_dumper::start_of_simulation() {
                                          +
                                          692  if(dump_hier_file_name.size()) {
                                          +
                                          693  std::ofstream of{dump_hier_file_name};
                                          +
                                          694  if(of.is_open())
                                          +
                                          695  dump_structure(of, dump_format);
                                          +
                                          696  }
                                          +
                                          697 }
                                          +
                                          698 } // namespace scc
                                          SCC SystemC utilities.
                                          std::vector< std::string > split(const std::string &s, char separator)
                                          Definition: ities.h:192
                                          diff --git a/develop/hierarchy__dumper_8h_source.html b/develop/hierarchy__dumper_8h_source.html index 4f4d5c78..8bb49d5e 100644 --- a/develop/hierarchy__dumper_8h_source.html +++ b/develop/hierarchy__dumper_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/index.html b/develop/index.html index 82379d16..ba68dbb4 100644 --- a/develop/index.html +++ b/develop/index.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/inherit_graph_100.map b/develop/inherit_graph_100.map index f8651e51..d670326a 100644 --- a/develop/inherit_graph_100.map +++ b/develop/inherit_graph_100.map @@ -1,6 +1,3 @@ - - - - + diff --git a/develop/inherit_graph_100.md5 b/develop/inherit_graph_100.md5 index b3c0b5e4..63b66ee0 100644 --- a/develop/inherit_graph_100.md5 +++ b/develop/inherit_graph_100.md5 @@ -1 +1 @@ -20ec569af12f96ddd1f1038c21020382 \ No newline at end of file +4405d010a18637645da0071ed4c0d04c \ No newline at end of file diff --git a/develop/inherit_graph_100.png b/develop/inherit_graph_100.png index aecac0ec..87325811 100644 Binary files a/develop/inherit_graph_100.png and b/develop/inherit_graph_100.png differ diff --git a/develop/inherit_graph_101.map b/develop/inherit_graph_101.map index 471130c9..97184a65 100644 --- a/develop/inherit_graph_101.map +++ b/develop/inherit_graph_101.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_101.md5 b/develop/inherit_graph_101.md5 index 746375cc..c292e3f0 100644 --- a/develop/inherit_graph_101.md5 +++ b/develop/inherit_graph_101.md5 @@ -1 +1 @@ -9910fe67c4a8e607d97e9b405ef8067c \ No newline at end of file +e50a41875c657c6dc2ed57049f21dfad \ No newline at end of file diff --git a/develop/inherit_graph_101.png b/develop/inherit_graph_101.png index f675ee18..9bb02a72 100644 Binary files a/develop/inherit_graph_101.png and b/develop/inherit_graph_101.png differ diff --git a/develop/inherit_graph_102.map b/develop/inherit_graph_102.map index a35d5e6f..b01e511b 100644 --- a/develop/inherit_graph_102.map +++ b/develop/inherit_graph_102.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_102.md5 b/develop/inherit_graph_102.md5 index 2188fb27..169f9aa4 100644 --- a/develop/inherit_graph_102.md5 +++ b/develop/inherit_graph_102.md5 @@ -1 +1 @@ -ba5b1298b83d39b426f55c022e7b0f10 \ No newline at end of file +4be2339f85a7e101a3ab818969430d06 \ No newline at end of file diff --git a/develop/inherit_graph_102.png b/develop/inherit_graph_102.png index 70c3c15b..ca616488 100644 Binary files a/develop/inherit_graph_102.png and b/develop/inherit_graph_102.png differ diff --git a/develop/inherit_graph_103.map b/develop/inherit_graph_103.map index bf51e172..2667c1a9 100644 --- a/develop/inherit_graph_103.map +++ b/develop/inherit_graph_103.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_103.md5 b/develop/inherit_graph_103.md5 index 97a0e5ac..8d205303 100644 --- a/develop/inherit_graph_103.md5 +++ b/develop/inherit_graph_103.md5 @@ -1 +1 @@ -de5ece8e908d00378615a0769814c502 \ No newline at end of file +4b8493cde63151f8a148c5592159b7ae \ No newline at end of file diff --git a/develop/inherit_graph_103.png b/develop/inherit_graph_103.png index 8a1ca575..c1752134 100644 Binary files a/develop/inherit_graph_103.png and b/develop/inherit_graph_103.png differ diff --git a/develop/inherit_graph_104.map b/develop/inherit_graph_104.map index 1bb2c0ee..72b0755f 100644 --- a/develop/inherit_graph_104.map +++ b/develop/inherit_graph_104.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_104.md5 b/develop/inherit_graph_104.md5 index ef343beb..cd71c0fa 100644 --- a/develop/inherit_graph_104.md5 +++ b/develop/inherit_graph_104.md5 @@ -1 +1 @@ -c56da6b0504ff3687cc406f86e053163 \ No newline at end of file +4ed42824d25dcb2e47121469f446f628 \ No newline at end of file diff --git a/develop/inherit_graph_104.png b/develop/inherit_graph_104.png index 7dc249fb..7ec50454 100644 Binary files a/develop/inherit_graph_104.png and b/develop/inherit_graph_104.png differ diff --git a/develop/inherit_graph_105.map b/develop/inherit_graph_105.map index 16831e19..a10ae478 100644 --- a/develop/inherit_graph_105.map +++ b/develop/inherit_graph_105.map @@ -1,13 +1,3 @@ - - - - - - - - - - - + diff --git a/develop/inherit_graph_105.md5 b/develop/inherit_graph_105.md5 index 64281330..f9ac510b 100644 --- a/develop/inherit_graph_105.md5 +++ b/develop/inherit_graph_105.md5 @@ -1 +1 @@ -ead6eb06eeb943c23d51798823a2ae72 \ No newline at end of file +13185b475e93a76bfaf5e1a146db1011 \ No newline at end of file diff --git a/develop/inherit_graph_105.png b/develop/inherit_graph_105.png index 137fea07..58c804d2 100644 Binary files a/develop/inherit_graph_105.png and b/develop/inherit_graph_105.png differ diff --git a/develop/inherit_graph_106.map b/develop/inherit_graph_106.map index f356a344..34a3dc66 100644 --- a/develop/inherit_graph_106.map +++ b/develop/inherit_graph_106.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_106.md5 b/develop/inherit_graph_106.md5 index b908a373..ead3341a 100644 --- a/develop/inherit_graph_106.md5 +++ b/develop/inherit_graph_106.md5 @@ -1 +1 @@ -06a19ddb157f58013898fd3eaae24b20 \ No newline at end of file +d2f45e55e7c648d4509d7d4c380a1d45 \ No newline at end of file diff --git a/develop/inherit_graph_106.png b/develop/inherit_graph_106.png index b6bccbdf..7b12db18 100644 Binary files a/develop/inherit_graph_106.png and b/develop/inherit_graph_106.png differ diff --git a/develop/inherit_graph_107.map b/develop/inherit_graph_107.map index d670326a..17b82b7e 100644 --- a/develop/inherit_graph_107.map +++ b/develop/inherit_graph_107.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_107.md5 b/develop/inherit_graph_107.md5 index 63b66ee0..79523560 100644 --- a/develop/inherit_graph_107.md5 +++ b/develop/inherit_graph_107.md5 @@ -1 +1 @@ -4405d010a18637645da0071ed4c0d04c \ No newline at end of file +6638bd54f67259a1d348a59fc8a67255 \ No newline at end of file diff --git a/develop/inherit_graph_107.png b/develop/inherit_graph_107.png index 87325811..7b65a953 100644 Binary files a/develop/inherit_graph_107.png and b/develop/inherit_graph_107.png differ diff --git a/develop/inherit_graph_108.map b/develop/inherit_graph_108.map index 97184a65..249fd3d5 100644 --- a/develop/inherit_graph_108.map +++ b/develop/inherit_graph_108.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_108.md5 b/develop/inherit_graph_108.md5 index 10a0e19d..962f1344 100644 --- a/develop/inherit_graph_108.md5 +++ b/develop/inherit_graph_108.md5 @@ -1 +1 @@ -2befc74a266b7174d6bf5e263f0dd9cb \ No newline at end of file +696831d33c6f07d391a44e0807480880 \ No newline at end of file diff --git a/develop/inherit_graph_108.png b/develop/inherit_graph_108.png index 9bb02a72..69b539c5 100644 Binary files a/develop/inherit_graph_108.png and b/develop/inherit_graph_108.png differ diff --git a/develop/inherit_graph_109.map b/develop/inherit_graph_109.map index b01e511b..371354c2 100644 --- a/develop/inherit_graph_109.map +++ b/develop/inherit_graph_109.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_109.md5 b/develop/inherit_graph_109.md5 index 169f9aa4..e49f8913 100644 --- a/develop/inherit_graph_109.md5 +++ b/develop/inherit_graph_109.md5 @@ -1 +1 @@ -4be2339f85a7e101a3ab818969430d06 \ No newline at end of file +cd308a8b406ef0341819c256b5a21729 \ No newline at end of file diff --git a/develop/inherit_graph_109.png b/develop/inherit_graph_109.png index ca616488..d8bc0e1c 100644 Binary files a/develop/inherit_graph_109.png and b/develop/inherit_graph_109.png differ diff --git a/develop/inherit_graph_110.map b/develop/inherit_graph_110.map index 2667c1a9..dd97f5f1 100644 --- a/develop/inherit_graph_110.map +++ b/develop/inherit_graph_110.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_110.md5 b/develop/inherit_graph_110.md5 index 8d205303..4f2ba159 100644 --- a/develop/inherit_graph_110.md5 +++ b/develop/inherit_graph_110.md5 @@ -1 +1 @@ -4b8493cde63151f8a148c5592159b7ae \ No newline at end of file +fdf0f7e5a9981033b15c13474909cedb \ No newline at end of file diff --git a/develop/inherit_graph_110.png b/develop/inherit_graph_110.png index c1752134..89e5dcbe 100644 Binary files a/develop/inherit_graph_110.png and b/develop/inherit_graph_110.png differ diff --git a/develop/inherit_graph_111.map b/develop/inherit_graph_111.map index 72b0755f..9d35edf9 100644 --- a/develop/inherit_graph_111.map +++ b/develop/inherit_graph_111.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_111.md5 b/develop/inherit_graph_111.md5 index cd71c0fa..57e86285 100644 --- a/develop/inherit_graph_111.md5 +++ b/develop/inherit_graph_111.md5 @@ -1 +1 @@ -4ed42824d25dcb2e47121469f446f628 \ No newline at end of file +9d4b621c54ec4460165984f9a56036a1 \ No newline at end of file diff --git a/develop/inherit_graph_111.png b/develop/inherit_graph_111.png index 7ec50454..9ef713e4 100644 Binary files a/develop/inherit_graph_111.png and b/develop/inherit_graph_111.png differ diff --git a/develop/inherit_graph_112.map b/develop/inherit_graph_112.map index a10ae478..3baaed42 100644 --- a/develop/inherit_graph_112.map +++ b/develop/inherit_graph_112.map @@ -1,3 +1,5 @@ - + + + diff --git a/develop/inherit_graph_112.md5 b/develop/inherit_graph_112.md5 index f9ac510b..a703fec5 100644 --- a/develop/inherit_graph_112.md5 +++ b/develop/inherit_graph_112.md5 @@ -1 +1 @@ -13185b475e93a76bfaf5e1a146db1011 \ No newline at end of file +233c16b2d7ea64245d5f2561667eb79e \ No newline at end of file diff --git a/develop/inherit_graph_112.png b/develop/inherit_graph_112.png index 58c804d2..f02c3399 100644 Binary files a/develop/inherit_graph_112.png and b/develop/inherit_graph_112.png differ diff --git a/develop/inherit_graph_113.map b/develop/inherit_graph_113.map index 34a3dc66..1adb4126 100644 --- a/develop/inherit_graph_113.map +++ b/develop/inherit_graph_113.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_113.md5 b/develop/inherit_graph_113.md5 index ead3341a..7f8c00fd 100644 --- a/develop/inherit_graph_113.md5 +++ b/develop/inherit_graph_113.md5 @@ -1 +1 @@ -d2f45e55e7c648d4509d7d4c380a1d45 \ No newline at end of file +ded735c623d9af01158afab2e1cd286a \ No newline at end of file diff --git a/develop/inherit_graph_113.png b/develop/inherit_graph_113.png index 7b12db18..7bc50e0d 100644 Binary files a/develop/inherit_graph_113.png and b/develop/inherit_graph_113.png differ diff --git a/develop/inherit_graph_114.map b/develop/inherit_graph_114.map index 17b82b7e..b041e2f2 100644 --- a/develop/inherit_graph_114.map +++ b/develop/inherit_graph_114.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_114.md5 b/develop/inherit_graph_114.md5 index 1974da1b..ec057de1 100644 --- a/develop/inherit_graph_114.md5 +++ b/develop/inherit_graph_114.md5 @@ -1 +1 @@ -e007a8235e0e8471b6ea99995cb0b75e \ No newline at end of file +163019078d4e4c5b44a112ef8cdd3d5c \ No newline at end of file diff --git a/develop/inherit_graph_114.png b/develop/inherit_graph_114.png index 7b65a953..3c7179a2 100644 Binary files a/develop/inherit_graph_114.png and b/develop/inherit_graph_114.png differ diff --git a/develop/inherit_graph_115.map b/develop/inherit_graph_115.map index 249fd3d5..28b8c009 100644 --- a/develop/inherit_graph_115.map +++ b/develop/inherit_graph_115.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_115.md5 b/develop/inherit_graph_115.md5 index 962f1344..e2cda02b 100644 --- a/develop/inherit_graph_115.md5 +++ b/develop/inherit_graph_115.md5 @@ -1 +1 @@ -696831d33c6f07d391a44e0807480880 \ No newline at end of file +70fa7ed824ec0fa135c77c35e5eda55f \ No newline at end of file diff --git a/develop/inherit_graph_115.png b/develop/inherit_graph_115.png index 69b539c5..eb211f53 100644 Binary files a/develop/inherit_graph_115.png and b/develop/inherit_graph_115.png differ diff --git a/develop/inherit_graph_116.map b/develop/inherit_graph_116.map index 371354c2..81c1c561 100644 --- a/develop/inherit_graph_116.map +++ b/develop/inherit_graph_116.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_116.md5 b/develop/inherit_graph_116.md5 index e49f8913..e8dbab34 100644 --- a/develop/inherit_graph_116.md5 +++ b/develop/inherit_graph_116.md5 @@ -1 +1 @@ -cd308a8b406ef0341819c256b5a21729 \ No newline at end of file +af4ec86780a8f3857c1b9492acf63afa \ No newline at end of file diff --git a/develop/inherit_graph_116.png b/develop/inherit_graph_116.png index d8bc0e1c..86fd0216 100644 Binary files a/develop/inherit_graph_116.png and b/develop/inherit_graph_116.png differ diff --git a/develop/inherit_graph_117.map b/develop/inherit_graph_117.map index dd97f5f1..f8be6d89 100644 --- a/develop/inherit_graph_117.map +++ b/develop/inherit_graph_117.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_117.md5 b/develop/inherit_graph_117.md5 index 4f2ba159..d1c7b15d 100644 --- a/develop/inherit_graph_117.md5 +++ b/develop/inherit_graph_117.md5 @@ -1 +1 @@ -fdf0f7e5a9981033b15c13474909cedb \ No newline at end of file +0c68bc1537d32a6d0ea294dc6a8d5f7c \ No newline at end of file diff --git a/develop/inherit_graph_117.png b/develop/inherit_graph_117.png index 89e5dcbe..a4dfa65b 100644 Binary files a/develop/inherit_graph_117.png and b/develop/inherit_graph_117.png differ diff --git a/develop/inherit_graph_118.map b/develop/inherit_graph_118.map index 9d35edf9..c14544c3 100644 --- a/develop/inherit_graph_118.map +++ b/develop/inherit_graph_118.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_118.md5 b/develop/inherit_graph_118.md5 index 57e86285..aca55133 100644 --- a/develop/inherit_graph_118.md5 +++ b/develop/inherit_graph_118.md5 @@ -1 +1 @@ -9d4b621c54ec4460165984f9a56036a1 \ No newline at end of file +b5728794d0b225e8b3fa4b58396e2ed7 \ No newline at end of file diff --git a/develop/inherit_graph_118.png b/develop/inherit_graph_118.png index 9ef713e4..13acccbc 100644 Binary files a/develop/inherit_graph_118.png and b/develop/inherit_graph_118.png differ diff --git a/develop/inherit_graph_119.map b/develop/inherit_graph_119.map index 3baaed42..820abfc1 100644 --- a/develop/inherit_graph_119.map +++ b/develop/inherit_graph_119.map @@ -1,5 +1,4 @@ - - - + + diff --git a/develop/inherit_graph_119.md5 b/develop/inherit_graph_119.md5 index a703fec5..4c41aa3c 100644 --- a/develop/inherit_graph_119.md5 +++ b/develop/inherit_graph_119.md5 @@ -1 +1 @@ -233c16b2d7ea64245d5f2561667eb79e \ No newline at end of file +14e7ae2712b9d623b1d2ee6d646f509e \ No newline at end of file diff --git a/develop/inherit_graph_119.png b/develop/inherit_graph_119.png index f02c3399..edd12a1c 100644 Binary files a/develop/inherit_graph_119.png and b/develop/inherit_graph_119.png differ diff --git a/develop/inherit_graph_120.map b/develop/inherit_graph_120.map index 1adb4126..122e459b 100644 --- a/develop/inherit_graph_120.map +++ b/develop/inherit_graph_120.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_120.md5 b/develop/inherit_graph_120.md5 index 7f8c00fd..5ae92540 100644 --- a/develop/inherit_graph_120.md5 +++ b/develop/inherit_graph_120.md5 @@ -1 +1 @@ -ded735c623d9af01158afab2e1cd286a \ No newline at end of file +3c066e29c34bbb07e76adc42476358b5 \ No newline at end of file diff --git a/develop/inherit_graph_120.png b/develop/inherit_graph_120.png index 7bc50e0d..1cac898d 100644 Binary files a/develop/inherit_graph_120.png and b/develop/inherit_graph_120.png differ diff --git a/develop/inherit_graph_121.map b/develop/inherit_graph_121.map index b041e2f2..c6c5177f 100644 --- a/develop/inherit_graph_121.map +++ b/develop/inherit_graph_121.map @@ -1,3 +1,5 @@ - + + + diff --git a/develop/inherit_graph_121.md5 b/develop/inherit_graph_121.md5 index ec057de1..62cdfb96 100644 --- a/develop/inherit_graph_121.md5 +++ b/develop/inherit_graph_121.md5 @@ -1 +1 @@ -163019078d4e4c5b44a112ef8cdd3d5c \ No newline at end of file +76d88c65427c803bb7405eb6c7df6d65 \ No newline at end of file diff --git a/develop/inherit_graph_121.png b/develop/inherit_graph_121.png index 3c7179a2..efc15e18 100644 Binary files a/develop/inherit_graph_121.png and b/develop/inherit_graph_121.png differ diff --git a/develop/inherit_graph_122.map b/develop/inherit_graph_122.map index 28b8c009..386f989b 100644 --- a/develop/inherit_graph_122.map +++ b/develop/inherit_graph_122.map @@ -1,3 +1,9 @@ - + + + + + + + diff --git a/develop/inherit_graph_122.md5 b/develop/inherit_graph_122.md5 index e2cda02b..f590094d 100644 --- a/develop/inherit_graph_122.md5 +++ b/develop/inherit_graph_122.md5 @@ -1 +1 @@ -70fa7ed824ec0fa135c77c35e5eda55f \ No newline at end of file +3332b4697ddc2b37503e947ac91a4535 \ No newline at end of file diff --git a/develop/inherit_graph_122.png b/develop/inherit_graph_122.png index eb211f53..3f9ab0ec 100644 Binary files a/develop/inherit_graph_122.png and b/develop/inherit_graph_122.png differ diff --git a/develop/inherit_graph_123.map b/develop/inherit_graph_123.map index 81c1c561..7f46af47 100644 --- a/develop/inherit_graph_123.map +++ b/develop/inherit_graph_123.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_123.md5 b/develop/inherit_graph_123.md5 index e8dbab34..9f8a1e75 100644 --- a/develop/inherit_graph_123.md5 +++ b/develop/inherit_graph_123.md5 @@ -1 +1 @@ -af4ec86780a8f3857c1b9492acf63afa \ No newline at end of file +469dd382283b5b5bca0fe2c9de76554b \ No newline at end of file diff --git a/develop/inherit_graph_123.png b/develop/inherit_graph_123.png index 86fd0216..129d7315 100644 Binary files a/develop/inherit_graph_123.png and b/develop/inherit_graph_123.png differ diff --git a/develop/inherit_graph_124.map b/develop/inherit_graph_124.map index f8be6d89..44353583 100644 --- a/develop/inherit_graph_124.map +++ b/develop/inherit_graph_124.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_124.md5 b/develop/inherit_graph_124.md5 index d1c7b15d..816af6f5 100644 --- a/develop/inherit_graph_124.md5 +++ b/develop/inherit_graph_124.md5 @@ -1 +1 @@ -0c68bc1537d32a6d0ea294dc6a8d5f7c \ No newline at end of file +7a721a717021f587c2c411e654aee2e1 \ No newline at end of file diff --git a/develop/inherit_graph_124.png b/develop/inherit_graph_124.png index a4dfa65b..bfee4291 100644 Binary files a/develop/inherit_graph_124.png and b/develop/inherit_graph_124.png differ diff --git a/develop/inherit_graph_125.map b/develop/inherit_graph_125.map index c14544c3..ee0ba3b1 100644 --- a/develop/inherit_graph_125.map +++ b/develop/inherit_graph_125.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_125.md5 b/develop/inherit_graph_125.md5 index aca55133..4d463c42 100644 --- a/develop/inherit_graph_125.md5 +++ b/develop/inherit_graph_125.md5 @@ -1 +1 @@ -b5728794d0b225e8b3fa4b58396e2ed7 \ No newline at end of file +a4e8dcc9aedaecc4bbb215c8bc0e3d72 \ No newline at end of file diff --git a/develop/inherit_graph_125.png b/develop/inherit_graph_125.png index 13acccbc..7cda8048 100644 Binary files a/develop/inherit_graph_125.png and b/develop/inherit_graph_125.png differ diff --git a/develop/inherit_graph_126.map b/develop/inherit_graph_126.map index 820abfc1..f67f58f5 100644 --- a/develop/inherit_graph_126.map +++ b/develop/inherit_graph_126.map @@ -1,4 +1,8 @@ - - + + + + + + diff --git a/develop/inherit_graph_126.md5 b/develop/inherit_graph_126.md5 index 767962f3..407c1158 100644 --- a/develop/inherit_graph_126.md5 +++ b/develop/inherit_graph_126.md5 @@ -1 +1 @@ -6d7d1a6455e7ee3afc279292a7d37271 \ No newline at end of file +1eba884b217f24a180d0545b43a4b7d7 \ No newline at end of file diff --git a/develop/inherit_graph_126.png b/develop/inherit_graph_126.png index edd12a1c..09a6e8ab 100644 Binary files a/develop/inherit_graph_126.png and b/develop/inherit_graph_126.png differ diff --git a/develop/inherit_graph_127.map b/develop/inherit_graph_127.map index 122e459b..bfb32ef2 100644 --- a/develop/inherit_graph_127.map +++ b/develop/inherit_graph_127.map @@ -1,3 +1,7 @@ - + + + + + diff --git a/develop/inherit_graph_127.md5 b/develop/inherit_graph_127.md5 index 5ae92540..671374e6 100644 --- a/develop/inherit_graph_127.md5 +++ b/develop/inherit_graph_127.md5 @@ -1 +1 @@ -3c066e29c34bbb07e76adc42476358b5 \ No newline at end of file +b72ac598455c38c475db83c81e7229eb \ No newline at end of file diff --git a/develop/inherit_graph_127.png b/develop/inherit_graph_127.png index 1cac898d..8cccf7f2 100644 Binary files a/develop/inherit_graph_127.png and b/develop/inherit_graph_127.png differ diff --git a/develop/inherit_graph_128.map b/develop/inherit_graph_128.map index c6c5177f..452d1cda 100644 --- a/develop/inherit_graph_128.map +++ b/develop/inherit_graph_128.map @@ -1,5 +1,3 @@ - - - + diff --git a/develop/inherit_graph_128.md5 b/develop/inherit_graph_128.md5 index c86aae06..d4d72c5a 100644 --- a/develop/inherit_graph_128.md5 +++ b/develop/inherit_graph_128.md5 @@ -1 +1 @@ -d849327ac3df52bb23eb9a57cab5c697 \ No newline at end of file +bd460b2e2e6b7cbe46f0c4596c75eb45 \ No newline at end of file diff --git a/develop/inherit_graph_128.png b/develop/inherit_graph_128.png index efc15e18..c45d71b3 100644 Binary files a/develop/inherit_graph_128.png and b/develop/inherit_graph_128.png differ diff --git a/develop/inherit_graph_129.map b/develop/inherit_graph_129.map index 386f989b..39615b4b 100644 --- a/develop/inherit_graph_129.map +++ b/develop/inherit_graph_129.map @@ -1,9 +1,7 @@ - - - - - - - + + + + + diff --git a/develop/inherit_graph_129.md5 b/develop/inherit_graph_129.md5 index 5feb604d..9a5aa86b 100644 --- a/develop/inherit_graph_129.md5 +++ b/develop/inherit_graph_129.md5 @@ -1 +1 @@ -091b395694323a6cd84649a38c045e6a \ No newline at end of file +9b2762527015296d5085cfc2162731a2 \ No newline at end of file diff --git a/develop/inherit_graph_129.png b/develop/inherit_graph_129.png index 3f9ab0ec..7725a889 100644 Binary files a/develop/inherit_graph_129.png and b/develop/inherit_graph_129.png differ diff --git a/develop/inherit_graph_130.map b/develop/inherit_graph_130.map index 7f46af47..e8c88943 100644 --- a/develop/inherit_graph_130.map +++ b/develop/inherit_graph_130.map @@ -1,3 +1,8 @@ - + + + + + + diff --git a/develop/inherit_graph_130.md5 b/develop/inherit_graph_130.md5 index 9f8a1e75..b357ef57 100644 --- a/develop/inherit_graph_130.md5 +++ b/develop/inherit_graph_130.md5 @@ -1 +1 @@ -469dd382283b5b5bca0fe2c9de76554b \ No newline at end of file +91f03aa4c8ae50126caeedc62155ef6c \ No newline at end of file diff --git a/develop/inherit_graph_130.png b/develop/inherit_graph_130.png index 129d7315..d971bf2a 100644 Binary files a/develop/inherit_graph_130.png and b/develop/inherit_graph_130.png differ diff --git a/develop/inherit_graph_131.map b/develop/inherit_graph_131.map index 44353583..68c2ac1d 100644 --- a/develop/inherit_graph_131.map +++ b/develop/inherit_graph_131.map @@ -1,4 +1,4 @@ - - + + diff --git a/develop/inherit_graph_131.md5 b/develop/inherit_graph_131.md5 index d710f9e6..842acdfd 100644 --- a/develop/inherit_graph_131.md5 +++ b/develop/inherit_graph_131.md5 @@ -1 +1 @@ -6bdc6b975cdd4dd5ca8092b003b88a17 \ No newline at end of file +e103fbb925180fe26c937ea6416cb07c \ No newline at end of file diff --git a/develop/inherit_graph_131.png b/develop/inherit_graph_131.png index bfee4291..e362cfaa 100644 Binary files a/develop/inherit_graph_131.png and b/develop/inherit_graph_131.png differ diff --git a/develop/inherit_graph_132.map b/develop/inherit_graph_132.map index ee0ba3b1..7161b70b 100644 --- a/develop/inherit_graph_132.map +++ b/develop/inherit_graph_132.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_132.md5 b/develop/inherit_graph_132.md5 index 4d463c42..6f4244e0 100644 --- a/develop/inherit_graph_132.md5 +++ b/develop/inherit_graph_132.md5 @@ -1 +1 @@ -a4e8dcc9aedaecc4bbb215c8bc0e3d72 \ No newline at end of file +fe8c629c3c10d96952c20243c1090ece \ No newline at end of file diff --git a/develop/inherit_graph_132.png b/develop/inherit_graph_132.png index 7cda8048..da84f2ea 100644 Binary files a/develop/inherit_graph_132.png and b/develop/inherit_graph_132.png differ diff --git a/develop/inherit_graph_133.map b/develop/inherit_graph_133.map index f67f58f5..6145e82d 100644 --- a/develop/inherit_graph_133.map +++ b/develop/inherit_graph_133.map @@ -1,8 +1,5 @@ - - - - - - + + + diff --git a/develop/inherit_graph_133.md5 b/develop/inherit_graph_133.md5 index f7f48868..36eee660 100644 --- a/develop/inherit_graph_133.md5 +++ b/develop/inherit_graph_133.md5 @@ -1 +1 @@ -9184249352b93c039a35a6a54300e8c5 \ No newline at end of file +c90a83064f9db866e9abb88bebdb468f \ No newline at end of file diff --git a/develop/inherit_graph_133.png b/develop/inherit_graph_133.png index 09a6e8ab..cfabcce3 100644 Binary files a/develop/inherit_graph_133.png and b/develop/inherit_graph_133.png differ diff --git a/develop/inherit_graph_134.map b/develop/inherit_graph_134.map index bfb32ef2..6619c4a5 100644 --- a/develop/inherit_graph_134.map +++ b/develop/inherit_graph_134.map @@ -1,7 +1,3 @@ - - - - - + diff --git a/develop/inherit_graph_134.md5 b/develop/inherit_graph_134.md5 index 37ee5f9a..f34df0b6 100644 --- a/develop/inherit_graph_134.md5 +++ b/develop/inherit_graph_134.md5 @@ -1 +1 @@ -e38cf29e381f64dc094711b4af6c1ac1 \ No newline at end of file +c26385cad10c606e65d97856c84219b4 \ No newline at end of file diff --git a/develop/inherit_graph_134.png b/develop/inherit_graph_134.png index 8cccf7f2..bdf24e8f 100644 Binary files a/develop/inherit_graph_134.png and b/develop/inherit_graph_134.png differ diff --git a/develop/inherit_graph_135.map b/develop/inherit_graph_135.map index 452d1cda..677647ef 100644 --- a/develop/inherit_graph_135.map +++ b/develop/inherit_graph_135.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_135.md5 b/develop/inherit_graph_135.md5 index d4d72c5a..cd3c89a7 100644 --- a/develop/inherit_graph_135.md5 +++ b/develop/inherit_graph_135.md5 @@ -1 +1 @@ -bd460b2e2e6b7cbe46f0c4596c75eb45 \ No newline at end of file +8ace0ae88ff6c75f0b85ee3fe5b929e1 \ No newline at end of file diff --git a/develop/inherit_graph_135.png b/develop/inherit_graph_135.png index c45d71b3..12ea892f 100644 Binary files a/develop/inherit_graph_135.png and b/develop/inherit_graph_135.png differ diff --git a/develop/inherit_graph_136.map b/develop/inherit_graph_136.map index 39615b4b..f37afe11 100644 --- a/develop/inherit_graph_136.map +++ b/develop/inherit_graph_136.map @@ -1,7 +1,3 @@ - - - - - + diff --git a/develop/inherit_graph_136.md5 b/develop/inherit_graph_136.md5 index 9a5aa86b..83747c6d 100644 --- a/develop/inherit_graph_136.md5 +++ b/develop/inherit_graph_136.md5 @@ -1 +1 @@ -9b2762527015296d5085cfc2162731a2 \ No newline at end of file +42c3d30afb82df5abaa4b13ed4dace3f \ No newline at end of file diff --git a/develop/inherit_graph_136.png b/develop/inherit_graph_136.png index 7725a889..0a76e8c5 100644 Binary files a/develop/inherit_graph_136.png and b/develop/inherit_graph_136.png differ diff --git a/develop/inherit_graph_137.map b/develop/inherit_graph_137.map index e8c88943..29c17a3e 100644 --- a/develop/inherit_graph_137.map +++ b/develop/inherit_graph_137.map @@ -1,8 +1,7 @@ - - - - - - + + + + + diff --git a/develop/inherit_graph_137.md5 b/develop/inherit_graph_137.md5 index b357ef57..8f7a1566 100644 --- a/develop/inherit_graph_137.md5 +++ b/develop/inherit_graph_137.md5 @@ -1 +1 @@ -91f03aa4c8ae50126caeedc62155ef6c \ No newline at end of file +47e5a5be51c62ff8083e6ea19ead836c \ No newline at end of file diff --git a/develop/inherit_graph_137.png b/develop/inherit_graph_137.png index d971bf2a..a7ecb3d4 100644 Binary files a/develop/inherit_graph_137.png and b/develop/inherit_graph_137.png differ diff --git a/develop/inherit_graph_138.map b/develop/inherit_graph_138.map index 68c2ac1d..3ddc5409 100644 --- a/develop/inherit_graph_138.map +++ b/develop/inherit_graph_138.map @@ -1,4 +1,8 @@ - - + + + + + + diff --git a/develop/inherit_graph_138.md5 b/develop/inherit_graph_138.md5 index 842acdfd..bd3bed60 100644 --- a/develop/inherit_graph_138.md5 +++ b/develop/inherit_graph_138.md5 @@ -1 +1 @@ -e103fbb925180fe26c937ea6416cb07c \ No newline at end of file +151179f183ab7b28191aa1cb1a4a7b54 \ No newline at end of file diff --git a/develop/inherit_graph_138.png b/develop/inherit_graph_138.png index e362cfaa..d6e1c835 100644 Binary files a/develop/inherit_graph_138.png and b/develop/inherit_graph_138.png differ diff --git a/develop/inherit_graph_139.map b/develop/inherit_graph_139.map index 7161b70b..715984c5 100644 --- a/develop/inherit_graph_139.map +++ b/develop/inherit_graph_139.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_139.md5 b/develop/inherit_graph_139.md5 index 6f4244e0..97badec6 100644 --- a/develop/inherit_graph_139.md5 +++ b/develop/inherit_graph_139.md5 @@ -1 +1 @@ -fe8c629c3c10d96952c20243c1090ece \ No newline at end of file +90b9861a6435013981399054e59e057f \ No newline at end of file diff --git a/develop/inherit_graph_139.png b/develop/inherit_graph_139.png index da84f2ea..e136d1e3 100644 Binary files a/develop/inherit_graph_139.png and b/develop/inherit_graph_139.png differ diff --git a/develop/inherit_graph_140.map b/develop/inherit_graph_140.map index 6145e82d..69d00c4d 100644 --- a/develop/inherit_graph_140.map +++ b/develop/inherit_graph_140.map @@ -1,5 +1,3 @@ - - - + diff --git a/develop/inherit_graph_140.md5 b/develop/inherit_graph_140.md5 index 36eee660..2d280c02 100644 --- a/develop/inherit_graph_140.md5 +++ b/develop/inherit_graph_140.md5 @@ -1 +1 @@ -c90a83064f9db866e9abb88bebdb468f \ No newline at end of file +bc0195b353d96c93ad2ce349e552692c \ No newline at end of file diff --git a/develop/inherit_graph_140.png b/develop/inherit_graph_140.png index cfabcce3..73868e55 100644 Binary files a/develop/inherit_graph_140.png and b/develop/inherit_graph_140.png differ diff --git a/develop/inherit_graph_141.map b/develop/inherit_graph_141.map index 6619c4a5..2a4f3515 100644 --- a/develop/inherit_graph_141.map +++ b/develop/inherit_graph_141.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_141.md5 b/develop/inherit_graph_141.md5 index f34df0b6..9f676d7f 100644 --- a/develop/inherit_graph_141.md5 +++ b/develop/inherit_graph_141.md5 @@ -1 +1 @@ -c26385cad10c606e65d97856c84219b4 \ No newline at end of file +ad2d4f063d589ef5d00071a1234e2366 \ No newline at end of file diff --git a/develop/inherit_graph_141.png b/develop/inherit_graph_141.png index bdf24e8f..f8138b0b 100644 Binary files a/develop/inherit_graph_141.png and b/develop/inherit_graph_141.png differ diff --git a/develop/inherit_graph_142.map b/develop/inherit_graph_142.map index 677647ef..d69bf967 100644 --- a/develop/inherit_graph_142.map +++ b/develop/inherit_graph_142.map @@ -1,3 +1,8 @@ - + + + + + + diff --git a/develop/inherit_graph_142.md5 b/develop/inherit_graph_142.md5 index cd3c89a7..d9b01af8 100644 --- a/develop/inherit_graph_142.md5 +++ b/develop/inherit_graph_142.md5 @@ -1 +1 @@ -8ace0ae88ff6c75f0b85ee3fe5b929e1 \ No newline at end of file +eb7d9357051e13f9f59165ba72b1108c \ No newline at end of file diff --git a/develop/inherit_graph_142.png b/develop/inherit_graph_142.png index 12ea892f..a3b744fe 100644 Binary files a/develop/inherit_graph_142.png and b/develop/inherit_graph_142.png differ diff --git a/develop/inherit_graph_143.map b/develop/inherit_graph_143.map index f37afe11..9ceccf06 100644 --- a/develop/inherit_graph_143.map +++ b/develop/inherit_graph_143.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_143.md5 b/develop/inherit_graph_143.md5 index 83747c6d..0b4554f6 100644 --- a/develop/inherit_graph_143.md5 +++ b/develop/inherit_graph_143.md5 @@ -1 +1 @@ -42c3d30afb82df5abaa4b13ed4dace3f \ No newline at end of file +10f558d1f35ed8b703fdd6569b3228fe \ No newline at end of file diff --git a/develop/inherit_graph_143.png b/develop/inherit_graph_143.png index 0a76e8c5..671f20dc 100644 Binary files a/develop/inherit_graph_143.png and b/develop/inherit_graph_143.png differ diff --git a/develop/inherit_graph_144.map b/develop/inherit_graph_144.map index 29c17a3e..48bd0062 100644 --- a/develop/inherit_graph_144.map +++ b/develop/inherit_graph_144.map @@ -1,7 +1,4 @@ - - - - - + + diff --git a/develop/inherit_graph_144.md5 b/develop/inherit_graph_144.md5 index 8f7a1566..f87ed3f0 100644 --- a/develop/inherit_graph_144.md5 +++ b/develop/inherit_graph_144.md5 @@ -1 +1 @@ -47e5a5be51c62ff8083e6ea19ead836c \ No newline at end of file +4dd1352734372cacdeaab0a5063474b0 \ No newline at end of file diff --git a/develop/inherit_graph_144.png b/develop/inherit_graph_144.png index a7ecb3d4..8d9bbd9f 100644 Binary files a/develop/inherit_graph_144.png and b/develop/inherit_graph_144.png differ diff --git a/develop/inherit_graph_145.map b/develop/inherit_graph_145.map index 3ddc5409..dbdd4907 100644 --- a/develop/inherit_graph_145.map +++ b/develop/inherit_graph_145.map @@ -1,8 +1,4 @@ - - - - - - + + diff --git a/develop/inherit_graph_145.md5 b/develop/inherit_graph_145.md5 index bd3bed60..9e071cc1 100644 --- a/develop/inherit_graph_145.md5 +++ b/develop/inherit_graph_145.md5 @@ -1 +1 @@ -151179f183ab7b28191aa1cb1a4a7b54 \ No newline at end of file +f116547175183d8c518b6bfffe5471f7 \ No newline at end of file diff --git a/develop/inherit_graph_145.png b/develop/inherit_graph_145.png index d6e1c835..c64b08e9 100644 Binary files a/develop/inherit_graph_145.png and b/develop/inherit_graph_145.png differ diff --git a/develop/inherit_graph_146.map b/develop/inherit_graph_146.map index 715984c5..dee97936 100644 --- a/develop/inherit_graph_146.map +++ b/develop/inherit_graph_146.map @@ -1,4 +1,4 @@ - - + + diff --git a/develop/inherit_graph_146.md5 b/develop/inherit_graph_146.md5 index 97badec6..d9c83917 100644 --- a/develop/inherit_graph_146.md5 +++ b/develop/inherit_graph_146.md5 @@ -1 +1 @@ -90b9861a6435013981399054e59e057f \ No newline at end of file +272511d1df01cda84a3f8cfcc74fee70 \ No newline at end of file diff --git a/develop/inherit_graph_146.png b/develop/inherit_graph_146.png index e136d1e3..6048168c 100644 Binary files a/develop/inherit_graph_146.png and b/develop/inherit_graph_146.png differ diff --git a/develop/inherit_graph_147.map b/develop/inherit_graph_147.map index 69d00c4d..a3416fe0 100644 --- a/develop/inherit_graph_147.map +++ b/develop/inherit_graph_147.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_147.md5 b/develop/inherit_graph_147.md5 index 2d280c02..91084ead 100644 --- a/develop/inherit_graph_147.md5 +++ b/develop/inherit_graph_147.md5 @@ -1 +1 @@ -bc0195b353d96c93ad2ce349e552692c \ No newline at end of file +29c53939edf6d384d491aa7f73a6e7d0 \ No newline at end of file diff --git a/develop/inherit_graph_147.png b/develop/inherit_graph_147.png index 73868e55..8be1e89b 100644 Binary files a/develop/inherit_graph_147.png and b/develop/inherit_graph_147.png differ diff --git a/develop/inherit_graph_148.map b/develop/inherit_graph_148.map index 2a4f3515..95e2ba68 100644 --- a/develop/inherit_graph_148.map +++ b/develop/inherit_graph_148.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_148.md5 b/develop/inherit_graph_148.md5 index 9f676d7f..14d8f265 100644 --- a/develop/inherit_graph_148.md5 +++ b/develop/inherit_graph_148.md5 @@ -1 +1 @@ -ad2d4f063d589ef5d00071a1234e2366 \ No newline at end of file +eab51fbd04cd31c402429500539cd45b \ No newline at end of file diff --git a/develop/inherit_graph_148.png b/develop/inherit_graph_148.png index f8138b0b..392dfb11 100644 Binary files a/develop/inherit_graph_148.png and b/develop/inherit_graph_148.png differ diff --git a/develop/inherit_graph_149.map b/develop/inherit_graph_149.map index d69bf967..1002a405 100644 --- a/develop/inherit_graph_149.map +++ b/develop/inherit_graph_149.map @@ -1,8 +1,3 @@ - - - - - - + diff --git a/develop/inherit_graph_149.md5 b/develop/inherit_graph_149.md5 index 54a402cf..8f8b8b0d 100644 --- a/develop/inherit_graph_149.md5 +++ b/develop/inherit_graph_149.md5 @@ -1 +1 @@ -ed9735ffd6a28f76c93e957d48d9c63f \ No newline at end of file +2f2d1061b7497b487f6a31ad8b320537 \ No newline at end of file diff --git a/develop/inherit_graph_149.png b/develop/inherit_graph_149.png index a3b744fe..f730565c 100644 Binary files a/develop/inherit_graph_149.png and b/develop/inherit_graph_149.png differ diff --git a/develop/inherit_graph_150.map b/develop/inherit_graph_150.map index 9ceccf06..189a13e1 100644 --- a/develop/inherit_graph_150.map +++ b/develop/inherit_graph_150.map @@ -1,4 +1,4 @@ - - + + diff --git a/develop/inherit_graph_150.md5 b/develop/inherit_graph_150.md5 index 0f45d626..bc195a63 100644 --- a/develop/inherit_graph_150.md5 +++ b/develop/inherit_graph_150.md5 @@ -1 +1 @@ -cf40ed781a09430393eec251fe4bca8f \ No newline at end of file +fa4a72e2d5064145e29488a38b8c5ccc \ No newline at end of file diff --git a/develop/inherit_graph_150.png b/develop/inherit_graph_150.png index 671f20dc..9d3d108b 100644 Binary files a/develop/inherit_graph_150.png and b/develop/inherit_graph_150.png differ diff --git a/develop/inherit_graph_151.map b/develop/inherit_graph_151.map index 48bd0062..35c1118d 100644 --- a/develop/inherit_graph_151.map +++ b/develop/inherit_graph_151.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_151.md5 b/develop/inherit_graph_151.md5 index f87ed3f0..1dbc605c 100644 --- a/develop/inherit_graph_151.md5 +++ b/develop/inherit_graph_151.md5 @@ -1 +1 @@ -4dd1352734372cacdeaab0a5063474b0 \ No newline at end of file +2a6e11a263784b12990700ac07b201e9 \ No newline at end of file diff --git a/develop/inherit_graph_151.png b/develop/inherit_graph_151.png index 8d9bbd9f..aab5849a 100644 Binary files a/develop/inherit_graph_151.png and b/develop/inherit_graph_151.png differ diff --git a/develop/inherit_graph_152.map b/develop/inherit_graph_152.map index dbdd4907..86b3412e 100644 --- a/develop/inherit_graph_152.map +++ b/develop/inherit_graph_152.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_152.md5 b/develop/inherit_graph_152.md5 index a306c819..7d8745d7 100644 --- a/develop/inherit_graph_152.md5 +++ b/develop/inherit_graph_152.md5 @@ -1 +1 @@ -c9525cf1737a35af781fda7750a9527b \ No newline at end of file +ec4779b13eefb32f9bc11fd039365c2f \ No newline at end of file diff --git a/develop/inherit_graph_152.png b/develop/inherit_graph_152.png index c64b08e9..bde99bab 100644 Binary files a/develop/inherit_graph_152.png and b/develop/inherit_graph_152.png differ diff --git a/develop/inherit_graph_153.map b/develop/inherit_graph_153.map index dee97936..76c43e7d 100644 --- a/develop/inherit_graph_153.map +++ b/develop/inherit_graph_153.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_153.md5 b/develop/inherit_graph_153.md5 index d9c83917..254ba3da 100644 --- a/develop/inherit_graph_153.md5 +++ b/develop/inherit_graph_153.md5 @@ -1 +1 @@ -272511d1df01cda84a3f8cfcc74fee70 \ No newline at end of file +7a6968f6eb0e4d3e7120633476709b5b \ No newline at end of file diff --git a/develop/inherit_graph_153.png b/develop/inherit_graph_153.png index 6048168c..cc1041db 100644 Binary files a/develop/inherit_graph_153.png and b/develop/inherit_graph_153.png differ diff --git a/develop/inherit_graph_154.map b/develop/inherit_graph_154.map index a3416fe0..398b4b43 100644 --- a/develop/inherit_graph_154.map +++ b/develop/inherit_graph_154.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_154.md5 b/develop/inherit_graph_154.md5 index 91084ead..5ea76c35 100644 --- a/develop/inherit_graph_154.md5 +++ b/develop/inherit_graph_154.md5 @@ -1 +1 @@ -29c53939edf6d384d491aa7f73a6e7d0 \ No newline at end of file +714056e8f46a54000c5eb9f39f8d2173 \ No newline at end of file diff --git a/develop/inherit_graph_154.png b/develop/inherit_graph_154.png index 8be1e89b..b3b49c97 100644 Binary files a/develop/inherit_graph_154.png and b/develop/inherit_graph_154.png differ diff --git a/develop/inherit_graph_155.map b/develop/inherit_graph_155.map index 95e2ba68..0de1e4cd 100644 --- a/develop/inherit_graph_155.map +++ b/develop/inherit_graph_155.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_155.md5 b/develop/inherit_graph_155.md5 index 14d8f265..075910e6 100644 --- a/develop/inherit_graph_155.md5 +++ b/develop/inherit_graph_155.md5 @@ -1 +1 @@ -eab51fbd04cd31c402429500539cd45b \ No newline at end of file +7781549374699d6bae092d6eb218a0a3 \ No newline at end of file diff --git a/develop/inherit_graph_155.png b/develop/inherit_graph_155.png index 392dfb11..64791bbc 100644 Binary files a/develop/inherit_graph_155.png and b/develop/inherit_graph_155.png differ diff --git a/develop/inherit_graph_156.map b/develop/inherit_graph_156.map index 1002a405..8722777f 100644 --- a/develop/inherit_graph_156.map +++ b/develop/inherit_graph_156.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_156.md5 b/develop/inherit_graph_156.md5 index 8f8b8b0d..2eb86f05 100644 --- a/develop/inherit_graph_156.md5 +++ b/develop/inherit_graph_156.md5 @@ -1 +1 @@ -2f2d1061b7497b487f6a31ad8b320537 \ No newline at end of file +34cfa71fdb9cac74f72cebdd4a78c721 \ No newline at end of file diff --git a/develop/inherit_graph_156.png b/develop/inherit_graph_156.png index f730565c..0616d205 100644 Binary files a/develop/inherit_graph_156.png and b/develop/inherit_graph_156.png differ diff --git a/develop/inherit_graph_157.map b/develop/inherit_graph_157.map index 189a13e1..b180b260 100644 --- a/develop/inherit_graph_157.map +++ b/develop/inherit_graph_157.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_157.md5 b/develop/inherit_graph_157.md5 index 1fecda13..5314d14b 100644 --- a/develop/inherit_graph_157.md5 +++ b/develop/inherit_graph_157.md5 @@ -1 +1 @@ -dcae81d665e826877c2372aea6cbe781 \ No newline at end of file +18383be338616f6c821715ccfc4b828c \ No newline at end of file diff --git a/develop/inherit_graph_157.png b/develop/inherit_graph_157.png index 9d3d108b..7de14fd9 100644 Binary files a/develop/inherit_graph_157.png and b/develop/inherit_graph_157.png differ diff --git a/develop/inherit_graph_158.map b/develop/inherit_graph_158.map index 35c1118d..ea3f2952 100644 --- a/develop/inherit_graph_158.map +++ b/develop/inherit_graph_158.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_158.md5 b/develop/inherit_graph_158.md5 index 1dbc605c..c0f319a2 100644 --- a/develop/inherit_graph_158.md5 +++ b/develop/inherit_graph_158.md5 @@ -1 +1 @@ -2a6e11a263784b12990700ac07b201e9 \ No newline at end of file +4b43b2dd261c1d1388ce416c002e403b \ No newline at end of file diff --git a/develop/inherit_graph_158.png b/develop/inherit_graph_158.png index aab5849a..52ad4d7f 100644 Binary files a/develop/inherit_graph_158.png and b/develop/inherit_graph_158.png differ diff --git a/develop/inherit_graph_159.map b/develop/inherit_graph_159.map index 86b3412e..a10dec10 100644 --- a/develop/inherit_graph_159.map +++ b/develop/inherit_graph_159.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_159.md5 b/develop/inherit_graph_159.md5 index 7d8745d7..921401a6 100644 --- a/develop/inherit_graph_159.md5 +++ b/develop/inherit_graph_159.md5 @@ -1 +1 @@ -ec4779b13eefb32f9bc11fd039365c2f \ No newline at end of file +59ebf66154ab5df60f93a4bddd4f10f7 \ No newline at end of file diff --git a/develop/inherit_graph_159.png b/develop/inherit_graph_159.png index bde99bab..92efe060 100644 Binary files a/develop/inherit_graph_159.png and b/develop/inherit_graph_159.png differ diff --git a/develop/inherit_graph_160.map b/develop/inherit_graph_160.map index 76c43e7d..182015a1 100644 --- a/develop/inherit_graph_160.map +++ b/develop/inherit_graph_160.map @@ -1,3 +1,5 @@ - + + + diff --git a/develop/inherit_graph_160.md5 b/develop/inherit_graph_160.md5 index 254ba3da..c979237b 100644 --- a/develop/inherit_graph_160.md5 +++ b/develop/inherit_graph_160.md5 @@ -1 +1 @@ -7a6968f6eb0e4d3e7120633476709b5b \ No newline at end of file +d51a108fc6c9117544a26d98b4eb9e64 \ No newline at end of file diff --git a/develop/inherit_graph_160.png b/develop/inherit_graph_160.png index cc1041db..706530fb 100644 Binary files a/develop/inherit_graph_160.png and b/develop/inherit_graph_160.png differ diff --git a/develop/inherit_graph_161.map b/develop/inherit_graph_161.map index 398b4b43..472a95a5 100644 --- a/develop/inherit_graph_161.map +++ b/develop/inherit_graph_161.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_161.md5 b/develop/inherit_graph_161.md5 index 5ea76c35..2845aab3 100644 --- a/develop/inherit_graph_161.md5 +++ b/develop/inherit_graph_161.md5 @@ -1 +1 @@ -714056e8f46a54000c5eb9f39f8d2173 \ No newline at end of file +e8dcd11855fc56256bd60eb84c22f534 \ No newline at end of file diff --git a/develop/inherit_graph_161.png b/develop/inherit_graph_161.png index b3b49c97..fb57fc35 100644 Binary files a/develop/inherit_graph_161.png and b/develop/inherit_graph_161.png differ diff --git a/develop/inherit_graph_162.map b/develop/inherit_graph_162.map index 0de1e4cd..624bbf40 100644 --- a/develop/inherit_graph_162.map +++ b/develop/inherit_graph_162.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_162.md5 b/develop/inherit_graph_162.md5 index 075910e6..32e16d0e 100644 --- a/develop/inherit_graph_162.md5 +++ b/develop/inherit_graph_162.md5 @@ -1 +1 @@ -7781549374699d6bae092d6eb218a0a3 \ No newline at end of file +64f13fa0a10b4239995be859322ba4c0 \ No newline at end of file diff --git a/develop/inherit_graph_162.png b/develop/inherit_graph_162.png index 64791bbc..9a531b1e 100644 Binary files a/develop/inherit_graph_162.png and b/develop/inherit_graph_162.png differ diff --git a/develop/inherit_graph_163.map b/develop/inherit_graph_163.map index 8722777f..28957d56 100644 --- a/develop/inherit_graph_163.map +++ b/develop/inherit_graph_163.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_163.md5 b/develop/inherit_graph_163.md5 index 2eb86f05..6b4076d4 100644 --- a/develop/inherit_graph_163.md5 +++ b/develop/inherit_graph_163.md5 @@ -1 +1 @@ -34cfa71fdb9cac74f72cebdd4a78c721 \ No newline at end of file +8bda6bc263cf02dd62acb5cfe7457294 \ No newline at end of file diff --git a/develop/inherit_graph_163.png b/develop/inherit_graph_163.png index 0616d205..70264a91 100644 Binary files a/develop/inherit_graph_163.png and b/develop/inherit_graph_163.png differ diff --git a/develop/inherit_graph_164.map b/develop/inherit_graph_164.map index b180b260..f478baa9 100644 --- a/develop/inherit_graph_164.map +++ b/develop/inherit_graph_164.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_164.md5 b/develop/inherit_graph_164.md5 index 5314d14b..264a7ef1 100644 --- a/develop/inherit_graph_164.md5 +++ b/develop/inherit_graph_164.md5 @@ -1 +1 @@ -18383be338616f6c821715ccfc4b828c \ No newline at end of file +17288875e58f41e99deb409b2df7029b \ No newline at end of file diff --git a/develop/inherit_graph_164.png b/develop/inherit_graph_164.png index 7de14fd9..832904d3 100644 Binary files a/develop/inherit_graph_164.png and b/develop/inherit_graph_164.png differ diff --git a/develop/inherit_graph_165.map b/develop/inherit_graph_165.map index ea3f2952..f62bb4a5 100644 --- a/develop/inherit_graph_165.map +++ b/develop/inherit_graph_165.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_165.md5 b/develop/inherit_graph_165.md5 index c0f319a2..e0983e53 100644 --- a/develop/inherit_graph_165.md5 +++ b/develop/inherit_graph_165.md5 @@ -1 +1 @@ -4b43b2dd261c1d1388ce416c002e403b \ No newline at end of file +8451e1a5c08266b2b5128579a30e9040 \ No newline at end of file diff --git a/develop/inherit_graph_165.png b/develop/inherit_graph_165.png index 52ad4d7f..374156a1 100644 Binary files a/develop/inherit_graph_165.png and b/develop/inherit_graph_165.png differ diff --git a/develop/inherit_graph_166.map b/develop/inherit_graph_166.map index a10dec10..d8bb376d 100644 --- a/develop/inherit_graph_166.map +++ b/develop/inherit_graph_166.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_166.md5 b/develop/inherit_graph_166.md5 index 921401a6..95e1cd7d 100644 --- a/develop/inherit_graph_166.md5 +++ b/develop/inherit_graph_166.md5 @@ -1 +1 @@ -59ebf66154ab5df60f93a4bddd4f10f7 \ No newline at end of file +c260f8951d054128e8b41cdee78537d3 \ No newline at end of file diff --git a/develop/inherit_graph_166.png b/develop/inherit_graph_166.png index 92efe060..431957e7 100644 Binary files a/develop/inherit_graph_166.png and b/develop/inherit_graph_166.png differ diff --git a/develop/inherit_graph_167.map b/develop/inherit_graph_167.map index 182015a1..f8b792e7 100644 --- a/develop/inherit_graph_167.map +++ b/develop/inherit_graph_167.map @@ -1,5 +1,3 @@ - - - + diff --git a/develop/inherit_graph_167.md5 b/develop/inherit_graph_167.md5 index a0231742..84c1227f 100644 --- a/develop/inherit_graph_167.md5 +++ b/develop/inherit_graph_167.md5 @@ -1 +1 @@ -c60ccbb500993633fe6b14b337f0f230 \ No newline at end of file +31828b0ac6b0b37981792d1ff4cbb74f \ No newline at end of file diff --git a/develop/inherit_graph_167.png b/develop/inherit_graph_167.png index 706530fb..46d1e31e 100644 Binary files a/develop/inherit_graph_167.png and b/develop/inherit_graph_167.png differ diff --git a/develop/inherit_graph_168.map b/develop/inherit_graph_168.map index 472a95a5..ccf83cff 100644 --- a/develop/inherit_graph_168.map +++ b/develop/inherit_graph_168.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_168.md5 b/develop/inherit_graph_168.md5 index 2845aab3..44e966d3 100644 --- a/develop/inherit_graph_168.md5 +++ b/develop/inherit_graph_168.md5 @@ -1 +1 @@ -e8dcd11855fc56256bd60eb84c22f534 \ No newline at end of file +ba8c1fd2345902bd4eaa0ec567e89329 \ No newline at end of file diff --git a/develop/inherit_graph_168.png b/develop/inherit_graph_168.png index fb57fc35..6434e7a0 100644 Binary files a/develop/inherit_graph_168.png and b/develop/inherit_graph_168.png differ diff --git a/develop/inherit_graph_169.map b/develop/inherit_graph_169.map index 624bbf40..5ae156a1 100644 --- a/develop/inherit_graph_169.map +++ b/develop/inherit_graph_169.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_169.md5 b/develop/inherit_graph_169.md5 index 32e16d0e..d09d67a0 100644 --- a/develop/inherit_graph_169.md5 +++ b/develop/inherit_graph_169.md5 @@ -1 +1 @@ -64f13fa0a10b4239995be859322ba4c0 \ No newline at end of file +12d62057c26fa93c85265be1e292e7e9 \ No newline at end of file diff --git a/develop/inherit_graph_169.png b/develop/inherit_graph_169.png index 9a531b1e..d3536f13 100644 Binary files a/develop/inherit_graph_169.png and b/develop/inherit_graph_169.png differ diff --git a/develop/inherit_graph_170.map b/develop/inherit_graph_170.map index 28957d56..f3a141c5 100644 --- a/develop/inherit_graph_170.map +++ b/develop/inherit_graph_170.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_170.md5 b/develop/inherit_graph_170.md5 index 6b4076d4..27175029 100644 --- a/develop/inherit_graph_170.md5 +++ b/develop/inherit_graph_170.md5 @@ -1 +1 @@ -8bda6bc263cf02dd62acb5cfe7457294 \ No newline at end of file +593c620b9f128da2b9e6cfb50c230839 \ No newline at end of file diff --git a/develop/inherit_graph_170.png b/develop/inherit_graph_170.png index 70264a91..eef0442b 100644 Binary files a/develop/inherit_graph_170.png and b/develop/inherit_graph_170.png differ diff --git a/develop/inherit_graph_171.map b/develop/inherit_graph_171.map index f478baa9..6d724f61 100644 --- a/develop/inherit_graph_171.map +++ b/develop/inherit_graph_171.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_171.md5 b/develop/inherit_graph_171.md5 index 264a7ef1..d3691e77 100644 --- a/develop/inherit_graph_171.md5 +++ b/develop/inherit_graph_171.md5 @@ -1 +1 @@ -17288875e58f41e99deb409b2df7029b \ No newline at end of file +8cd61a42e5613d846cc890e5ce6da501 \ No newline at end of file diff --git a/develop/inherit_graph_171.png b/develop/inherit_graph_171.png index 832904d3..3dd2f6ea 100644 Binary files a/develop/inherit_graph_171.png and b/develop/inherit_graph_171.png differ diff --git a/develop/inherit_graph_172.map b/develop/inherit_graph_172.map index f62bb4a5..9a3f5181 100644 --- a/develop/inherit_graph_172.map +++ b/develop/inherit_graph_172.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_172.md5 b/develop/inherit_graph_172.md5 index e0983e53..eaaa8c37 100644 --- a/develop/inherit_graph_172.md5 +++ b/develop/inherit_graph_172.md5 @@ -1 +1 @@ -8451e1a5c08266b2b5128579a30e9040 \ No newline at end of file +61d3a52c79b552f27830f4ecd1ed6929 \ No newline at end of file diff --git a/develop/inherit_graph_172.png b/develop/inherit_graph_172.png index 374156a1..0329fdeb 100644 Binary files a/develop/inherit_graph_172.png and b/develop/inherit_graph_172.png differ diff --git a/develop/inherit_graph_173.map b/develop/inherit_graph_173.map index d8bb376d..cd2b2233 100644 --- a/develop/inherit_graph_173.map +++ b/develop/inherit_graph_173.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_173.md5 b/develop/inherit_graph_173.md5 index 95e1cd7d..f93536f4 100644 --- a/develop/inherit_graph_173.md5 +++ b/develop/inherit_graph_173.md5 @@ -1 +1 @@ -c260f8951d054128e8b41cdee78537d3 \ No newline at end of file +6d6aca76ecc9ce9a7a8947fee61efe6e \ No newline at end of file diff --git a/develop/inherit_graph_173.png b/develop/inherit_graph_173.png index 431957e7..101844d8 100644 Binary files a/develop/inherit_graph_173.png and b/develop/inherit_graph_173.png differ diff --git a/develop/inherit_graph_174.map b/develop/inherit_graph_174.map index f8b792e7..430de2b6 100644 --- a/develop/inherit_graph_174.map +++ b/develop/inherit_graph_174.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_174.md5 b/develop/inherit_graph_174.md5 index 84c1227f..7c80de75 100644 --- a/develop/inherit_graph_174.md5 +++ b/develop/inherit_graph_174.md5 @@ -1 +1 @@ -31828b0ac6b0b37981792d1ff4cbb74f \ No newline at end of file +f3771892228934bc3559598b0be87399 \ No newline at end of file diff --git a/develop/inherit_graph_174.png b/develop/inherit_graph_174.png index 46d1e31e..51759a0e 100644 Binary files a/develop/inherit_graph_174.png and b/develop/inherit_graph_174.png differ diff --git a/develop/inherit_graph_175.map b/develop/inherit_graph_175.map deleted file mode 100644 index ccf83cff..00000000 --- a/develop/inherit_graph_175.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_175.md5 b/develop/inherit_graph_175.md5 deleted file mode 100644 index 44e966d3..00000000 --- a/develop/inherit_graph_175.md5 +++ /dev/null @@ -1 +0,0 @@ -ba8c1fd2345902bd4eaa0ec567e89329 \ No newline at end of file diff --git a/develop/inherit_graph_175.png b/develop/inherit_graph_175.png deleted file mode 100644 index 6434e7a0..00000000 Binary files a/develop/inherit_graph_175.png and /dev/null differ diff --git a/develop/inherit_graph_176.map b/develop/inherit_graph_176.map deleted file mode 100644 index 5ae156a1..00000000 --- a/develop/inherit_graph_176.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_176.md5 b/develop/inherit_graph_176.md5 deleted file mode 100644 index d09d67a0..00000000 --- a/develop/inherit_graph_176.md5 +++ /dev/null @@ -1 +0,0 @@ -12d62057c26fa93c85265be1e292e7e9 \ No newline at end of file diff --git a/develop/inherit_graph_176.png b/develop/inherit_graph_176.png deleted file mode 100644 index d3536f13..00000000 Binary files a/develop/inherit_graph_176.png and /dev/null differ diff --git a/develop/inherit_graph_177.map b/develop/inherit_graph_177.map deleted file mode 100644 index f3a141c5..00000000 --- a/develop/inherit_graph_177.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_177.md5 b/develop/inherit_graph_177.md5 deleted file mode 100644 index 27175029..00000000 --- a/develop/inherit_graph_177.md5 +++ /dev/null @@ -1 +0,0 @@ -593c620b9f128da2b9e6cfb50c230839 \ No newline at end of file diff --git a/develop/inherit_graph_177.png b/develop/inherit_graph_177.png deleted file mode 100644 index eef0442b..00000000 Binary files a/develop/inherit_graph_177.png and /dev/null differ diff --git a/develop/inherit_graph_178.map b/develop/inherit_graph_178.map deleted file mode 100644 index 6d724f61..00000000 --- a/develop/inherit_graph_178.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_178.md5 b/develop/inherit_graph_178.md5 deleted file mode 100644 index d3691e77..00000000 --- a/develop/inherit_graph_178.md5 +++ /dev/null @@ -1 +0,0 @@ -8cd61a42e5613d846cc890e5ce6da501 \ No newline at end of file diff --git a/develop/inherit_graph_178.png b/develop/inherit_graph_178.png deleted file mode 100644 index 3dd2f6ea..00000000 Binary files a/develop/inherit_graph_178.png and /dev/null differ diff --git a/develop/inherit_graph_179.map b/develop/inherit_graph_179.map deleted file mode 100644 index 9a3f5181..00000000 --- a/develop/inherit_graph_179.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_179.md5 b/develop/inherit_graph_179.md5 deleted file mode 100644 index eaaa8c37..00000000 --- a/develop/inherit_graph_179.md5 +++ /dev/null @@ -1 +0,0 @@ -61d3a52c79b552f27830f4ecd1ed6929 \ No newline at end of file diff --git a/develop/inherit_graph_179.png b/develop/inherit_graph_179.png deleted file mode 100644 index 0329fdeb..00000000 Binary files a/develop/inherit_graph_179.png and /dev/null differ diff --git a/develop/inherit_graph_18.md5 b/develop/inherit_graph_18.md5 index 64955370..31007a76 100644 --- a/develop/inherit_graph_18.md5 +++ b/develop/inherit_graph_18.md5 @@ -1 +1 @@ -947be0b1c8fe1a8776aee84d5aa0cca9 \ No newline at end of file +1f34ab1644ac3165f1e9084604fa7985 \ No newline at end of file diff --git a/develop/inherit_graph_180.map b/develop/inherit_graph_180.map deleted file mode 100644 index cd2b2233..00000000 --- a/develop/inherit_graph_180.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_180.md5 b/develop/inherit_graph_180.md5 deleted file mode 100644 index f93536f4..00000000 --- a/develop/inherit_graph_180.md5 +++ /dev/null @@ -1 +0,0 @@ -6d6aca76ecc9ce9a7a8947fee61efe6e \ No newline at end of file diff --git a/develop/inherit_graph_180.png b/develop/inherit_graph_180.png deleted file mode 100644 index 101844d8..00000000 Binary files a/develop/inherit_graph_180.png and /dev/null differ diff --git a/develop/inherit_graph_181.map b/develop/inherit_graph_181.map deleted file mode 100644 index 430de2b6..00000000 --- a/develop/inherit_graph_181.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/develop/inherit_graph_181.md5 b/develop/inherit_graph_181.md5 deleted file mode 100644 index 7c80de75..00000000 --- a/develop/inherit_graph_181.md5 +++ /dev/null @@ -1 +0,0 @@ -f3771892228934bc3559598b0be87399 \ No newline at end of file diff --git a/develop/inherit_graph_181.png b/develop/inherit_graph_181.png deleted file mode 100644 index 51759a0e..00000000 Binary files a/develop/inherit_graph_181.png and /dev/null differ diff --git a/develop/inherit_graph_2.md5 b/develop/inherit_graph_2.md5 index 1985d4e0..cd136737 100644 --- a/develop/inherit_graph_2.md5 +++ b/develop/inherit_graph_2.md5 @@ -1 +1 @@ -52106158b3ab09224d4ebeb67030eb94 \ No newline at end of file +6e435dad9b84120480fae8b5d06eb18e \ No newline at end of file diff --git a/develop/inherit_graph_27.md5 b/develop/inherit_graph_27.md5 index bc698cdc..874a6ed9 100644 --- a/develop/inherit_graph_27.md5 +++ b/develop/inherit_graph_27.md5 @@ -1 +1 @@ -1a32bfd16059b8d055c13b6bd4ce0350 \ No newline at end of file +16a04d1703d2b8edcaa166c38b517374 \ No newline at end of file diff --git a/develop/inherit_graph_28.md5 b/develop/inherit_graph_28.md5 index aa71284b..8199b5f8 100644 --- a/develop/inherit_graph_28.md5 +++ b/develop/inherit_graph_28.md5 @@ -1 +1 @@ -84d6363eb91e90ffad4fad5cfa96d429 \ No newline at end of file +4ed290cf3d41998e06fcd23bfa4b0f72 \ No newline at end of file diff --git a/develop/inherit_graph_29.md5 b/develop/inherit_graph_29.md5 index 8d3f2cac..17945054 100644 --- a/develop/inherit_graph_29.md5 +++ b/develop/inherit_graph_29.md5 @@ -1 +1 @@ -b3f30648fb53960f874135b9a24a7f3c \ No newline at end of file +55f1610ad928055226ae2349fa93029c \ No newline at end of file diff --git a/develop/inherit_graph_31.md5 b/develop/inherit_graph_31.md5 index 72fc8fd1..27a8694e 100644 --- a/develop/inherit_graph_31.md5 +++ b/develop/inherit_graph_31.md5 @@ -1 +1 @@ -8c7ed9e28da3339556d6577060c8145f \ No newline at end of file +c1d30125c897084263c95f69aabcede7 \ No newline at end of file diff --git a/develop/inherit_graph_39.md5 b/develop/inherit_graph_39.md5 index 75e61694..777fa91d 100644 --- a/develop/inherit_graph_39.md5 +++ b/develop/inherit_graph_39.md5 @@ -1 +1 @@ -9bbe851b53dba309a6d130f8124b4f03 \ No newline at end of file +5d6ad5fa748a72191b4488c3c765c545 \ No newline at end of file diff --git a/develop/inherit_graph_5.md5 b/develop/inherit_graph_5.md5 index 6863466c..b0941e14 100644 --- a/develop/inherit_graph_5.md5 +++ b/develop/inherit_graph_5.md5 @@ -1 +1 @@ -8ce560b10f32d6d62607395fc6b51fbc \ No newline at end of file +59222c9c80d971cdba46cbfc307ee420 \ No newline at end of file diff --git a/develop/inherit_graph_6.md5 b/develop/inherit_graph_6.md5 index a3a07b59..c69d6589 100644 --- a/develop/inherit_graph_6.md5 +++ b/develop/inherit_graph_6.md5 @@ -1 +1 @@ -9703672fe934e22795458d3ed53c97b1 \ No newline at end of file +69efdaf9cc861b39e52c7d047351307a \ No newline at end of file diff --git a/develop/inherit_graph_65.md5 b/develop/inherit_graph_65.md5 index f7766f93..390a55e6 100644 --- a/develop/inherit_graph_65.md5 +++ b/develop/inherit_graph_65.md5 @@ -1 +1 @@ -724982ca7d37f13d25c672ba6c295c42 \ No newline at end of file +c6c9d2cf39fae582c07b9d5bc823be36 \ No newline at end of file diff --git a/develop/inherit_graph_73.map b/develop/inherit_graph_73.map index 91e9ac8b..2269a7bc 100644 --- a/develop/inherit_graph_73.map +++ b/develop/inherit_graph_73.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_73.md5 b/develop/inherit_graph_73.md5 index db155a66..ae424f11 100644 --- a/develop/inherit_graph_73.md5 +++ b/develop/inherit_graph_73.md5 @@ -1 +1 @@ -b37eb8c226c5e0405d175449fb82a3a9 \ No newline at end of file +50c61d42109d30677267d728dafd1d6a \ No newline at end of file diff --git a/develop/inherit_graph_73.png b/develop/inherit_graph_73.png index 99296db3..1a4b58cf 100644 Binary files a/develop/inherit_graph_73.png and b/develop/inherit_graph_73.png differ diff --git a/develop/inherit_graph_74.map b/develop/inherit_graph_74.map index cc405836..8e2486fb 100644 --- a/develop/inherit_graph_74.map +++ b/develop/inherit_graph_74.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_74.md5 b/develop/inherit_graph_74.md5 index 10468ad0..44ac0606 100644 --- a/develop/inherit_graph_74.md5 +++ b/develop/inherit_graph_74.md5 @@ -1 +1 @@ -d30f804ca79b2ee7067a210d21b576ad \ No newline at end of file +7c7d4f1065ff84fee314aecc8eef94f8 \ No newline at end of file diff --git a/develop/inherit_graph_74.png b/develop/inherit_graph_74.png index 46eecdd9..d02f9b64 100644 Binary files a/develop/inherit_graph_74.png and b/develop/inherit_graph_74.png differ diff --git a/develop/inherit_graph_75.map b/develop/inherit_graph_75.map index e8391f30..f26fc154 100644 --- a/develop/inherit_graph_75.map +++ b/develop/inherit_graph_75.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_75.md5 b/develop/inherit_graph_75.md5 index ccd6eb1a..1f82916f 100644 --- a/develop/inherit_graph_75.md5 +++ b/develop/inherit_graph_75.md5 @@ -1 +1 @@ -d8b29996a9c338ff31048ee00074038a \ No newline at end of file +4954a40fd151478c933f45db3dd198c3 \ No newline at end of file diff --git a/develop/inherit_graph_75.png b/develop/inherit_graph_75.png index 3a238d9d..be7ca533 100644 Binary files a/develop/inherit_graph_75.png and b/develop/inherit_graph_75.png differ diff --git a/develop/inherit_graph_76.map b/develop/inherit_graph_76.map index 0646025f..722a7614 100644 --- a/develop/inherit_graph_76.map +++ b/develop/inherit_graph_76.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_76.md5 b/develop/inherit_graph_76.md5 index 4b135698..6dc5dcda 100644 --- a/develop/inherit_graph_76.md5 +++ b/develop/inherit_graph_76.md5 @@ -1 +1 @@ -c4ee7354df7eb16f942aa63bebb143e9 \ No newline at end of file +462cd702b0b4f33342befcbcd8727e7d \ No newline at end of file diff --git a/develop/inherit_graph_76.png b/develop/inherit_graph_76.png index 3e7e6f4d..5c996322 100644 Binary files a/develop/inherit_graph_76.png and b/develop/inherit_graph_76.png differ diff --git a/develop/inherit_graph_77.map b/develop/inherit_graph_77.map index a7f1f248..d7909fd3 100644 --- a/develop/inherit_graph_77.map +++ b/develop/inherit_graph_77.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_77.md5 b/develop/inherit_graph_77.md5 index 8122453f..4316b94a 100644 --- a/develop/inherit_graph_77.md5 +++ b/develop/inherit_graph_77.md5 @@ -1 +1 @@ -b589cd8dd9902a8a1d761972295ab7d1 \ No newline at end of file +78e2e94001220294b8f7ccd0753ea532 \ No newline at end of file diff --git a/develop/inherit_graph_77.png b/develop/inherit_graph_77.png index 4d26a984..72d831ff 100644 Binary files a/develop/inherit_graph_77.png and b/develop/inherit_graph_77.png differ diff --git a/develop/inherit_graph_78.map b/develop/inherit_graph_78.map index 0a4d9702..28f7c7bd 100644 --- a/develop/inherit_graph_78.map +++ b/develop/inherit_graph_78.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_78.md5 b/develop/inherit_graph_78.md5 index 66b6d7d6..3f2ebfe5 100644 --- a/develop/inherit_graph_78.md5 +++ b/develop/inherit_graph_78.md5 @@ -1 +1 @@ -620c021cd98d17ec0126e00d23b9b532 \ No newline at end of file +8856c85fbe41cc0ed53f4295ae3692f2 \ No newline at end of file diff --git a/develop/inherit_graph_78.png b/develop/inherit_graph_78.png index 2cda87a0..3de331bb 100644 Binary files a/develop/inherit_graph_78.png and b/develop/inherit_graph_78.png differ diff --git a/develop/inherit_graph_79.map b/develop/inherit_graph_79.map index 5e8a3072..1b1a28f6 100644 --- a/develop/inherit_graph_79.map +++ b/develop/inherit_graph_79.map @@ -1,3 +1,9 @@ - + + + + + + + diff --git a/develop/inherit_graph_79.md5 b/develop/inherit_graph_79.md5 index f4a8f912..fcd0fe31 100644 --- a/develop/inherit_graph_79.md5 +++ b/develop/inherit_graph_79.md5 @@ -1 +1 @@ -55b939e6c4256103eff97d05c1f54656 \ No newline at end of file +1bb2c415f291084cadbe2f37bcd83463 \ No newline at end of file diff --git a/develop/inherit_graph_79.png b/develop/inherit_graph_79.png index ee1a8e28..0cd14144 100644 Binary files a/develop/inherit_graph_79.png and b/develop/inherit_graph_79.png differ diff --git a/develop/inherit_graph_80.map b/develop/inherit_graph_80.map index 2269a7bc..050c4fa5 100644 --- a/develop/inherit_graph_80.map +++ b/develop/inherit_graph_80.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_80.md5 b/develop/inherit_graph_80.md5 index ae424f11..97de83f0 100644 --- a/develop/inherit_graph_80.md5 +++ b/develop/inherit_graph_80.md5 @@ -1 +1 @@ -50c61d42109d30677267d728dafd1d6a \ No newline at end of file +400decd972e4e152c4dbe4c3f90325ac \ No newline at end of file diff --git a/develop/inherit_graph_80.png b/develop/inherit_graph_80.png index 1a4b58cf..569b2c26 100644 Binary files a/develop/inherit_graph_80.png and b/develop/inherit_graph_80.png differ diff --git a/develop/inherit_graph_81.map b/develop/inherit_graph_81.map index 8e2486fb..31361c21 100644 --- a/develop/inherit_graph_81.map +++ b/develop/inherit_graph_81.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_81.md5 b/develop/inherit_graph_81.md5 index 44ac0606..98a7fdf4 100644 --- a/develop/inherit_graph_81.md5 +++ b/develop/inherit_graph_81.md5 @@ -1 +1 @@ -7c7d4f1065ff84fee314aecc8eef94f8 \ No newline at end of file +aa90f7873d352ccd6f10e5d172d5d34b \ No newline at end of file diff --git a/develop/inherit_graph_81.png b/develop/inherit_graph_81.png index d02f9b64..57643a77 100644 Binary files a/develop/inherit_graph_81.png and b/develop/inherit_graph_81.png differ diff --git a/develop/inherit_graph_82.map b/develop/inherit_graph_82.map index f26fc154..64ec1d0d 100644 --- a/develop/inherit_graph_82.map +++ b/develop/inherit_graph_82.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_82.md5 b/develop/inherit_graph_82.md5 index 21439a64..e01ec5ea 100644 --- a/develop/inherit_graph_82.md5 +++ b/develop/inherit_graph_82.md5 @@ -1 +1 @@ -dbd2d4d049bec563ecb02b5aa6bbdb28 \ No newline at end of file +65229499b8e821ca30250211d56eda9a \ No newline at end of file diff --git a/develop/inherit_graph_82.png b/develop/inherit_graph_82.png index be7ca533..385c16ef 100644 Binary files a/develop/inherit_graph_82.png and b/develop/inherit_graph_82.png differ diff --git a/develop/inherit_graph_83.map b/develop/inherit_graph_83.map index 722a7614..b568cd1b 100644 --- a/develop/inherit_graph_83.map +++ b/develop/inherit_graph_83.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_83.md5 b/develop/inherit_graph_83.md5 index 405c458e..bd68acb8 100644 --- a/develop/inherit_graph_83.md5 +++ b/develop/inherit_graph_83.md5 @@ -1 +1 @@ -f24dd81fbc2db0033518a73eecd66580 \ No newline at end of file +ff33dfc894a386245a29237d7d335ff1 \ No newline at end of file diff --git a/develop/inherit_graph_83.png b/develop/inherit_graph_83.png index 5c996322..ea4acace 100644 Binary files a/develop/inherit_graph_83.png and b/develop/inherit_graph_83.png differ diff --git a/develop/inherit_graph_84.map b/develop/inherit_graph_84.map index d7909fd3..f724839f 100644 --- a/develop/inherit_graph_84.map +++ b/develop/inherit_graph_84.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_84.md5 b/develop/inherit_graph_84.md5 index 4316b94a..1a1fb7b9 100644 --- a/develop/inherit_graph_84.md5 +++ b/develop/inherit_graph_84.md5 @@ -1 +1 @@ -78e2e94001220294b8f7ccd0753ea532 \ No newline at end of file +6f5b960f432e89f5febfe12f3d54f8e3 \ No newline at end of file diff --git a/develop/inherit_graph_84.png b/develop/inherit_graph_84.png index 72d831ff..bf49ea14 100644 Binary files a/develop/inherit_graph_84.png and b/develop/inherit_graph_84.png differ diff --git a/develop/inherit_graph_85.map b/develop/inherit_graph_85.map index 28f7c7bd..97d25473 100644 --- a/develop/inherit_graph_85.map +++ b/develop/inherit_graph_85.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_85.md5 b/develop/inherit_graph_85.md5 index 3f2ebfe5..a4e8603b 100644 --- a/develop/inherit_graph_85.md5 +++ b/develop/inherit_graph_85.md5 @@ -1 +1 @@ -8856c85fbe41cc0ed53f4295ae3692f2 \ No newline at end of file +48b4f90c5f17687752cfb15e25c41af5 \ No newline at end of file diff --git a/develop/inherit_graph_85.png b/develop/inherit_graph_85.png index 3de331bb..39082997 100644 Binary files a/develop/inherit_graph_85.png and b/develop/inherit_graph_85.png differ diff --git a/develop/inherit_graph_86.map b/develop/inherit_graph_86.map index 81187f5a..9c93f6fc 100644 --- a/develop/inherit_graph_86.map +++ b/develop/inherit_graph_86.map @@ -1,8 +1,3 @@ - - - - - - + diff --git a/develop/inherit_graph_86.md5 b/develop/inherit_graph_86.md5 index cdba3bf3..aa97fff4 100644 --- a/develop/inherit_graph_86.md5 +++ b/develop/inherit_graph_86.md5 @@ -1 +1 @@ -9b745ab00856eb68d4d1cda078f4ff8b \ No newline at end of file +a50aad14ed56bd044c6bae70a402c475 \ No newline at end of file diff --git a/develop/inherit_graph_86.png b/develop/inherit_graph_86.png index 1bd88a12..44ecadae 100644 Binary files a/develop/inherit_graph_86.png and b/develop/inherit_graph_86.png differ diff --git a/develop/inherit_graph_87.map b/develop/inherit_graph_87.map index 050c4fa5..820d73e0 100644 --- a/develop/inherit_graph_87.map +++ b/develop/inherit_graph_87.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_87.md5 b/develop/inherit_graph_87.md5 index 97de83f0..e0a24420 100644 --- a/develop/inherit_graph_87.md5 +++ b/develop/inherit_graph_87.md5 @@ -1 +1 @@ -400decd972e4e152c4dbe4c3f90325ac \ No newline at end of file +2d7265e2ca6ce1bef41015187eeb9c58 \ No newline at end of file diff --git a/develop/inherit_graph_87.png b/develop/inherit_graph_87.png index 569b2c26..c316e26f 100644 Binary files a/develop/inherit_graph_87.png and b/develop/inherit_graph_87.png differ diff --git a/develop/inherit_graph_88.map b/develop/inherit_graph_88.map index 31361c21..036b9684 100644 --- a/develop/inherit_graph_88.map +++ b/develop/inherit_graph_88.map @@ -1,3 +1,8 @@ - + + + + + + diff --git a/develop/inherit_graph_88.md5 b/develop/inherit_graph_88.md5 index 98a7fdf4..1c32a42d 100644 --- a/develop/inherit_graph_88.md5 +++ b/develop/inherit_graph_88.md5 @@ -1 +1 @@ -aa90f7873d352ccd6f10e5d172d5d34b \ No newline at end of file +4794219cd404806d5fb6423983f3f48e \ No newline at end of file diff --git a/develop/inherit_graph_88.png b/develop/inherit_graph_88.png index 57643a77..b5984c3b 100644 Binary files a/develop/inherit_graph_88.png and b/develop/inherit_graph_88.png differ diff --git a/develop/inherit_graph_89.map b/develop/inherit_graph_89.map index 64ec1d0d..a91c5783 100644 --- a/develop/inherit_graph_89.map +++ b/develop/inherit_graph_89.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_89.md5 b/develop/inherit_graph_89.md5 index e01ec5ea..09333dbf 100644 --- a/develop/inherit_graph_89.md5 +++ b/develop/inherit_graph_89.md5 @@ -1 +1 @@ -65229499b8e821ca30250211d56eda9a \ No newline at end of file +cabc051518872cbfc3dc03496f6bfdea \ No newline at end of file diff --git a/develop/inherit_graph_89.png b/develop/inherit_graph_89.png index 385c16ef..328c7a6d 100644 Binary files a/develop/inherit_graph_89.png and b/develop/inherit_graph_89.png differ diff --git a/develop/inherit_graph_90.map b/develop/inherit_graph_90.map index b568cd1b..f70528da 100644 --- a/develop/inherit_graph_90.map +++ b/develop/inherit_graph_90.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_90.md5 b/develop/inherit_graph_90.md5 index bd68acb8..689f665c 100644 --- a/develop/inherit_graph_90.md5 +++ b/develop/inherit_graph_90.md5 @@ -1 +1 @@ -ff33dfc894a386245a29237d7d335ff1 \ No newline at end of file +fecb7f8ab1a02a7e2edbb01f6918f930 \ No newline at end of file diff --git a/develop/inherit_graph_90.png b/develop/inherit_graph_90.png index ea4acace..1b4a64c3 100644 Binary files a/develop/inherit_graph_90.png and b/develop/inherit_graph_90.png differ diff --git a/develop/inherit_graph_91.map b/develop/inherit_graph_91.map index f724839f..8cfa8a36 100644 --- a/develop/inherit_graph_91.map +++ b/develop/inherit_graph_91.map @@ -1,3 +1,35 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/develop/inherit_graph_91.md5 b/develop/inherit_graph_91.md5 index 1a1fb7b9..5e7ed41d 100644 --- a/develop/inherit_graph_91.md5 +++ b/develop/inherit_graph_91.md5 @@ -1 +1 @@ -6f5b960f432e89f5febfe12f3d54f8e3 \ No newline at end of file +9486c3d001a28999838a937a66df7369 \ No newline at end of file diff --git a/develop/inherit_graph_91.png b/develop/inherit_graph_91.png index bf49ea14..a21516da 100644 Binary files a/develop/inherit_graph_91.png and b/develop/inherit_graph_91.png differ diff --git a/develop/inherit_graph_92.map b/develop/inherit_graph_92.map index 97d25473..e206e515 100644 --- a/develop/inherit_graph_92.map +++ b/develop/inherit_graph_92.map @@ -1,4 +1,3 @@ - - + diff --git a/develop/inherit_graph_92.md5 b/develop/inherit_graph_92.md5 index a4e8603b..0ee6b512 100644 --- a/develop/inherit_graph_92.md5 +++ b/develop/inherit_graph_92.md5 @@ -1 +1 @@ -48b4f90c5f17687752cfb15e25c41af5 \ No newline at end of file +172612daf2ad1afcebb5e660d2fade17 \ No newline at end of file diff --git a/develop/inherit_graph_92.png b/develop/inherit_graph_92.png index 39082997..1f6cda1c 100644 Binary files a/develop/inherit_graph_92.png and b/develop/inherit_graph_92.png differ diff --git a/develop/inherit_graph_93.map b/develop/inherit_graph_93.map index 9c93f6fc..f8651e51 100644 --- a/develop/inherit_graph_93.map +++ b/develop/inherit_graph_93.map @@ -1,3 +1,6 @@ - + + + + diff --git a/develop/inherit_graph_93.md5 b/develop/inherit_graph_93.md5 index aa97fff4..993b1977 100644 --- a/develop/inherit_graph_93.md5 +++ b/develop/inherit_graph_93.md5 @@ -1 +1 @@ -a50aad14ed56bd044c6bae70a402c475 \ No newline at end of file +3668db012c0e65e15ee1fc54c261958a \ No newline at end of file diff --git a/develop/inherit_graph_93.png b/develop/inherit_graph_93.png index 44ecadae..aecac0ec 100644 Binary files a/develop/inherit_graph_93.png and b/develop/inherit_graph_93.png differ diff --git a/develop/inherit_graph_94.map b/develop/inherit_graph_94.map index 820d73e0..471130c9 100644 --- a/develop/inherit_graph_94.map +++ b/develop/inherit_graph_94.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_94.md5 b/develop/inherit_graph_94.md5 index e0a24420..746375cc 100644 --- a/develop/inherit_graph_94.md5 +++ b/develop/inherit_graph_94.md5 @@ -1 +1 @@ -2d7265e2ca6ce1bef41015187eeb9c58 \ No newline at end of file +9910fe67c4a8e607d97e9b405ef8067c \ No newline at end of file diff --git a/develop/inherit_graph_94.png b/develop/inherit_graph_94.png index c316e26f..f675ee18 100644 Binary files a/develop/inherit_graph_94.png and b/develop/inherit_graph_94.png differ diff --git a/develop/inherit_graph_95.map b/develop/inherit_graph_95.map index 036b9684..a35d5e6f 100644 --- a/develop/inherit_graph_95.map +++ b/develop/inherit_graph_95.map @@ -1,8 +1,3 @@ - - - - - - + diff --git a/develop/inherit_graph_95.md5 b/develop/inherit_graph_95.md5 index 33d46ff7..2188fb27 100644 --- a/develop/inherit_graph_95.md5 +++ b/develop/inherit_graph_95.md5 @@ -1 +1 @@ -7d2494475205ce28002eeaebd13249e6 \ No newline at end of file +ba5b1298b83d39b426f55c022e7b0f10 \ No newline at end of file diff --git a/develop/inherit_graph_95.png b/develop/inherit_graph_95.png index b5984c3b..70c3c15b 100644 Binary files a/develop/inherit_graph_95.png and b/develop/inherit_graph_95.png differ diff --git a/develop/inherit_graph_96.map b/develop/inherit_graph_96.map index a91c5783..bf51e172 100644 --- a/develop/inherit_graph_96.map +++ b/develop/inherit_graph_96.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_96.md5 b/develop/inherit_graph_96.md5 index 09333dbf..97a0e5ac 100644 --- a/develop/inherit_graph_96.md5 +++ b/develop/inherit_graph_96.md5 @@ -1 +1 @@ -cabc051518872cbfc3dc03496f6bfdea \ No newline at end of file +de5ece8e908d00378615a0769814c502 \ No newline at end of file diff --git a/develop/inherit_graph_96.png b/develop/inherit_graph_96.png index 328c7a6d..8a1ca575 100644 Binary files a/develop/inherit_graph_96.png and b/develop/inherit_graph_96.png differ diff --git a/develop/inherit_graph_97.map b/develop/inherit_graph_97.map index f70528da..1bb2c0ee 100644 --- a/develop/inherit_graph_97.map +++ b/develop/inherit_graph_97.map @@ -1,3 +1,4 @@ - + + diff --git a/develop/inherit_graph_97.md5 b/develop/inherit_graph_97.md5 index 689f665c..4a4d6507 100644 --- a/develop/inherit_graph_97.md5 +++ b/develop/inherit_graph_97.md5 @@ -1 +1 @@ -fecb7f8ab1a02a7e2edbb01f6918f930 \ No newline at end of file +b2d0a9e66f3fcee49dfe9e656a11c0e4 \ No newline at end of file diff --git a/develop/inherit_graph_97.png b/develop/inherit_graph_97.png index 1b4a64c3..7dc249fb 100644 Binary files a/develop/inherit_graph_97.png and b/develop/inherit_graph_97.png differ diff --git a/develop/inherit_graph_98.map b/develop/inherit_graph_98.map index 8cfa8a36..16831e19 100644 --- a/develop/inherit_graph_98.map +++ b/develop/inherit_graph_98.map @@ -1,35 +1,13 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + diff --git a/develop/inherit_graph_98.md5 b/develop/inherit_graph_98.md5 index a9ea8a07..40793c77 100644 --- a/develop/inherit_graph_98.md5 +++ b/develop/inherit_graph_98.md5 @@ -1 +1 @@ -1eef150f39311081b5dd840183fca944 \ No newline at end of file +be1f469a2f28628bb756aaa59368b7a4 \ No newline at end of file diff --git a/develop/inherit_graph_98.png b/develop/inherit_graph_98.png index a21516da..137fea07 100644 Binary files a/develop/inherit_graph_98.png and b/develop/inherit_graph_98.png differ diff --git a/develop/inherit_graph_99.map b/develop/inherit_graph_99.map index e206e515..f356a344 100644 --- a/develop/inherit_graph_99.map +++ b/develop/inherit_graph_99.map @@ -1,3 +1,3 @@ - + diff --git a/develop/inherit_graph_99.md5 b/develop/inherit_graph_99.md5 index 0ee6b512..b908a373 100644 --- a/develop/inherit_graph_99.md5 +++ b/develop/inherit_graph_99.md5 @@ -1 +1 @@ -172612daf2ad1afcebb5e660d2fade17 \ No newline at end of file +06a19ddb157f58013898fd3eaae24b20 \ No newline at end of file diff --git a/develop/inherit_graph_99.png b/develop/inherit_graph_99.png index 1f6cda1c..b6bccbdf 100644 Binary files a/develop/inherit_graph_99.png and b/develop/inherit_graph_99.png differ diff --git a/develop/inherits.html b/develop/inherits.html index 5b9b8a1c..f2d9d7c8 100644 --- a/develop/inherits.html +++ b/develop/inherits.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          @@ -670,126 +670,92 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + - + @@ -799,17 +765,17 @@ - + - + - + @@ -846,12 +812,12 @@ - + - + @@ -859,28 +825,28 @@ - + - + - + - + - + @@ -895,129 +861,129 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1028,23 +994,23 @@ - + - + - + - + @@ -1054,7 +1020,7 @@ - + @@ -1063,12 +1029,12 @@ - + - + @@ -1077,7 +1043,7 @@ - + @@ -1087,40 +1053,40 @@ - + - + - + - + - + - + - + @@ -1129,7 +1095,7 @@ - + @@ -1139,23 +1105,23 @@ - + - + - + - + @@ -1165,169 +1131,169 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/develop/initiator_8cpp_source.html b/develop/initiator_8cpp_source.html index 6a8c3063..80053e7a 100644 --- a/develop/initiator_8cpp_source.html +++ b/develop/initiator_8cpp_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/initiator_8h_source.html b/develop/initiator_8h_source.html index 19119487..4b0e8387 100644 --- a/develop/initiator_8h_source.html +++ b/develop/initiator_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/initiator__id_8h_source.html b/develop/initiator__id_8h_source.html index b4e7abc0..be6d93db 100644 --- a/develop/initiator__id_8h_source.html +++ b/develop/initiator__id_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/initiator__mixin_8h_source.html b/develop/initiator__mixin_8h_source.html index 04702f75..a003d0f9 100644 --- a/develop/initiator__mixin_8h_source.html +++ b/develop/initiator__mixin_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/intor__if_8h_source.html b/develop/intor__if_8h_source.html index 51ddb43f..7377517b 100644 --- a/develop/intor__if_8h_source.html +++ b/develop/intor__if_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/io-redirector_8cpp_source.html b/develop/io-redirector_8cpp_source.html index a4f5d30f..718ed4a0 100644 --- a/develop/io-redirector_8cpp_source.html +++ b/develop/io-redirector_8cpp_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/io-redirector_8h_source.html b/develop/io-redirector_8h_source.html index 59a6a213..0958c2b2 100644 --- a/develop/io-redirector_8h_source.html +++ b/develop/io-redirector_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/ities_8h_source.html b/develop/ities_8h_source.html index f26db033..fb88b5b5 100644 --- a/develop/ities_8h_source.html +++ b/develop/ities_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/logging_8h_source.html b/develop/logging_8h_source.html index e4362f6d..f6846939 100644 --- a/develop/logging_8h_source.html +++ b/develop/logging_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/lwtr4tlm2_8h_source.html b/develop/lwtr4tlm2_8h_source.html index ea0cb4ef..256d8fbf 100644 --- a/develop/lwtr4tlm2_8h_source.html +++ b/develop/lwtr4tlm2_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/lwtr4tlm2__extension__registry_8h_source.html b/develop/lwtr4tlm2__extension__registry_8h_source.html index 0ed00ddd..9deb535f 100644 --- a/develop/lwtr4tlm2__extension__registry_8h_source.html +++ b/develop/lwtr4tlm2__extension__registry_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/lz4__streambuf_8cpp_source.html b/develop/lz4__streambuf_8cpp_source.html index c709d1a2..32da0b96 100644 --- a/develop/lz4__streambuf_8cpp_source.html +++ b/develop/lz4__streambuf_8cpp_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/lz4__streambuf_8h_source.html b/develop/lz4__streambuf_8h_source.html index 07b42fb2..0def7dff 100644 --- a/develop/lz4__streambuf_8h_source.html +++ b/develop/lz4__streambuf_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/memory_8h_source.html b/develop/memory_8h_source.html index 4e704339..0f1b3715 100644 --- a/develop/memory_8h_source.html +++ b/develop/memory_8h_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/menudata.js b/develop/menudata.js index 4ca9096e..d00f9bfb 100644 --- a/develop/menudata.js +++ b/develop/menudata.js @@ -139,4 +139,5 @@ var menudata={children:[ {text:"Typedefs",url:"functions_type.html"}, {text:"Enumerations",url:"functions_enum.html"}]}]}, {text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}]}]} +{text:"File List",url:"files.html"}]}, +{text:"Examples",url:"examples.html"}]} diff --git a/develop/modules.html b/develop/modules.html index 22cddc90..0a0b6565 100644 --- a/develop/modules.html +++ b/develop/modules.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/mt19937__rng_8cpp_source.html b/develop/mt19937__rng_8cpp_source.html index 1012a366..798f7489 100644 --- a/develop/mt19937__rng_8cpp_source.html +++ b/develop/mt19937__rng_8cpp_source.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceahb.html b/develop/namespaceahb.html index 9a34de31..8848f8b8 100644 --- a/develop/namespaceahb.html +++ b/develop/namespaceahb.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceahb_1_1pe.html b/develop/namespaceahb_1_1pe.html index 442946b0..77264c3a 100644 --- a/develop/namespaceahb_1_1pe.html +++ b/develop/namespaceahb_1_1pe.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceahb_1_1pin.html b/develop/namespaceahb_1_1pin.html index 46a5c10a..84e8f1b0 100644 --- a/develop/namespaceahb_1_1pin.html +++ b/develop/namespaceahb_1_1pin.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceapb.html b/develop/namespaceapb.html index 31586f11..7e40d8d3 100644 --- a/develop/namespaceapb.html +++ b/develop/namespaceapb.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceapb_1_1pe.html b/develop/namespaceapb_1_1pe.html index d862e668..b349af4c 100644 --- a/develop/namespaceapb_1_1pe.html +++ b/develop/namespaceapb_1_1pe.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceaxi.html b/develop/namespaceaxi.html index 67b2db30..83637711 100644 --- a/develop/namespaceaxi.html +++ b/develop/namespaceaxi.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceaxi_1_1pe.html b/develop/namespaceaxi_1_1pe.html index b62d0c8b..42936919 100644 --- a/develop/namespaceaxi_1_1pe.html +++ b/develop/namespaceaxi_1_1pe.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespaceaxi_1_1pin.html b/develop/namespaceaxi_1_1pin.html index 0d0c1667..b1009c88 100644 --- a/develop/namespaceaxi_1_1pin.html +++ b/develop/namespaceaxi_1_1pin.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespacechi.html b/develop/namespacechi.html index e337f279..d4ad939c 100644 --- a/develop/namespacechi.html +++ b/develop/namespacechi.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespacelogging.html b/develop/namespacelogging.html index 89eff998..14429f57 100644 --- a/develop/namespacelogging.html +++ b/develop/namespacelogging.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          diff --git a/develop/namespacemembers.html b/develop/namespacemembers.html index bf90dca2..7765efe8 100644 --- a/develop/namespacemembers.html +++ b/develop/namespacemembers.html @@ -24,7 +24,7 @@
                                          scc -  2022.4.0 +  2024.03
                                          SystemC components library
                                          @@ -172,8 +172,14 @@

                                          - g -

                                          • glob_to_regex() : util
                                          • -
                                          • gt_excl_restriction() -: scc +
                                          • gt_lt_restriction() +: scc +
                                          • +
                                          • gt_restriction() +: scc +
                                          • +
                                          • gte_lte_restriction() +: scc
                                          • gte_restriction() : scc diff --git a/develop/namespacemembers_enum.html b/develop/namespacemembers_enum.html index 71bcb66c..35468f75 100644 --- a/develop/namespacemembers_enum.html +++ b/develop/namespacemembers_enum.html @@ -24,7 +24,7 @@
                                            scc -  2022.4.0 +  2024.03
                                            SystemC components library
                                            diff --git a/develop/namespacemembers_eval.html b/develop/namespacemembers_eval.html index 7709c988..b6ede816 100644 --- a/develop/namespacemembers_eval.html +++ b/develop/namespacemembers_eval.html @@ -24,7 +24,7 @@
                                            scc -  2022.4.0 +  2024.03
                                            SystemC components library
                                            diff --git a/develop/namespacemembers_func.html b/develop/namespacemembers_func.html index 9836be9b..4ccb899a 100644 --- a/develop/namespacemembers_func.html +++ b/develop/namespacemembers_func.html @@ -24,7 +24,7 @@
                                            scc -  2022.4.0 +  2024.03
                                            SystemC components library
                                            @@ -145,8 +145,14 @@

                                            - g -

                                            • glob_to_regex() : util
                                            • -
                                            • gt_excl_restriction() -: scc +
                                            • gt_lt_restriction() +: scc +
                                            • +
                                            • gt_restriction() +: scc +
                                            • +
                                            • gte_lte_restriction() +: scc
                                            • gte_restriction() : scc diff --git a/develop/namespacemembers_type.html b/develop/namespacemembers_type.html index ed26fab8..31dfb7fa 100644 --- a/develop/namespacemembers_type.html +++ b/develop/namespacemembers_type.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/namespaceobi.html b/develop/namespaceobi.html index 11ff5e9d..39b6be9a 100644 --- a/develop/namespaceobi.html +++ b/develop/namespaceobi.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/namespaces.html b/develop/namespaces.html index 15fcb015..77c2dbe2 100644 --- a/develop/namespaces.html +++ b/develop/namespaces.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -326,72 +326,65 @@  Cbitfield  Ctlm_target_bfs_register_base  Ccci_broker - C_min_max_restriction - C_min_max_excl_restriction - C_min_restriction - C_min_excl_restriction - C_max_restriction - C_max_excl_restriction - C_discrete_restriction - Ccci_param_restrictedExtension of cci_param<T, TM> which automatically registeres a callback to restrict the valid values given to the parameter - Cconfigurable_tracerConfigurable tracer for automatic port and signal tracing - CconfigurerDesign configuration reader - CConfigHolder - Cext_attributeExtended sc_attribute - Cfifo_w_cbFifo with callbacks - Cfst_trace_file - Chierarchy_dumper - CMT19937Mersenne-twister based random number generator - CobserverThe interface defining an observer - Cnotification_handleA handle to be used be the observed object to notify the observer about a change - Cordered_semaphoreThe ordered_semaphore primitive channel class - ClockLock for the semaphore - Cordered_semaphore_t - CpeqPriority event queue - Cperf_estimatorPerformance estimator - CLogConfigConfiguration class for the logging setup - CScLoggerLogger class - Cstream_redirectionStream redirector - Csc_attribute_randomized - Csc_clock_extA clock source with construction time configurable start delay - Csc_owning_signalSc_signal which takes ownership of the data (acquire()/release()) - Csc_thread_pool - Csc_variable_b - Csc_variableSystemC variable - Ccreator - Csc_variable< bool > - Ccreator - Csc_variable_vector - Csc_ref_variableSc_ref_variable for a particular plain data type. This marks an existing C++ variable as discoverable via the sc_object tree. Whenever possible sc_variable should be used as this does not support value change callback - Csc_ref_variable< sc_core::sc_event > - Csc_ref_variable_maskedSc_variable for a particular plain data type with limited bit width - Csc_in_opt - Csc_in_opt< bool > - Csc_in_opt< sc_dt::sc_logic > - Csc_inout_opt - Csc_inout_opt< bool > - Csc_inout_opt< sc_dt::sc_logic > - Csc_out_opt - Ctick2time - Ctime2tickTranslate a tick-less clock (sc_time based) to boolean clock - CtraceableInterface defining a traceable component - CtracerComponent traversing the SystemC object hierarchy and tracing the objects - CForLoop - CForLoop< 1 > - Csc_uint_tester - Csc_int_tester - Csc_biguint_tester - Csc_bigint_tester - Csc_bv_tester - Csc_lv_tester - Ctracer_baseBase class for automatic tracer - Cvalue_registry_impl - Cvalue_registry_if - Cvalue_holder - Cvalue_registry - Cvcd_mt_trace_file - Cvcd_pull_trace_file - Cvcd_push_trace_file + Ccci_param_restrictedExtension of cci_param<T, TM> which automatically registeres a callback to restrict the valid values given to the parameter + Cconfigurable_tracerConfigurable tracer for automatic port and signal tracing + CconfigurerDesign configuration reader + CConfigHolder + Cext_attributeExtended sc_attribute + Cfifo_w_cbFifo with callbacks + Cfst_trace_file + Chierarchy_dumper + CMT19937Mersenne-twister based random number generator + CobserverThe interface defining an observer + Cnotification_handleA handle to be used be the observed object to notify the observer about a change + Cordered_semaphoreThe ordered_semaphore primitive channel class + ClockLock for the semaphore + Cordered_semaphore_t + CpeqPriority event queue + Cperf_estimatorPerformance estimator + CLogConfigConfiguration class for the logging setup + CScLoggerLogger class + Cstream_redirectionStream redirector + Csc_attribute_randomized + Csc_clock_extA clock source with construction time configurable start delay + Csc_owning_signalSc_signal which takes ownership of the data (acquire()/release()) + Csc_thread_pool + Csc_variable_b + Csc_variableSystemC variable + Ccreator + Csc_variable< bool > + Ccreator + Csc_variable_vector + Csc_ref_variableSc_ref_variable for a particular plain data type. This marks an existing C++ variable as discoverable via the sc_object tree. Whenever possible sc_variable should be used as this does not support value change callback + Csc_ref_variable< sc_core::sc_event > + Csc_ref_variable_maskedSc_variable for a particular plain data type with limited bit width + Csc_in_opt + Csc_in_opt< bool > + Csc_in_opt< sc_dt::sc_logic > + Csc_inout_opt + Csc_inout_opt< bool > + Csc_inout_opt< sc_dt::sc_logic > + Csc_out_opt + Ctick2time + Ctime2tickTranslate a tick-less clock (sc_time based) to boolean clock + CtraceableInterface defining a traceable component + CtracerComponent traversing the SystemC object hierarchy and tracing the objects + CForLoop + CForLoop< 1 > + Csc_uint_tester + Csc_int_tester + Csc_biguint_tester + Csc_bigint_tester + Csc_bv_tester + Csc_lv_tester + Ctracer_baseBase class for automatic tracer + Cvalue_registry_impl + Cvalue_registry_if + Cvalue_holder + Cvalue_registry + Cvcd_mt_trace_file + Cvcd_pull_trace_file + Cvcd_push_trace_file  Nscp  Ntlm_extensions  Cinitiator_id diff --git a/develop/namespacescc.html b/develop/namespacescc.html index d0b6a354..ddffb01b 100644 --- a/develop/namespacescc.html +++ b/develop/namespacescc.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -137,20 +137,6 @@   class  cci_broker   -struct  _min_max_restriction -  -struct  _min_max_excl_restriction -  -struct  _min_restriction -  -struct  _min_excl_restriction -  -struct  _max_restriction -  -struct  _max_excl_restriction -  -struct  _discrete_restriction -  struct  cci_param_restricted  extension of cci_param<T, TM> which automatically registeres a callback to restrict the valid values given to the parameter. More...
                                                @@ -340,59 +326,69 @@ bool init_cci (std::string name)   template<typename T > -_min_max_restriction< T > min_max_restriction (T min, T max) +_min_max_restriction< T > min_max_restriction (T min, T max)  creates a min/max restriction with including the limits More...
                                                + +template<typename T > +_min_max_restriction< T > gte_lte_restriction (T min, T max) + alias for min_max_restriction(T min, T max)
                                              +  template<typename T > -_min_max_excl_restriction< T > min_max_excl_restriction (T min, T max) +_min_max_excl_restriction< T > min_max_excl_restriction (T min, T max)  creates a min/max restriction with excluding the limits More...
                                                + +template<typename T > +_min_max_excl_restriction< T > gt_lt_restriction (T min, T max) + alias for min_max_excl_restriction(T min, T max)
                                              +  template<typename T > -_min_restriction< T > min_restriction (T min) +_min_restriction< T > min_restriction (T min)  creates a minimum restriction including the minimum value More...
                                                template<typename T > -_min_restriction< T > gte_restriction (T min) +_min_restriction< T > gte_restriction (T min)  alias for min_restriction(T min)
                                                template<typename T > -_min_excl_restriction< T > min_excl_restriction (T min) +_min_excl_restriction< T > min_excl_restriction (T min)  creates a minimum restriction excluding the minimum value More...
                                                - + template<typename T > -_min_excl_restriction< T > gt_excl_restriction (T min) - alias for min_excl_restriction(T min)
                                              -  +_min_excl_restriction< T > gt_restriction (T min) + alias for min_excl_restriction(T min)
                                              +  template<typename T > -_max_restriction< T > max_restriction (T max) +_max_restriction< T > max_restriction (T max)  creates a maximum restriction including the maximum value More...
                                                template<typename T > -_max_restriction< T > lte_restriction (T max) +_max_restriction< T > lte_restriction (T max)  alias for max_restriction(T max)
                                                template<typename T > -_max_excl_restriction< T > max_excl_restriction (T max) +_max_excl_restriction< T > max_excl_restriction (T max)  creates a maximum restriction excluding the maximum value More...
                                                template<typename T > -_max_excl_restriction< T > lt_excl_restriction (T max) +_max_excl_restriction< T > lt_excl_restriction (T max)  alias for max_excl_restriction(T max)
                                                template<typename T > -_discrete_restriction< T > discrete_restriction (std::initializer_list< T > values) +_discrete_restriction< T > discrete_restriction (std::initializer_list< T > values)  creates a restriction for a discrete values set More...
                                                template<typename T , size_t SZ> -_discrete_restriction< T > discrete_restriction (std::array< T, SZ > values) +_discrete_restriction< T > discrete_restriction (std::array< T, SZ > values)  creates a restriction for a discrete values set More...
                                                template<typename T > -_discrete_restriction< T > discrete_restriction (std::vector< T > values) +_discrete_restriction< T > discrete_restriction (std::vector< T > values)  creates a restriction for a discrete values set More...
                                                @@ -452,9 +448,12 @@ void init_logging (log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)  initializes the SystemC logging system with a particular logging level More...
                                                - -void reinit_logging (log level=log::WARNING) -  + +void reinit_logging () +  + +void reinit_logging (log level) +  void init_logging (const LogConfig &log_config)  initializes the SystemC logging system with a particular configuration More...
                                                @@ -694,7 +693,7 @@

                                              Returns
                                              the log level
                                              -

                                              Definition at line 92 of file report.h.

                                              +

                                              Definition at line 100 of file report.h.

                                              @@ -710,7 +709,7 @@

                                              - + @@ -740,7 +739,7 @@

                                              Returns
                                              _discrete_restriction<T>
                                              -

                                              Definition at line 161 of file cci_param_restricted.h.

                                              +

                                              Definition at line 167 of file cci_param_restricted.h.

                                              @@ -756,7 +755,7 @@

                                              _discrete_restriction<T> scc::discrete_restriction _discrete_restriction<T> scc::discrete_restriction ( std::array< T, SZ >  values)
                                              - + @@ -785,7 +784,7 @@

                                              Returns
                                              _discrete_restriction<T>
                                              -

                                              Definition at line 150 of file cci_param_restricted.h.

                                              +

                                              Definition at line 156 of file cci_param_restricted.h.

                                              @@ -801,7 +800,7 @@

                                              _discrete_restriction<T> scc::discrete_restriction _discrete_restriction<T> scc::discrete_restriction ( std::initializer_list< T >  values)
                                              - + @@ -830,7 +829,7 @@

                                              Returns
                                              _discrete_restriction<T>
                                              -

                                              Definition at line 171 of file cci_param_restricted.h.

                                              +

                                              Definition at line 177 of file cci_param_restricted.h.

                                              @@ -860,7 +859,7 @@

                                              Returns
                                              the global verbosity level
                                              -

                                              Definition at line 308 of file report.h.

                                              +

                                              Definition at line 318 of file report.h.

                                              @@ -890,7 +889,7 @@

                                              Returns
                                              the verbosity level
                                              -

                                              Definition at line 542 of file report.cpp.

                                              +

                                              Definition at line 546 of file report.cpp.

                                              @@ -912,7 +911,7 @@

                                              Returns
                                              the logging level
                                              -

                                              Definition at line 460 of file report.cpp.

                                              +

                                              Definition at line 464 of file report.cpp.

                                              @@ -987,7 +986,7 @@

                                              Definition at line 446 of file report.cpp.

                                              +

                                              Definition at line 450 of file report.cpp.

                                              @@ -1033,7 +1032,7 @@

                                              Definition at line 438 of file report.cpp.

                                              +

                                              Definition at line 442 of file report.cpp.

                                              @@ -1055,7 +1054,7 @@

                                              Returns
                                              true if the logging system has been initialized
                                              -

                                              Definition at line 436 of file report.cpp.

                                              +

                                              Definition at line 440 of file report.cpp.

                                              @@ -1071,7 +1070,7 @@

                                              _discrete_restriction<T> scc::discrete_restriction _discrete_restriction<T> scc::discrete_restriction ( std::vector< T >  values)
                                              - + @@ -1100,7 +1099,7 @@

                                              Returns
                                              _max_excl_restriction<T>
                                              -

                                              Definition at line 140 of file cci_param_restricted.h.

                                              +

                                              Definition at line 146 of file cci_param_restricted.h.

                                              @@ -1116,7 +1115,7 @@

                                              _max_excl_restriction<T> scc::max_excl_restriction _max_excl_restriction<T> scc::max_excl_restriction ( max)
                                              - + @@ -1145,7 +1144,7 @@

                                              Returns
                                              _max_restriction<T>
                                              -

                                              Definition at line 130 of file cci_param_restricted.h.

                                              +

                                              Definition at line 136 of file cci_param_restricted.h.

                                              @@ -1161,7 +1160,7 @@

                                              _max_restriction<T> scc::max_restriction _max_restriction<T> scc::max_restriction ( max)
                                              - + @@ -1190,7 +1189,7 @@

                                              Returns
                                              _min_excl_restriction<T>
                                              -

                                              Definition at line 120 of file cci_param_restricted.h.

                                              +

                                              Definition at line 126 of file cci_param_restricted.h.

                                              @@ -1206,7 +1205,7 @@

                                              _min_excl_restriction<T> scc::min_excl_restriction _min_excl_restriction<T> scc::min_excl_restriction ( min)
                                              - + @@ -1246,7 +1245,7 @@

                                              Returns
                                              _min_max_excl_restriction<T> instance of the restriction functor
                                              -

                                              Definition at line 100 of file cci_param_restricted.h.

                                              +

                                              Definition at line 104 of file cci_param_restricted.h.

                                              @@ -1262,7 +1261,7 @@

                                              _min_max_excl_restriction<T> scc::min_max_excl_restriction _min_max_excl_restriction<T> scc::min_max_excl_restriction ( min,
                                              - + @@ -1302,7 +1301,7 @@

                                              Returns
                                              _min_max_restriction<T> instance of the restriction functor
                                              -

                                              Definition at line 91 of file cci_param_restricted.h.

                                              +

                                              Definition at line 93 of file cci_param_restricted.h.

                                              @@ -1318,7 +1317,7 @@

                                              _min_max_restriction<T> scc::min_max_restriction _min_max_restriction<T> scc::min_max_restriction ( min,
                                              - + @@ -1347,7 +1346,7 @@

                                              Returns
                                              _min_restriction<T>
                                              -

                                              Definition at line 110 of file cci_param_restricted.h.

                                              +

                                              Definition at line 116 of file cci_param_restricted.h.

                                              @@ -1443,7 +1442,7 @@

                                              Returns
                                              reference to the stream for chaining
                                              -

                                              Definition at line 124 of file report.h.

                                              +

                                              Definition at line 130 of file report.h.

                                              @@ -1491,7 +1490,7 @@

                                              Returns
                                              the input stream
                                              -

                                              Definition at line 105 of file report.h.

                                              +

                                              Definition at line 113 of file report.h.

                                              @@ -1677,7 +1676,7 @@

                                              Definition at line 452 of file report.cpp.

                                              +

                                              Definition at line 456 of file report.cpp.

                                              diff --git a/develop/namespacescc.js b/develop/namespacescc.js index 2ed721c5..be3f9e84 100644 --- a/develop/namespacescc.js +++ b/develop/namespacescc.js @@ -53,13 +53,6 @@ var namespacescc = [ "bitfield", "classscc_1_1bitfield.html", "classscc_1_1bitfield" ], [ "tlm_target_bfs_register_base", "classscc_1_1tlm__target__bfs__register__base.html", "classscc_1_1tlm__target__bfs__register__base" ], [ "cci_broker", "classscc_1_1cci__broker.html", "classscc_1_1cci__broker" ], - [ "_min_max_restriction", "structscc_1_1__min__max__restriction.html", "structscc_1_1__min__max__restriction" ], - [ "_min_max_excl_restriction", "structscc_1_1__min__max__excl__restriction.html", "structscc_1_1__min__max__excl__restriction" ], - [ "_min_restriction", "structscc_1_1__min__restriction.html", "structscc_1_1__min__restriction" ], - [ "_min_excl_restriction", "structscc_1_1__min__excl__restriction.html", "structscc_1_1__min__excl__restriction" ], - [ "_max_restriction", "structscc_1_1__max__restriction.html", "structscc_1_1__max__restriction" ], - [ "_max_excl_restriction", "structscc_1_1__max__excl__restriction.html", "structscc_1_1__max__excl__restriction" ], - [ "_discrete_restriction", "structscc_1_1__discrete__restriction.html", "structscc_1_1__discrete__restriction" ], [ "cci_param_restricted", "structscc_1_1cci__param__restricted.html", "structscc_1_1cci__param__restricted" ], [ "configurable_tracer", "classscc_1_1configurable__tracer.html", "classscc_1_1configurable__tracer" ], [ "configurer", "classscc_1_1configurer.html", "classscc_1_1configurer" ], @@ -158,7 +151,9 @@ var namespacescc = [ "get_value", "namespacescc.html#a89ad70e7b5ef8f701ee781b761020923", null ], [ "get_value", "namespacescc.html#a58d7c29bcc1ce0d2a492796c73e6dbe4", null ], [ "get_value_from_hierarchy", "namespacescc.html#a8517be25cc457ee2140b237cea86e277", null ], - [ "gt_excl_restriction", "namespacescc.html#a5d20ec80953d81636a1c17b302e62b58", null ], + [ "gt_lt_restriction", "namespacescc.html#afed944a779b8b0156ba2eb800e1dbe2e", null ], + [ "gt_restriction", "namespacescc.html#a429834f1a47e9a49b6c3ee677db38b56", null ], + [ "gte_lte_restriction", "namespacescc.html#a955a1df575b3ee22feee0c9739f38e7c", null ], [ "gte_restriction", "namespacescc.html#a4411c2d71c6eb576460a03c7c09fac9d", null ], [ "hier_name_as_regex", "namespacescc.html#a268df8cbb9b18bfb572ee6c1751f5ba8", null ], [ "icompare", "namespacescc.html#a37aa0e4e0cb80c3c3eeffc491e4a2f81", null ], @@ -196,7 +191,8 @@ var namespacescc = [ "parse_from_string", "namespacescc.html#a69f13e127ccc21fca23b968019ab55c2", null ], [ "parse_from_string", "namespacescc.html#a5df192e5fb1021968646f2212bbf6acf", null ], [ "record_changes", "namespacescc.html#aaa7fe133e2db0cb87985f932b1596fa7", null ], - [ "reinit_logging", "namespacescc.html#aed99c90807e1812ff562dac3c3d7f1de", null ], + [ "reinit_logging", "namespacescc.html#a196ce77af0c568e5b2978f2c656670df", null ], + [ "reinit_logging", "namespacescc.html#a1bfea925559dd376f400691196619db4", null ], [ "SC_HAS_PROCESS", "namespacescc.html#aa5492479cd210ab4ee26dd01a0d50621", null ], [ "sc_trace", "namespacescc.html#a33028e24a9da7bd91f78aeb2a32865bc", null ], [ "sc_trace", "namespacescc.html#a3e1dd04c722ec8ba87d2fe25335b5de5", null ], diff --git a/develop/namespacescc_1_1trace.html b/develop/namespacescc_1_1trace.html index fa1904b7..1bed5d41 100644 --- a/develop/namespacescc_1_1trace.html +++ b/develop/namespacescc_1_1trace.html @@ -24,7 +24,7 @@

                                              diff --git a/develop/namespacescv__tr.html b/develop/namespacescv__tr.html index a681eacc..1850ea3c 100644 --- a/develop/namespacescv__tr.html +++ b/develop/namespacescv__tr.html @@ -24,7 +24,7 @@ @@ -269,7 +269,7 @@

                                              Definition at line 398 of file scv_tr_lz4.cpp.

                                              +

                                              Definition at line 394 of file scv_tr_lz4.cpp.

                                              @@ -291,7 +291,7 @@

                                              Definition at line 406 of file scv_tr_lz4.cpp.

                                              +

                                              Definition at line 402 of file scv_tr_lz4.cpp.

                                              diff --git a/develop/namespacetlm.html b/develop/namespacetlm.html index 35812e38..036b547b 100644 --- a/develop/namespacetlm.html +++ b/develop/namespacetlm.html @@ -24,7 +24,7 @@

                                              diff --git a/develop/namespacetlm_1_1scc.html b/develop/namespacetlm_1_1scc.html index 05716bc2..ce9de4e5 100644 --- a/develop/namespacetlm_1_1scc.html +++ b/develop/namespacetlm_1_1scc.html @@ -24,7 +24,7 @@ diff --git a/develop/namespacetlm_1_1scc_1_1lwtr.html b/develop/namespacetlm_1_1scc_1_1lwtr.html index 66205074..5994745b 100644 --- a/develop/namespacetlm_1_1scc_1_1lwtr.html +++ b/develop/namespacetlm_1_1scc_1_1lwtr.html @@ -24,7 +24,7 @@ diff --git a/develop/namespacetlm_1_1scc_1_1pe.html b/develop/namespacetlm_1_1scc_1_1pe.html index 2789348b..434c3dd6 100644 --- a/develop/namespacetlm_1_1scc_1_1pe.html +++ b/develop/namespacetlm_1_1scc_1_1pe.html @@ -24,7 +24,7 @@ diff --git a/develop/namespacetlm_1_1scc_1_1scv.html b/develop/namespacetlm_1_1scc_1_1scv.html index 44a4e940..a17f9097 100644 --- a/develop/namespacetlm_1_1scc_1_1scv.html +++ b/develop/namespacetlm_1_1scc_1_1scv.html @@ -24,7 +24,7 @@ diff --git a/develop/namespaceutil.html b/develop/namespaceutil.html index e95d9860..da31e4e9 100644 --- a/develop/namespaceutil.html +++ b/develop/namespaceutil.html @@ -24,7 +24,7 @@ diff --git a/develop/navtreedata.js b/develop/navtreedata.js index 86728f6d..bc2a7bdb 100644 --- a/develop/navtreedata.js +++ b/develop/navtreedata.js @@ -56,32 +56,33 @@ var NAVTREE = ] ], [ "Files", "files.html", [ [ "File List", "files.html", "files_dup" ] - ] ] + ] ], + [ "Examples", "examples.html", "examples" ] ] ] ]; var NAVTREEINDEX = [ -"", -"classapb_1_1pe_1_1apb__initiator__b.html#a8187f95358ce14fe59d0cbeac56900c0", -"classaxi_1_1pe_1_1axi__initiator__b.html#a6aba53099cdc5a0bf0fbf588609ab865", -"classaxi_1_1pe_1_1tx__reorderer.html#a089f7096bcf7a4fb137383a5e52af6fe", -"classchi_1_1scv_1_1chi__trx__recorder.html#ad36625a7cded51df300fa849456ddb66", -"classscc_1_1impl_1_1sc__register.html#a2b88d767e6aebb0e484dee4f0262aba5", -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad67da1e8d326326a173e9daa609b840a", -"classscc_1_1tracer.html#a5df99939fbd165eda9a8e6c71b6316f9", -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ac7f9f7f75a9a942cf4c4f96ac34e2748", -"classutil_1_1range__lut.html#ae15b0076effece78d601899869b92525", -"namespaceaxi.html#a54bdd4e158af6b6d86a26fcf03bb4edb", -"namespacechi.html#aa0ce11c7b275a471aada8f3fc79c84a9", -"namespacescv__tr.html#a1f92621f5a413a86a2528ff9d43cf42e", -"structahb_1_1ahb__extension.html", -"structaxi_1_1b__axi.html#a2f0552ce13ab10650d258017b9f6d499", -"structaxi_1_1request.html#a66a14fb9aafefec408910a0bef54375a", -"structchi_1_1lwtr_1_1nb__chi__rec__entry.html#a90987ba08bfd9987b25ff6fd8fb0af02", -"structscc_1_1observer.html#ac76bc66df98165844a2c613ebacc894c", -"structscc_1_1trace_1_1vcd__trace.html#a60d95d7118d5510aa84923131b2a88ce", -"structutil_1_1thread__pool.html#a4b912eec56828575120d304c93eb6149" +"DEFINE_ENUM4CCI-example.html", +"classapb_1_1pe_1_1apb__target.html#adb0e4e90568d28c784c449ce4fb18e4d", +"classaxi_1_1pe_1_1axi__initiator__b.html#ac8553d7b47ddceb68ab773521a6e284c", +"classaxi_1_1pe_1_1tx__reorderer.html#acc07c5f049c45e43615232b3f085de56", +"classchi_1_1scv_1_1impl_1_1chi__recording__payload.html", +"classscc_1_1impl_1_1sc__register.html#a5327b5a419a0355cd1a91badcb184a83", +"classscc_1_1sc__inout__opt.html#a016fa8a6fc5e187aa52fb609f14889a3", +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea113eceefb55f242f9f83304380f71ce3", +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#af7666af4473c7f7f1b740dba95659141", +"classutil_1_1range__lut.html#afaae1bf453a7ca473691dfd8d5d38e6d", +"namespaceaxi.html#a6318752e2d4bb1398307086ebc1421f7", +"namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1da01af6f06eae06e41b1e05ad01c0f9ed7", +"namespacescv__tr.html#a32f06dd92b69fc5b665b63172dd62e31", +"structahb_1_1ahb__extension.html#a04657b7079c01707a2cb87fe785c0a48", +"structaxi_1_1b__axi.html#a5384501b6dd4d2fd4ad9a22120b89b4e", +"structaxi_1_1request.html#a5ab8299febf67f2cc3a6cd2add4a9b16", +"structchi_1_1lwtr_1_1nb__chi__rec__entry.html", +"structscc_1_1peq.html#a8d49bf3f9d005c870ec4ef4ff3c6cf7d", +"structscc_1_1vcd__push__trace__file.html#a35669d395badbefd0f09cd5fc73f3a49", +"tlm__mm_8h_source.html" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/develop/navtreeindex0.js b/develop/navtreeindex0.js index 6a84853b..da405d6d 100644 --- a/develop/navtreeindex0.js +++ b/develop/navtreeindex0.js @@ -1,23 +1,6 @@ var NAVTREEINDEX0 = { -"":[4,0,2,0], -"":[4,0,2,2], -"":[4,0,6,0], -"":[4,0,7], -"":[4,0,8,0], -"":[4,0,8,1], -"":[4,0,2,5], -"":[4,0,2,5,0], -"":[4,0,9], -"":[4,0,9,0], -"":[4,0,11], -"":[4,0,12,0,2,0], -"":[4,0,2,1], -"":[4,0,3,0], -"":[4,0,3,1], -"":[4,0,3,2], -"":[4,0,3,2,0], -"":[4,0,5], +"DEFINE_ENUM4CCI-example.html":[7,0], "ace__initiator_8h_source.html":[6,0,0,0,2,0,0], "ace__lite__initiator_8h_source.html":[6,0,0,0,2,0,1], "ace__lite__target_8h_source.html":[6,0,0,0,2,0,2], @@ -79,6 +62,7 @@ var NAVTREEINDEX0 = "cci__broker_8cpp_source.html":[6,0,0,3,0,2], "cci__broker_8h_source.html":[6,0,0,3,0,3], "cci__param__restricted_8h_source.html":[6,0,0,3,0,4], +"cci__util_8h_source.html":[6,0,0,3,0,5], "checker__if_8h_source.html":[6,0,1,0,0,0,4], "chi_2scv_2recorder__modules_8h.html#ae048503469c50f609b5603a5fe1b9d7d":[4,0,3,2,3], "chi_2scv_2recorder__modules_8h_source.html":[6,0,1,0,1,2,1], @@ -249,5 +233,21 @@ var NAVTREEINDEX0 = "classapb_1_1pe_1_1apb__initiator__b.html#a6a242403d76d6a00ab101e54e9cd2561":[5,0,1,0,0,3], "classapb_1_1pe_1_1apb__initiator__b.html#a6b330d2a8c7173f892fbb7469dfe2202":[5,0,1,0,0,15], "classapb_1_1pe_1_1apb__initiator__b.html#a6be25a17ecba28e7a458730a7f2eed13":[5,0,1,0,0,16], -"classapb_1_1pe_1_1apb__initiator__b.html#a6e667009afcaeabe60c4624ed632e246":[5,0,1,0,0,20] +"classapb_1_1pe_1_1apb__initiator__b.html#a6e667009afcaeabe60c4624ed632e246":[5,0,1,0,0,20], +"classapb_1_1pe_1_1apb__initiator__b.html#a8187f95358ce14fe59d0cbeac56900c0":[5,0,1,0,0,9], +"classapb_1_1pe_1_1apb__initiator__b.html#a829de7e7e82ff720845fddbef083ce15":[5,0,1,0,0,4], +"classapb_1_1pe_1_1apb__initiator__b.html#a84b54507cb5e40a5c2a35f2e33b45b31":[5,0,1,0,0,0], +"classapb_1_1pe_1_1apb__initiator__b.html#a98770a8c1d78da31def67b83d83f420c":[5,0,1,0,0,17], +"classapb_1_1pe_1_1apb__initiator__b.html#ab58abe5f60ef551efb57a02bc03ca2bf":[5,0,1,0,0,5], +"classapb_1_1pe_1_1apb__initiator__b.html#adf8ba236890f83468201a6f2eef32105":[5,0,1,0,0,12], +"classapb_1_1pe_1_1apb__initiator__b.html#af9a60f3f34a5afe9f6be7f2647fe2bc4":[5,0,1,0,0,1], +"classapb_1_1pe_1_1apb__target.html":[5,0,1,0,3], +"classapb_1_1pe_1_1apb__target.html#a3b1770e95801f8f9bdfb8fc709d6b5ba":[5,0,1,0,3,7], +"classapb_1_1pe_1_1apb__target.html#a5b65543eea318989c3914d7b0f5ec940":[5,0,1,0,3,8], +"classapb_1_1pe_1_1apb__target.html#a61f2ef917b2e0611994654205e1d0407":[5,0,1,0,3,9], +"classapb_1_1pe_1_1apb__target.html#a6c9159a91d20eedce3ddef961a7614db":[5,0,1,0,3,1], +"classapb_1_1pe_1_1apb__target.html#a82c0d49b9aeb3530638a051042034e9c":[5,0,1,0,3,5], +"classapb_1_1pe_1_1apb__target.html#a881a5989a0c03a29107c676b26a23ad7":[5,0,1,0,3,4], +"classapb_1_1pe_1_1apb__target.html#a934fbc4cd30e37e7d796428ca8906a4f":[5,0,1,0,3,0], +"classapb_1_1pe_1_1apb__target.html#a9438b1fc0f4b85466aa510be7c15851d":[5,0,1,0,3,2] }; diff --git a/develop/navtreeindex1.js b/develop/navtreeindex1.js index 7d58c34e..531eb007 100644 --- a/develop/navtreeindex1.js +++ b/develop/navtreeindex1.js @@ -1,21 +1,5 @@ var NAVTREEINDEX1 = { -"classapb_1_1pe_1_1apb__initiator__b.html#a8187f95358ce14fe59d0cbeac56900c0":[5,0,1,0,0,9], -"classapb_1_1pe_1_1apb__initiator__b.html#a829de7e7e82ff720845fddbef083ce15":[5,0,1,0,0,4], -"classapb_1_1pe_1_1apb__initiator__b.html#a84b54507cb5e40a5c2a35f2e33b45b31":[5,0,1,0,0,0], -"classapb_1_1pe_1_1apb__initiator__b.html#a98770a8c1d78da31def67b83d83f420c":[5,0,1,0,0,17], -"classapb_1_1pe_1_1apb__initiator__b.html#ab58abe5f60ef551efb57a02bc03ca2bf":[5,0,1,0,0,5], -"classapb_1_1pe_1_1apb__initiator__b.html#adf8ba236890f83468201a6f2eef32105":[5,0,1,0,0,12], -"classapb_1_1pe_1_1apb__initiator__b.html#af9a60f3f34a5afe9f6be7f2647fe2bc4":[5,0,1,0,0,1], -"classapb_1_1pe_1_1apb__target.html":[5,0,1,0,3], -"classapb_1_1pe_1_1apb__target.html#a3b1770e95801f8f9bdfb8fc709d6b5ba":[5,0,1,0,3,7], -"classapb_1_1pe_1_1apb__target.html#a5b65543eea318989c3914d7b0f5ec940":[5,0,1,0,3,8], -"classapb_1_1pe_1_1apb__target.html#a61f2ef917b2e0611994654205e1d0407":[5,0,1,0,3,9], -"classapb_1_1pe_1_1apb__target.html#a6c9159a91d20eedce3ddef961a7614db":[5,0,1,0,3,1], -"classapb_1_1pe_1_1apb__target.html#a82c0d49b9aeb3530638a051042034e9c":[5,0,1,0,3,5], -"classapb_1_1pe_1_1apb__target.html#a881a5989a0c03a29107c676b26a23ad7":[5,0,1,0,3,4], -"classapb_1_1pe_1_1apb__target.html#a934fbc4cd30e37e7d796428ca8906a4f":[5,0,1,0,3,0], -"classapb_1_1pe_1_1apb__target.html#a9438b1fc0f4b85466aa510be7c15851d":[5,0,1,0,3,2], "classapb_1_1pe_1_1apb__target.html#adb0e4e90568d28c784c449ce4fb18e4d":[5,0,1,0,3,3], "classapb_1_1pe_1_1apb__target.html#af3d8cf03156a2f5547793be67b70697e":[5,0,1,0,3,6], "classapb_1_1pe_1_1apb__target__b.html":[5,0,1,0,2], @@ -231,23 +215,39 @@ var NAVTREEINDEX1 = "classaxi_1_1pe_1_1axi__initiator.html#adbc0d34f7dd80d9c76cdf09289a78ffb":[5,0,2,3,2,3], "classaxi_1_1pe_1_1axi__initiator__b.html":[5,0,2,3,1], "classaxi_1_1pe_1_1axi__initiator__b.html#a0050b5e98dcd0dcb8e28f3e01d5c5da7":[5,0,2,3,1,30], +"classaxi_1_1pe_1_1axi__initiator__b.html#a0125bdea6010f1fae41e7615dda6a32f":[5,0,2,3,1,37], +"classaxi_1_1pe_1_1axi__initiator__b.html#a0140d5f7a3951321751aaf22665c80bd":[5,0,2,3,1,44], "classaxi_1_1pe_1_1axi__initiator__b.html#a0a6da696a8fb31d82bf9e3d510f11d3a":[5,0,2,3,1,9], "classaxi_1_1pe_1_1axi__initiator__b.html#a0b59e11e520a1517482c654a08da6a67":[5,0,2,3,1,10], "classaxi_1_1pe_1_1axi__initiator__b.html#a0b9d05b714e4dab3ec8e44afce890c78":[5,0,2,3,1,1], -"classaxi_1_1pe_1_1axi__initiator__b.html#a1d237e6fb9666501f9f1cdbdfa175507":[5,0,2,3,1,20], "classaxi_1_1pe_1_1axi__initiator__b.html#a1dee1c2883e7b8500a9b76364785095c":[5,0,2,3,1,3], -"classaxi_1_1pe_1_1axi__initiator__b.html#a272de5bd1429425db81a02af8a72688d":[5,0,2,3,1,27], +"classaxi_1_1pe_1_1axi__initiator__b.html#a26a6220ee3b90687cb04a36d09f7d129":[5,0,2,3,1,27], +"classaxi_1_1pe_1_1axi__initiator__b.html#a275f6f209f354bd5289567e777d57566":[5,0,2,3,1,23], "classaxi_1_1pe_1_1axi__initiator__b.html#a2ae6017e57f886c5877710c6144bc221":[5,0,2,3,1,16], -"classaxi_1_1pe_1_1axi__initiator__b.html#a3067a4d748e128b3227748e856e55bbe":[5,0,2,3,1,38], +"classaxi_1_1pe_1_1axi__initiator__b.html#a3067a4d748e128b3227748e856e55bbe":[5,0,2,3,1,40], +"classaxi_1_1pe_1_1axi__initiator__b.html#a31f9fd4e952c9b4c510e9cd93266e70f":[5,0,2,3,1,32], "classaxi_1_1pe_1_1axi__initiator__b.html#a36224638c01864e3033ffee55c17ee71":[5,0,2,3,1,11], -"classaxi_1_1pe_1_1axi__initiator__b.html#a3a6d863d1388dee723b9a96aa3d779ec":[5,0,2,3,1,33], "classaxi_1_1pe_1_1axi__initiator__b.html#a3da085717a83e226b319a90710dc4f8e":[5,0,2,3,1,12], "classaxi_1_1pe_1_1axi__initiator__b.html#a3ea5106266b46f83fd4004a849f65b59":[5,0,2,3,1,8], "classaxi_1_1pe_1_1axi__initiator__b.html#a4629f469aca4282f7c501739d6be8394":[5,0,2,3,1,31], +"classaxi_1_1pe_1_1axi__initiator__b.html#a4866014b77d6c60043a0f90614982bfd":[5,0,2,3,1,22], "classaxi_1_1pe_1_1axi__initiator__b.html#a50842c9ae29a7f6fda669991c0eb26e8":[5,0,2,3,1,14], -"classaxi_1_1pe_1_1axi__initiator__b.html#a533b3c0de316636c983469d4f4f71775":[5,0,2,3,1,22], "classaxi_1_1pe_1_1axi__initiator__b.html#a5ace2585101f1232312fdfc5b9ed49ed":[5,0,2,3,1,25], "classaxi_1_1pe_1_1axi__initiator__b.html#a5d1f166ca0b9094d799ba449684e17e4":[5,0,2,3,1,13], -"classaxi_1_1pe_1_1axi__initiator__b.html#a66949ed2add821dd1ff5d9c8f6edead5":[5,0,2,3,1,40], -"classaxi_1_1pe_1_1axi__initiator__b.html#a66e028e305400fdf2f42e6ba895addaa":[5,0,2,3,1,35] +"classaxi_1_1pe_1_1axi__initiator__b.html#a6400887331cc6ea37e005144824c9fbf":[5,0,2,3,1,35], +"classaxi_1_1pe_1_1axi__initiator__b.html#a66949ed2add821dd1ff5d9c8f6edead5":[5,0,2,3,1,42], +"classaxi_1_1pe_1_1axi__initiator__b.html#a6aba53099cdc5a0bf0fbf588609ab865":[5,0,2,3,1,2], +"classaxi_1_1pe_1_1axi__initiator__b.html#a7a4090c4604c13e26f23f934c45e44a7":[5,0,2,3,1,29], +"classaxi_1_1pe_1_1axi__initiator__b.html#a7b8ed9b5ef52044681a930cebb54b1a1":[5,0,2,3,1,34], +"classaxi_1_1pe_1_1axi__initiator__b.html#a7e963715f95c3255d10be3b201b81118":[5,0,2,3,1,7], +"classaxi_1_1pe_1_1axi__initiator__b.html#a81f66f3a05bf48d7a71c7e85eaa7468e":[5,0,2,3,1,33], +"classaxi_1_1pe_1_1axi__initiator__b.html#a8b250f9af3b1fec47b2be0fb1a57facc":[5,0,2,3,1,41], +"classaxi_1_1pe_1_1axi__initiator__b.html#a8d4169896352000928bcf92ada442dc0":[5,0,2,3,1,5], +"classaxi_1_1pe_1_1axi__initiator__b.html#a900600b22eaa72eca6f50bcc74445344":[5,0,2,3,1,26], +"classaxi_1_1pe_1_1axi__initiator__b.html#a96564f8e5612a96d70e5a85b625d93d4":[5,0,2,3,1,38], +"classaxi_1_1pe_1_1axi__initiator__b.html#a9c09c4070d9685de0dafadc4b778c340":[5,0,2,3,1,15], +"classaxi_1_1pe_1_1axi__initiator__b.html#a9d69266d3ff86e23b792d7991205198c":[5,0,2,3,1,20], +"classaxi_1_1pe_1_1axi__initiator__b.html#aac3d07e27bafee5cd9d1b0a127ac9e91":[5,0,2,3,1,24], +"classaxi_1_1pe_1_1axi__initiator__b.html#abf459136e26f56117ba680501e5c2e26":[5,0,2,3,1,43], +"classaxi_1_1pe_1_1axi__initiator__b.html#ac469a8a1013930bc3fd6fed14478a4f7":[5,0,2,3,1,18] }; diff --git a/develop/navtreeindex10.js b/develop/navtreeindex10.js index ad29e7b6..9fbca9f0 100644 --- a/develop/navtreeindex10.js +++ b/develop/navtreeindex10.js @@ -1,9 +1,5 @@ var NAVTREEINDEX10 = { -"namespaceaxi.html#a54bdd4e158af6b6d86a26fcf03bb4edb":[4,0,2,94], -"namespaceaxi.html#a5569a48d81a31294a7c417b849a50c87":[4,0,2,125], -"namespaceaxi.html#a56b2be1513079d5f01cdc825df0d6bed":[4,0,2,116], -"namespaceaxi.html#a5e2c13adbf88ec6cd3f8bd36082a2613":[4,0,2,89], "namespaceaxi.html#a6318752e2d4bb1398307086ebc1421f7":[4,0,2,75], "namespaceaxi.html#a6318752e2d4bb1398307086ebc1421f7a55e6eaaefb11cf68e4d140056c85de3d":[4,0,2,75,1], "namespaceaxi.html#a6318752e2d4bb1398307086ebc1421f7a58b0a3db91dbb7282de3912df7d0e310":[4,0,2,75,0], @@ -249,5 +245,9 @@ var NAVTREEINDEX10 = "namespacechi.html#a99ccdced031bd69983204bfc2d3a69caadbb7aa7e448b23a877f6625115cc7032":[4,0,3,39,17], "namespacechi.html#a99ccdced031bd69983204bfc2d3a69caae9ff1838b0623cc0712e4e5c2734193e":[4,0,3,39,9], "namespacechi.html#a9a2f5e88f473f75ca642142b2c5b3690":[4,0,3,33], -"namespacechi.html#a9c878db0f7a36db862b2434c119553a5":[4,0,3,32] +"namespacechi.html#a9c878db0f7a36db862b2434c119553a5":[4,0,3,32], +"namespacechi.html#aa0ce11c7b275a471aada8f3fc79c84a9":[4,0,3,58], +"namespacechi.html#aad85d08a8c11ecc8d2847f9e1c52a023":[4,0,3,65], +"namespacechi.html#ab1cb2b4afb0ec1b8a1de2083e9cf438f":[4,0,3,56], +"namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1d":[4,0,3,36] }; diff --git a/develop/navtreeindex11.js b/develop/navtreeindex11.js index bf97e0bb..29ae23ea 100644 --- a/develop/navtreeindex11.js +++ b/develop/navtreeindex11.js @@ -1,9 +1,5 @@ var NAVTREEINDEX11 = { -"namespacechi.html#aa0ce11c7b275a471aada8f3fc79c84a9":[4,0,3,58], -"namespacechi.html#aad85d08a8c11ecc8d2847f9e1c52a023":[4,0,3,65], -"namespacechi.html#ab1cb2b4afb0ec1b8a1de2083e9cf438f":[4,0,3,56], -"namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1d":[4,0,3,36], "namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1da01af6f06eae06e41b1e05ad01c0f9ed7":[4,0,3,36,14], "namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1da0b51c083f6616a910ab446f786158cc4":[4,0,3,36,23], "namespacechi.html#ab2b4b81131e640d80b4665f165b3ff1da127593e9bfef8fd7164769f973649a9f":[4,0,3,36,6], @@ -138,105 +134,108 @@ var NAVTREEINDEX11 = "namespaceobi.html#ab5285bd6492ca8e15b2f6bd073c8aa51":[4,0,6,2], "namespaces.html":[4,0], "namespacescc.html":[4,0,8], -"namespacescc.html#a031248e0b708c699ed58b9e9137d616d":[4,0,8,122], -"namespacescc.html#a03eb872bb1271b74892a6c2ddff59044":[4,0,8,118], -"namespacescc.html#a05a96856c671cf9bf95c50d4b98c1fdb":[4,0,8,99], -"namespacescc.html#a0782f3b4ec33ad92092ebc23fcd9ef9e":[4,0,8,136], -"namespacescc.html#a0cb213a8bb2b789e1f251e8f7bda7048":[4,0,8,146], -"namespacescc.html#a143c54ded0b78576bfce9c0840bfff99":[4,0,8,139], -"namespacescc.html#a155975f619b087dd86c4dcc1c2700ff7":[4,0,8,87], -"namespacescc.html#a1658d2256ec8dc35dcc41758e38528b3":[4,0,8,137], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191":[4,0,8,91], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191a330f54e7fc1474d15797dd7546492947":[4,0,8,91,3], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191a379f0209b3f2aa2adafe3f8b4f1727e4":[4,0,8,91,2], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191a4d6ae4d01611352da487e8f731549e9d":[4,0,8,91,4], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191a5fb1f955b45e38e31789286a1790398d":[4,0,8,91,5], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191ab50339a10e1de285ac99d4c3990b8693":[4,0,8,91,0], -"namespacescc.html#a16c18825e698bcd4b014919563c5c191ae8aec3b875fcfac29de4bc603e426577":[4,0,8,91,1], -"namespacescc.html#a1c163b16a27d2ba889b2da1ed8506f40":[4,0,8,165], -"namespacescc.html#a1f2e06684f1c077649c1b054b2009bab":[4,0,8,119], -"namespacescc.html#a23cce251f0e349a95c9c63a2598689df":[4,0,8,138], -"namespacescc.html#a268df8cbb9b18bfb572ee6c1751f5ba8":[4,0,8,115], -"namespacescc.html#a29c48ac5ec75e542dc76add400e50e87":[4,0,8,105], -"namespacescc.html#a2bbad29339d5d98d90222b388c567ea2":[4,0,8,127], -"namespacescc.html#a30e925449b63a5c8983b657d85e9ef0a":[4,0,8,155], -"namespacescc.html#a33028e24a9da7bd91f78aeb2a32865bc":[4,0,8,153], -"namespacescc.html#a33f3f2ee941fa0d95fbc1cb85b780ace":[4,0,8,128], -"namespacescc.html#a3443615dc03bc5e3113576c8eb55f1ff":[4,0,8,96], -"namespacescc.html#a34d366f7c2add809b4d17cfc1ffead97":[4,0,8,100], -"namespacescc.html#a37aa0e4e0cb80c3c3eeffc491e4a2f81":[4,0,8,116], -"namespacescc.html#a388c282f56692b85581bd2440f483ea6":[4,0,8,89], -"namespacescc.html#a3abf8f4d9e68cfce4a4133c576cd4c19":[4,0,8,121], -"namespacescc.html#a3cce0923cbacb2dc16a50caa6ad746cd":[4,0,8,94], -"namespacescc.html#a3e1dd04c722ec8ba87d2fe25335b5de5":[4,0,8,154], -"namespacescc.html#a4411c2d71c6eb576460a03c7c09fac9d":[4,0,8,114], -"namespacescc.html#a44cd5ca4e4d3c05f4a7ce9d5de8b9280":[4,0,8,131], -"namespacescc.html#a510bfa343d32967a6e00e32e28bc53c9":[4,0,8,168], -"namespacescc.html#a5774b93bf1aae3b5e8a8bac3d49395c1":[4,0,8,164], -"namespacescc.html#a588d361902bd572f50471957b94598f5":[4,0,8,120], -"namespacescc.html#a58d7c29bcc1ce0d2a492796c73e6dbe4":[4,0,8,111], -"namespacescc.html#a5c5a6e6104b18bcf01bac0d4332a1791":[4,0,8,156], -"namespacescc.html#a5d20ec80953d81636a1c17b302e62b58":[4,0,8,113], -"namespacescc.html#a5df192e5fb1021968646f2212bbf6acf":[4,0,8,149], -"namespacescc.html#a6778557e9aa5bb1458e00d3eafb85012":[4,0,8,103], -"namespacescc.html#a69f13e127ccc21fca23b968019ab55c2":[4,0,8,148], -"namespacescc.html#a6dd5e817579de3f3df649cbabfee8477":[4,0,8,92], -"namespacescc.html#a6f2f10f7cabec89e2db77888c3962998":[4,0,8,95], -"namespacescc.html#a7aee345fef9e0d922c783991aba69863":[4,0,8,98], -"namespacescc.html#a7bde74268e41e976762f8ddb50a4c493":[4,0,8,101], -"namespacescc.html#a7f50ec46ac6d10da335dea554a19a5b7":[4,0,8,126], -"namespacescc.html#a838d1d43bbf1a9afde3a93587898f258":[4,0,8,104], -"namespacescc.html#a84ae337bade4eec8e18ed51e3ea1c870":[4,0,8,108], -"namespacescc.html#a8517be25cc457ee2140b237cea86e277":[4,0,8,112], -"namespacescc.html#a89ad70e7b5ef8f701ee781b761020923":[4,0,8,110], -"namespacescc.html#a8a3e4cd281f4a5eb7f3b08e284b4370a":[4,0,8,157], -"namespacescc.html#a8c1a6f533b167e2d43d4fbd732be613a":[4,0,8,134], -"namespacescc.html#a8e99107b0befaf0f9b735d50922dee16":[4,0,8,109], -"namespacescc.html#a8fce866f948a3c8092930ccc52bc1923":[4,0,8,167], -"namespacescc.html#a9299adafc6dae4c181fc4fa5dda94798":[4,0,8,132], -"namespacescc.html#a990ab3bb3fdf831438275356d4bfdf29":[4,0,8,161], -"namespacescc.html#a9cf439e0816a76b818f694798e2b3bfd":[4,0,8,102], -"namespacescc.html#aa3f80da606fa3f1376835273ca59c6d5":[4,0,8,144], -"namespacescc.html#aa431951747a78699ec5d2726245c0c54":[4,0,8,166], -"namespacescc.html#aa51e9f86440e0ef28d19589483f5afcb":[4,0,8,93], -"namespacescc.html#aa5492479cd210ab4ee26dd01a0d50621":[4,0,8,152], -"namespacescc.html#aa7cee3a261faad3ad785f77ca3b52303":[4,0,8,135], -"namespacescc.html#aaa7fe133e2db0cb87985f932b1596fa7":[4,0,8,150], -"namespacescc.html#ab01f8a4a138ed96ac320e349dc1f6e6a":[4,0,8,142], -"namespacescc.html#ab09e0dbecbf3b6b40a3c1d575f78ec7c":[4,0,8,129], -"namespacescc.html#ab486bd357ee181779b237662d07c0688":[4,0,8,124], -"namespacescc.html#ab6b307c15631ee1e6e97fdbdaeec7fe6":[4,0,8,133], -"namespacescc.html#ac31f9e1b447dcbf21172fa2b306055c5":[4,0,8,141], -"namespacescc.html#ac41f8ee33baf8ffc81263a3aa28e8175":[4,0,8,85], -"namespacescc.html#ac9624dae310d4223ec10f35123c5f6b7":[4,0,8,117], -"namespacescc.html#ad21ad98c50fd159709a9e22d09a569b7":[4,0,8,159], -"namespacescc.html#ad260459b2f99adb00363b1e46043f548":[4,0,8,160], -"namespacescc.html#ad6ecdfcc0fdbb12ff2746e037a3b565b":[4,0,8,86], -"namespacescc.html#ad84a060ca04d8086b02780bdc55f26d7":[4,0,8,88], -"namespacescc.html#ada4a51f41a8631204ca8a73ab60e96f1":[4,0,8,107], -"namespacescc.html#adb41507a91bbc0f2952fb3b620a66fc5":[4,0,8,163], -"namespacescc.html#ae01638f4d6c10df113593d39dc78fcb0":[4,0,8,125], -"namespacescc.html#ae03a700a0c86ff029dab975a4e36b5f2":[4,0,8,106], -"namespacescc.html#ae12979efd6cc3b68e16de673000420da":[4,0,8,140], -"namespacescc.html#ae14f19c6b5963b3365a4e6150db7fcb2":[4,0,8,158], -"namespacescc.html#ae72ee46bcb2d2e459f540c990b285f5c":[4,0,8,130], -"namespacescc.html#ae733a5f6069c8564774b2f27056112e0":[4,0,8,145], -"namespacescc.html#ae7d6f276d4bac92081003d77d61cdb05":[4,0,8,143], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7ca":[4,0,8,90], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa059e9861e0400dfbe05c98a841f3f96b":[4,0,8,90,3], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa19da7170bea36556dde582519795f3fc":[4,0,8,90,1], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa2d3e4144aa384b18849ab9a8abad74d6":[4,0,8,90,6], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa551b723eafd6a31d444fcb2f5920fbd3":[4,0,8,90,4], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa7a353f5110fc118369c36379546e454c":[4,0,8,90,7], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caaa4e13871aad5d745fa6c199efe814f10":[4,0,8,90,8], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caab50339a10e1de285ac99d4c3990b8693":[4,0,8,90,0], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caabb1ca97ec761fc37101737ba0aa2e7c5":[4,0,8,90,2], -"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caadc30ec20708ef7b0f641ef78b7880a15":[4,0,8,90,5], -"namespacescc.html#ae8e86510cfa8857da837f0d6cfa6cf1c":[4,0,8,123], -"namespacescc.html#aeadf6c32c9f835617525be32457940e9":[4,0,8,97], -"namespacescc.html#aed99c90807e1812ff562dac3c3d7f1de":[4,0,8,151], -"namespacescc.html#aeea8400212ae04d78e9dd3e98ed03d37":[4,0,8,162], -"namespacescc.html#af454f568ec5f2dde168963294b1e67b8":[4,0,8,147], +"namespacescc.html#a031248e0b708c699ed58b9e9137d616d":[4,0,8,117], +"namespacescc.html#a03eb872bb1271b74892a6c2ddff59044":[4,0,8,113], +"namespacescc.html#a05a96856c671cf9bf95c50d4b98c1fdb":[4,0,8,92], +"namespacescc.html#a0782f3b4ec33ad92092ebc23fcd9ef9e":[4,0,8,131], +"namespacescc.html#a0cb213a8bb2b789e1f251e8f7bda7048":[4,0,8,141], +"namespacescc.html#a143c54ded0b78576bfce9c0840bfff99":[4,0,8,134], +"namespacescc.html#a155975f619b087dd86c4dcc1c2700ff7":[4,0,8,80], +"namespacescc.html#a1658d2256ec8dc35dcc41758e38528b3":[4,0,8,132], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191":[4,0,8,84], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191a330f54e7fc1474d15797dd7546492947":[4,0,8,84,3], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191a379f0209b3f2aa2adafe3f8b4f1727e4":[4,0,8,84,2], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191a4d6ae4d01611352da487e8f731549e9d":[4,0,8,84,4], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191a5fb1f955b45e38e31789286a1790398d":[4,0,8,84,5], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191ab50339a10e1de285ac99d4c3990b8693":[4,0,8,84,0], +"namespacescc.html#a16c18825e698bcd4b014919563c5c191ae8aec3b875fcfac29de4bc603e426577":[4,0,8,84,1], +"namespacescc.html#a196ce77af0c568e5b2978f2c656670df":[4,0,8,146], +"namespacescc.html#a1bfea925559dd376f400691196619db4":[4,0,8,147], +"namespacescc.html#a1c163b16a27d2ba889b2da1ed8506f40":[4,0,8,161], +"namespacescc.html#a1f2e06684f1c077649c1b054b2009bab":[4,0,8,114], +"namespacescc.html#a23cce251f0e349a95c9c63a2598689df":[4,0,8,133], +"namespacescc.html#a268df8cbb9b18bfb572ee6c1751f5ba8":[4,0,8,110], +"namespacescc.html#a29c48ac5ec75e542dc76add400e50e87":[4,0,8,98], +"namespacescc.html#a2bbad29339d5d98d90222b388c567ea2":[4,0,8,122], +"namespacescc.html#a30e925449b63a5c8983b657d85e9ef0a":[4,0,8,151], +"namespacescc.html#a33028e24a9da7bd91f78aeb2a32865bc":[4,0,8,149], +"namespacescc.html#a33f3f2ee941fa0d95fbc1cb85b780ace":[4,0,8,123], +"namespacescc.html#a3443615dc03bc5e3113576c8eb55f1ff":[4,0,8,89], +"namespacescc.html#a34d366f7c2add809b4d17cfc1ffead97":[4,0,8,93], +"namespacescc.html#a37aa0e4e0cb80c3c3eeffc491e4a2f81":[4,0,8,111], +"namespacescc.html#a388c282f56692b85581bd2440f483ea6":[4,0,8,82], +"namespacescc.html#a3abf8f4d9e68cfce4a4133c576cd4c19":[4,0,8,116], +"namespacescc.html#a3cce0923cbacb2dc16a50caa6ad746cd":[4,0,8,87], +"namespacescc.html#a3e1dd04c722ec8ba87d2fe25335b5de5":[4,0,8,150], +"namespacescc.html#a429834f1a47e9a49b6c3ee677db38b56":[4,0,8,107], +"namespacescc.html#a4411c2d71c6eb576460a03c7c09fac9d":[4,0,8,109], +"namespacescc.html#a44cd5ca4e4d3c05f4a7ce9d5de8b9280":[4,0,8,126], +"namespacescc.html#a510bfa343d32967a6e00e32e28bc53c9":[4,0,8,164], +"namespacescc.html#a5774b93bf1aae3b5e8a8bac3d49395c1":[4,0,8,160], +"namespacescc.html#a588d361902bd572f50471957b94598f5":[4,0,8,115], +"namespacescc.html#a58d7c29bcc1ce0d2a492796c73e6dbe4":[4,0,8,104], +"namespacescc.html#a5c5a6e6104b18bcf01bac0d4332a1791":[4,0,8,152], +"namespacescc.html#a5df192e5fb1021968646f2212bbf6acf":[4,0,8,144], +"namespacescc.html#a6778557e9aa5bb1458e00d3eafb85012":[4,0,8,96], +"namespacescc.html#a69f13e127ccc21fca23b968019ab55c2":[4,0,8,143], +"namespacescc.html#a6dd5e817579de3f3df649cbabfee8477":[4,0,8,85], +"namespacescc.html#a6f2f10f7cabec89e2db77888c3962998":[4,0,8,88], +"namespacescc.html#a7aee345fef9e0d922c783991aba69863":[4,0,8,91], +"namespacescc.html#a7bde74268e41e976762f8ddb50a4c493":[4,0,8,94], +"namespacescc.html#a7f50ec46ac6d10da335dea554a19a5b7":[4,0,8,121], +"namespacescc.html#a838d1d43bbf1a9afde3a93587898f258":[4,0,8,97], +"namespacescc.html#a84ae337bade4eec8e18ed51e3ea1c870":[4,0,8,101], +"namespacescc.html#a8517be25cc457ee2140b237cea86e277":[4,0,8,105], +"namespacescc.html#a89ad70e7b5ef8f701ee781b761020923":[4,0,8,103], +"namespacescc.html#a8a3e4cd281f4a5eb7f3b08e284b4370a":[4,0,8,153], +"namespacescc.html#a8c1a6f533b167e2d43d4fbd732be613a":[4,0,8,129], +"namespacescc.html#a8e99107b0befaf0f9b735d50922dee16":[4,0,8,102], +"namespacescc.html#a8fce866f948a3c8092930ccc52bc1923":[4,0,8,163], +"namespacescc.html#a9299adafc6dae4c181fc4fa5dda94798":[4,0,8,127], +"namespacescc.html#a955a1df575b3ee22feee0c9739f38e7c":[4,0,8,108], +"namespacescc.html#a990ab3bb3fdf831438275356d4bfdf29":[4,0,8,157], +"namespacescc.html#a9cf439e0816a76b818f694798e2b3bfd":[4,0,8,95], +"namespacescc.html#aa3f80da606fa3f1376835273ca59c6d5":[4,0,8,139], +"namespacescc.html#aa431951747a78699ec5d2726245c0c54":[4,0,8,162], +"namespacescc.html#aa51e9f86440e0ef28d19589483f5afcb":[4,0,8,86], +"namespacescc.html#aa5492479cd210ab4ee26dd01a0d50621":[4,0,8,148], +"namespacescc.html#aa7cee3a261faad3ad785f77ca3b52303":[4,0,8,130], +"namespacescc.html#aaa7fe133e2db0cb87985f932b1596fa7":[4,0,8,145], +"namespacescc.html#ab01f8a4a138ed96ac320e349dc1f6e6a":[4,0,8,137], +"namespacescc.html#ab09e0dbecbf3b6b40a3c1d575f78ec7c":[4,0,8,124], +"namespacescc.html#ab486bd357ee181779b237662d07c0688":[4,0,8,119], +"namespacescc.html#ab6b307c15631ee1e6e97fdbdaeec7fe6":[4,0,8,128], +"namespacescc.html#ac31f9e1b447dcbf21172fa2b306055c5":[4,0,8,136], +"namespacescc.html#ac41f8ee33baf8ffc81263a3aa28e8175":[4,0,8,78], +"namespacescc.html#ac9624dae310d4223ec10f35123c5f6b7":[4,0,8,112], +"namespacescc.html#ad21ad98c50fd159709a9e22d09a569b7":[4,0,8,155], +"namespacescc.html#ad260459b2f99adb00363b1e46043f548":[4,0,8,156], +"namespacescc.html#ad6ecdfcc0fdbb12ff2746e037a3b565b":[4,0,8,79], +"namespacescc.html#ad84a060ca04d8086b02780bdc55f26d7":[4,0,8,81], +"namespacescc.html#ada4a51f41a8631204ca8a73ab60e96f1":[4,0,8,100], +"namespacescc.html#adb41507a91bbc0f2952fb3b620a66fc5":[4,0,8,159], +"namespacescc.html#ae01638f4d6c10df113593d39dc78fcb0":[4,0,8,120], +"namespacescc.html#ae03a700a0c86ff029dab975a4e36b5f2":[4,0,8,99], +"namespacescc.html#ae12979efd6cc3b68e16de673000420da":[4,0,8,135], +"namespacescc.html#ae14f19c6b5963b3365a4e6150db7fcb2":[4,0,8,154], +"namespacescc.html#ae72ee46bcb2d2e459f540c990b285f5c":[4,0,8,125], +"namespacescc.html#ae733a5f6069c8564774b2f27056112e0":[4,0,8,140], +"namespacescc.html#ae7d6f276d4bac92081003d77d61cdb05":[4,0,8,138], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7ca":[4,0,8,83], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa059e9861e0400dfbe05c98a841f3f96b":[4,0,8,83,3], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa19da7170bea36556dde582519795f3fc":[4,0,8,83,1], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa2d3e4144aa384b18849ab9a8abad74d6":[4,0,8,83,6], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa551b723eafd6a31d444fcb2f5920fbd3":[4,0,8,83,4], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caa7a353f5110fc118369c36379546e454c":[4,0,8,83,7], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caaa4e13871aad5d745fa6c199efe814f10":[4,0,8,83,8], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caab50339a10e1de285ac99d4c3990b8693":[4,0,8,83,0], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caabb1ca97ec761fc37101737ba0aa2e7c5":[4,0,8,83,2], +"namespacescc.html#ae81cd4d55a12064f9fb15af3ca60c7caadc30ec20708ef7b0f641ef78b7880a15":[4,0,8,83,5], +"namespacescc.html#ae8e86510cfa8857da837f0d6cfa6cf1c":[4,0,8,118], +"namespacescc.html#aeadf6c32c9f835617525be32457940e9":[4,0,8,90], +"namespacescc.html#aeea8400212ae04d78e9dd3e98ed03d37":[4,0,8,158], +"namespacescc.html#af454f568ec5f2dde168963294b1e67b8":[4,0,8,142], +"namespacescc.html#afed944a779b8b0156ba2eb800e1dbe2e":[4,0,8,106], "namespacescc_1_1trace.html":[4,0,8,2], "namespacescc_1_1trace.html#a307e24a2fe3642c20f0f709473482aaa":[4,0,8,2,10], "namespacescc_1_1trace.html#a52be3a3fc4cc8b4417596c472311fc77":[4,0,8,2,13], @@ -249,5 +248,6 @@ var NAVTREEINDEX11 = "namespacescc_1_1trace.html#af2f6c037a1afb8f570eb8d59abcf27d0":[4,0,8,2,12], "namespacescv__tr.html":[4,0,10], "namespacescv__tr.html#a1016c8d0d9288c9652a99db6ddf2f43b":[4,0,10,18], -"namespacescv__tr.html#a15074645e87ec6f7ad6a325d276d631c":[4,0,10,23] +"namespacescv__tr.html#a15074645e87ec6f7ad6a325d276d631c":[4,0,10,23], +"namespacescv__tr.html#a1f92621f5a413a86a2528ff9d43cf42e":[4,0,10,10] }; diff --git a/develop/navtreeindex12.js b/develop/navtreeindex12.js index 579320ae..e0d50b5e 100644 --- a/develop/navtreeindex12.js +++ b/develop/navtreeindex12.js @@ -1,6 +1,5 @@ var NAVTREEINDEX12 = { -"namespacescv__tr.html#a1f92621f5a413a86a2528ff9d43cf42e":[4,0,10,10], "namespacescv__tr.html#a32f06dd92b69fc5b665b63172dd62e31":[4,0,10,25], "namespacescv__tr.html#a3573df3b0a771e07ba4520471b65c753":[4,0,10,21], "namespacescv__tr.html#a55c348cc11d7faffc804fc8f2bb48ca6":[4,0,10,16], @@ -40,14 +39,14 @@ var NAVTREEINDEX12 = "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,12,9], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,13,0], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,13,3], -"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,13,6], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,13,9], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,14,0], -"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,14,3], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,14,6], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,14,9], -"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,11,1], +"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,14,3], +"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9a907f31f98ce24fcc8cb788b87c8b1738":[4,0,10,13,6], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,11,4], +"namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,11,1], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,11,7], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,11,10], "namespacescv__tr.html#ac5e602e9975ac5b9100f48c6e5f928c9aaa07f0583755a61be8257ad5093f0330":[4,0,10,12,1], @@ -151,18 +150,18 @@ var NAVTREEINDEX12 = "namespaceutil.html#af7dfc664bb8c940ec51640da8139352f":[4,0,13,38], "obi_2pin_2target_8h_source.html":[6,0,0,0,3,0,0], "obi__tlm_8h_source.html":[6,0,0,0,3,1], -"observer_8h_source.html":[6,0,0,3,0,18], -"ordered__semaphore_8cpp_source.html":[6,0,0,3,0,19], -"ordered__semaphore_8h_source.html":[6,0,0,3,0,20], +"observer_8h_source.html":[6,0,0,3,0,19], +"ordered__semaphore_8cpp_source.html":[6,0,0,3,0,20], +"ordered__semaphore_8h_source.html":[6,0,0,3,0,21], "ordered__target_8cpp_source.html":[6,0,1,0,0,3,6], "ordered__target_8h_source.html":[6,0,1,0,0,3,7], "pages.html":[], "parallel__pe_8cpp_source.html":[6,0,0,3,2,0,1,1], "parallel__pe_8h_source.html":[6,0,0,3,2,0,1,2], "path__trace_8h_source.html":[6,0,0,3,1,0,1], -"peq_8h_source.html":[6,0,0,3,0,21], -"perf__estimator_8cpp_source.html":[6,0,0,3,0,22], -"perf__estimator_8h_source.html":[6,0,0,3,0,23], +"peq_8h_source.html":[6,0,0,3,0,22], +"perf__estimator_8cpp_source.html":[6,0,0,3,0,23], +"perf__estimator_8h_source.html":[6,0,0,3,0,24], "pool__allocator_8h_source.html":[6,0,0,1,0,9], "protocol__fsm_8h_source.html":[6,0,1,0,0,1,2], "range__lut_8h_source.html":[6,0,0,1,0,10], @@ -170,17 +169,17 @@ var NAVTREEINDEX12 = "register_8h_source.html":[6,0,0,2,0,2], "reordering__target_8cpp_source.html":[6,0,1,0,0,3,8], "reordering__target_8h_source.html":[6,0,1,0,0,3,9], -"report_8cpp_source.html":[6,0,0,3,0,24], +"report_8cpp_source.html":[6,0,0,3,0,25], "resetable_8h_source.html":[6,0,0,2,0,3], "resource__access__if_8h_source.html":[6,0,0,2,0,4], "router_8h_source.html":[6,0,0,2,0,5], -"sc__attribute__randomized_8h_source.html":[6,0,0,3,0,26], -"sc__clock__ext_8h_source.html":[6,0,0,3,0,27], +"sc__attribute__randomized_8h_source.html":[6,0,0,3,0,27], +"sc__clock__ext_8h_source.html":[6,0,0,3,0,28], "sc__logic__7_8cpp.html#a0566a08c0ac71a2aa366cfe26cb35102":[4,0,8,0,9], "sc__logic__7_8cpp.html#a07099f2144bf81da5194ef0c67c1234f":[4,0,8,0,11], "sc__logic__7_8cpp.html#a144614b5072b083b9b64b25f2e922bf6":[4,0,8,0,12], "sc__logic__7_8cpp.html#af35951c6ee49b0e74acf1696956cae93":[4,0,8,0,10], -"sc__logic__7_8cpp_source.html":[6,0,0,3,0,28], +"sc__logic__7_8cpp_source.html":[6,0,0,3,0,29], "sc__logic__7_8h.html#a06e5fed6d65b33b6dbd04c48617e173a":[4,0,8,0,4], "sc__logic__7_8h.html#a0ff2b39c01636d95ed0587c59830c41e":[4,0,8,0,1], "sc__logic__7_8h.html#a0ff2b39c01636d95ed0587c59830c41ea0269268943a2f14215ab1866d15a9112":[4,0,8,0,1,6], @@ -196,17 +195,17 @@ var NAVTREEINDEX12 = "sc__logic__7_8h.html#a8c947bc66bc52662512c32f4609b3464":[4,0,8,0,3], "sc__logic__7_8h.html#a8d80aa5dcbf64aa77ea48cab3ec6d055":[4,0,8,0,7], "sc__logic__7_8h.html#a979b04b0ca30a1fadf3d14ce164e945f":[4,0,8,0,5], -"sc__logic__7_8h_source.html":[6,0,0,3,0,29], -"sc__owning__signal_8h_source.html":[6,0,0,3,0,30], -"sc__thread__pool_8cpp_source.html":[6,0,0,3,0,31], -"sc__thread__pool_8h_source.html":[6,0,0,3,0,32], +"sc__logic__7_8h_source.html":[6,0,0,3,0,30], +"sc__owning__signal_8h_source.html":[6,0,0,3,0,31], +"sc__thread__pool_8cpp_source.html":[6,0,0,3,0,32], +"sc__thread__pool_8h_source.html":[6,0,0,3,0,33], "sc__variable_8h.html#a08714fd59d477d4ce67a73b79f3716a0":[4,0,7,4], "sc__variable_8h.html#a0a44f306a2276ebde0368602ab67e1af":[4,0,7,1], "sc__variable_8h.html#a4e9649aa091727186332c64ca0b012ad":[4,0,7,2], "sc__variable_8h.html#a7ae95af098b16cf439ef8c1fb296afc8":[4,0,7,3], -"sc__variable_8h_source.html":[6,0,0,3,0,33], -"sc__vcd__trace_8h_source.html":[6,0,0,3,0,34], -"scc_2report_8h_source.html":[6,0,0,3,0,25], +"sc__variable_8h_source.html":[6,0,0,3,0,34], +"sc__vcd__trace_8h_source.html":[6,0,0,3,0,35], +"scc_2report_8h_source.html":[6,0,0,3,0,26], "scc_8h_source.html":[6,0,0,4], "scc__bus__interfaces_8h_source.html":[6,0,0,0,4], "scc__components_8h_source.html":[6,0,0,2,1], @@ -235,8 +234,8 @@ var NAVTREEINDEX12 = "scv__tr__sqlite_8cpp_source.html":[6,0,0,3,0,0,7], "signal__if_8h_source.html":[6,0,0,0,2,5], "signal__initiator__mixin_8h_source.html":[6,0,0,3,2,0,4], -"signal__opt__ports_8cpp_source.html":[6,0,0,3,0,35], -"signal__opt__ports_8h_source.html":[6,0,0,3,0,36], +"signal__opt__ports_8cpp_source.html":[6,0,0,3,0,36], +"signal__opt__ports_8h_source.html":[6,0,0,3,0,37], "signal__target__mixin_8h_source.html":[6,0,0,3,2,0,5], "simple__ace__target_8h_source.html":[6,0,1,0,0,3,10], "simple__initiator_8cpp_source.html":[6,0,1,0,0,3,11], @@ -249,5 +248,6 @@ var NAVTREEINDEX12 = "structace__target__pe_1_1bw__intor__impl.html":[5,0,2,3,0,0], "structace__target__pe_1_1bw__intor__impl.html#a90ed1a3696a519297b09babd152dd046":[5,0,2,3,0,0,1], "structace__target__pe_1_1bw__intor__impl.html#a99569fc326770365b9844b3ce154cfe4":[5,0,2,3,0,0,0], -"structace__target__pe_1_1bw__intor__impl.html#aebe7f1b2a24d09f05ed1691c08a239ba":[5,0,2,3,0,0,2] +"structace__target__pe_1_1bw__intor__impl.html#aebe7f1b2a24d09f05ed1691c08a239ba":[5,0,2,3,0,0,2], +"structahb_1_1ahb__extension.html":[5,0,0,3] }; diff --git a/develop/navtreeindex13.js b/develop/navtreeindex13.js index be46c8af..218002af 100644 --- a/develop/navtreeindex13.js +++ b/develop/navtreeindex13.js @@ -1,6 +1,5 @@ var NAVTREEINDEX13 = { -"structahb_1_1ahb__extension.html":[5,0,0,3], "structahb_1_1ahb__extension.html#a04657b7079c01707a2cb87fe785c0a48":[5,0,0,3,12], "structahb_1_1ahb__extension.html#a33bc9af7f11dee5ae8718fdad6703bcd":[5,0,0,3,3], "structahb_1_1ahb__extension.html#a364ccc294670ae6a48da1d7fc0c801cf":[5,0,0,3,2], @@ -249,5 +248,6 @@ var NAVTREEINDEX13 = "structaxi_1_1axi__target__socket.html#a55d1e6a7c327d254c9c4fb7f0fddbd73":[5,0,2,52,2], "structaxi_1_1axi__target__socket.html#ae629ffd1bcaaa4ddd2cd9d6618ca5111":[5,0,2,52,1], "structaxi_1_1axi__target__socket.html#af422ead2ce6d18fc2da1d8f90170caae":[5,0,2,52,3], -"structaxi_1_1b__axi.html":[5,0,2,25] +"structaxi_1_1b__axi.html":[5,0,2,25], +"structaxi_1_1b__axi.html#a2f0552ce13ab10650d258017b9f6d499":[5,0,2,25,1] }; diff --git a/develop/navtreeindex14.js b/develop/navtreeindex14.js index 3163316d..a3f1b34e 100644 --- a/develop/navtreeindex14.js +++ b/develop/navtreeindex14.js @@ -1,6 +1,5 @@ var NAVTREEINDEX14 = { -"structaxi_1_1b__axi.html#a2f0552ce13ab10650d258017b9f6d499":[5,0,2,25,1], "structaxi_1_1b__axi.html#a5384501b6dd4d2fd4ad9a22120b89b4e":[5,0,2,25,2], "structaxi_1_1b__axi.html#a59d42372be2059cf18737170bfc0e52f":[5,0,2,25,9], "structaxi_1_1b__axi.html#ab71b6877ad0df31c81ac916faedfd04e":[5,0,2,25,3], @@ -192,18 +191,20 @@ var NAVTREEINDEX14 = "structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html#a63c954eeae82b826e43d4eed3fd797f1":[5,0,2,3,8,0,0], "structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html#a7b10f0e4d8e7687b6cae138cad528369":[5,0,2,3,8,0,2], "structaxi_1_1pin_1_1ace__initiator.html":[5,0,2,4,0], -"structaxi_1_1pin_1_1ace__initiator.html#a1e0e18e90549401a60832e66ccb25e63":[5,0,2,4,0,5], +"structaxi_1_1pin_1_1ace__initiator.html#a1e0e18e90549401a60832e66ccb25e63":[5,0,2,4,0,6], +"structaxi_1_1pin_1_1ace__initiator.html#a2b2b91ad63048f29193d4a4387c6570d":[5,0,2,4,0,2], "structaxi_1_1pin_1_1ace__initiator.html#a40110f88df445005684d5ce4f6e5d847":[5,0,2,4,0,1], "structaxi_1_1pin_1_1ace__initiator.html#a69a885243b851c2a38b0fe64598877ae":[5,0,2,4,0,3], +"structaxi_1_1pin_1_1ace__initiator.html#a95d36c46a4fa1a521cbded7d9543ae0c":[5,0,2,4,0,5], "structaxi_1_1pin_1_1ace__initiator.html#ac97c937183d8c8a9ca51e2b2f4d05e6e":[5,0,2,4,0,4], "structaxi_1_1pin_1_1ace__initiator.html#ad638947a22e1cf0a460b89537b8c120f":[5,0,2,4,0,0], -"structaxi_1_1pin_1_1ace__initiator.html#ae3ea71803abf5439d7f739b099681490":[5,0,2,4,0,2], "structaxi_1_1pin_1_1ace__lite__initiator.html":[5,0,2,4,1], -"structaxi_1_1pin_1_1ace__lite__initiator.html#a78f346ce1a33dcb8672ea86509439c0e":[5,0,2,4,1,5], +"structaxi_1_1pin_1_1ace__lite__initiator.html#a78f346ce1a33dcb8672ea86509439c0e":[5,0,2,4,1,6], "structaxi_1_1pin_1_1ace__lite__initiator.html#a7c2961050fea91c88fb82be819816823":[5,0,2,4,1,3], +"structaxi_1_1pin_1_1ace__lite__initiator.html#a7ec73f826e3790269a9830029c60e587":[5,0,2,4,1,2], "structaxi_1_1pin_1_1ace__lite__initiator.html#aaab85a1a64a60b759d2da2796f3e5e2a":[5,0,2,4,1,0], "structaxi_1_1pin_1_1ace__lite__initiator.html#aba822315e15d051f6cd17bd085f00607":[5,0,2,4,1,4], -"structaxi_1_1pin_1_1ace__lite__initiator.html#af18b263b5032f4ec3c3447e25b637aec":[5,0,2,4,1,2], +"structaxi_1_1pin_1_1ace__lite__initiator.html#abe9c24a6104c41767989d93d9e952782":[5,0,2,4,1,5], "structaxi_1_1pin_1_1ace__lite__initiator.html#aff5dcb4ab83c887df553fac56a98f661":[5,0,2,4,1,1], "structaxi_1_1pin_1_1ace__lite__target.html":[5,0,2,4,2], "structaxi_1_1pin_1_1ace__lite__target.html#a033c18767e51960adf370b598cc3180a":[5,0,2,4,2,2], @@ -221,8 +222,9 @@ var NAVTREEINDEX14 = "structaxi_1_1pin_1_1ace__target.html#afb6bd99ea0dfd407a18e08454810b6ba":[5,0,2,4,3,2], "structaxi_1_1pin_1_1axi4__initiator.html":[5,0,2,4,4], "structaxi_1_1pin_1_1axi4__initiator.html#a163010579b0ac029a4109c46281ae208":[5,0,2,4,4,3], -"structaxi_1_1pin_1_1axi4__initiator.html#a3543872e305fc5aac1efb6b556635a43":[5,0,2,4,4,5], -"structaxi_1_1pin_1_1axi4__initiator.html#a9944c4067e4905d2c2b1e72610850378":[5,0,2,4,4,2], +"structaxi_1_1pin_1_1axi4__initiator.html#a3543872e305fc5aac1efb6b556635a43":[5,0,2,4,4,6], +"structaxi_1_1pin_1_1axi4__initiator.html#a5aee440c12d48d231a5e01b02e1abd7f":[5,0,2,4,4,5], +"structaxi_1_1pin_1_1axi4__initiator.html#aa735a0f7e1abb6cde1af15e642b9a59f":[5,0,2,4,4,2], "structaxi_1_1pin_1_1axi4__initiator.html#aab41df154bed7d1234137d6ba113b9ef":[5,0,2,4,4,1], "structaxi_1_1pin_1_1axi4__initiator.html#ab1a5bfac1b830f1135c3e5c2ab255343":[5,0,2,4,4,4], "structaxi_1_1pin_1_1axi4__initiator.html#ac24630213b919fd5cd8dc4aac6314c11":[5,0,2,4,4,0], @@ -247,7 +249,5 @@ var NAVTREEINDEX14 = "structaxi_1_1request.html#a481b1584ee5dc26577ff73b01ff73a5c":[5,0,2,38,16], "structaxi_1_1request.html#a53135f14b5435fa04244dd9f9e98c374":[5,0,2,38,27], "structaxi_1_1request.html#a58acae48be14e6c0f8f75703ef19be80":[5,0,2,38,32], -"structaxi_1_1request.html#a59b9489214be49ba40d51b6a0209688a":[5,0,2,38,11], -"structaxi_1_1request.html#a5ab8299febf67f2cc3a6cd2add4a9b16":[5,0,2,38,36], -"structaxi_1_1request.html#a65c9398266162cb4d00648d6a2f842de":[5,0,2,38,2] +"structaxi_1_1request.html#a59b9489214be49ba40d51b6a0209688a":[5,0,2,38,11] }; diff --git a/develop/navtreeindex15.js b/develop/navtreeindex15.js index 4d7603d7..f38ddbd8 100644 --- a/develop/navtreeindex15.js +++ b/develop/navtreeindex15.js @@ -1,5 +1,7 @@ var NAVTREEINDEX15 = { +"structaxi_1_1request.html#a5ab8299febf67f2cc3a6cd2add4a9b16":[5,0,2,38,36], +"structaxi_1_1request.html#a65c9398266162cb4d00648d6a2f842de":[5,0,2,38,2], "structaxi_1_1request.html#a66a14fb9aafefec408910a0bef54375a":[5,0,2,38,4], "structaxi_1_1request.html#a71d730fb43b907c59f8a86cd3b91bccf":[5,0,2,38,13], "structaxi_1_1request.html#a737ec9b923a79e18f28158e87f7b605b":[5,0,2,38,33], @@ -247,7 +249,5 @@ var NAVTREEINDEX15 = "structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4.html":[5,0,3,28], "structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4.html":[5,0,3,30], "structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4.html":[5,0,3,29], -"structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html":[5,0,3,25], -"structchi_1_1lwtr_1_1nb__chi__rec__entry.html":[5,0,3,0,5], -"structchi_1_1lwtr_1_1nb__chi__rec__entry.html#a84ec11bd8a39a6a28b3ec584223da68c":[5,0,3,0,5,0] +"structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html":[5,0,3,25] }; diff --git a/develop/navtreeindex16.js b/develop/navtreeindex16.js index 82cdc285..4e20f628 100644 --- a/develop/navtreeindex16.js +++ b/develop/navtreeindex16.js @@ -1,5 +1,7 @@ var NAVTREEINDEX16 = { +"structchi_1_1lwtr_1_1nb__chi__rec__entry.html":[5,0,3,0,5], +"structchi_1_1lwtr_1_1nb__chi__rec__entry.html#a84ec11bd8a39a6a28b3ec584223da68c":[5,0,3,0,5,0], "structchi_1_1lwtr_1_1nb__chi__rec__entry.html#a90987ba08bfd9987b25ff6fd8fb0af02":[5,0,3,0,5,2], "structchi_1_1lwtr_1_1nb__chi__rec__entry.html#ac9f61ea33fee7eface4391dbcc8c0a0d":[5,0,3,0,5,1], "structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state.html":[5,0,3,1,0,0], @@ -134,120 +136,118 @@ var NAVTREEINDEX16 = "structobi_1_1obi__extension.html#adbab62f468251850bd589b155965f957":[5,0,6,1,2], "structobi_1_1obi__extension.html#adff530e582aff4745ae6538bc5c905a7":[5,0,6,1,7], "structobi_1_1obi__extension.html#ae4d65928ab823397d713e8af4ff85ef8":[5,0,6,1,6], -"structscc_1_1ForLoop.html":[5,0,7,70], -"structscc_1_1ForLoop_3_011_01_4.html":[5,0,7,71], -"structscc_1_1LogConfig.html":[5,0,7,45], -"structscc_1_1LogConfig.html#a08379e00ee01077ce091c95b5c16ec0a":[5,0,7,45,24], -"structscc_1_1LogConfig.html#a09e085c9853cb5f5cfe95e79d36634f1":[5,0,7,45,25], -"structscc_1_1LogConfig.html#a0c7be338b991e6650ed86c9b1589722a":[5,0,7,45,12], -"structscc_1_1LogConfig.html#a11d2dfc81a7dfb5e9dfd98afd7fce4ef":[5,0,7,45,16], -"structscc_1_1LogConfig.html#a1bc9982b9ba94eef1ae8f08df34c9c15":[5,0,7,45,29], -"structscc_1_1LogConfig.html#a22baf41cee13814da7a7321d62e386a0":[5,0,7,45,14], -"structscc_1_1LogConfig.html#a2372c36a7e2c40f0d1e223a86a4a8c32":[5,0,7,45,8], -"structscc_1_1LogConfig.html#a348307a7c46618c74ffde104bf59ac9d":[5,0,7,45,15], -"structscc_1_1LogConfig.html#a34a9f54e552b8f9914d1686959b3ec37":[5,0,7,45,28], -"structscc_1_1LogConfig.html#a46eec923b12cbad447b79a531aacee9f":[5,0,7,45,19], -"structscc_1_1LogConfig.html#a4d1e12b367b7685f0052acfed41454cf":[5,0,7,45,0], -"structscc_1_1LogConfig.html#a50cca312238bb02ee865dd9e871f8a5f":[5,0,7,45,17], -"structscc_1_1LogConfig.html#a5c6822d609bf25f7304a4c69645bc75c":[5,0,7,45,18], -"structscc_1_1LogConfig.html#a60533d66e4d1d4f1bc91ce359bdc9d38":[5,0,7,45,21], -"structscc_1_1LogConfig.html#a66bc0774442127fe1174cd540ee79499":[5,0,7,45,1], -"structscc_1_1LogConfig.html#a9610025ca0c55f5b6eec9d1b6f0b5b01":[5,0,7,45,9], -"structscc_1_1LogConfig.html#aa296f4dd012f22333bd62684e3d246c9":[5,0,7,45,10], -"structscc_1_1LogConfig.html#aa692a5c181ec726405872cee2f6da15e":[5,0,7,45,5], -"structscc_1_1LogConfig.html#aa6acb8cb85817491f9e2b2fdc82d65e0":[5,0,7,45,20], -"structscc_1_1LogConfig.html#aa82a8b5bd25dbb7746378e5140a7fdd5":[5,0,7,45,13], -"structscc_1_1LogConfig.html#ab380dea6174f0b26626251554e31d326":[5,0,7,45,4], -"structscc_1_1LogConfig.html#ab7cc942d1d006acd0b915d57916e83c2":[5,0,7,45,11], -"structscc_1_1LogConfig.html#ac7b82189b7a4345fa6f85ed1c6e472a8":[5,0,7,45,26], -"structscc_1_1LogConfig.html#acde59cdaa05fb6cb4ba5ac22e224edb9":[5,0,7,45,3], -"structscc_1_1LogConfig.html#acebefc5df5eb4d3e799e4beb2aff8e88":[5,0,7,45,2], -"structscc_1_1LogConfig.html#adf9cb0462be4b511f2851dec45e5fc58":[5,0,7,45,23], -"structscc_1_1LogConfig.html#aec3f15759e3adb796a02e3b73e55dd72":[5,0,7,45,7], -"structscc_1_1LogConfig.html#aed74de9e2fb0ddd5440366cd9bb5aed5":[5,0,7,45,22], -"structscc_1_1LogConfig.html#af86733450807b0680d09ca44b2d89ed5":[5,0,7,45,27], -"structscc_1_1LogConfig.html#afa821e59961387e84b611d14d72c6696":[5,0,7,45,6], -"structscc_1_1ScLogger.html":[5,0,7,46], -"structscc_1_1ScLogger.html#a13c8c7d537ddebeb418273acacaebef2":[5,0,7,46,15], -"structscc_1_1ScLogger.html#a2258e1b208c45f3be95507666a1ad9fd":[5,0,7,46,9], -"structscc_1_1ScLogger.html#a28428c9af702841a7a803a537f718bb1":[5,0,7,46,11], -"structscc_1_1ScLogger.html#a4d92f18ea4fc9072121342e161c74fc9":[5,0,7,46,1], -"structscc_1_1ScLogger.html#a550a4d9de67a12667e247d49a9db8fe3":[5,0,7,46,14], -"structscc_1_1ScLogger.html#a5576bda78d5da815d819bc0114dca1cd":[5,0,7,46,7], -"structscc_1_1ScLogger.html#a5e2cc3a18b24f30a3dc37137c65e7de9":[5,0,7,46,4], -"structscc_1_1ScLogger.html#a6202c3aa0c8c599aa20309115cff6243":[5,0,7,46,10], -"structscc_1_1ScLogger.html#a76ea0ccd13c351ee2474eeb4485c7608":[5,0,7,46,5], -"structscc_1_1ScLogger.html#a92b9e7b288ff75db3ebc82cee4b333ec":[5,0,7,46,13], -"structscc_1_1ScLogger.html#aacb217c42a89405a850814b7e6487f7a":[5,0,7,46,6], -"structscc_1_1ScLogger.html#aba460dd4f3870b3c914d78a90b1fa894":[5,0,7,46,2], -"structscc_1_1ScLogger.html#ad729b5edfc3589af27ae8963fcda3684":[5,0,7,46,8], -"structscc_1_1ScLogger.html#ad8857ab3386b8aebdec6fde617053069":[5,0,7,46,3], -"structscc_1_1ScLogger.html#ae055b4fa49b6e9ca46acb44d8a72cf42":[5,0,7,46,12], -"structscc_1_1ScLogger.html#afc3d0c8bcfabad46d738ebac4e9892ce":[5,0,7,46,0], -"structscc_1_1__discrete__restriction.html":[5,0,7,31], -"structscc_1_1__discrete__restriction.html#a5a25f5eafbd0de4b333d2ddb1459870c":[5,0,7,31,0], -"structscc_1_1__discrete__restriction.html#abb01c560c44197b1a774f4c97eae9f15":[5,0,7,31,1], -"structscc_1_1__discrete__restriction.html#ac09374f8554ab2097d1f381fa23be542":[5,0,7,31,2], -"structscc_1_1__max__excl__restriction.html":[5,0,7,30], -"structscc_1_1__max__excl__restriction.html#a4d0ecc4b22a2f6cdc18b5bd01891fe5e":[5,0,7,30,0], -"structscc_1_1__max__excl__restriction.html#a64366d04c3700ad0db579d069fa2bad6":[5,0,7,30,1], -"structscc_1_1__max__excl__restriction.html#a9d6ac59482e2350361cc983e24692fc7":[5,0,7,30,2], -"structscc_1_1__max__restriction.html":[5,0,7,29], -"structscc_1_1__max__restriction.html#a02c3e3e505b01e01aa4597e293263242":[5,0,7,29,2], -"structscc_1_1__max__restriction.html#a0d0c527133192d5818ae6e2a64c8d5e4":[5,0,7,29,1], -"structscc_1_1__max__restriction.html#a9c23b9701eb894a8bc6dcc9e485fef21":[5,0,7,29,0], -"structscc_1_1__min__excl__restriction.html":[5,0,7,28], -"structscc_1_1__min__excl__restriction.html#a01ab6129292a9784ee8f94518b96fd71":[5,0,7,28,0], -"structscc_1_1__min__excl__restriction.html#a78fbe1b131f778e8842939f8d10c0a99":[5,0,7,28,2], -"structscc_1_1__min__excl__restriction.html#a971103e984f937c810bff047f9cfde9f":[5,0,7,28,1], -"structscc_1_1__min__max__excl__restriction.html":[5,0,7,26], -"structscc_1_1__min__max__excl__restriction.html#a52b619df3ab17d0f8aa8b4eacddbfd3d":[5,0,7,26,2], -"structscc_1_1__min__max__excl__restriction.html#a5ee759edf3653def287d307acbf045e4":[5,0,7,26,3], -"structscc_1_1__min__max__excl__restriction.html#a68b53f3da65b99c473259018d935fd2f":[5,0,7,26,1], -"structscc_1_1__min__max__excl__restriction.html#a8d8626c7fa578acac5ab91d0b0e956b4":[5,0,7,26,0], -"structscc_1_1__min__max__restriction.html":[5,0,7,25], -"structscc_1_1__min__max__restriction.html#a965362acfd28304d0ddf19c4b4524623":[5,0,7,25,2], -"structscc_1_1__min__max__restriction.html#a9a0d4d7606b62fa1e122d6e933dc663d":[5,0,7,25,1], -"structscc_1_1__min__max__restriction.html#aff4250c15f1523b5bda33ad9e843f7f0":[5,0,7,25,3], -"structscc_1_1__min__max__restriction.html#aff665e4a73dbce31a258e6b7e08ae459":[5,0,7,25,0], -"structscc_1_1__min__restriction.html":[5,0,7,27], -"structscc_1_1__min__restriction.html#a538771b6826f30d7ed178c00b7bdace4":[5,0,7,27,0], -"structscc_1_1__min__restriction.html#a6d60e43565bd944f05210c49d09b7ec1":[5,0,7,27,1], -"structscc_1_1__min__restriction.html#aedd6ccc772278d2ba6b25d851bd6298c":[5,0,7,27,2], +"structscc_1_1ForLoop.html":[5,0,7,63], +"structscc_1_1ForLoop_3_011_01_4.html":[5,0,7,64], +"structscc_1_1LogConfig.html":[5,0,7,38], +"structscc_1_1LogConfig.html#a08379e00ee01077ce091c95b5c16ec0a":[5,0,7,38,24], +"structscc_1_1LogConfig.html#a09e085c9853cb5f5cfe95e79d36634f1":[5,0,7,38,25], +"structscc_1_1LogConfig.html#a0c7be338b991e6650ed86c9b1589722a":[5,0,7,38,12], +"structscc_1_1LogConfig.html#a11d2dfc81a7dfb5e9dfd98afd7fce4ef":[5,0,7,38,16], +"structscc_1_1LogConfig.html#a1bc9982b9ba94eef1ae8f08df34c9c15":[5,0,7,38,29], +"structscc_1_1LogConfig.html#a22baf41cee13814da7a7321d62e386a0":[5,0,7,38,14], +"structscc_1_1LogConfig.html#a2372c36a7e2c40f0d1e223a86a4a8c32":[5,0,7,38,8], +"structscc_1_1LogConfig.html#a348307a7c46618c74ffde104bf59ac9d":[5,0,7,38,15], +"structscc_1_1LogConfig.html#a34a9f54e552b8f9914d1686959b3ec37":[5,0,7,38,28], +"structscc_1_1LogConfig.html#a46eec923b12cbad447b79a531aacee9f":[5,0,7,38,19], +"structscc_1_1LogConfig.html#a4d1e12b367b7685f0052acfed41454cf":[5,0,7,38,0], +"structscc_1_1LogConfig.html#a50cca312238bb02ee865dd9e871f8a5f":[5,0,7,38,17], +"structscc_1_1LogConfig.html#a5c6822d609bf25f7304a4c69645bc75c":[5,0,7,38,18], +"structscc_1_1LogConfig.html#a60533d66e4d1d4f1bc91ce359bdc9d38":[5,0,7,38,21], +"structscc_1_1LogConfig.html#a66bc0774442127fe1174cd540ee79499":[5,0,7,38,1], +"structscc_1_1LogConfig.html#a9610025ca0c55f5b6eec9d1b6f0b5b01":[5,0,7,38,9], +"structscc_1_1LogConfig.html#aa296f4dd012f22333bd62684e3d246c9":[5,0,7,38,10], +"structscc_1_1LogConfig.html#aa692a5c181ec726405872cee2f6da15e":[5,0,7,38,5], +"structscc_1_1LogConfig.html#aa6acb8cb85817491f9e2b2fdc82d65e0":[5,0,7,38,20], +"structscc_1_1LogConfig.html#aa82a8b5bd25dbb7746378e5140a7fdd5":[5,0,7,38,13], +"structscc_1_1LogConfig.html#ab380dea6174f0b26626251554e31d326":[5,0,7,38,4], +"structscc_1_1LogConfig.html#ab7cc942d1d006acd0b915d57916e83c2":[5,0,7,38,11], +"structscc_1_1LogConfig.html#ac7b82189b7a4345fa6f85ed1c6e472a8":[5,0,7,38,26], +"structscc_1_1LogConfig.html#acde59cdaa05fb6cb4ba5ac22e224edb9":[5,0,7,38,3], +"structscc_1_1LogConfig.html#acebefc5df5eb4d3e799e4beb2aff8e88":[5,0,7,38,2], +"structscc_1_1LogConfig.html#adf9cb0462be4b511f2851dec45e5fc58":[5,0,7,38,23], +"structscc_1_1LogConfig.html#aec3f15759e3adb796a02e3b73e55dd72":[5,0,7,38,7], +"structscc_1_1LogConfig.html#aed74de9e2fb0ddd5440366cd9bb5aed5":[5,0,7,38,22], +"structscc_1_1LogConfig.html#af86733450807b0680d09ca44b2d89ed5":[5,0,7,38,27], +"structscc_1_1LogConfig.html#afa821e59961387e84b611d14d72c6696":[5,0,7,38,6], +"structscc_1_1ScLogger.html":[5,0,7,39], +"structscc_1_1ScLogger.html#a13c8c7d537ddebeb418273acacaebef2":[5,0,7,39,15], +"structscc_1_1ScLogger.html#a2258e1b208c45f3be95507666a1ad9fd":[5,0,7,39,9], +"structscc_1_1ScLogger.html#a28428c9af702841a7a803a537f718bb1":[5,0,7,39,11], +"structscc_1_1ScLogger.html#a4d92f18ea4fc9072121342e161c74fc9":[5,0,7,39,1], +"structscc_1_1ScLogger.html#a550a4d9de67a12667e247d49a9db8fe3":[5,0,7,39,14], +"structscc_1_1ScLogger.html#a5576bda78d5da815d819bc0114dca1cd":[5,0,7,39,7], +"structscc_1_1ScLogger.html#a5e2cc3a18b24f30a3dc37137c65e7de9":[5,0,7,39,4], +"structscc_1_1ScLogger.html#a6202c3aa0c8c599aa20309115cff6243":[5,0,7,39,10], +"structscc_1_1ScLogger.html#a76ea0ccd13c351ee2474eeb4485c7608":[5,0,7,39,5], +"structscc_1_1ScLogger.html#a92b9e7b288ff75db3ebc82cee4b333ec":[5,0,7,39,13], +"structscc_1_1ScLogger.html#aacb217c42a89405a850814b7e6487f7a":[5,0,7,39,6], +"structscc_1_1ScLogger.html#aba460dd4f3870b3c914d78a90b1fa894":[5,0,7,39,2], +"structscc_1_1ScLogger.html#ad729b5edfc3589af27ae8963fcda3684":[5,0,7,39,8], +"structscc_1_1ScLogger.html#ad8857ab3386b8aebdec6fde617053069":[5,0,7,39,3], +"structscc_1_1ScLogger.html#ae055b4fa49b6e9ca46acb44d8a72cf42":[5,0,7,39,12], +"structscc_1_1ScLogger.html#afc3d0c8bcfabad46d738ebac4e9892ce":[5,0,7,39,0], "structscc_1_1addr__range.html":[5,0,7,12], "structscc_1_1addr__range.html#a248594081248ef6152c5e78dbb1c902d":[5,0,7,12,1], "structscc_1_1addr__range.html#a50c9b2e11aead3cf12d42bb1ecb1147a":[5,0,7,12,0], -"structscc_1_1cci__param__restricted.html":[5,0,7,32], -"structscc_1_1cci__param__restricted.html#a6b7f0b6ac7677e10cc8ad1a0fd3e3629":[5,0,7,32,0], -"structscc_1_1cci__param__restricted.html#aeafefd5891fb058a13d6dd40f9325ac4":[5,0,7,32,1], -"structscc_1_1configurer_1_1ConfigHolder.html":[5,0,7,34,0], -"structscc_1_1configurer_1_1ConfigHolder.html#a5746ff226c7eafaf0503bde45bef0c86":[5,0,7,34,0,0], -"structscc_1_1configurer_1_1ConfigHolder.html#a8274eeff74662d455fc431aec8c0edaa":[5,0,7,34,0,1], -"structscc_1_1fst__trace__file.html":[5,0,7,37], -"structscc_1_1fst__trace__file.html#a51766f4b45570cf562c4cf5047c6f161":[5,0,7,37,4], -"structscc_1_1fst__trace__file.html#a58fc21880c8ca3e74b42089193113b6e":[5,0,7,37,2], -"structscc_1_1fst__trace__file.html#aa71f43dbd1b426ea79ad4ef738526f2d":[5,0,7,37,5], -"structscc_1_1fst__trace__file.html#aad067c878a9605d540c962e84879d06f":[5,0,7,37,0], -"structscc_1_1fst__trace__file.html#ac0b4f1438ab32e537261efdfe931fd25":[5,0,7,37,1], -"structscc_1_1fst__trace__file.html#ac83ab9165da127db2a4c008faea5b8fd":[5,0,7,37,3], -"structscc_1_1observer.html":[5,0,7,40], -"structscc_1_1observer.html#a10a5833b7b6bef915fc8138eee326d9f":[5,0,7,40,13], -"structscc_1_1observer.html#a3703cc996e1b2a9e7c68cd38e59775d5":[5,0,7,40,3], -"structscc_1_1observer.html#a372d1372d39597ca221ad20dbaa6e3aa":[5,0,7,40,26], -"structscc_1_1observer.html#a457f354d5e1cdad21cd085ef51c9e8c3":[5,0,7,40,14], -"structscc_1_1observer.html#a4a9cf27bb9978c57464db804f9f91461":[5,0,7,40,1], -"structscc_1_1observer.html#a55523ba7b8a8a1fd0072a8e62d7a65a4":[5,0,7,40,18], -"structscc_1_1observer.html#a5aa622a3c51ffea010d92f1ef25ce3f2":[5,0,7,40,12], -"structscc_1_1observer.html#a5c6175fc400509efb4e1ac430290642c":[5,0,7,40,23], -"structscc_1_1observer.html#a5f81248179d69bb420772711baeb1cc0":[5,0,7,40,5], -"structscc_1_1observer.html#a7e50609c0134c099679809f5cdc7f052":[5,0,7,40,11], -"structscc_1_1observer.html#a946134f74037d490623aef94dbc7de1d":[5,0,7,40,22], -"structscc_1_1observer.html#a992695483efe9ad1ca288407ee47066a":[5,0,7,40,8], -"structscc_1_1observer.html#aa05ba10c2549a73b863ca0698fdd0e06":[5,0,7,40,20], -"structscc_1_1observer.html#aac25574f06c595e39ed65491d0ea0c04":[5,0,7,40,16], -"structscc_1_1observer.html#aae14ffdb694cce3b3a85eecc9fe94b94":[5,0,7,40,9], -"structscc_1_1observer.html#ab0bbead5448c676d8074b64f1a7d3d2f":[5,0,7,40,24], -"structscc_1_1observer.html#abc1abfc1607245c0ec68afd74aa404ee":[5,0,7,40,2], -"structscc_1_1observer.html#ac15212101525e53a1aed58aff23d263f":[5,0,7,40,7], -"structscc_1_1observer.html#ac59e978703ac2548816ab725d54c5c5b":[5,0,7,40,10] +"structscc_1_1cci__param__restricted.html":[5,0,7,25], +"structscc_1_1cci__param__restricted.html#a4bfb0b712c768ba24fdcde092b7467f4":[5,0,7,25,1], +"structscc_1_1cci__param__restricted.html#a966b92a6e7f3adf56c3533985cecc878":[5,0,7,25,0], +"structscc_1_1configurer_1_1ConfigHolder.html":[5,0,7,27,0], +"structscc_1_1configurer_1_1ConfigHolder.html#a5746ff226c7eafaf0503bde45bef0c86":[5,0,7,27,0,0], +"structscc_1_1configurer_1_1ConfigHolder.html#a8274eeff74662d455fc431aec8c0edaa":[5,0,7,27,0,1], +"structscc_1_1fst__trace__file.html":[5,0,7,30], +"structscc_1_1fst__trace__file.html#a51766f4b45570cf562c4cf5047c6f161":[5,0,7,30,4], +"structscc_1_1fst__trace__file.html#a58fc21880c8ca3e74b42089193113b6e":[5,0,7,30,2], +"structscc_1_1fst__trace__file.html#aa71f43dbd1b426ea79ad4ef738526f2d":[5,0,7,30,5], +"structscc_1_1fst__trace__file.html#aad067c878a9605d540c962e84879d06f":[5,0,7,30,0], +"structscc_1_1fst__trace__file.html#ac0b4f1438ab32e537261efdfe931fd25":[5,0,7,30,1], +"structscc_1_1fst__trace__file.html#ac83ab9165da127db2a4c008faea5b8fd":[5,0,7,30,3], +"structscc_1_1observer.html":[5,0,7,33], +"structscc_1_1observer.html#a10a5833b7b6bef915fc8138eee326d9f":[5,0,7,33,13], +"structscc_1_1observer.html#a3703cc996e1b2a9e7c68cd38e59775d5":[5,0,7,33,3], +"structscc_1_1observer.html#a372d1372d39597ca221ad20dbaa6e3aa":[5,0,7,33,26], +"structscc_1_1observer.html#a457f354d5e1cdad21cd085ef51c9e8c3":[5,0,7,33,14], +"structscc_1_1observer.html#a4a9cf27bb9978c57464db804f9f91461":[5,0,7,33,1], +"structscc_1_1observer.html#a55523ba7b8a8a1fd0072a8e62d7a65a4":[5,0,7,33,18], +"structscc_1_1observer.html#a5aa622a3c51ffea010d92f1ef25ce3f2":[5,0,7,33,12], +"structscc_1_1observer.html#a5c6175fc400509efb4e1ac430290642c":[5,0,7,33,23], +"structscc_1_1observer.html#a5f81248179d69bb420772711baeb1cc0":[5,0,7,33,5], +"structscc_1_1observer.html#a7e50609c0134c099679809f5cdc7f052":[5,0,7,33,11], +"structscc_1_1observer.html#a946134f74037d490623aef94dbc7de1d":[5,0,7,33,22], +"structscc_1_1observer.html#a992695483efe9ad1ca288407ee47066a":[5,0,7,33,8], +"structscc_1_1observer.html#aa05ba10c2549a73b863ca0698fdd0e06":[5,0,7,33,20], +"structscc_1_1observer.html#aac25574f06c595e39ed65491d0ea0c04":[5,0,7,33,16], +"structscc_1_1observer.html#aae14ffdb694cce3b3a85eecc9fe94b94":[5,0,7,33,9], +"structscc_1_1observer.html#ab0bbead5448c676d8074b64f1a7d3d2f":[5,0,7,33,24], +"structscc_1_1observer.html#abc1abfc1607245c0ec68afd74aa404ee":[5,0,7,33,2], +"structscc_1_1observer.html#ac15212101525e53a1aed58aff23d263f":[5,0,7,33,7], +"structscc_1_1observer.html#ac59e978703ac2548816ab725d54c5c5b":[5,0,7,33,10], +"structscc_1_1observer.html#ac76bc66df98165844a2c613ebacc894c":[5,0,7,33,17], +"structscc_1_1observer.html#ac9d5d43cf496b8861d057b644efd94e4":[5,0,7,33,25], +"structscc_1_1observer.html#ad3e74519c8c3adf4db8f32d2cb009add":[5,0,7,33,21], +"structscc_1_1observer.html#ae4a0d003ef5c7015598e2b294a0d4eda":[5,0,7,33,19], +"structscc_1_1observer.html#ae5f79536aae6669e373a3bd9ebc835d2":[5,0,7,33,6], +"structscc_1_1observer.html#ae9e33db6319557f8f0fe2e6c54a4bfa4":[5,0,7,33,4], +"structscc_1_1observer.html#af298feb62e26f8c5c7347d099ac9e2ac":[5,0,7,33,15], +"structscc_1_1observer_1_1notification__handle.html":[5,0,7,33,0], +"structscc_1_1observer_1_1notification__handle.html#a417e4d80e0f0427919477ed63a746f4e":[5,0,7,33,0,1], +"structscc_1_1observer_1_1notification__handle.html#a43b6ffffeebf3b9b6861ae9634458d50":[5,0,7,33,0,0], +"structscc_1_1ordered__semaphore_1_1lock.html":[5,0,7,34,0], +"structscc_1_1ordered__semaphore_1_1lock.html#a1e82713ace8671b89422efd56e60d4c2":[5,0,7,34,0,2], +"structscc_1_1ordered__semaphore_1_1lock.html#a2ad84335adda8f6376550bfa229450af":[5,0,7,34,0,3], +"structscc_1_1ordered__semaphore_1_1lock.html#a661d917637b9b8495c3156c95fb06373":[5,0,7,34,0,0], +"structscc_1_1ordered__semaphore_1_1lock.html#aef9d8a7aca9bcc88b1e55205ce268d7c":[5,0,7,34,0,1], +"structscc_1_1ordered__semaphore__t.html":[5,0,7,35], +"structscc_1_1ordered__semaphore__t.html#a971da9664bbe4e3c6b439c0faa71c9b0":[5,0,7,35,0], +"structscc_1_1ordered__semaphore__t.html#aea740e56ff3ad2922184d58c5a7c433a":[5,0,7,35,1], +"structscc_1_1peq.html":[5,0,7,36], +"structscc_1_1peq.html#a17f21f5cd71520bb845cf3344eb6327a":[5,0,7,36,2], +"structscc_1_1peq.html#a17fcea4a1eb87829af107ad19f4fe22a":[5,0,7,36,1], +"structscc_1_1peq.html#a39d453a7ca6fb4529e2c2445ed034741":[5,0,7,36,13], +"structscc_1_1peq.html#a4512c9aad5ce21efcd53575a9609b012":[5,0,7,36,10], +"structscc_1_1peq.html#a59053387a23b6df36a251a48c99d21d4":[5,0,7,36,4], +"structscc_1_1peq.html#a5cb02388bf7b16ae5a314cb83938bd1f":[5,0,7,36,12], +"structscc_1_1peq.html#a7e3a34f0fe967ee1c3424904b82ff67a":[5,0,7,36,11], +"structscc_1_1peq.html#a86fe01b84c045c7b8d0090f1dc588bed":[5,0,7,36,8], +"structscc_1_1peq.html#a89cecdbe837276225356678f6c085f2a":[5,0,7,36,5] }; diff --git a/develop/navtreeindex17.js b/develop/navtreeindex17.js index d4f1383f..1d55f301 100644 --- a/develop/navtreeindex17.js +++ b/develop/navtreeindex17.js @@ -1,153 +1,125 @@ var NAVTREEINDEX17 = { -"structscc_1_1observer.html#ac76bc66df98165844a2c613ebacc894c":[5,0,7,40,17], -"structscc_1_1observer.html#ac9d5d43cf496b8861d057b644efd94e4":[5,0,7,40,25], -"structscc_1_1observer.html#ad3e74519c8c3adf4db8f32d2cb009add":[5,0,7,40,21], -"structscc_1_1observer.html#ae4a0d003ef5c7015598e2b294a0d4eda":[5,0,7,40,19], -"structscc_1_1observer.html#ae5f79536aae6669e373a3bd9ebc835d2":[5,0,7,40,6], -"structscc_1_1observer.html#ae9e33db6319557f8f0fe2e6c54a4bfa4":[5,0,7,40,4], -"structscc_1_1observer.html#af298feb62e26f8c5c7347d099ac9e2ac":[5,0,7,40,15], -"structscc_1_1observer_1_1notification__handle.html":[5,0,7,40,0], -"structscc_1_1observer_1_1notification__handle.html#a417e4d80e0f0427919477ed63a746f4e":[5,0,7,40,0,1], -"structscc_1_1observer_1_1notification__handle.html#a43b6ffffeebf3b9b6861ae9634458d50":[5,0,7,40,0,0], -"structscc_1_1ordered__semaphore_1_1lock.html":[5,0,7,41,0], -"structscc_1_1ordered__semaphore_1_1lock.html#a1e82713ace8671b89422efd56e60d4c2":[5,0,7,41,0,2], -"structscc_1_1ordered__semaphore_1_1lock.html#a2ad84335adda8f6376550bfa229450af":[5,0,7,41,0,3], -"structscc_1_1ordered__semaphore_1_1lock.html#a661d917637b9b8495c3156c95fb06373":[5,0,7,41,0,0], -"structscc_1_1ordered__semaphore_1_1lock.html#aef9d8a7aca9bcc88b1e55205ce268d7c":[5,0,7,41,0,1], -"structscc_1_1ordered__semaphore__t.html":[5,0,7,42], -"structscc_1_1ordered__semaphore__t.html#a971da9664bbe4e3c6b439c0faa71c9b0":[5,0,7,42,0], -"structscc_1_1ordered__semaphore__t.html#aea740e56ff3ad2922184d58c5a7c433a":[5,0,7,42,1], -"structscc_1_1peq.html":[5,0,7,43], -"structscc_1_1peq.html#a17f21f5cd71520bb845cf3344eb6327a":[5,0,7,43,2], -"structscc_1_1peq.html#a17fcea4a1eb87829af107ad19f4fe22a":[5,0,7,43,1], -"structscc_1_1peq.html#a39d453a7ca6fb4529e2c2445ed034741":[5,0,7,43,13], -"structscc_1_1peq.html#a4512c9aad5ce21efcd53575a9609b012":[5,0,7,43,10], -"structscc_1_1peq.html#a59053387a23b6df36a251a48c99d21d4":[5,0,7,43,4], -"structscc_1_1peq.html#a5cb02388bf7b16ae5a314cb83938bd1f":[5,0,7,43,12], -"structscc_1_1peq.html#a7e3a34f0fe967ee1c3424904b82ff67a":[5,0,7,43,11], -"structscc_1_1peq.html#a86fe01b84c045c7b8d0090f1dc588bed":[5,0,7,43,8], -"structscc_1_1peq.html#a89cecdbe837276225356678f6c085f2a":[5,0,7,43,5], -"structscc_1_1peq.html#a8d49bf3f9d005c870ec4ef4ff3c6cf7d":[5,0,7,43,6], -"structscc_1_1peq.html#a96f03772cd30574ba45a4b50f39c76c8":[5,0,7,43,9], -"structscc_1_1peq.html#ae9ebba1647aa1f24e0103195099bf263":[5,0,7,43,0], -"structscc_1_1peq.html#af796cf9195686a381d99f8ff12170c20":[5,0,7,43,3], -"structscc_1_1peq.html#afdaac52f71290ee8c038843d728b1704":[5,0,7,43,7], +"structscc_1_1peq.html#a8d49bf3f9d005c870ec4ef4ff3c6cf7d":[5,0,7,36,6], +"structscc_1_1peq.html#a96f03772cd30574ba45a4b50f39c76c8":[5,0,7,36,9], +"structscc_1_1peq.html#ae9ebba1647aa1f24e0103195099bf263":[5,0,7,36,0], +"structscc_1_1peq.html#af796cf9195686a381d99f8ff12170c20":[5,0,7,36,3], +"structscc_1_1peq.html#afdaac52f71290ee8c038843d728b1704":[5,0,7,36,7], "structscc_1_1router_1_1range__entry.html":[5,0,7,11,0], "structscc_1_1router_1_1range__entry.html#a5e51f4659c2b8c0fce27e58aa3188eea":[5,0,7,11,0,2], "structscc_1_1router_1_1range__entry.html#aa132616da4084090c7ccd357c2cfb718":[5,0,7,11,0,1], "structscc_1_1router_1_1range__entry.html#adae1e5faa1fbb4711a57bf271f419076":[5,0,7,11,0,0], -"structscc_1_1sc__bigint__tester.html":[5,0,7,75], -"structscc_1_1sc__bigint__tester.html#a62e330e6339946716e08bc09606a2ed9":[5,0,7,75,0], -"structscc_1_1sc__biguint__tester.html":[5,0,7,74], -"structscc_1_1sc__biguint__tester.html#a9257673ae82dcf593d8c14614ef210a4":[5,0,7,74,0], -"structscc_1_1sc__bv__tester.html":[5,0,7,76], -"structscc_1_1sc__bv__tester.html#a1b0872ba805ff56e2e81a6d03b540692":[5,0,7,76,0], -"structscc_1_1sc__clock__ext.html":[5,0,7,49], -"structscc_1_1sc__clock__ext.html#a01927b6871ce9c6a74c01e51f4ed3ff8":[5,0,7,49,2], -"structscc_1_1sc__clock__ext.html#a66d153b247dd3829a72ee0059aa67ce4":[5,0,7,49,6], -"structscc_1_1sc__clock__ext.html#a908227e52c61f54a827dcf6f219d41c1":[5,0,7,49,1], -"structscc_1_1sc__clock__ext.html#aa455d587696e9ecaf0989c08fac5eba6":[5,0,7,49,3], -"structscc_1_1sc__clock__ext.html#ab1f289749b2384a8b26b71b4d0525599":[5,0,7,49,0], -"structscc_1_1sc__clock__ext.html#ab4ea1e1db2fd87ed23c736406e45f3be":[5,0,7,49,4], -"structscc_1_1sc__clock__ext.html#afa74a2dc0d821ce5003e8b5b50a44d04":[5,0,7,49,5], -"structscc_1_1sc__int__tester.html":[5,0,7,73], -"structscc_1_1sc__int__tester.html#a9d2dccc3fd2a94c62649eed75cb5bed7":[5,0,7,73,0], -"structscc_1_1sc__lv__tester.html":[5,0,7,77], -"structscc_1_1sc__lv__tester.html#a18cfcfec6999b11b927ad697ba4bddc0":[5,0,7,77,0], -"structscc_1_1sc__ref__variable.html":[5,0,7,56], -"structscc_1_1sc__ref__variable.html#a185790b81a512753a95a527fb33184fc":[5,0,7,56,4], -"structscc_1_1sc__ref__variable.html#a2734491c85928d7d861ac3b917537074":[5,0,7,56,6], -"structscc_1_1sc__ref__variable.html#a9498e96cfef2cd4a09667d5f93e8bec7":[5,0,7,56,3], -"structscc_1_1sc__ref__variable.html#a97bf620db2f575fc37b4356c92d32589":[5,0,7,56,0], -"structscc_1_1sc__ref__variable.html#a9eeae50987cead23cd2816c296c6ae8a":[5,0,7,56,5], -"structscc_1_1sc__ref__variable.html#ac6d57ed7d5713ffcaecf08541a5a5943":[5,0,7,56,1], -"structscc_1_1sc__ref__variable.html#afa64ef5c8d241e21596ebd045f5371ed":[5,0,7,56,2], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html":[5,0,7,57], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a0d7f06c204073d91a7b5f44895d9670b":[5,0,7,57,0], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a57c127e0f2f75a7a0938e05d596c3715":[5,0,7,57,3], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a613bdf31964a06bbde0c5496b82fe046":[5,0,7,57,4], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a66f767ee0f750927fa2ed6023fb40551":[5,0,7,57,2], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a8559ff2753c33c7096996e7593818c34":[5,0,7,57,1], -"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#aa88efbf3fc0abd03a95359f725fae7b6":[5,0,7,57,5], -"structscc_1_1sc__ref__variable__masked.html":[5,0,7,58], -"structscc_1_1sc__ref__variable__masked.html#a013f216e3370aa812b2c43cb781f748e":[5,0,7,58,2], -"structscc_1_1sc__ref__variable__masked.html#a03e082cb136eb232182b7908dcc2da90":[5,0,7,58,5], -"structscc_1_1sc__ref__variable__masked.html#a2ea49c48117780e40a0917f19b7b50ac":[5,0,7,58,1], -"structscc_1_1sc__ref__variable__masked.html#a40c7f968b5cab445fcc4bbc1a0fa1ed7":[5,0,7,58,4], -"structscc_1_1sc__ref__variable__masked.html#a47367b4d37fb6a4b8adf17e19689a77d":[5,0,7,58,3], -"structscc_1_1sc__ref__variable__masked.html#a4d56810c1c3b8a6f57ecac6c7c60a90e":[5,0,7,58,0], -"structscc_1_1sc__ref__variable__masked.html#ab3a7c4d65560af536c3654c654a46790":[5,0,7,58,6], -"structscc_1_1sc__uint__tester.html":[5,0,7,72], -"structscc_1_1sc__uint__tester.html#ae0a75d78619227d571ce5dd7487fcf93":[5,0,7,72,0], -"structscc_1_1sc__variable.html":[5,0,7,53], -"structscc_1_1sc__variable.html#a0ad425b8872e0dc17606ee8b7c74e0c7":[5,0,7,53,27], -"structscc_1_1sc__variable.html#a0b8871f796666806ae98c68a2ad865d9":[5,0,7,53,23], -"structscc_1_1sc__variable.html#a1293b8808064373f6c3c90763d66515f":[5,0,7,53,10], -"structscc_1_1sc__variable.html#a12cf9205e1c81d082a26e1ef1c6364c6":[5,0,7,53,33], -"structscc_1_1sc__variable.html#a176b5774c0876a56be0f585855fb124a":[5,0,7,53,28], -"structscc_1_1sc__variable.html#a1eba20a9a30a30dcb04fb79660f8df14":[5,0,7,53,26], -"structscc_1_1sc__variable.html#a250917a7aa52af634b6dcb5d2ad76952":[5,0,7,53,12], -"structscc_1_1sc__variable.html#a38785ab98bd0d32cc825cfe3e35c96cc":[5,0,7,53,15], -"structscc_1_1sc__variable.html#a3ecec6a92f5ad1fab6cbb1f4f39a97f8":[5,0,7,53,24], -"structscc_1_1sc__variable.html#a3ed1652ae43f65dac79d5ec5c7dc06d3":[5,0,7,53,3], -"structscc_1_1sc__variable.html#a476a0914d4bbbbecc4ca84fd920db5a2":[5,0,7,53,32], -"structscc_1_1sc__variable.html#a6a7685eca816c1699ceae58a366283f2":[5,0,7,53,13], -"structscc_1_1sc__variable.html#a6b188d58321326448c0228851d6cabd0":[5,0,7,53,6], -"structscc_1_1sc__variable.html#a7a37f979f4f5a735579f61d6d14ded71":[5,0,7,53,1], -"structscc_1_1sc__variable.html#a7bce3fdeac15116bb214cebb6c9b3c65":[5,0,7,53,7], -"structscc_1_1sc__variable.html#a8053bea50698196db268195f6a5da9b1":[5,0,7,53,11], -"structscc_1_1sc__variable.html#a8e9966da12146025e9378cfba89c0393":[5,0,7,53,17], -"structscc_1_1sc__variable.html#a96f9aac311c951eade882e28fce0c465":[5,0,7,53,18], -"structscc_1_1sc__variable.html#a9f857feb916ef156f32cb712986dc40a":[5,0,7,53,21], -"structscc_1_1sc__variable.html#aa108053c794ce99bc391e2c3e2feef4f":[5,0,7,53,25], -"structscc_1_1sc__variable.html#ab12e11ef620e6aa0c5b8296522a3cf75":[5,0,7,53,16], -"structscc_1_1sc__variable.html#ab1b465d662ed1c27b44c2cbf5c4aea84":[5,0,7,53,31], -"structscc_1_1sc__variable.html#ab45cedaa94224739892b31b9831251bc":[5,0,7,53,9], -"structscc_1_1sc__variable.html#ab57f64e9fca9a6c8a4c0ec5ce2972b58":[5,0,7,53,8], -"structscc_1_1sc__variable.html#abbd681479fc0dad8076f12813ca0628a":[5,0,7,53,22], -"structscc_1_1sc__variable.html#ac45bc448bb25ffe9e4f235c7558ee308":[5,0,7,53,30], -"structscc_1_1sc__variable.html#ad03a962e759bcf77fd07d993b074543c":[5,0,7,53,14], -"structscc_1_1sc__variable.html#ad07cca01fd53527bd24d79d1b3059b0f":[5,0,7,53,2], -"structscc_1_1sc__variable.html#ad452b3d302565857309bb61dfbc6b490":[5,0,7,53,19], -"structscc_1_1sc__variable.html#adac78aeba6128e037e6abcbab286b2e0":[5,0,7,53,29], -"structscc_1_1sc__variable.html#ae3c4ecc0c8907718452d30e5d1bcf7a4":[5,0,7,53,5], -"structscc_1_1sc__variable.html#afb2282744a7b5e2cc95ee72e28d6b11e":[5,0,7,53,4], -"structscc_1_1sc__variable.html#afdc77cd576a25c44a453bb19743ae119":[5,0,7,53,20], -"structscc_1_1sc__variable_1_1creator.html":[5,0,7,53,0], -"structscc_1_1sc__variable_1_1creator.html#a67399a69fb1fa8586652a9aeab07bca7":[5,0,7,53,0,0], -"structscc_1_1sc__variable_1_1creator.html#ab4c2e97b7d63145d46524ec5327e66c3":[5,0,7,53,0,1], -"structscc_1_1sc__variable_3_01bool_01_4.html":[5,0,7,54], -"structscc_1_1sc__variable_3_01bool_01_4.html#a02d9f81c31f1d14e276af2044fec3f60":[5,0,7,54,11], -"structscc_1_1sc__variable_3_01bool_01_4.html#a2624573725c99db8db44a01ca0efa16f":[5,0,7,54,10], -"structscc_1_1sc__variable_3_01bool_01_4.html#a67b42ec74bed29572a22516e2563d5ae":[5,0,7,54,2], -"structscc_1_1sc__variable_3_01bool_01_4.html#a8278607ae8015ddba08428f040781c5f":[5,0,7,54,1], -"structscc_1_1sc__variable_3_01bool_01_4.html#a9e43d73cd5bb6de65fd6e671e0a9ec2a":[5,0,7,54,8], -"structscc_1_1sc__variable_3_01bool_01_4.html#ac309d7eb6cd3e15aa510c53e33fb9022":[5,0,7,54,9], -"structscc_1_1sc__variable_3_01bool_01_4.html#ad2508578a5aa80c460f61aac45deab80":[5,0,7,54,7], -"structscc_1_1sc__variable_3_01bool_01_4.html#ae6c3f62e60d8ad9cedb1c87b5db63f5a":[5,0,7,54,3], -"structscc_1_1sc__variable_3_01bool_01_4.html#aeb8b244c4afb55aaa6f8b8470fb1f3b5":[5,0,7,54,5], -"structscc_1_1sc__variable_3_01bool_01_4.html#aee412d565f1b581f7f09ec7af63bb89d":[5,0,7,54,6], -"structscc_1_1sc__variable_3_01bool_01_4.html#affdfe880bb66131365673ab219f22c1f":[5,0,7,54,4], -"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html":[5,0,7,54,0], -"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html#a379571d071be67d46390e7e8290b1821":[5,0,7,54,0,1], -"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html#a8e27b513a3e00d43c7407407511d9f32":[5,0,7,54,0,0], -"structscc_1_1sc__variable__b.html":[5,0,7,52], -"structscc_1_1sc__variable__b.html#a54e81286d38766d3296fbfdd45a93602":[5,0,7,52,1], -"structscc_1_1sc__variable__b.html#a8b5275ae000e6e7a2d7dcfab6b9b7faf":[5,0,7,52,2], -"structscc_1_1sc__variable__b.html#ad33499a234cd42b573a776c54b90c5b5":[5,0,7,52,3], -"structscc_1_1sc__variable__b.html#adc9d31cb6aa7ca639164fae59948b2df":[5,0,7,52,0], -"structscc_1_1sc__variable__vector.html":[5,0,7,55], -"structscc_1_1sc__variable__vector.html#a019c666c70992c7bbe1890e09aac8e5e":[5,0,7,55,4], -"structscc_1_1sc__variable__vector.html#a12a7ccd81422701dc04c73922fcdcdfa":[5,0,7,55,0], -"structscc_1_1sc__variable__vector.html#a13a91b630fcd9f1b06805c5155985f94":[5,0,7,55,2], -"structscc_1_1sc__variable__vector.html#a27e5e9b22c5b4e38cd095a089888926c":[5,0,7,55,5], -"structscc_1_1sc__variable__vector.html#a95cea7c1bebf652b5091859f72adde6d":[5,0,7,55,3], -"structscc_1_1sc__variable__vector.html#a98fa3a2c3cc2899304e1db8a368ac923":[5,0,7,55,1], -"structscc_1_1sc__variable__vector.html#ab36019c7b65c34938ca1b1b31c544fbe":[5,0,7,55,7], -"structscc_1_1sc__variable__vector.html#acfe896e2605a9248bc691f8bd3991837":[5,0,7,55,9], -"structscc_1_1sc__variable__vector.html#af1b8437f70c55ca439c878cbe0355f29":[5,0,7,55,6], -"structscc_1_1sc__variable__vector.html#af39c6a50f92a86a68d90345a75688924":[5,0,7,55,8], +"structscc_1_1sc__bigint__tester.html":[5,0,7,68], +"structscc_1_1sc__bigint__tester.html#a62e330e6339946716e08bc09606a2ed9":[5,0,7,68,0], +"structscc_1_1sc__biguint__tester.html":[5,0,7,67], +"structscc_1_1sc__biguint__tester.html#a9257673ae82dcf593d8c14614ef210a4":[5,0,7,67,0], +"structscc_1_1sc__bv__tester.html":[5,0,7,69], +"structscc_1_1sc__bv__tester.html#a1b0872ba805ff56e2e81a6d03b540692":[5,0,7,69,0], +"structscc_1_1sc__clock__ext.html":[5,0,7,42], +"structscc_1_1sc__clock__ext.html#a01927b6871ce9c6a74c01e51f4ed3ff8":[5,0,7,42,2], +"structscc_1_1sc__clock__ext.html#a66d153b247dd3829a72ee0059aa67ce4":[5,0,7,42,6], +"structscc_1_1sc__clock__ext.html#a908227e52c61f54a827dcf6f219d41c1":[5,0,7,42,1], +"structscc_1_1sc__clock__ext.html#aa455d587696e9ecaf0989c08fac5eba6":[5,0,7,42,3], +"structscc_1_1sc__clock__ext.html#ab1f289749b2384a8b26b71b4d0525599":[5,0,7,42,0], +"structscc_1_1sc__clock__ext.html#ab4ea1e1db2fd87ed23c736406e45f3be":[5,0,7,42,4], +"structscc_1_1sc__clock__ext.html#afa74a2dc0d821ce5003e8b5b50a44d04":[5,0,7,42,5], +"structscc_1_1sc__int__tester.html":[5,0,7,66], +"structscc_1_1sc__int__tester.html#a9d2dccc3fd2a94c62649eed75cb5bed7":[5,0,7,66,0], +"structscc_1_1sc__lv__tester.html":[5,0,7,70], +"structscc_1_1sc__lv__tester.html#a18cfcfec6999b11b927ad697ba4bddc0":[5,0,7,70,0], +"structscc_1_1sc__ref__variable.html":[5,0,7,49], +"structscc_1_1sc__ref__variable.html#a185790b81a512753a95a527fb33184fc":[5,0,7,49,4], +"structscc_1_1sc__ref__variable.html#a2734491c85928d7d861ac3b917537074":[5,0,7,49,6], +"structscc_1_1sc__ref__variable.html#a9498e96cfef2cd4a09667d5f93e8bec7":[5,0,7,49,3], +"structscc_1_1sc__ref__variable.html#a97bf620db2f575fc37b4356c92d32589":[5,0,7,49,0], +"structscc_1_1sc__ref__variable.html#a9eeae50987cead23cd2816c296c6ae8a":[5,0,7,49,5], +"structscc_1_1sc__ref__variable.html#ac6d57ed7d5713ffcaecf08541a5a5943":[5,0,7,49,1], +"structscc_1_1sc__ref__variable.html#afa64ef5c8d241e21596ebd045f5371ed":[5,0,7,49,2], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html":[5,0,7,50], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a0d7f06c204073d91a7b5f44895d9670b":[5,0,7,50,0], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a57c127e0f2f75a7a0938e05d596c3715":[5,0,7,50,3], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a613bdf31964a06bbde0c5496b82fe046":[5,0,7,50,4], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a66f767ee0f750927fa2ed6023fb40551":[5,0,7,50,2], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#a8559ff2753c33c7096996e7593818c34":[5,0,7,50,1], +"structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html#aa88efbf3fc0abd03a95359f725fae7b6":[5,0,7,50,5], +"structscc_1_1sc__ref__variable__masked.html":[5,0,7,51], +"structscc_1_1sc__ref__variable__masked.html#a013f216e3370aa812b2c43cb781f748e":[5,0,7,51,2], +"structscc_1_1sc__ref__variable__masked.html#a03e082cb136eb232182b7908dcc2da90":[5,0,7,51,5], +"structscc_1_1sc__ref__variable__masked.html#a2ea49c48117780e40a0917f19b7b50ac":[5,0,7,51,1], +"structscc_1_1sc__ref__variable__masked.html#a40c7f968b5cab445fcc4bbc1a0fa1ed7":[5,0,7,51,4], +"structscc_1_1sc__ref__variable__masked.html#a47367b4d37fb6a4b8adf17e19689a77d":[5,0,7,51,3], +"structscc_1_1sc__ref__variable__masked.html#a4d56810c1c3b8a6f57ecac6c7c60a90e":[5,0,7,51,0], +"structscc_1_1sc__ref__variable__masked.html#ab3a7c4d65560af536c3654c654a46790":[5,0,7,51,6], +"structscc_1_1sc__uint__tester.html":[5,0,7,65], +"structscc_1_1sc__uint__tester.html#ae0a75d78619227d571ce5dd7487fcf93":[5,0,7,65,0], +"structscc_1_1sc__variable.html":[5,0,7,46], +"structscc_1_1sc__variable.html#a0ad425b8872e0dc17606ee8b7c74e0c7":[5,0,7,46,27], +"structscc_1_1sc__variable.html#a0b8871f796666806ae98c68a2ad865d9":[5,0,7,46,23], +"structscc_1_1sc__variable.html#a1293b8808064373f6c3c90763d66515f":[5,0,7,46,10], +"structscc_1_1sc__variable.html#a12cf9205e1c81d082a26e1ef1c6364c6":[5,0,7,46,33], +"structscc_1_1sc__variable.html#a176b5774c0876a56be0f585855fb124a":[5,0,7,46,28], +"structscc_1_1sc__variable.html#a1eba20a9a30a30dcb04fb79660f8df14":[5,0,7,46,26], +"structscc_1_1sc__variable.html#a250917a7aa52af634b6dcb5d2ad76952":[5,0,7,46,12], +"structscc_1_1sc__variable.html#a38785ab98bd0d32cc825cfe3e35c96cc":[5,0,7,46,15], +"structscc_1_1sc__variable.html#a3ecec6a92f5ad1fab6cbb1f4f39a97f8":[5,0,7,46,24], +"structscc_1_1sc__variable.html#a3ed1652ae43f65dac79d5ec5c7dc06d3":[5,0,7,46,3], +"structscc_1_1sc__variable.html#a476a0914d4bbbbecc4ca84fd920db5a2":[5,0,7,46,32], +"structscc_1_1sc__variable.html#a6a7685eca816c1699ceae58a366283f2":[5,0,7,46,13], +"structscc_1_1sc__variable.html#a6b188d58321326448c0228851d6cabd0":[5,0,7,46,6], +"structscc_1_1sc__variable.html#a7a37f979f4f5a735579f61d6d14ded71":[5,0,7,46,1], +"structscc_1_1sc__variable.html#a7bce3fdeac15116bb214cebb6c9b3c65":[5,0,7,46,7], +"structscc_1_1sc__variable.html#a8053bea50698196db268195f6a5da9b1":[5,0,7,46,11], +"structscc_1_1sc__variable.html#a8e9966da12146025e9378cfba89c0393":[5,0,7,46,17], +"structscc_1_1sc__variable.html#a96f9aac311c951eade882e28fce0c465":[5,0,7,46,18], +"structscc_1_1sc__variable.html#a9f857feb916ef156f32cb712986dc40a":[5,0,7,46,21], +"structscc_1_1sc__variable.html#aa108053c794ce99bc391e2c3e2feef4f":[5,0,7,46,25], +"structscc_1_1sc__variable.html#ab12e11ef620e6aa0c5b8296522a3cf75":[5,0,7,46,16], +"structscc_1_1sc__variable.html#ab1b465d662ed1c27b44c2cbf5c4aea84":[5,0,7,46,31], +"structscc_1_1sc__variable.html#ab45cedaa94224739892b31b9831251bc":[5,0,7,46,9], +"structscc_1_1sc__variable.html#ab57f64e9fca9a6c8a4c0ec5ce2972b58":[5,0,7,46,8], +"structscc_1_1sc__variable.html#abbd681479fc0dad8076f12813ca0628a":[5,0,7,46,22], +"structscc_1_1sc__variable.html#ac45bc448bb25ffe9e4f235c7558ee308":[5,0,7,46,30], +"structscc_1_1sc__variable.html#ad03a962e759bcf77fd07d993b074543c":[5,0,7,46,14], +"structscc_1_1sc__variable.html#ad07cca01fd53527bd24d79d1b3059b0f":[5,0,7,46,2], +"structscc_1_1sc__variable.html#ad452b3d302565857309bb61dfbc6b490":[5,0,7,46,19], +"structscc_1_1sc__variable.html#adac78aeba6128e037e6abcbab286b2e0":[5,0,7,46,29], +"structscc_1_1sc__variable.html#ae3c4ecc0c8907718452d30e5d1bcf7a4":[5,0,7,46,5], +"structscc_1_1sc__variable.html#afb2282744a7b5e2cc95ee72e28d6b11e":[5,0,7,46,4], +"structscc_1_1sc__variable.html#afdc77cd576a25c44a453bb19743ae119":[5,0,7,46,20], +"structscc_1_1sc__variable_1_1creator.html":[5,0,7,46,0], +"structscc_1_1sc__variable_1_1creator.html#a67399a69fb1fa8586652a9aeab07bca7":[5,0,7,46,0,0], +"structscc_1_1sc__variable_1_1creator.html#ab4c2e97b7d63145d46524ec5327e66c3":[5,0,7,46,0,1], +"structscc_1_1sc__variable_3_01bool_01_4.html":[5,0,7,47], +"structscc_1_1sc__variable_3_01bool_01_4.html#a02d9f81c31f1d14e276af2044fec3f60":[5,0,7,47,11], +"structscc_1_1sc__variable_3_01bool_01_4.html#a2624573725c99db8db44a01ca0efa16f":[5,0,7,47,10], +"structscc_1_1sc__variable_3_01bool_01_4.html#a67b42ec74bed29572a22516e2563d5ae":[5,0,7,47,2], +"structscc_1_1sc__variable_3_01bool_01_4.html#a8278607ae8015ddba08428f040781c5f":[5,0,7,47,1], +"structscc_1_1sc__variable_3_01bool_01_4.html#a9e43d73cd5bb6de65fd6e671e0a9ec2a":[5,0,7,47,8], +"structscc_1_1sc__variable_3_01bool_01_4.html#ac309d7eb6cd3e15aa510c53e33fb9022":[5,0,7,47,9], +"structscc_1_1sc__variable_3_01bool_01_4.html#ad2508578a5aa80c460f61aac45deab80":[5,0,7,47,7], +"structscc_1_1sc__variable_3_01bool_01_4.html#ae6c3f62e60d8ad9cedb1c87b5db63f5a":[5,0,7,47,3], +"structscc_1_1sc__variable_3_01bool_01_4.html#aeb8b244c4afb55aaa6f8b8470fb1f3b5":[5,0,7,47,5], +"structscc_1_1sc__variable_3_01bool_01_4.html#aee412d565f1b581f7f09ec7af63bb89d":[5,0,7,47,6], +"structscc_1_1sc__variable_3_01bool_01_4.html#affdfe880bb66131365673ab219f22c1f":[5,0,7,47,4], +"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html":[5,0,7,47,0], +"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html#a379571d071be67d46390e7e8290b1821":[5,0,7,47,0,1], +"structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html#a8e27b513a3e00d43c7407407511d9f32":[5,0,7,47,0,0], +"structscc_1_1sc__variable__b.html":[5,0,7,45], +"structscc_1_1sc__variable__b.html#a54e81286d38766d3296fbfdd45a93602":[5,0,7,45,1], +"structscc_1_1sc__variable__b.html#a8b5275ae000e6e7a2d7dcfab6b9b7faf":[5,0,7,45,2], +"structscc_1_1sc__variable__b.html#ad33499a234cd42b573a776c54b90c5b5":[5,0,7,45,3], +"structscc_1_1sc__variable__b.html#adc9d31cb6aa7ca639164fae59948b2df":[5,0,7,45,0], +"structscc_1_1sc__variable__vector.html":[5,0,7,48], +"structscc_1_1sc__variable__vector.html#a019c666c70992c7bbe1890e09aac8e5e":[5,0,7,48,4], +"structscc_1_1sc__variable__vector.html#a12a7ccd81422701dc04c73922fcdcdfa":[5,0,7,48,0], +"structscc_1_1sc__variable__vector.html#a13a91b630fcd9f1b06805c5155985f94":[5,0,7,48,2], +"structscc_1_1sc__variable__vector.html#a27e5e9b22c5b4e38cd095a089888926c":[5,0,7,48,5], +"structscc_1_1sc__variable__vector.html#a95cea7c1bebf652b5091859f72adde6d":[5,0,7,48,3], +"structscc_1_1sc__variable__vector.html#a98fa3a2c3cc2899304e1db8a368ac923":[5,0,7,48,1], +"structscc_1_1sc__variable__vector.html#ab36019c7b65c34938ca1b1b31c544fbe":[5,0,7,48,7], +"structscc_1_1sc__variable__vector.html#acfe896e2605a9248bc691f8bd3991837":[5,0,7,48,9], +"structscc_1_1sc__variable__vector.html#af1b8437f70c55ca439c878cbe0355f29":[5,0,7,48,6], +"structscc_1_1sc__variable__vector.html#af39c6a50f92a86a68d90345a75688924":[5,0,7,48,8], "structscc_1_1target__memory__map__entry.html":[5,0,7,14], "structscc_1_1target__memory__map__entry.html#a2331101d4acf2dfdc6c08b33306891ce":[5,0,7,14,2], "structscc_1_1target__memory__map__entry.html#a49fbd4fc29dbd2a0d4b85247c6fa7d24":[5,0,7,14,1], @@ -156,16 +128,16 @@ var NAVTREEINDEX17 = "structscc_1_1target__name__map__entry.html#a10aaab7b7af33dfc16a59c38fdd4b587":[5,0,7,15,2], "structscc_1_1target__name__map__entry.html#a62f5dc78062fbb8cb7fcd54adb6cebf8":[5,0,7,15,1], "structscc_1_1target__name__map__entry.html#aad199e60207745148d4fb835daade9a9":[5,0,7,15,0], -"structscc_1_1tick2time.html":[5,0,7,66], -"structscc_1_1tick2time.html#a272711f89d950ee2d7f629ae2bad86d6":[5,0,7,66,0], -"structscc_1_1tick2time.html#a2c71845bb90ffdb89a8a6b65b294a0be":[5,0,7,66,3], -"structscc_1_1tick2time.html#a2febdf8a09b985c807746f04805a7a03":[5,0,7,66,2], -"structscc_1_1tick2time.html#a4f9065ec84069ab853959c7e0cf8d89d":[5,0,7,66,1], -"structscc_1_1time2tick.html":[5,0,7,67], -"structscc_1_1time2tick.html#a037123c4af2cb8c8dfba81f2c346b19f":[5,0,7,67,0], -"structscc_1_1time2tick.html#a1fdc0c60627c01b8423b19b4c1be7aae":[5,0,7,67,3], -"structscc_1_1time2tick.html#a3a79e201186fb5d6fe9f55195c19ad94":[5,0,7,67,1], -"structscc_1_1time2tick.html#a41dae016560dfe25a5f578c585eae0ba":[5,0,7,67,2], +"structscc_1_1tick2time.html":[5,0,7,59], +"structscc_1_1tick2time.html#a272711f89d950ee2d7f629ae2bad86d6":[5,0,7,59,0], +"structscc_1_1tick2time.html#a2c71845bb90ffdb89a8a6b65b294a0be":[5,0,7,59,3], +"structscc_1_1tick2time.html#a2febdf8a09b985c807746f04805a7a03":[5,0,7,59,2], +"structscc_1_1tick2time.html#a4f9065ec84069ab853959c7e0cf8d89d":[5,0,7,59,1], +"structscc_1_1time2tick.html":[5,0,7,60], +"structscc_1_1time2tick.html#a037123c4af2cb8c8dfba81f2c346b19f":[5,0,7,60,0], +"structscc_1_1time2tick.html#a1fdc0c60627c01b8423b19b4c1be7aae":[5,0,7,60,3], +"structscc_1_1time2tick.html#a3a79e201186fb5d6fe9f55195c19ad94":[5,0,7,60,1], +"structscc_1_1time2tick.html#a41dae016560dfe25a5f578c585eae0ba":[5,0,7,60,2], "structscc_1_1tlm__target__bfs__params.html":[5,0,7,17], "structscc_1_1tlm__target__bfs__params.html#a27f45afd3f297b197de1ece7ff912477":[5,0,7,17,2], "structscc_1_1tlm__target__bfs__params.html#a361a6e8e3ce15ce02baf28dd3be08141":[5,0,7,17,5], @@ -249,5 +221,33 @@ var NAVTREEINDEX17 = "structscc_1_1trace_1_1vcd__trace.html#a28b23e3c590f27f9ef1ffd784a668582":[5,0,7,2,6,7], "structscc_1_1trace_1_1vcd__trace.html#a4208671679812507ddb24a368911c9e0":[5,0,7,2,6,3], "structscc_1_1trace_1_1vcd__trace.html#a44e232e8a8907cbcf28af01050ae37be":[5,0,7,2,6,9], -"structscc_1_1trace_1_1vcd__trace.html#a5fb7589a2c4672dff71951caaa8e9e6d":[5,0,7,2,6,4] +"structscc_1_1trace_1_1vcd__trace.html#a5fb7589a2c4672dff71951caaa8e9e6d":[5,0,7,2,6,4], +"structscc_1_1trace_1_1vcd__trace.html#a60d95d7118d5510aa84923131b2a88ce":[5,0,7,2,6,1], +"structscc_1_1trace_1_1vcd__trace.html#a9b5265e185d302f4240f3683efdd649b":[5,0,7,2,6,6], +"structscc_1_1trace_1_1vcd__trace.html#aa1c90c663124ef2d6f6d4b1b60fe237e":[5,0,7,2,6,5], +"structscc_1_1trace_1_1vcd__trace.html#aad80bda1e2f83724a88a301d890fa777":[5,0,7,2,6,10], +"structscc_1_1trace_1_1vcd__trace.html#afadb6d04df5e8f9e5ad88871db00c70e":[5,0,7,2,6,8], +"structscc_1_1value__registry__if.html":[5,0,7,73], +"structscc_1_1value__registry__if.html#a1a561b616382baa1fdb6841c33147ff5":[5,0,7,73,1], +"structscc_1_1value__registry__if.html#a98033891fd9a162e200437cbdd199a9f":[5,0,7,73,3], +"structscc_1_1value__registry__if.html#aed39bb4b41786ea57f18a3bc0c4707b3":[5,0,7,73,2], +"structscc_1_1value__registry__if_1_1value__holder.html":[5,0,7,73,0], +"structscc_1_1value__registry__if_1_1value__holder.html#a0348a70cbe63ce38af52edf6ea5ffb2b":[5,0,7,73,0,0], +"structscc_1_1value__registry__if_1_1value__holder.html#a3ab2c559a9b6797381e671e7e440f250":[5,0,7,73,0,1], +"structscc_1_1value__registry__if_1_1value__holder.html#a91e786e0d28d5c74017a75efa25b74ae":[5,0,7,73,0,2], +"structscc_1_1vcd__mt__trace__file.html":[5,0,7,75], +"structscc_1_1vcd__mt__trace__file.html#a04b3f1c138820cfd0bd8f00406b430b0":[5,0,7,75,5], +"structscc_1_1vcd__mt__trace__file.html#a1148d6ae5cbfda0107ee1858c5b3c361":[5,0,7,75,4], +"structscc_1_1vcd__mt__trace__file.html#a5889b4dae021121a4df3f515e945d331":[5,0,7,75,1], +"structscc_1_1vcd__mt__trace__file.html#a8092caddfbb255cf2deacb9eeaa316d9":[5,0,7,75,3], +"structscc_1_1vcd__mt__trace__file.html#abb0edbff62d2ee301de2c7ab02360703":[5,0,7,75,2], +"structscc_1_1vcd__mt__trace__file.html#ae22bee35d5861a8e9857d6e2aa89141e":[5,0,7,75,0], +"structscc_1_1vcd__pull__trace__file.html":[5,0,7,76], +"structscc_1_1vcd__pull__trace__file.html#a42c10913a04fe3dd5ede22ba93c8d715":[5,0,7,76,2], +"structscc_1_1vcd__pull__trace__file.html#a5c3ecc87255abff884ac309a59393927":[5,0,7,76,4], +"structscc_1_1vcd__pull__trace__file.html#a631f01d857add9e296f5d5a8dbe2d663":[5,0,7,76,5], +"structscc_1_1vcd__pull__trace__file.html#ab0ec3f04210b489dbf56a962a1981778":[5,0,7,76,3], +"structscc_1_1vcd__pull__trace__file.html#adb59c9f01ee3fcf4eddcf7d68f788ce4":[5,0,7,76,0], +"structscc_1_1vcd__pull__trace__file.html#af572c0bb8eed17bfe6be74850869be20":[5,0,7,76,1], +"structscc_1_1vcd__push__trace__file.html":[5,0,7,77] }; diff --git a/develop/navtreeindex18.js b/develop/navtreeindex18.js index 0f12b322..4df26c5b 100644 --- a/develop/navtreeindex18.js +++ b/develop/navtreeindex18.js @@ -1,39 +1,11 @@ var NAVTREEINDEX18 = { -"structscc_1_1trace_1_1vcd__trace.html#a60d95d7118d5510aa84923131b2a88ce":[5,0,7,2,6,1], -"structscc_1_1trace_1_1vcd__trace.html#a9b5265e185d302f4240f3683efdd649b":[5,0,7,2,6,6], -"structscc_1_1trace_1_1vcd__trace.html#aa1c90c663124ef2d6f6d4b1b60fe237e":[5,0,7,2,6,5], -"structscc_1_1trace_1_1vcd__trace.html#aad80bda1e2f83724a88a301d890fa777":[5,0,7,2,6,10], -"structscc_1_1trace_1_1vcd__trace.html#afadb6d04df5e8f9e5ad88871db00c70e":[5,0,7,2,6,8], -"structscc_1_1value__registry__if.html":[5,0,7,80], -"structscc_1_1value__registry__if.html#a1a561b616382baa1fdb6841c33147ff5":[5,0,7,80,1], -"structscc_1_1value__registry__if.html#a98033891fd9a162e200437cbdd199a9f":[5,0,7,80,3], -"structscc_1_1value__registry__if.html#aed39bb4b41786ea57f18a3bc0c4707b3":[5,0,7,80,2], -"structscc_1_1value__registry__if_1_1value__holder.html":[5,0,7,80,0], -"structscc_1_1value__registry__if_1_1value__holder.html#a0348a70cbe63ce38af52edf6ea5ffb2b":[5,0,7,80,0,0], -"structscc_1_1value__registry__if_1_1value__holder.html#a3ab2c559a9b6797381e671e7e440f250":[5,0,7,80,0,1], -"structscc_1_1value__registry__if_1_1value__holder.html#a91e786e0d28d5c74017a75efa25b74ae":[5,0,7,80,0,2], -"structscc_1_1vcd__mt__trace__file.html":[5,0,7,82], -"structscc_1_1vcd__mt__trace__file.html#a04b3f1c138820cfd0bd8f00406b430b0":[5,0,7,82,5], -"structscc_1_1vcd__mt__trace__file.html#a1148d6ae5cbfda0107ee1858c5b3c361":[5,0,7,82,4], -"structscc_1_1vcd__mt__trace__file.html#a5889b4dae021121a4df3f515e945d331":[5,0,7,82,1], -"structscc_1_1vcd__mt__trace__file.html#a8092caddfbb255cf2deacb9eeaa316d9":[5,0,7,82,3], -"structscc_1_1vcd__mt__trace__file.html#abb0edbff62d2ee301de2c7ab02360703":[5,0,7,82,2], -"structscc_1_1vcd__mt__trace__file.html#ae22bee35d5861a8e9857d6e2aa89141e":[5,0,7,82,0], -"structscc_1_1vcd__pull__trace__file.html":[5,0,7,83], -"structscc_1_1vcd__pull__trace__file.html#a42c10913a04fe3dd5ede22ba93c8d715":[5,0,7,83,2], -"structscc_1_1vcd__pull__trace__file.html#a5c3ecc87255abff884ac309a59393927":[5,0,7,83,4], -"structscc_1_1vcd__pull__trace__file.html#a631f01d857add9e296f5d5a8dbe2d663":[5,0,7,83,5], -"structscc_1_1vcd__pull__trace__file.html#ab0ec3f04210b489dbf56a962a1981778":[5,0,7,83,3], -"structscc_1_1vcd__pull__trace__file.html#adb59c9f01ee3fcf4eddcf7d68f788ce4":[5,0,7,83,0], -"structscc_1_1vcd__pull__trace__file.html#af572c0bb8eed17bfe6be74850869be20":[5,0,7,83,1], -"structscc_1_1vcd__push__trace__file.html":[5,0,7,84], -"structscc_1_1vcd__push__trace__file.html#a35669d395badbefd0f09cd5fc73f3a49":[5,0,7,84,5], -"structscc_1_1vcd__push__trace__file.html#a54bbf59882d4f2eaa0693717937eabf3":[5,0,7,84,3], -"structscc_1_1vcd__push__trace__file.html#a603e5adae4990e0b2f98dd5a4ebbca2c":[5,0,7,84,0], -"structscc_1_1vcd__push__trace__file.html#a6c55f72349855b0b14ecb04d284a4cab":[5,0,7,84,1], -"structscc_1_1vcd__push__trace__file.html#ac3a010dc1f45a4d6311ca7f870912daa":[5,0,7,84,2], -"structscc_1_1vcd__push__trace__file.html#acd55d9ddf5e8263523b76707662c0d58":[5,0,7,84,4], +"structscc_1_1vcd__push__trace__file.html#a35669d395badbefd0f09cd5fc73f3a49":[5,0,7,77,5], +"structscc_1_1vcd__push__trace__file.html#a54bbf59882d4f2eaa0693717937eabf3":[5,0,7,77,3], +"structscc_1_1vcd__push__trace__file.html#a603e5adae4990e0b2f98dd5a4ebbca2c":[5,0,7,77,0], +"structscc_1_1vcd__push__trace__file.html#a6c55f72349855b0b14ecb04d284a4cab":[5,0,7,77,1], +"structscc_1_1vcd__push__trace__file.html#ac3a010dc1f45a4d6311ca7f870912daa":[5,0,7,77,2], +"structscc_1_1vcd__push__trace__file.html#acd55d9ddf5e8263523b76707662c0d58":[5,0,7,77,4], "structscv__tr_1_1AttrDesc.html":[5,0,9,0], "structscv__tr_1_1AttrDesc.html#a20b2534dbcc454b298993510f6208448":[5,0,9,0,2], "structscv__tr_1_1AttrDesc.html#a347b2676bdde87af0700d6a2da4d0304":[5,0,9,0,1], @@ -249,5 +221,33 @@ var NAVTREEINDEX18 = "structutil_1_1thread__pool.html#a2d553acc3cd3e71ee079b538075a3436":[5,0,12,12,4], "structutil_1_1thread__pool.html#a317f0d2087be84324a80530e93bfd40a":[5,0,12,12,5], "structutil_1_1thread__pool.html#a408592386e776b91c94fde4f562e3281":[5,0,12,12,6], -"structutil_1_1thread__pool.html#a4731e0bafb789c57c4b54205f6623da3":[5,0,12,12,2] +"structutil_1_1thread__pool.html#a4731e0bafb789c57c4b54205f6623da3":[5,0,12,12,2], +"structutil_1_1thread__pool.html#a4b912eec56828575120d304c93eb6149":[5,0,12,12,3], +"structutil_1_1thread__pool.html#a4d1621ec15cf48879a3b9e9858e4b5e1":[5,0,12,12,0], +"structutil_1_1thread__pool.html#a65cd70203e0059f4ab5da47eba3ffddc":[5,0,12,12,9], +"structutil_1_1thread__pool.html#a841dc69f32dc47ea4527df9ee5bf835a":[5,0,12,12,8], +"structutil_1_1thread__pool.html#aecced95fda013d75fa26bf85e3abe2cd":[5,0,12,12,1], +"sysc_2scc_2mt19937__rng_8h_source.html":[6,0,0,3,0,18], +"tagged__initiator__mixin_8h_source.html":[6,0,0,3,2,0,6], +"tagged__target__mixin_8h_source.html":[6,0,0,3,2,0,7], +"target_8cpp_source.html":[6,0,0,0,0,1,2], +"target__info__if_8h_source.html":[6,0,1,0,0,3,14], +"target__mixin_8h_source.html":[6,0,0,3,2,0,8], +"third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html":[6,0,1,0,0,3,2], +"third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html":[6,0,1,0,0,3,3], +"thread__pool_8h_source.html":[6,0,0,1,0,14], +"thread__syncronizer_8h_source.html":[6,0,0,1,0,15], +"tick2time_8h_source.html":[6,0,0,3,0,38], +"time2tick_8h_source.html":[6,0,0,3,0,39], +"time__n__tick_8cpp_source.html":[6,0,0,3,0,40], +"tlm2__lwtr_8cpp.html#a3a706d071a640e87cce3ab7cc525cdd4":[4,0,5,13], +"tlm2__lwtr_8cpp_source.html":[6,0,0,3,2,0,0,2], +"tlm2__lwtr_8h_source.html":[6,0,0,3,2,0,0,3], +"tlm2__pv__av_8h_source.html":[6,0,0,3,2,0,9], +"tlm__extension__recording__registry_8h_source.html":[6,0,0,3,2,0,2,0], +"tlm__extensions_8h_source.html":[6,0,0,3,2,0,10], +"tlm__gp__data_8h_source.html":[6,0,0,3,2,0,2,1], +"tlm__gp__data__ext_8h_source.html":[6,0,0,3,2,0,2,2], +"tlm__gp__shared_8h_source.html":[6,0,0,3,2,0,11], +"tlm__id_8h_source.html":[6,0,0,3,2,0,12] }; diff --git a/develop/navtreeindex19.js b/develop/navtreeindex19.js index 1f5e5265..571d0adb 100644 --- a/develop/navtreeindex19.js +++ b/develop/navtreeindex19.js @@ -1,33 +1,5 @@ var NAVTREEINDEX19 = { -"structutil_1_1thread__pool.html#a4b912eec56828575120d304c93eb6149":[5,0,12,12,3], -"structutil_1_1thread__pool.html#a4d1621ec15cf48879a3b9e9858e4b5e1":[5,0,12,12,0], -"structutil_1_1thread__pool.html#a65cd70203e0059f4ab5da47eba3ffddc":[5,0,12,12,9], -"structutil_1_1thread__pool.html#a841dc69f32dc47ea4527df9ee5bf835a":[5,0,12,12,8], -"structutil_1_1thread__pool.html#aecced95fda013d75fa26bf85e3abe2cd":[5,0,12,12,1], -"sysc_2scc_2mt19937__rng_8h_source.html":[6,0,0,3,0,17], -"tagged__initiator__mixin_8h_source.html":[6,0,0,3,2,0,6], -"tagged__target__mixin_8h_source.html":[6,0,0,3,2,0,7], -"target_8cpp_source.html":[6,0,0,0,0,1,2], -"target__info__if_8h_source.html":[6,0,1,0,0,3,14], -"target__mixin_8h_source.html":[6,0,0,3,2,0,8], -"third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html":[6,0,1,0,0,3,2], -"third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html":[6,0,1,0,0,3,3], -"thread__pool_8h_source.html":[6,0,0,1,0,14], -"thread__syncronizer_8h_source.html":[6,0,0,1,0,15], -"tick2time_8h_source.html":[6,0,0,3,0,37], -"time2tick_8h_source.html":[6,0,0,3,0,38], -"time__n__tick_8cpp_source.html":[6,0,0,3,0,39], -"tlm2__lwtr_8cpp.html#a3a706d071a640e87cce3ab7cc525cdd4":[4,0,5,13], -"tlm2__lwtr_8cpp_source.html":[6,0,0,3,2,0,0,2], -"tlm2__lwtr_8h_source.html":[6,0,0,3,2,0,0,3], -"tlm2__pv__av_8h_source.html":[6,0,0,3,2,0,9], -"tlm__extension__recording__registry_8h_source.html":[6,0,0,3,2,0,2,0], -"tlm__extensions_8h_source.html":[6,0,0,3,2,0,10], -"tlm__gp__data_8h_source.html":[6,0,0,3,2,0,2,1], -"tlm__gp__data__ext_8h_source.html":[6,0,0,3,2,0,2,2], -"tlm__gp__shared_8h_source.html":[6,0,0,3,2,0,11], -"tlm__id_8h_source.html":[6,0,0,3,2,0,12], "tlm__mm_8h_source.html":[6,0,0,3,2,0,13], "tlm__rec__initiator__socket_8h_source.html":[6,0,0,3,2,0,2,3], "tlm__rec__target__socket_8h_source.html":[6,0,0,3,2,0,2,4], @@ -43,12 +15,12 @@ var NAVTREEINDEX19 = "tlm__target__bfs_8h_source.html":[6,0,0,2,0,7], "tlm__target__bfs__register__base_8h_source.html":[6,0,0,2,0,8], "todo.html":[1], -"trace_8h_source.html":[6,0,0,3,0,40], -"traceable_8h_source.html":[6,0,0,3,0,41], -"tracer_8cpp_source.html":[6,0,0,3,0,42], -"tracer_8h_source.html":[6,0,0,3,0,43], -"tracer__base_8cpp_source.html":[6,0,0,3,0,44], -"tracer__base_8h_source.html":[6,0,0,3,0,45], +"trace_8h_source.html":[6,0,0,3,0,41], +"traceable_8h_source.html":[6,0,0,3,0,42], +"tracer_8cpp_source.html":[6,0,0,3,0,43], +"tracer_8h_source.html":[6,0,0,3,0,44], +"tracer__base_8cpp_source.html":[6,0,0,3,0,45], +"tracer__base_8h_source.html":[6,0,0,3,0,46], "types_8h.html#a7671b0a44f285d033955b05fc5e9a75f":[4,0,2,1,25], "types_8h.html#a7671b0a44f285d033955b05fc5e9a75fa101f3a0a9f47b5a0302bd984d57d76f3":[4,0,2,1,25,11], "types_8h.html#a7671b0a44f285d033955b05fc5e9a75fa26e8ba38a2fda6fa9fb10c784c901946":[4,0,2,1,25,1], @@ -71,19 +43,37 @@ var NAVTREEINDEX19 = "utilities_8cpp.html#a69c07dead8767448f00c4148262274b6":[4,0,7,6], "utilities_8cpp.html#aad8fa6b42d5414c0f1aa0a999676e460":[4,0,7,7], "utilities_8cpp.html#abb61a02929219e2c99cd7da2c10b2884":[4,0,7,5], -"utilities_8cpp_source.html":[6,0,0,3,0,46], +"utilities_8cpp_source.html":[6,0,0,3,0,47], "utilities_8h.html#a1cf63b86021de8361485dbdadac3cfe2":[4,0,7,0], -"utilities_8h_source.html":[6,0,0,3,0,47], -"value__registry_8cpp_source.html":[6,0,0,3,0,48], -"value__registry_8h_source.html":[6,0,0,3,0,49], -"vcd__mt__trace_8cpp_source.html":[6,0,0,3,0,50], -"vcd__mt__trace_8hh_source.html":[6,0,0,3,0,51], -"vcd__pull__trace_8cpp_source.html":[6,0,0,3,0,52], -"vcd__pull__trace_8hh_source.html":[6,0,0,3,0,53], -"vcd__push__trace_8cpp_source.html":[6,0,0,3,0,54], -"vcd__push__trace_8hh_source.html":[6,0,0,3,0,55], +"utilities_8h_source.html":[6,0,0,3,0,48], +"value__registry_8cpp_source.html":[6,0,0,3,0,49], +"value__registry_8h_source.html":[6,0,0,3,0,50], +"vcd__mt__trace_8cpp_source.html":[6,0,0,3,0,51], +"vcd__mt__trace_8hh_source.html":[6,0,0,3,0,52], +"vcd__pull__trace_8cpp_source.html":[6,0,0,3,0,53], +"vcd__pull__trace_8hh_source.html":[6,0,0,3,0,54], +"vcd__push__trace_8cpp_source.html":[6,0,0,3,0,55], +"vcd__push__trace_8hh_source.html":[6,0,0,3,0,56], "vcd__trace_8hh_source.html":[6,0,0,3,0,1,2], -"verilator__callbacks_8cpp_source.html":[6,0,0,3,0,56], +"verilator__callbacks_8cpp_source.html":[6,0,0,3,0,57], "watchdog_8cpp_source.html":[6,0,0,1,0,16], -"watchdog_8h_source.html":[6,0,0,1,0,17] +"watchdog_8h_source.html":[6,0,0,1,0,17], +"":[4,0,7], +"":[4,0,3,1], +"":[4,0,3,2], +"":[4,0,9], +"":[4,0,12,0,2,0], +"":[4,0,2,1], +"":[4,0,2,0], +"":[4,0,9,0], +"":[4,0,3,2,0], +"":[4,0,6,0], +"":[4,0,2,5,0], +"":[4,0,2,2], +"":[4,0,11], +"":[4,0,8,1], +"":[4,0,3,0], +"":[4,0,5], +"":[4,0,2,5], +"":[4,0,8,0] }; diff --git a/develop/navtreeindex2.js b/develop/navtreeindex2.js index 1d2e052e..52b5d288 100644 --- a/develop/navtreeindex2.js +++ b/develop/navtreeindex2.js @@ -1,27 +1,15 @@ var NAVTREEINDEX2 = { -"classaxi_1_1pe_1_1axi__initiator__b.html#a6aba53099cdc5a0bf0fbf588609ab865":[5,0,2,3,1,2], -"classaxi_1_1pe_1_1axi__initiator__b.html#a6d264fa28e82d273eb0eae38f7643f72":[5,0,2,3,1,21], -"classaxi_1_1pe_1_1axi__initiator__b.html#a75e4bddddd3ffc0100122852ff06e414":[5,0,2,3,1,28], -"classaxi_1_1pe_1_1axi__initiator__b.html#a7a4090c4604c13e26f23f934c45e44a7":[5,0,2,3,1,29], -"classaxi_1_1pe_1_1axi__initiator__b.html#a7b8ed9b5ef52044681a930cebb54b1a1":[5,0,2,3,1,34], -"classaxi_1_1pe_1_1axi__initiator__b.html#a7e963715f95c3255d10be3b201b81118":[5,0,2,3,1,7], -"classaxi_1_1pe_1_1axi__initiator__b.html#a8b250f9af3b1fec47b2be0fb1a57facc":[5,0,2,3,1,39], -"classaxi_1_1pe_1_1axi__initiator__b.html#a8c368e705a7de51622e7295c78ea22aa":[5,0,2,3,1,23], -"classaxi_1_1pe_1_1axi__initiator__b.html#a8d4169896352000928bcf92ada442dc0":[5,0,2,3,1,5], -"classaxi_1_1pe_1_1axi__initiator__b.html#a900600b22eaa72eca6f50bcc74445344":[5,0,2,3,1,26], -"classaxi_1_1pe_1_1axi__initiator__b.html#a96564f8e5612a96d70e5a85b625d93d4":[5,0,2,3,1,36], -"classaxi_1_1pe_1_1axi__initiator__b.html#a9c09c4070d9685de0dafadc4b778c340":[5,0,2,3,1,15], -"classaxi_1_1pe_1_1axi__initiator__b.html#a9f063800aadb28cd7338ff63037119b2":[5,0,2,3,1,42], -"classaxi_1_1pe_1_1axi__initiator__b.html#aac3d07e27bafee5cd9d1b0a127ac9e91":[5,0,2,3,1,24], -"classaxi_1_1pe_1_1axi__initiator__b.html#abf459136e26f56117ba680501e5c2e26":[5,0,2,3,1,41], -"classaxi_1_1pe_1_1axi__initiator__b.html#ac469a8a1013930bc3fd6fed14478a4f7":[5,0,2,3,1,18], "classaxi_1_1pe_1_1axi__initiator__b.html#ac8553d7b47ddceb68ab773521a6e284c":[5,0,2,3,1,17], -"classaxi_1_1pe_1_1axi__initiator__b.html#acd0925591c396866d94763febf0ca51d":[5,0,2,3,1,32], +"classaxi_1_1pe_1_1axi__initiator__b.html#ad0044e9da5769782ec7412d7cb4ddf69":[5,0,2,3,1,21], +"classaxi_1_1pe_1_1axi__initiator__b.html#ad34dbc64f4e93f4d013085824d0c1c22":[5,0,2,3,1,28], "classaxi_1_1pe_1_1axi__initiator__b.html#ad9f74c67c5e154fbcd1edebe627f978d":[5,0,2,3,1,4], -"classaxi_1_1pe_1_1axi__initiator__b.html#adf054f86f9707a656f06b5af5476ef12":[5,0,2,3,1,37], +"classaxi_1_1pe_1_1axi__initiator__b.html#adf054f86f9707a656f06b5af5476ef12":[5,0,2,3,1,39], +"classaxi_1_1pe_1_1axi__initiator__b.html#ae41a4189207c24366242961d3bb915dc":[5,0,2,3,1,46], "classaxi_1_1pe_1_1axi__initiator__b.html#ae4d7728e369299a6e3a8f2660aa8377e":[5,0,2,3,1,19], -"classaxi_1_1pe_1_1axi__initiator__b.html#af01a5db043ec2649e8d1720cc4fb537f":[5,0,2,3,1,43], +"classaxi_1_1pe_1_1axi__initiator__b.html#ae55775e1bd889fbf0762624d3022f00b":[5,0,2,3,1,47], +"classaxi_1_1pe_1_1axi__initiator__b.html#aee0a965a88a902339d2507876191c4b8":[5,0,2,3,1,36], +"classaxi_1_1pe_1_1axi__initiator__b.html#af01a5db043ec2649e8d1720cc4fb537f":[5,0,2,3,1,45], "classaxi_1_1pe_1_1axi__initiator__b.html#af2a53a4e7dbb6c6c5c5518f3e23e7514":[5,0,2,3,1,6], "classaxi_1_1pe_1_1axi__target__pe.html":[5,0,2,3,5], "classaxi_1_1pe_1_1axi__target__pe.html#a0252b575c056deb81f209083c58e8e35":[5,0,2,3,5,49], @@ -249,5 +237,17 @@ var NAVTREEINDEX2 = "classaxi_1_1pe_1_1target__info__if.html":[5,0,2,3,15], "classaxi_1_1pe_1_1target__info__if.html#a1ccb7acff97230b07b1e9efca056176a":[5,0,2,3,15,1], "classaxi_1_1pe_1_1target__info__if.html#aaaf50a3ff1ded66912de03102a103d85":[5,0,2,3,15,0], -"classaxi_1_1pe_1_1tx__reorderer.html":[5,0,2,3,8] +"classaxi_1_1pe_1_1tx__reorderer.html":[5,0,2,3,8], +"classaxi_1_1pe_1_1tx__reorderer.html#a089f7096bcf7a4fb137383a5e52af6fe":[5,0,2,3,8,3], +"classaxi_1_1pe_1_1tx__reorderer.html#a08e6706028b47397ea707172926eed6e":[5,0,2,3,8,13], +"classaxi_1_1pe_1_1tx__reorderer.html#a1c94763898d3fdfa338b5d6263503e8a":[5,0,2,3,8,2], +"classaxi_1_1pe_1_1tx__reorderer.html#a35041a8f793102c532bc5c507e4dc405":[5,0,2,3,8,4], +"classaxi_1_1pe_1_1tx__reorderer.html#a53975d63f2136a1340e8d1029ad34e52":[5,0,2,3,8,9], +"classaxi_1_1pe_1_1tx__reorderer.html#a53f5685093ebd5e74efc4c3a63d1cf46":[5,0,2,3,8,11], +"classaxi_1_1pe_1_1tx__reorderer.html#a5617b49c320ec24fe2b7c106071d0842":[5,0,2,3,8,1], +"classaxi_1_1pe_1_1tx__reorderer.html#a5ccfba1f1c3ec3ca495e6907e2d97259":[5,0,2,3,8,12], +"classaxi_1_1pe_1_1tx__reorderer.html#a600473a570ef05ba0b9b94eafc508822":[5,0,2,3,8,10], +"classaxi_1_1pe_1_1tx__reorderer.html#a773039e0990d8cb87486c3788eca8fd4":[5,0,2,3,8,5], +"classaxi_1_1pe_1_1tx__reorderer.html#aa14ebf5354f2ef9a9cd5908d5d9d5adb":[5,0,2,3,8,8], +"classaxi_1_1pe_1_1tx__reorderer.html#ac33a9e5d398ef759c34d6e79e5fa0402":[5,0,2,3,8,6] }; diff --git a/develop/navtreeindex3.js b/develop/navtreeindex3.js index 82423d63..a7109672 100644 --- a/develop/navtreeindex3.js +++ b/develop/navtreeindex3.js @@ -1,17 +1,5 @@ var NAVTREEINDEX3 = { -"classaxi_1_1pe_1_1tx__reorderer.html#a089f7096bcf7a4fb137383a5e52af6fe":[5,0,2,3,8,3], -"classaxi_1_1pe_1_1tx__reorderer.html#a08e6706028b47397ea707172926eed6e":[5,0,2,3,8,13], -"classaxi_1_1pe_1_1tx__reorderer.html#a1c94763898d3fdfa338b5d6263503e8a":[5,0,2,3,8,2], -"classaxi_1_1pe_1_1tx__reorderer.html#a35041a8f793102c532bc5c507e4dc405":[5,0,2,3,8,4], -"classaxi_1_1pe_1_1tx__reorderer.html#a53975d63f2136a1340e8d1029ad34e52":[5,0,2,3,8,9], -"classaxi_1_1pe_1_1tx__reorderer.html#a53f5685093ebd5e74efc4c3a63d1cf46":[5,0,2,3,8,11], -"classaxi_1_1pe_1_1tx__reorderer.html#a5617b49c320ec24fe2b7c106071d0842":[5,0,2,3,8,1], -"classaxi_1_1pe_1_1tx__reorderer.html#a5ccfba1f1c3ec3ca495e6907e2d97259":[5,0,2,3,8,12], -"classaxi_1_1pe_1_1tx__reorderer.html#a600473a570ef05ba0b9b94eafc508822":[5,0,2,3,8,10], -"classaxi_1_1pe_1_1tx__reorderer.html#a773039e0990d8cb87486c3788eca8fd4":[5,0,2,3,8,5], -"classaxi_1_1pe_1_1tx__reorderer.html#aa14ebf5354f2ef9a9cd5908d5d9d5adb":[5,0,2,3,8,8], -"classaxi_1_1pe_1_1tx__reorderer.html#ac33a9e5d398ef759c34d6e79e5fa0402":[5,0,2,3,8,6], "classaxi_1_1pe_1_1tx__reorderer.html#acc07c5f049c45e43615232b3f085de56":[5,0,2,3,8,7], "classaxi_1_1scv_1_1ace__ext__recording.html":[5,0,2,5,6], "classaxi_1_1scv_1_1ace__rec__initiator__socket.html":[5,0,2,5,1], @@ -184,16 +172,15 @@ var NAVTREEINDEX3 = "classchi_1_1pe_1_1chi__rn__initiator.html#a98100610c6be59ba95f0f54bd32de803":[5,0,3,1,1,8], "classchi_1_1pe_1_1chi__rn__initiator.html#ab64e2707c9aa2e65f621825b03e61e46":[5,0,3,1,1,4], "classchi_1_1pe_1_1chi__rn__initiator__b.html":[5,0,3,1,0], +"classchi_1_1pe_1_1chi__rn__initiator__b.html#a002f5c51799a94561e4ea4e5acad407a":[5,0,3,1,0,36], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a046918449ceeb77b78fb3bbf27383922":[5,0,3,1,0,19], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a09ecac16512c8dfc144c979e6296b9c7":[5,0,3,1,0,32], -"classchi_1_1pe_1_1chi__rn__initiator__b.html#a0c5d69dfdc58ef24608ba48b13461c91":[5,0,3,1,0,36], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a1346bae723e1cb2b7655630430c8b6a3":[5,0,3,1,0,40], -"classchi_1_1pe_1_1chi__rn__initiator__b.html#a13c7b85bc26adf31e22355f9d67ae81b":[5,0,3,1,0,34], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a1c93a26312d65df7966d8de8c90666d8":[5,0,3,1,0,6], +"classchi_1_1pe_1_1chi__rn__initiator__b.html#a23e7e3d705db1e3b7eae7c88f626aed7":[5,0,3,1,0,44], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a24411dba4198be5919b01f1b1230916b":[5,0,3,1,0,24], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a26af44831c21fc5d6fe131d077cf6567":[5,0,3,1,0,4], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a38265f0ec5ad5f6f7f67e7d8cc6d03ba":[5,0,3,1,0,42], -"classchi_1_1pe_1_1chi__rn__initiator__b.html#a3ee5d3c1790ae476eb79e9effd7f5f4c":[5,0,3,1,0,44], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a46d530e25ebf555c07c2191233d1bffc":[5,0,3,1,0,16], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a49a058b28b7e8107269d15c943995538":[5,0,3,1,0,41], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a4da3ef7c2a183ae8d513d40ec3166c9a":[5,0,3,1,0,11], @@ -203,8 +190,9 @@ var NAVTREEINDEX3 = "classchi_1_1pe_1_1chi__rn__initiator__b.html#a6a0cf79256269a221b37e2368177cb77":[5,0,3,1,0,9], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a6d241e936adb3fa06adee0a7b416ecd4":[5,0,3,1,0,28], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a6fe6a00ca48011cc1e803330116ee4a4":[5,0,3,1,0,13], -"classchi_1_1pe_1_1chi__rn__initiator__b.html#a713d59ff7d60bf4b631c60ac7e40206f":[5,0,3,1,0,25], +"classchi_1_1pe_1_1chi__rn__initiator__b.html#a732242cf4fe1ec463797d514ea409563":[5,0,3,1,0,25], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a791e09e0ddd8573bce60421258c1df91":[5,0,3,1,0,37], +"classchi_1_1pe_1_1chi__rn__initiator__b.html#a7b3e59d06905c9e4a83f6d34635ef941":[5,0,3,1,0,34], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a7d53f7be49161542aa600dd822b16386":[5,0,3,1,0,43], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a7e4c066edf56efe615e38d3538d87d91":[5,0,3,1,0,27], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a835c470393838fac835c31a9113c1df0":[5,0,3,1,0,30], @@ -217,7 +205,6 @@ var NAVTREEINDEX3 = "classchi_1_1pe_1_1chi__rn__initiator__b.html#a9ba6e25a2d359317acb8e8558d0234f8":[5,0,3,1,0,23], "classchi_1_1pe_1_1chi__rn__initiator__b.html#a9daff32fa40432163b04337e1b7f17a6":[5,0,3,1,0,18], "classchi_1_1pe_1_1chi__rn__initiator__b.html#aa15d6d1134aecb909b0357173bef3a29":[5,0,3,1,0,22], -"classchi_1_1pe_1_1chi__rn__initiator__b.html#aa4f58b7a926f07a0c39d3985696a44ff":[5,0,3,1,0,38], "classchi_1_1pe_1_1chi__rn__initiator__b.html#ab656f8e286c97b5b74533b85c8b41ebf":[5,0,3,1,0,1], "classchi_1_1pe_1_1chi__rn__initiator__b.html#abae3e06b73aab6ff9772d5bdaef3156c":[5,0,3,1,0,2], "classchi_1_1pe_1_1chi__rn__initiator__b.html#abb46def08088f21f7e933adb2ef0da3c":[5,0,3,1,0,3], @@ -225,6 +212,7 @@ var NAVTREEINDEX3 = "classchi_1_1pe_1_1chi__rn__initiator__b.html#ad90883b4c3aafa84b670184b6d71474c":[5,0,3,1,0,8], "classchi_1_1pe_1_1chi__rn__initiator__b.html#adaffdc0e17f51ee8809da77d370606db":[5,0,3,1,0,20], "classchi_1_1pe_1_1chi__rn__initiator__b.html#ae0e51e71baa3c9cdf0a2931fe1f7e8ba":[5,0,3,1,0,21], +"classchi_1_1pe_1_1chi__rn__initiator__b.html#ae60d51cec81d3a5ba42ba5bf4f7a9baa":[5,0,3,1,0,38], "classchi_1_1pe_1_1chi__rn__initiator__b.html#ae6e6a01efbcd16e4b8333813386b35a2":[5,0,3,1,0,39], "classchi_1_1pe_1_1chi__rn__initiator__b.html#aea54106a9dcf3ed7aa1b9e93dcf6de15":[5,0,3,1,0,5], "classchi_1_1pe_1_1chi__rn__initiator__b.html#aed16a8e236a782642e9128543bb06d25":[5,0,3,1,0,14], @@ -249,5 +237,17 @@ var NAVTREEINDEX3 = "classchi_1_1scv_1_1chi__trx__recorder.html#aba95185ae5bdcb0721023a51366f8676":[5,0,3,2,1,6], "classchi_1_1scv_1_1chi__trx__recorder.html#abf4f947e50405d4bc4bb723529d617ed":[5,0,3,2,1,17], "classchi_1_1scv_1_1chi__trx__recorder.html#ac12871a47a6336c7480a8cf843467dbe":[5,0,3,2,1,20], -"classchi_1_1scv_1_1chi__trx__recorder.html#acf22a65120807d83056457f308ff23cf":[5,0,3,2,1,24] +"classchi_1_1scv_1_1chi__trx__recorder.html#acf22a65120807d83056457f308ff23cf":[5,0,3,2,1,24], +"classchi_1_1scv_1_1chi__trx__recorder.html#ad36625a7cded51df300fa849456ddb66":[5,0,3,2,1,14], +"classchi_1_1scv_1_1chi__trx__recorder.html#ae29d25f27938195f25583955d2b42d66":[5,0,3,2,1,15], +"classchi_1_1scv_1_1chi__trx__recorder.html#aea2522156af38eb22ce94e2c94ad32ec":[5,0,3,2,1,0], +"classchi_1_1scv_1_1chi__trx__recorder.html#aeae3f5fc4249d0e218dd49f8a04ff6be":[5,0,3,2,1,5], +"classchi_1_1scv_1_1chi__trx__recorder.html#af1b10f3dbca5ef60d305ae61733b2fbb":[5,0,3,2,1,21], +"classchi_1_1scv_1_1chitlm__recorder__module.html":[5,0,3,2,2], +"classchi_1_1scv_1_1chitlm__recorder__module.html#a675a455f553fcdf5898d5e49c61571ef":[5,0,3,2,2,2], +"classchi_1_1scv_1_1chitlm__recorder__module.html#a7f80e294ce7d1048f0d69e7f2385a21a":[5,0,3,2,2,3], +"classchi_1_1scv_1_1chitlm__recorder__module.html#aa2b9e9a42a59eec89cfd0d82b54dd63d":[5,0,3,2,2,5], +"classchi_1_1scv_1_1chitlm__recorder__module.html#aac42c5708fa227bccac57e54f239cca4":[5,0,3,2,2,4], +"classchi_1_1scv_1_1chitlm__recorder__module.html#ab84c02ce15694c4251950b8cb1b73641":[5,0,3,2,2,1], +"classchi_1_1scv_1_1chitlm__recorder__module.html#ac47c43aa4484d312f1c2d492fd5243e1":[5,0,3,2,2,0] }; diff --git a/develop/navtreeindex4.js b/develop/navtreeindex4.js index d4387f54..34a1ae4c 100644 --- a/develop/navtreeindex4.js +++ b/develop/navtreeindex4.js @@ -1,17 +1,5 @@ var NAVTREEINDEX4 = { -"classchi_1_1scv_1_1chi__trx__recorder.html#ad36625a7cded51df300fa849456ddb66":[5,0,3,2,1,14], -"classchi_1_1scv_1_1chi__trx__recorder.html#ae29d25f27938195f25583955d2b42d66":[5,0,3,2,1,15], -"classchi_1_1scv_1_1chi__trx__recorder.html#aea2522156af38eb22ce94e2c94ad32ec":[5,0,3,2,1,0], -"classchi_1_1scv_1_1chi__trx__recorder.html#aeae3f5fc4249d0e218dd49f8a04ff6be":[5,0,3,2,1,5], -"classchi_1_1scv_1_1chi__trx__recorder.html#af1b10f3dbca5ef60d305ae61733b2fbb":[5,0,3,2,1,21], -"classchi_1_1scv_1_1chitlm__recorder__module.html":[5,0,3,2,2], -"classchi_1_1scv_1_1chitlm__recorder__module.html#a675a455f553fcdf5898d5e49c61571ef":[5,0,3,2,2,2], -"classchi_1_1scv_1_1chitlm__recorder__module.html#a7f80e294ce7d1048f0d69e7f2385a21a":[5,0,3,2,2,3], -"classchi_1_1scv_1_1chitlm__recorder__module.html#aa2b9e9a42a59eec89cfd0d82b54dd63d":[5,0,3,2,2,5], -"classchi_1_1scv_1_1chitlm__recorder__module.html#aac42c5708fa227bccac57e54f239cca4":[5,0,3,2,2,4], -"classchi_1_1scv_1_1chitlm__recorder__module.html#ab84c02ce15694c4251950b8cb1b73641":[5,0,3,2,2,1], -"classchi_1_1scv_1_1chitlm__recorder__module.html#ac47c43aa4484d312f1c2d492fd5243e1":[5,0,3,2,2,0], "classchi_1_1scv_1_1impl_1_1chi__recording__payload.html":[5,0,3,2,0,0], "classchi_1_1scv_1_1impl_1_1chi__recording__payload.html#a15956dd611361cedd82cbee52b9069d3":[5,0,3,2,0,0,5], "classchi_1_1scv_1_1impl_1_1chi__recording__payload.html#a159ecf3aa80ed5dec62130ce0779081a":[5,0,3,2,0,0,2], @@ -60,7 +48,7 @@ var NAVTREEINDEX4 = "classobi_1_1pin_1_1target.html#aed35ca977b6424908af8db6a6a9042a3":[5,0,6,0,0,6], "classobi_1_1pin_1_1target.html#aed37aa8954bf6746ed02dec1bde02a5c":[5,0,6,0,0,12], "classobi_1_1pin_1_1target.html#af7a243e6222038f646901b9eb1dede85":[5,0,6,0,0,8], -"classscc_1_1MT19937.html":[5,0,7,39], +"classscc_1_1MT19937.html":[5,0,7,32], "classscc_1_1abstract__bitfield.html":[5,0,7,20], "classscc_1_1abstract__bitfield.html#a28d343a09d327969455b9ee1c6352e62":[5,0,7,20,9], "classscc_1_1abstract__bitfield.html#a3f6988c8f3099c0158e0db28a1ba31b6":[5,0,7,20,1], @@ -129,51 +117,51 @@ var NAVTREEINDEX4 = "classscc_1_1cci__broker.html#acedcd995d37aae82d54acea4dae71b06":[5,0,7,24,0], "classscc_1_1cci__broker.html#adba28e7c005447fe8278ca3364bb374d":[5,0,7,24,13], "classscc_1_1cci__broker.html#afa25a2584663a88fd59992edf43a3e2b":[5,0,7,24,12], -"classscc_1_1configurable__tracer.html":[5,0,7,33], -"classscc_1_1configurable__tracer.html#a3f5827d5d2ccb06015ba9a9184e66c04":[5,0,7,33,0], -"classscc_1_1configurable__tracer.html#a440f6912cc6cd0fa9179d155de7919a8":[5,0,7,33,1], -"classscc_1_1configurable__tracer.html#a45f944754d21e471049b97addf9e34a2":[5,0,7,33,5], -"classscc_1_1configurable__tracer.html#a57afc5cf98bb143ccb0c4c57976dd987":[5,0,7,33,8], -"classscc_1_1configurable__tracer.html#a57d134e93844c47dc8d1dfd1d99a1879":[5,0,7,33,12], -"classscc_1_1configurable__tracer.html#a6131b6a18cd53fc83df1c411ceab0378":[5,0,7,33,10], -"classscc_1_1configurable__tracer.html#a782862b5f9bdbd04af20008f6ea31e3a":[5,0,7,33,11], -"classscc_1_1configurable__tracer.html#a801c24bdc36f3f4263890716ea698d65":[5,0,7,33,4], -"classscc_1_1configurable__tracer.html#ab425b03f4e39ad0ca3316f5d356effc0":[5,0,7,33,7], -"classscc_1_1configurable__tracer.html#ac7b5301c5f276ffdc414236fa3a0c08b":[5,0,7,33,9], -"classscc_1_1configurable__tracer.html#acd4ab692d0973eefa668643924f861b7":[5,0,7,33,6], -"classscc_1_1configurable__tracer.html#ae343fdfeec94159ecabd8863ce905f68":[5,0,7,33,2], -"classscc_1_1configurable__tracer.html#aec6c804b2b6e68b3851d429cd041ddb7":[5,0,7,33,13], -"classscc_1_1configurable__tracer.html#af0ed7935d28caf845fb675036e2d15b9":[5,0,7,33,3], -"classscc_1_1configurer.html":[5,0,7,34], -"classscc_1_1configurer.html#a0419a8cd7a38cec2d667a61d62b3a520":[5,0,7,34,12], -"classscc_1_1configurer.html#a0be065c5b7c3c1b02480f38aceeeb917":[5,0,7,34,7], -"classscc_1_1configurer.html#a19934f8525109148af092175f5c04644":[5,0,7,34,17], -"classscc_1_1configurer.html#a2536144f65524d836ce35031bbd1bf20":[5,0,7,34,19], -"classscc_1_1configurer.html#a26901fddb70002d791c7b2a8683d1fee":[5,0,7,34,14], -"classscc_1_1configurer.html#a26ff5c5fe8bbe63906e0136cf91920ee":[5,0,7,34,25], -"classscc_1_1configurer.html#a2889cab9c2541d1aa283540d3ec28bf2":[5,0,7,34,16], -"classscc_1_1configurer.html#a2d2858566d90b99d4ef32b2f930712f2":[5,0,7,34,11], -"classscc_1_1configurer.html#a2ed3d03fa24b42c158bddcf2f557e5be":[5,0,7,34,13], -"classscc_1_1configurer.html#a3c831fae47d564fe898e869233986748":[5,0,7,34,15], -"classscc_1_1configurer.html#a4885f0400b9c0c275e9938983a833f99":[5,0,7,34,27], -"classscc_1_1configurer.html#a6087b9e3e4a5a66f5a571e11022e28cf":[5,0,7,34,29], -"classscc_1_1configurer.html#a6669aa59d495ce98d4fe8d1759e14596":[5,0,7,34,9], -"classscc_1_1configurer.html#a78591f63e769afc8873a343172ed64e5":[5,0,7,34,1], -"classscc_1_1configurer.html#a7a02e2604f585199d4fe7c6f03ce6304":[5,0,7,34,28], -"classscc_1_1configurer.html#a7eff7b2a45d971eda5adc0b3e39e9c06":[5,0,7,34,10], -"classscc_1_1configurer.html#a819324d9a5ba55e296278597cc84159b":[5,0,7,34,3], -"classscc_1_1configurer.html#a8d08c605f36f5ed793d7a50c10374c95":[5,0,7,34,5], -"classscc_1_1configurer.html#a93b9b5cc3db01fdb646ae1f666ac5987":[5,0,7,34,8], -"classscc_1_1configurer.html#a95efe4659487fece9d4003e450d48a84":[5,0,7,34,4], -"classscc_1_1configurer.html#aa43cf006405af0066d0838c0eec6e831":[5,0,7,34,26], -"classscc_1_1configurer.html#aa78ab03724895900caf77158cf3a610b":[5,0,7,34,22], -"classscc_1_1configurer.html#ac3d0b53947313e894ff6fb48af582578":[5,0,7,34,2], -"classscc_1_1configurer.html#ace0eddd2bb800ae3231fc4d6fc263e75":[5,0,7,34,24], -"classscc_1_1configurer.html#ad4fb1e50abb62aad0d81126eac7daac8":[5,0,7,34,21], -"classscc_1_1configurer.html#adcdff187cfbdc77ce7378fec4c4b73c1":[5,0,7,34,6], -"classscc_1_1configurer.html#ae7392ce761c23432db33914496447f54":[5,0,7,34,18], -"classscc_1_1configurer.html#ae78996684b1dc39f8655755167065436":[5,0,7,34,23], -"classscc_1_1configurer.html#af93bc5cafd6d7035e1ee025b9c408fba":[5,0,7,34,20], +"classscc_1_1configurable__tracer.html":[5,0,7,26], +"classscc_1_1configurable__tracer.html#a3f5827d5d2ccb06015ba9a9184e66c04":[5,0,7,26,0], +"classscc_1_1configurable__tracer.html#a440f6912cc6cd0fa9179d155de7919a8":[5,0,7,26,1], +"classscc_1_1configurable__tracer.html#a45f944754d21e471049b97addf9e34a2":[5,0,7,26,5], +"classscc_1_1configurable__tracer.html#a57afc5cf98bb143ccb0c4c57976dd987":[5,0,7,26,8], +"classscc_1_1configurable__tracer.html#a57d134e93844c47dc8d1dfd1d99a1879":[5,0,7,26,12], +"classscc_1_1configurable__tracer.html#a6131b6a18cd53fc83df1c411ceab0378":[5,0,7,26,10], +"classscc_1_1configurable__tracer.html#a782862b5f9bdbd04af20008f6ea31e3a":[5,0,7,26,11], +"classscc_1_1configurable__tracer.html#a801c24bdc36f3f4263890716ea698d65":[5,0,7,26,4], +"classscc_1_1configurable__tracer.html#ab425b03f4e39ad0ca3316f5d356effc0":[5,0,7,26,7], +"classscc_1_1configurable__tracer.html#ac7b5301c5f276ffdc414236fa3a0c08b":[5,0,7,26,9], +"classscc_1_1configurable__tracer.html#acd4ab692d0973eefa668643924f861b7":[5,0,7,26,6], +"classscc_1_1configurable__tracer.html#ae343fdfeec94159ecabd8863ce905f68":[5,0,7,26,2], +"classscc_1_1configurable__tracer.html#aec6c804b2b6e68b3851d429cd041ddb7":[5,0,7,26,13], +"classscc_1_1configurable__tracer.html#af0ed7935d28caf845fb675036e2d15b9":[5,0,7,26,3], +"classscc_1_1configurer.html":[5,0,7,27], +"classscc_1_1configurer.html#a0419a8cd7a38cec2d667a61d62b3a520":[5,0,7,27,12], +"classscc_1_1configurer.html#a0be065c5b7c3c1b02480f38aceeeb917":[5,0,7,27,7], +"classscc_1_1configurer.html#a19934f8525109148af092175f5c04644":[5,0,7,27,17], +"classscc_1_1configurer.html#a2536144f65524d836ce35031bbd1bf20":[5,0,7,27,19], +"classscc_1_1configurer.html#a26901fddb70002d791c7b2a8683d1fee":[5,0,7,27,14], +"classscc_1_1configurer.html#a26ff5c5fe8bbe63906e0136cf91920ee":[5,0,7,27,25], +"classscc_1_1configurer.html#a2889cab9c2541d1aa283540d3ec28bf2":[5,0,7,27,16], +"classscc_1_1configurer.html#a2d2858566d90b99d4ef32b2f930712f2":[5,0,7,27,11], +"classscc_1_1configurer.html#a2ed3d03fa24b42c158bddcf2f557e5be":[5,0,7,27,13], +"classscc_1_1configurer.html#a3c831fae47d564fe898e869233986748":[5,0,7,27,15], +"classscc_1_1configurer.html#a4885f0400b9c0c275e9938983a833f99":[5,0,7,27,27], +"classscc_1_1configurer.html#a6087b9e3e4a5a66f5a571e11022e28cf":[5,0,7,27,29], +"classscc_1_1configurer.html#a6669aa59d495ce98d4fe8d1759e14596":[5,0,7,27,9], +"classscc_1_1configurer.html#a78591f63e769afc8873a343172ed64e5":[5,0,7,27,1], +"classscc_1_1configurer.html#a7a02e2604f585199d4fe7c6f03ce6304":[5,0,7,27,28], +"classscc_1_1configurer.html#a7eff7b2a45d971eda5adc0b3e39e9c06":[5,0,7,27,10], +"classscc_1_1configurer.html#a819324d9a5ba55e296278597cc84159b":[5,0,7,27,3], +"classscc_1_1configurer.html#a8d08c605f36f5ed793d7a50c10374c95":[5,0,7,27,5], +"classscc_1_1configurer.html#a93b9b5cc3db01fdb646ae1f666ac5987":[5,0,7,27,8], +"classscc_1_1configurer.html#a95efe4659487fece9d4003e450d48a84":[5,0,7,27,4], +"classscc_1_1configurer.html#aa43cf006405af0066d0838c0eec6e831":[5,0,7,27,26], +"classscc_1_1configurer.html#aa78ab03724895900caf77158cf3a610b":[5,0,7,27,22], +"classscc_1_1configurer.html#ac3d0b53947313e894ff6fb48af582578":[5,0,7,27,2], +"classscc_1_1configurer.html#ace0eddd2bb800ae3231fc4d6fc263e75":[5,0,7,27,24], +"classscc_1_1configurer.html#ad4fb1e50abb62aad0d81126eac7daac8":[5,0,7,27,21], +"classscc_1_1configurer.html#adcdff187cfbdc77ce7378fec4c4b73c1":[5,0,7,27,6], +"classscc_1_1configurer.html#ae7392ce761c23432db33914496447f54":[5,0,7,27,18], +"classscc_1_1configurer.html#ae78996684b1dc39f8655755167065436":[5,0,7,27,23], +"classscc_1_1configurer.html#af93bc5cafd6d7035e1ee025b9c408fba":[5,0,7,27,20], "classscc_1_1dt_1_1sc__logic__7.html":[5,0,7,0,0], "classscc_1_1dt_1_1sc__logic__7.html#a0e71155b228bc4eecb7e795785dbf7fc":[5,0,7,0,0,20], "classscc_1_1dt_1_1sc__logic__7.html#a0ee1353a16102dc1d86a5bba1099c9b1":[5,0,7,0,0,0], @@ -200,43 +188,49 @@ var NAVTREEINDEX4 = "classscc_1_1dt_1_1sc__logic__7.html#aefbaa3f8342266ceb19584b271fdf099":[5,0,7,0,0,15], "classscc_1_1dt_1_1sc__logic__7.html#af60c60b5af6687452caaa0831d3191c8":[5,0,7,0,0,3], "classscc_1_1dt_1_1sc__logic__7.html#afb3bb38febd43baf3d17f18eeb6b3e97":[5,0,7,0,0,16], -"classscc_1_1ext__attribute.html":[5,0,7,35], -"classscc_1_1ext__attribute.html#a38636fda05671423045e2a0f49e4dcdc":[5,0,7,35,0], -"classscc_1_1ext__attribute.html#a4603dd6236ff618f3cb081ca10b4dbce":[5,0,7,35,3], -"classscc_1_1ext__attribute.html#aa56016653b90ea8778827a47d86c8fbc":[5,0,7,35,4], -"classscc_1_1ext__attribute.html#ac301bb0ec0bafbac9d896e61fdd138fd":[5,0,7,35,2], -"classscc_1_1ext__attribute.html#adaa716a4eaf4a609ce0402bb4da8924f":[5,0,7,35,1], -"classscc_1_1ext__attribute.html#af35c55ab9286e3e905b362066b08e308":[5,0,7,35,5], -"classscc_1_1fifo__w__cb.html":[5,0,7,36], -"classscc_1_1fifo__w__cb.html#a0377b3840b15811d148a198a03c9730d":[5,0,7,36,16], -"classscc_1_1fifo__w__cb.html#a08890e72a18faf7f5a7d197459f16e44":[5,0,7,36,5], -"classscc_1_1fifo__w__cb.html#a3b7b924cba8af3c20252f69089c972f3":[5,0,7,36,3], -"classscc_1_1fifo__w__cb.html#a3c3e3cb79b1336344ba3ade476af8130":[5,0,7,36,10], -"classscc_1_1fifo__w__cb.html#a3d6b60efe6e416a2eca58c70c70748a1":[5,0,7,36,2], -"classscc_1_1fifo__w__cb.html#a47cf32853d447e206f83363ba04fa1b2":[5,0,7,36,12], -"classscc_1_1fifo__w__cb.html#a4f59f9cbe59c24c1238a2074ec872602":[5,0,7,36,1], -"classscc_1_1fifo__w__cb.html#a7244e48834829b93fe334c7940521533":[5,0,7,36,19], -"classscc_1_1fifo__w__cb.html#a743398fae10227807190bf6959db859b":[5,0,7,36,6], -"classscc_1_1fifo__w__cb.html#a83bce8e999ad0acbe7e52c447696bca0":[5,0,7,36,9], -"classscc_1_1fifo__w__cb.html#a859e4555a5b650077f93a58b046e7968":[5,0,7,36,18], -"classscc_1_1fifo__w__cb.html#aa09198b16eff92d8ac66fa3118ba02e9":[5,0,7,36,11], -"classscc_1_1fifo__w__cb.html#aa5473c15b67d5e53447094f20998bfdb":[5,0,7,36,4], -"classscc_1_1fifo__w__cb.html#aa837fb31c24fe42093bfa6787d072c3b":[5,0,7,36,15], -"classscc_1_1fifo__w__cb.html#abda6cd877c957ca3e2ed0751d108b254":[5,0,7,36,8], -"classscc_1_1fifo__w__cb.html#ac0cafc885abdf7bae41e631787696d72":[5,0,7,36,20], -"classscc_1_1fifo__w__cb.html#acf6123fe008e25a9a44ed4a821b82e89":[5,0,7,36,0], -"classscc_1_1fifo__w__cb.html#ad28824990f41d68dfdc3ebd22eff5aa7":[5,0,7,36,13], -"classscc_1_1fifo__w__cb.html#adaca03e6eab0e7ba8fe875da6d9de32d":[5,0,7,36,14], -"classscc_1_1fifo__w__cb.html#ae60b38c1a97620e1f3d2a3c96666f23a":[5,0,7,36,17], -"classscc_1_1fifo__w__cb.html#afeb9a825396f23bc0c2815c2153666b5":[5,0,7,36,7], -"classscc_1_1hierarchy__dumper.html":[5,0,7,38], -"classscc_1_1hierarchy__dumper.html#a11c8510b64ccb9c055b5c18308f2ba14":[5,0,7,38,2], -"classscc_1_1hierarchy__dumper.html#a4e5848cd51a9b4e4163ed7ff5178d7be":[5,0,7,38,1], -"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4":[5,0,7,38,0], -"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4a4801d9378cff5c215f9b75a0ca5640c4":[5,0,7,38,0,3], -"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4a98d662dac6fd652503e7b5661acf9a6d":[5,0,7,38,0,0], -"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4adb4b84ec0d612ea92b30eb2923944597":[5,0,7,38,0,1], -"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4ae1b143b30149ca6382814cc6fe6a33a9":[5,0,7,38,0,2], +"classscc_1_1ext__attribute.html":[5,0,7,28], +"classscc_1_1ext__attribute.html#a38636fda05671423045e2a0f49e4dcdc":[5,0,7,28,0], +"classscc_1_1ext__attribute.html#a4603dd6236ff618f3cb081ca10b4dbce":[5,0,7,28,3], +"classscc_1_1ext__attribute.html#aa56016653b90ea8778827a47d86c8fbc":[5,0,7,28,4], +"classscc_1_1ext__attribute.html#ac301bb0ec0bafbac9d896e61fdd138fd":[5,0,7,28,2], +"classscc_1_1ext__attribute.html#adaa716a4eaf4a609ce0402bb4da8924f":[5,0,7,28,1], +"classscc_1_1ext__attribute.html#af35c55ab9286e3e905b362066b08e308":[5,0,7,28,5], +"classscc_1_1fifo__w__cb.html":[5,0,7,29], +"classscc_1_1fifo__w__cb.html#a0377b3840b15811d148a198a03c9730d":[5,0,7,29,20], +"classscc_1_1fifo__w__cb.html#a065a85c77c7140627fbb4193784707af":[5,0,7,29,21], +"classscc_1_1fifo__w__cb.html#a08890e72a18faf7f5a7d197459f16e44":[5,0,7,29,5], +"classscc_1_1fifo__w__cb.html#a1d98157e2bb7319c863f6c6e000daad9":[5,0,7,29,26], +"classscc_1_1fifo__w__cb.html#a31b56f74fdf30872e8a18cd0084d4732":[5,0,7,29,16], +"classscc_1_1fifo__w__cb.html#a3b7b924cba8af3c20252f69089c972f3":[5,0,7,29,3], +"classscc_1_1fifo__w__cb.html#a3c3e3cb79b1336344ba3ade476af8130":[5,0,7,29,12], +"classscc_1_1fifo__w__cb.html#a3d6b60efe6e416a2eca58c70c70748a1":[5,0,7,29,2], +"classscc_1_1fifo__w__cb.html#a47cf32853d447e206f83363ba04fa1b2":[5,0,7,29,15], +"classscc_1_1fifo__w__cb.html#a4c1a2240c34748008485baad5ddc7948":[5,0,7,29,14], +"classscc_1_1fifo__w__cb.html#a4f59f9cbe59c24c1238a2074ec872602":[5,0,7,29,1], +"classscc_1_1fifo__w__cb.html#a7244e48834829b93fe334c7940521533":[5,0,7,29,24], +"classscc_1_1fifo__w__cb.html#a743398fae10227807190bf6959db859b":[5,0,7,29,6], +"classscc_1_1fifo__w__cb.html#a7fe71d60cb5cdff2ac3f01c38a6a3ce0":[5,0,7,29,10], +"classscc_1_1fifo__w__cb.html#a83bce8e999ad0acbe7e52c447696bca0":[5,0,7,29,9], +"classscc_1_1fifo__w__cb.html#a859e4555a5b650077f93a58b046e7968":[5,0,7,29,23], +"classscc_1_1fifo__w__cb.html#aa09198b16eff92d8ac66fa3118ba02e9":[5,0,7,29,13], +"classscc_1_1fifo__w__cb.html#aa5473c15b67d5e53447094f20998bfdb":[5,0,7,29,4], +"classscc_1_1fifo__w__cb.html#aa837fb31c24fe42093bfa6787d072c3b":[5,0,7,29,19], +"classscc_1_1fifo__w__cb.html#abda6cd877c957ca3e2ed0751d108b254":[5,0,7,29,8], +"classscc_1_1fifo__w__cb.html#ac0cafc885abdf7bae41e631787696d72":[5,0,7,29,25], +"classscc_1_1fifo__w__cb.html#acf6123fe008e25a9a44ed4a821b82e89":[5,0,7,29,0], +"classscc_1_1fifo__w__cb.html#ad28824990f41d68dfdc3ebd22eff5aa7":[5,0,7,29,17], +"classscc_1_1fifo__w__cb.html#adaca03e6eab0e7ba8fe875da6d9de32d":[5,0,7,29,18], +"classscc_1_1fifo__w__cb.html#ade720fb63d9a8a4de87917c9cdd06578":[5,0,7,29,11], +"classscc_1_1fifo__w__cb.html#ae60b38c1a97620e1f3d2a3c96666f23a":[5,0,7,29,22], +"classscc_1_1fifo__w__cb.html#afeb9a825396f23bc0c2815c2153666b5":[5,0,7,29,7], +"classscc_1_1hierarchy__dumper.html":[5,0,7,31], +"classscc_1_1hierarchy__dumper.html#a11c8510b64ccb9c055b5c18308f2ba14":[5,0,7,31,2], +"classscc_1_1hierarchy__dumper.html#a4e5848cd51a9b4e4163ed7ff5178d7be":[5,0,7,31,1], +"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4":[5,0,7,31,0], +"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4a4801d9378cff5c215f9b75a0ca5640c4":[5,0,7,31,0,3], +"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4a98d662dac6fd652503e7b5661acf9a6d":[5,0,7,31,0,0], +"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4adb4b84ec0d612ea92b30eb2923944597":[5,0,7,31,0,1], +"classscc_1_1hierarchy__dumper.html#a80dabe535819ab6fafa8a3a1768b1bf4ae1b143b30149ca6382814cc6fe6a33a9":[5,0,7,31,0,2], "classscc_1_1impl_1_1helper.html":[5,0,7,1,0], "classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html":[5,0,7,1,2], "classscc_1_1impl_1_1helper_3_01T_00_01false_01_4.html#a15530a972707b41b4f1af103dec65ca0":[5,0,7,1,2,0], @@ -249,5 +243,11 @@ var NAVTREEINDEX4 = "classscc_1_1impl_1_1sc__register.html#a15695500361212b68a67d5a219fc975a":[5,0,7,1,3,14], "classscc_1_1impl_1_1sc__register.html#a1e93444af0116c699242d3d7bc9fbc19":[5,0,7,1,3,12], "classscc_1_1impl_1_1sc__register.html#a247379d6d5f2412c33c7561ec7e04b37":[5,0,7,1,3,10], -"classscc_1_1impl_1_1sc__register.html#a2b1a13df7e0f33841fa77eb23c6ff594":[5,0,7,1,3,3] +"classscc_1_1impl_1_1sc__register.html#a2b1a13df7e0f33841fa77eb23c6ff594":[5,0,7,1,3,3], +"classscc_1_1impl_1_1sc__register.html#a2b88d767e6aebb0e484dee4f0262aba5":[5,0,7,1,3,9], +"classscc_1_1impl_1_1sc__register.html#a2e2828b018fc0e5afcbd5ef07a7ec97e":[5,0,7,1,3,8], +"classscc_1_1impl_1_1sc__register.html#a2eabe09729d024155c1d44cc9bc2be51":[5,0,7,1,3,5], +"classscc_1_1impl_1_1sc__register.html#a39f4b39d0bc029a3067fb8c54fe4f548":[5,0,7,1,3,7], +"classscc_1_1impl_1_1sc__register.html#a50508164da9c84f83135fb5c11e4675c":[5,0,7,1,3,4], +"classscc_1_1impl_1_1sc__register.html#a50b1330e1db43b3fe1088b47311e0ef4":[5,0,7,1,3,19] }; diff --git a/develop/navtreeindex5.js b/develop/navtreeindex5.js index 3e337ab7..7f38b808 100644 --- a/develop/navtreeindex5.js +++ b/develop/navtreeindex5.js @@ -1,11 +1,5 @@ var NAVTREEINDEX5 = { -"classscc_1_1impl_1_1sc__register.html#a2b88d767e6aebb0e484dee4f0262aba5":[5,0,7,1,3,9], -"classscc_1_1impl_1_1sc__register.html#a2e2828b018fc0e5afcbd5ef07a7ec97e":[5,0,7,1,3,8], -"classscc_1_1impl_1_1sc__register.html#a2eabe09729d024155c1d44cc9bc2be51":[5,0,7,1,3,5], -"classscc_1_1impl_1_1sc__register.html#a39f4b39d0bc029a3067fb8c54fe4f548":[5,0,7,1,3,7], -"classscc_1_1impl_1_1sc__register.html#a50508164da9c84f83135fb5c11e4675c":[5,0,7,1,3,4], -"classscc_1_1impl_1_1sc__register.html#a50b1330e1db43b3fe1088b47311e0ef4":[5,0,7,1,3,19], "classscc_1_1impl_1_1sc__register.html#a5327b5a419a0355cd1a91badcb184a83":[5,0,7,1,3,17], "classscc_1_1impl_1_1sc__register.html#a63853f951852d386472b1719b96fded3":[5,0,7,1,3,0], "classscc_1_1impl_1_1sc__register.html#a65ac98258c52d320c732db9bfd0ce0eb":[5,0,7,1,3,13], @@ -48,46 +42,46 @@ var NAVTREEINDEX5 = "classscc_1_1memory.html#aa0488cabf0c8cbcaf772d6aa9f735891":[5,0,7,5,12], "classscc_1_1memory.html#ab0ef3f3adf400d3445da9fbe53b9ed18":[5,0,7,5,14], "classscc_1_1memory.html#acac3a368ef3d82f5dc6c0b2b5a7b29be":[5,0,7,5,7], -"classscc_1_1ordered__semaphore.html":[5,0,7,41], -"classscc_1_1ordered__semaphore.html#a162261494413599f21e91af268a4b876":[5,0,7,41,13], -"classscc_1_1ordered__semaphore.html#a1aff3cb70b21ae6273284c047bae09ca":[5,0,7,41,19], -"classscc_1_1ordered__semaphore.html#a1b9cf94120fb46c30d8b4ee1dce6a48b":[5,0,7,41,21], -"classscc_1_1ordered__semaphore.html#a1e00ba95b4f115d9e912af991826b3ac":[5,0,7,41,5], -"classscc_1_1ordered__semaphore.html#a2a94e261331c4d50eeac82a45093aa4e":[5,0,7,41,20], -"classscc_1_1ordered__semaphore.html#a440191838b771de24df965f072631130":[5,0,7,41,3], -"classscc_1_1ordered__semaphore.html#a4a14b192fb959f0f7f331b98201cebe6":[5,0,7,41,4], -"classscc_1_1ordered__semaphore.html#a5c67ff307831e9dcdae5522bc74374ac":[5,0,7,41,17], -"classscc_1_1ordered__semaphore.html#a5f3fd55d5fb2c9ab687952c1a2c7f6bc":[5,0,7,41,10], -"classscc_1_1ordered__semaphore.html#a67b4bde4d805c508ea598672aa694aee":[5,0,7,41,2], -"classscc_1_1ordered__semaphore.html#a76f892069214912fc5fa795237363bf1":[5,0,7,41,16], -"classscc_1_1ordered__semaphore.html#a7a6e4d4d6d34c6ef703575a3f1d1fee1":[5,0,7,41,8], -"classscc_1_1ordered__semaphore.html#a7b733c99e1d65e68376ea9a29bfbb0fb":[5,0,7,41,6], -"classscc_1_1ordered__semaphore.html#a8807655ed7a787cf7dbf5c8bb9080871":[5,0,7,41,7], -"classscc_1_1ordered__semaphore.html#a93a10c2de33733607d2e30ea64201d22":[5,0,7,41,18], -"classscc_1_1ordered__semaphore.html#aa670dc99df7070d0702cb6de079f077a":[5,0,7,41,15], -"classscc_1_1ordered__semaphore.html#ab0a499f6a4b87d0dd57b7a0c89a91d36":[5,0,7,41,9], -"classscc_1_1ordered__semaphore.html#ae08b3a4596e0be22bb517a89a362e1e3":[5,0,7,41,12], -"classscc_1_1ordered__semaphore.html#ae23f40d25de31ff2a02fffe83461dea8":[5,0,7,41,11], -"classscc_1_1ordered__semaphore.html#af3377d313bb7b109ef9bb5a0f1fd34d0":[5,0,7,41,1], -"classscc_1_1ordered__semaphore.html#aff2675fc0211e17d08aa8015f0943672":[5,0,7,41,14], -"classscc_1_1perf__estimator.html":[5,0,7,44], -"classscc_1_1perf__estimator.html#a0a5fcaa76ff67e8fe0ea9fabfb634db2":[5,0,7,44,13], -"classscc_1_1perf__estimator.html#a11e0f22f15b997f25f948d2a871d1c21":[5,0,7,44,6], -"classscc_1_1perf__estimator.html#a14f53ba9c6478b72d5269720302144e2":[5,0,7,44,16], -"classscc_1_1perf__estimator.html#a2b95ea9023f39c265bda20e2f6110030":[5,0,7,44,4], -"classscc_1_1perf__estimator.html#a33f1bbb47800bd187e2e348eeaaaa028":[5,0,7,44,11], -"classscc_1_1perf__estimator.html#a591441ba459c8a39b38a851653099c35":[5,0,7,44,8], -"classscc_1_1perf__estimator.html#a71a49bcbff5f980068c3a5d00c80f6ab":[5,0,7,44,7], -"classscc_1_1perf__estimator.html#a8de6a396d5779808af91031a9b830401":[5,0,7,44,3], -"classscc_1_1perf__estimator.html#abf775102ae09cc0ca3c7a4e55d6f0b77":[5,0,7,44,9], -"classscc_1_1perf__estimator.html#ac06e08ca7175bf29fd150e5b41e0a338":[5,0,7,44,14], -"classscc_1_1perf__estimator.html#acb455f9c34e8ec25be5b796f4067f995":[5,0,7,44,12], -"classscc_1_1perf__estimator.html#acf4b89b1872548fbad9cc550a289b4c9":[5,0,7,44,0], -"classscc_1_1perf__estimator.html#ad13d252cdce8369da7063e3bd1c77837":[5,0,7,44,5], -"classscc_1_1perf__estimator.html#ad87498e8dae1a8ed27e9191b292197c4":[5,0,7,44,1], -"classscc_1_1perf__estimator.html#add0a895809a1e42bf6cda00293c54fff":[5,0,7,44,10], -"classscc_1_1perf__estimator.html#ae1942a4583cf32a9e9055f6bac3f01b2":[5,0,7,44,2], -"classscc_1_1perf__estimator.html#ae7d39d8da818301113b32d12613878fa":[5,0,7,44,15], +"classscc_1_1ordered__semaphore.html":[5,0,7,34], +"classscc_1_1ordered__semaphore.html#a162261494413599f21e91af268a4b876":[5,0,7,34,13], +"classscc_1_1ordered__semaphore.html#a1aff3cb70b21ae6273284c047bae09ca":[5,0,7,34,19], +"classscc_1_1ordered__semaphore.html#a1b9cf94120fb46c30d8b4ee1dce6a48b":[5,0,7,34,21], +"classscc_1_1ordered__semaphore.html#a1e00ba95b4f115d9e912af991826b3ac":[5,0,7,34,5], +"classscc_1_1ordered__semaphore.html#a2a94e261331c4d50eeac82a45093aa4e":[5,0,7,34,20], +"classscc_1_1ordered__semaphore.html#a440191838b771de24df965f072631130":[5,0,7,34,3], +"classscc_1_1ordered__semaphore.html#a4a14b192fb959f0f7f331b98201cebe6":[5,0,7,34,4], +"classscc_1_1ordered__semaphore.html#a5c67ff307831e9dcdae5522bc74374ac":[5,0,7,34,17], +"classscc_1_1ordered__semaphore.html#a5f3fd55d5fb2c9ab687952c1a2c7f6bc":[5,0,7,34,10], +"classscc_1_1ordered__semaphore.html#a67b4bde4d805c508ea598672aa694aee":[5,0,7,34,2], +"classscc_1_1ordered__semaphore.html#a76f892069214912fc5fa795237363bf1":[5,0,7,34,16], +"classscc_1_1ordered__semaphore.html#a7a6e4d4d6d34c6ef703575a3f1d1fee1":[5,0,7,34,8], +"classscc_1_1ordered__semaphore.html#a7b733c99e1d65e68376ea9a29bfbb0fb":[5,0,7,34,6], +"classscc_1_1ordered__semaphore.html#a8807655ed7a787cf7dbf5c8bb9080871":[5,0,7,34,7], +"classscc_1_1ordered__semaphore.html#a93a10c2de33733607d2e30ea64201d22":[5,0,7,34,18], +"classscc_1_1ordered__semaphore.html#aa670dc99df7070d0702cb6de079f077a":[5,0,7,34,15], +"classscc_1_1ordered__semaphore.html#ab0a499f6a4b87d0dd57b7a0c89a91d36":[5,0,7,34,9], +"classscc_1_1ordered__semaphore.html#ae08b3a4596e0be22bb517a89a362e1e3":[5,0,7,34,12], +"classscc_1_1ordered__semaphore.html#ae23f40d25de31ff2a02fffe83461dea8":[5,0,7,34,11], +"classscc_1_1ordered__semaphore.html#af3377d313bb7b109ef9bb5a0f1fd34d0":[5,0,7,34,1], +"classscc_1_1ordered__semaphore.html#aff2675fc0211e17d08aa8015f0943672":[5,0,7,34,14], +"classscc_1_1perf__estimator.html":[5,0,7,37], +"classscc_1_1perf__estimator.html#a0a5fcaa76ff67e8fe0ea9fabfb634db2":[5,0,7,37,13], +"classscc_1_1perf__estimator.html#a11e0f22f15b997f25f948d2a871d1c21":[5,0,7,37,6], +"classscc_1_1perf__estimator.html#a14f53ba9c6478b72d5269720302144e2":[5,0,7,37,16], +"classscc_1_1perf__estimator.html#a2b95ea9023f39c265bda20e2f6110030":[5,0,7,37,4], +"classscc_1_1perf__estimator.html#a33f1bbb47800bd187e2e348eeaaaa028":[5,0,7,37,11], +"classscc_1_1perf__estimator.html#a591441ba459c8a39b38a851653099c35":[5,0,7,37,8], +"classscc_1_1perf__estimator.html#a71a49bcbff5f980068c3a5d00c80f6ab":[5,0,7,37,7], +"classscc_1_1perf__estimator.html#a8de6a396d5779808af91031a9b830401":[5,0,7,37,3], +"classscc_1_1perf__estimator.html#abf775102ae09cc0ca3c7a4e55d6f0b77":[5,0,7,37,9], +"classscc_1_1perf__estimator.html#ac06e08ca7175bf29fd150e5b41e0a338":[5,0,7,37,14], +"classscc_1_1perf__estimator.html#acb455f9c34e8ec25be5b796f4067f995":[5,0,7,37,12], +"classscc_1_1perf__estimator.html#acf4b89b1872548fbad9cc550a289b4c9":[5,0,7,37,0], +"classscc_1_1perf__estimator.html#ad13d252cdce8369da7063e3bd1c77837":[5,0,7,37,5], +"classscc_1_1perf__estimator.html#ad87498e8dae1a8ed27e9191b292197c4":[5,0,7,37,1], +"classscc_1_1perf__estimator.html#add0a895809a1e42bf6cda00293c54fff":[5,0,7,37,10], +"classscc_1_1perf__estimator.html#ae1942a4583cf32a9e9055f6bac3f01b2":[5,0,7,37,2], +"classscc_1_1perf__estimator.html#ae7d39d8da818301113b32d12613878fa":[5,0,7,37,15], "classscc_1_1resetable.html":[5,0,7,8], "classscc_1_1resetable.html#a6ec2a1bc4f69c3c3f9e1692b282b46b9":[5,0,7,8,0], "classscc_1_1resetable.html#a828a6d1d71fedb05d4613df1d1d27f73":[5,0,7,8,2], @@ -130,124 +124,130 @@ var NAVTREEINDEX5 = "classscc_1_1router.html#ad11350f2826662ae27fbe5270fa22d08":[5,0,7,11,10], "classscc_1_1router.html#af4cb8075fb0e57f61bee2327f5b20bd7":[5,0,7,11,17], "classscc_1_1router.html#af6d7d05de198f704f37fa81fc145b248":[5,0,7,11,23], -"classscc_1_1sc__attribute__randomized.html":[5,0,7,48], -"classscc_1_1sc__attribute__randomized.html#a3c066ed93889478845b52567e6e71a14":[5,0,7,48,1], -"classscc_1_1sc__attribute__randomized.html#a41c4e03a0fcc4d396731e534e6ddc9b5":[5,0,7,48,5], -"classscc_1_1sc__attribute__randomized.html#a48dda74e749da0cf6124064f2db46396":[5,0,7,48,6], -"classscc_1_1sc__attribute__randomized.html#a7061854cc84b98225691e4cc7c286e98":[5,0,7,48,3], -"classscc_1_1sc__attribute__randomized.html#adb103002ca9e9517b715e0838f1aee3c":[5,0,7,48,2], -"classscc_1_1sc__attribute__randomized.html#ae53027a728324fd60e34a36f88b18972":[5,0,7,48,0], -"classscc_1_1sc__attribute__randomized.html#afa4d8662701aa39ffd11734bf8cd39fc":[5,0,7,48,4], -"classscc_1_1sc__in__opt.html":[5,0,7,59], -"classscc_1_1sc__in__opt.html#a06d2218c1398c5bd3b0f8aee91405cff":[5,0,7,59,19], -"classscc_1_1sc__in__opt.html#a11ce8221e4cd00709eff5c58392109fb":[5,0,7,59,29], -"classscc_1_1sc__in__opt.html#a11f1f6cc1a56682fbd8f0d37d9d7f5ef":[5,0,7,59,2], -"classscc_1_1sc__in__opt.html#a24b9e9ab9a30a9f296a8630c6bc4ed0d":[5,0,7,59,22], -"classscc_1_1sc__in__opt.html#a2bbcfc30d6b466bf05bb395901f0fb12":[5,0,7,59,16], -"classscc_1_1sc__in__opt.html#a319e4f48d38bfe8d7cd4db983514e646":[5,0,7,59,31], -"classscc_1_1sc__in__opt.html#a334f6df18e92f7e7d55ca15b75339e61":[5,0,7,59,13], -"classscc_1_1sc__in__opt.html#a34594ba85e2acdeb7b72bff03ba83097":[5,0,7,59,21], -"classscc_1_1sc__in__opt.html#a358ffb2ce8eff5c84b81b20d369bcd3f":[5,0,7,59,1], -"classscc_1_1sc__in__opt.html#a36754774d16cddaaac87bc624fea5c98":[5,0,7,59,6], -"classscc_1_1sc__in__opt.html#a3878d27e2cce111fcce61b5993fb8c50":[5,0,7,59,7], -"classscc_1_1sc__in__opt.html#a3e2a03eb9e8eff9e6c956457326d1c8f":[5,0,7,59,5], -"classscc_1_1sc__in__opt.html#a4382df3bdfb762af71f0f39b7b9b91d2":[5,0,7,59,0], -"classscc_1_1sc__in__opt.html#a44d52e1d90722a1881b6fd68e307c0cd":[5,0,7,59,24], -"classscc_1_1sc__in__opt.html#a4f39aa4cc01a847cf3aa1258a3c69393":[5,0,7,59,20], -"classscc_1_1sc__in__opt.html#a5b8c1f663e569931451a4236106578ca":[5,0,7,59,4], -"classscc_1_1sc__in__opt.html#a62f47a6a5e71645ff5ad96c3220dde7d":[5,0,7,59,27], -"classscc_1_1sc__in__opt.html#a65f5bf71da783339c780c145a562c2f2":[5,0,7,59,14], -"classscc_1_1sc__in__opt.html#a663090a84c2ccc04c282ab13345541c5":[5,0,7,59,11], -"classscc_1_1sc__in__opt.html#a74a2ae1e0f6af24804d3d086855932e8":[5,0,7,59,12], -"classscc_1_1sc__in__opt.html#a7a7860e661cb59b2b1519efe4a583311":[5,0,7,59,9], -"classscc_1_1sc__in__opt.html#a7c3a0f0008219ef34a8e3e1f287edc73":[5,0,7,59,15], -"classscc_1_1sc__in__opt.html#a7f23aaf7fa0e4694d42e55b9125912af":[5,0,7,59,3], -"classscc_1_1sc__in__opt.html#a974d2a0ad850d85addbd85ce1b89e50b":[5,0,7,59,33], -"classscc_1_1sc__in__opt.html#a978ec8e6940ab222456acba4a3f3de70":[5,0,7,59,23], -"classscc_1_1sc__in__opt.html#aa2f4d1e4219e87af1de23e9aec72125f":[5,0,7,59,32], -"classscc_1_1sc__in__opt.html#ac263423ca1866bee1d670ba6eaad539e":[5,0,7,59,26], -"classscc_1_1sc__in__opt.html#acac46ff317b8e84689cb0bbc6377df03":[5,0,7,59,8], -"classscc_1_1sc__in__opt.html#ad76a9e660a5cc6887d9442ab90fad9f8":[5,0,7,59,34], -"classscc_1_1sc__in__opt.html#adbed146f319e78d6b748c6b1e80e7db3":[5,0,7,59,30], -"classscc_1_1sc__in__opt.html#adf6da12c8ffe8ed8390dcf4c2e368cfa":[5,0,7,59,28], -"classscc_1_1sc__in__opt.html#ae3357731d9f210f6d2a25ae488900cf2":[5,0,7,59,10], -"classscc_1_1sc__in__opt.html#aee0c8591eef251f2100d143995dffc07":[5,0,7,59,17], -"classscc_1_1sc__in__opt.html#aef05b7102e651b5ea2d831f26502812f":[5,0,7,59,18], -"classscc_1_1sc__in__opt.html#af9bfec8ff248bdaa246f7772de9b7fff":[5,0,7,59,25], -"classscc_1_1sc__in__opt_3_01bool_01_4.html":[5,0,7,60], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a0dc23df0bc6b68d884a6d9c05e150346":[5,0,7,60,19], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a1091f706cf5b1d9163c025a7173789b0":[5,0,7,60,3], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a19d36daeafa1a67a2fec097500c09a35":[5,0,7,60,30], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a1ce6f1376c868e7b6c44dd7e54e12b90":[5,0,7,60,15], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2065d43e6c8c61a7c2575ebe9381f7c3":[5,0,7,60,23], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a248c8585852372987673aa3091f1bcd7":[5,0,7,60,14], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2ad682aef251761e033ec88641376ffd":[5,0,7,60,25], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2e26724c90388ecbf1f79a8b2b28597c":[5,0,7,60,34], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a3284dc277e10907814ecee3cd749e5ec":[5,0,7,60,26], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a36d87c0655ca88706fc2002dd59f90c2":[5,0,7,60,11], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a3ee5ac9543ebee2c8968ac7cedbaf0a3":[5,0,7,60,5], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a4456ba9eedde54aa91627c550202799e":[5,0,7,60,38], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a446f74238bf06597df7970f8a8078228":[5,0,7,60,27], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a56745c49991c34fd2f49f29d05683dbf":[5,0,7,60,0], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a59e2dceb06486a1173ff9af0ecaf5109":[5,0,7,60,31], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a61249c3c155be89cdbf683c643a1ef6a":[5,0,7,60,32], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a636bd1df276252e2af659b45f0c95160":[5,0,7,60,37], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a8696d9c4c7e6586f649748ea4b7f3291":[5,0,7,60,8], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a882d42f88020a78d7b484de2954dcdb6":[5,0,7,60,36], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a888ae8b3fbd0d661fd7dc2c431c0c039":[5,0,7,60,24], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a8b7f6b48de0bccd9630033f29f4675d6":[5,0,7,60,21], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#a9acbe36c4e446757ab22803ad5499d72":[5,0,7,60,29], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#aa45a419f804da5dc9f30542939b943dc":[5,0,7,60,12], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#aa8f014172c70653d04f34ede343eb5bd":[5,0,7,60,16], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#aaea19fdc3a66fd8758fb8a7702a59a15":[5,0,7,60,2], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab080709e85a15533eaadbf87673c472a":[5,0,7,60,28], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab1cbdb8d1db15cb0b6d636dcf5d347f1":[5,0,7,60,10], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab8a71fecaaa3b607c1aa5689146ed14a":[5,0,7,60,7], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#abe192d0fc1170cd2fd20bf9a80ba8228":[5,0,7,60,13], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ac30742b34ad035eecba8130fd5028ea5":[5,0,7,60,33], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad24d71f08d0ed12b70b4dc6dbfb7d47a":[5,0,7,60,35], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad4ce350770155c9ba364f767960c9466":[5,0,7,60,18], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad6837ba41d15342486e8cbb69fc2ca75":[5,0,7,60,6], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad7fafb46d604a4e65153fe29f0c2192e":[5,0,7,60,22], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ae4e44b5f5dcb17b5e09779bb2e05a157":[5,0,7,60,17], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#ae51f6057db2cae6bade028c9b624ca06":[5,0,7,60,20], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#aed0d010e7cc571d06337d903b29c2372":[5,0,7,60,9], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#af21b2f97c8c486ff7d87d5541fdd0c50":[5,0,7,60,4], -"classscc_1_1sc__in__opt_3_01bool_01_4.html#af9c315123f7f84f8e125cdef76b0ef63":[5,0,7,60,1], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html":[5,0,7,61], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0701f11891939386ea46b433f020b8f1":[5,0,7,61,30], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0b1204e53775ef034df39181e9c8ac0d":[5,0,7,61,13], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0dc195c8dab0952363afe8f0e1179050":[5,0,7,61,22], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a156628895a7683fcbc66536afe47f776":[5,0,7,61,37], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a15856d696017248bb1c2dfa39113a7fc":[5,0,7,61,16], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a17df7b4954543b39c3ec3517e74bf40d":[5,0,7,61,21], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a20f837fcc144564d5c82dafb3420ff61":[5,0,7,61,3], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3ac6dc825e357c297e5da36e9ed7ed0c":[5,0,7,61,15], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3c67315654570d2b78eb95fcea5e0d0f":[5,0,7,61,24], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a4fc45d8daaf119bcb4b6d07e255fb873":[5,0,7,61,20], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a560c219cb03326280cba5895b7195863":[5,0,7,61,23], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a615d83ba4d4d1f2ca6ea75e9c14f9e78":[5,0,7,61,1], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7283a171a666a3f68757e989c85e3c93":[5,0,7,61,2], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7dc337dd71ace81c7013f07d31811bc4":[5,0,7,61,25], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a87bc362e1960d40e143ca9e473864fc8":[5,0,7,61,35], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8a85b98aeac8bd991dd63961b151da26":[5,0,7,61,10], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8f21a75da7290afe03f745722386a4bd":[5,0,7,61,7], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8f3edeec1bd9e4a10a56538b12d16ae2":[5,0,7,61,38], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a92723fc21111a93f2ccf96f4053ee391":[5,0,7,61,14], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a93e4751128f4a1ed3c9bab9735ed2943":[5,0,7,61,5], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9f823a1aec5ffdabecf01896ea0ce404":[5,0,7,61,29], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa42f6bbfe19b676cb38d21dc1e6e9a08":[5,0,7,61,4], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa4d2da801bb6222aa65e136064fd804b":[5,0,7,61,17], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa629cc0ad889c7d2e943a401e30413ed":[5,0,7,61,28], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa84e5227a01388b8357514d8145e94c9":[5,0,7,61,0], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aaa458b7365660250cd85a9af2e872af0":[5,0,7,61,11], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab04332826010dfaaa8aae8a470f320ac":[5,0,7,61,31], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab55526582dfeaef202f25036588885a2":[5,0,7,61,36], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab80923d3c56d39306d878d23ab2d98e0":[5,0,7,61,26], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abc501d19f8a3813cfa9a7fe55c5a1dbc":[5,0,7,61,34], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abc6358c8fbbbcb7591ee95bc6323cfe7":[5,0,7,61,9], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abd1e994f5264db8ed1261c80d8d2e586":[5,0,7,61,12], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac1cb0650098ea44f9eca43f2ffebc2a7":[5,0,7,61,32], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac94f8198a6564a27f668e56281799d30":[5,0,7,61,27], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad02250afca4908eac4ce4f665a7c2696":[5,0,7,61,18] +"classscc_1_1sc__attribute__randomized.html":[5,0,7,41], +"classscc_1_1sc__attribute__randomized.html#a3c066ed93889478845b52567e6e71a14":[5,0,7,41,1], +"classscc_1_1sc__attribute__randomized.html#a41c4e03a0fcc4d396731e534e6ddc9b5":[5,0,7,41,5], +"classscc_1_1sc__attribute__randomized.html#a48dda74e749da0cf6124064f2db46396":[5,0,7,41,6], +"classscc_1_1sc__attribute__randomized.html#a7061854cc84b98225691e4cc7c286e98":[5,0,7,41,3], +"classscc_1_1sc__attribute__randomized.html#adb103002ca9e9517b715e0838f1aee3c":[5,0,7,41,2], +"classscc_1_1sc__attribute__randomized.html#ae53027a728324fd60e34a36f88b18972":[5,0,7,41,0], +"classscc_1_1sc__attribute__randomized.html#afa4d8662701aa39ffd11734bf8cd39fc":[5,0,7,41,4], +"classscc_1_1sc__in__opt.html":[5,0,7,52], +"classscc_1_1sc__in__opt.html#a06d2218c1398c5bd3b0f8aee91405cff":[5,0,7,52,19], +"classscc_1_1sc__in__opt.html#a11ce8221e4cd00709eff5c58392109fb":[5,0,7,52,29], +"classscc_1_1sc__in__opt.html#a11f1f6cc1a56682fbd8f0d37d9d7f5ef":[5,0,7,52,2], +"classscc_1_1sc__in__opt.html#a24b9e9ab9a30a9f296a8630c6bc4ed0d":[5,0,7,52,22], +"classscc_1_1sc__in__opt.html#a2bbcfc30d6b466bf05bb395901f0fb12":[5,0,7,52,16], +"classscc_1_1sc__in__opt.html#a319e4f48d38bfe8d7cd4db983514e646":[5,0,7,52,31], +"classscc_1_1sc__in__opt.html#a334f6df18e92f7e7d55ca15b75339e61":[5,0,7,52,13], +"classscc_1_1sc__in__opt.html#a34594ba85e2acdeb7b72bff03ba83097":[5,0,7,52,21], +"classscc_1_1sc__in__opt.html#a358ffb2ce8eff5c84b81b20d369bcd3f":[5,0,7,52,1], +"classscc_1_1sc__in__opt.html#a36754774d16cddaaac87bc624fea5c98":[5,0,7,52,6], +"classscc_1_1sc__in__opt.html#a3878d27e2cce111fcce61b5993fb8c50":[5,0,7,52,7], +"classscc_1_1sc__in__opt.html#a3e2a03eb9e8eff9e6c956457326d1c8f":[5,0,7,52,5], +"classscc_1_1sc__in__opt.html#a4382df3bdfb762af71f0f39b7b9b91d2":[5,0,7,52,0], +"classscc_1_1sc__in__opt.html#a44d52e1d90722a1881b6fd68e307c0cd":[5,0,7,52,24], +"classscc_1_1sc__in__opt.html#a4f39aa4cc01a847cf3aa1258a3c69393":[5,0,7,52,20], +"classscc_1_1sc__in__opt.html#a5b8c1f663e569931451a4236106578ca":[5,0,7,52,4], +"classscc_1_1sc__in__opt.html#a62f47a6a5e71645ff5ad96c3220dde7d":[5,0,7,52,27], +"classscc_1_1sc__in__opt.html#a65f5bf71da783339c780c145a562c2f2":[5,0,7,52,14], +"classscc_1_1sc__in__opt.html#a663090a84c2ccc04c282ab13345541c5":[5,0,7,52,11], +"classscc_1_1sc__in__opt.html#a74a2ae1e0f6af24804d3d086855932e8":[5,0,7,52,12], +"classscc_1_1sc__in__opt.html#a7a7860e661cb59b2b1519efe4a583311":[5,0,7,52,9], +"classscc_1_1sc__in__opt.html#a7c3a0f0008219ef34a8e3e1f287edc73":[5,0,7,52,15], +"classscc_1_1sc__in__opt.html#a7f23aaf7fa0e4694d42e55b9125912af":[5,0,7,52,3], +"classscc_1_1sc__in__opt.html#a974d2a0ad850d85addbd85ce1b89e50b":[5,0,7,52,33], +"classscc_1_1sc__in__opt.html#a978ec8e6940ab222456acba4a3f3de70":[5,0,7,52,23], +"classscc_1_1sc__in__opt.html#aa2f4d1e4219e87af1de23e9aec72125f":[5,0,7,52,32], +"classscc_1_1sc__in__opt.html#ac263423ca1866bee1d670ba6eaad539e":[5,0,7,52,26], +"classscc_1_1sc__in__opt.html#acac46ff317b8e84689cb0bbc6377df03":[5,0,7,52,8], +"classscc_1_1sc__in__opt.html#ad76a9e660a5cc6887d9442ab90fad9f8":[5,0,7,52,34], +"classscc_1_1sc__in__opt.html#adbed146f319e78d6b748c6b1e80e7db3":[5,0,7,52,30], +"classscc_1_1sc__in__opt.html#adf6da12c8ffe8ed8390dcf4c2e368cfa":[5,0,7,52,28], +"classscc_1_1sc__in__opt.html#ae3357731d9f210f6d2a25ae488900cf2":[5,0,7,52,10], +"classscc_1_1sc__in__opt.html#aee0c8591eef251f2100d143995dffc07":[5,0,7,52,17], +"classscc_1_1sc__in__opt.html#aef05b7102e651b5ea2d831f26502812f":[5,0,7,52,18], +"classscc_1_1sc__in__opt.html#af9bfec8ff248bdaa246f7772de9b7fff":[5,0,7,52,25], +"classscc_1_1sc__in__opt_3_01bool_01_4.html":[5,0,7,53], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a0dc23df0bc6b68d884a6d9c05e150346":[5,0,7,53,19], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a1091f706cf5b1d9163c025a7173789b0":[5,0,7,53,3], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a19d36daeafa1a67a2fec097500c09a35":[5,0,7,53,30], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a1ce6f1376c868e7b6c44dd7e54e12b90":[5,0,7,53,15], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2065d43e6c8c61a7c2575ebe9381f7c3":[5,0,7,53,23], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a248c8585852372987673aa3091f1bcd7":[5,0,7,53,14], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2ad682aef251761e033ec88641376ffd":[5,0,7,53,25], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a2e26724c90388ecbf1f79a8b2b28597c":[5,0,7,53,34], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a3284dc277e10907814ecee3cd749e5ec":[5,0,7,53,26], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a36d87c0655ca88706fc2002dd59f90c2":[5,0,7,53,11], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a3ee5ac9543ebee2c8968ac7cedbaf0a3":[5,0,7,53,5], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a4456ba9eedde54aa91627c550202799e":[5,0,7,53,38], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a446f74238bf06597df7970f8a8078228":[5,0,7,53,27], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a56745c49991c34fd2f49f29d05683dbf":[5,0,7,53,0], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a59e2dceb06486a1173ff9af0ecaf5109":[5,0,7,53,31], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a61249c3c155be89cdbf683c643a1ef6a":[5,0,7,53,32], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a636bd1df276252e2af659b45f0c95160":[5,0,7,53,37], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a8696d9c4c7e6586f649748ea4b7f3291":[5,0,7,53,8], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a882d42f88020a78d7b484de2954dcdb6":[5,0,7,53,36], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a888ae8b3fbd0d661fd7dc2c431c0c039":[5,0,7,53,24], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a8b7f6b48de0bccd9630033f29f4675d6":[5,0,7,53,21], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#a9acbe36c4e446757ab22803ad5499d72":[5,0,7,53,29], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#aa45a419f804da5dc9f30542939b943dc":[5,0,7,53,12], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#aa8f014172c70653d04f34ede343eb5bd":[5,0,7,53,16], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#aaea19fdc3a66fd8758fb8a7702a59a15":[5,0,7,53,2], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab080709e85a15533eaadbf87673c472a":[5,0,7,53,28], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab1cbdb8d1db15cb0b6d636dcf5d347f1":[5,0,7,53,10], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ab8a71fecaaa3b607c1aa5689146ed14a":[5,0,7,53,7], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#abe192d0fc1170cd2fd20bf9a80ba8228":[5,0,7,53,13], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ac30742b34ad035eecba8130fd5028ea5":[5,0,7,53,33], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad24d71f08d0ed12b70b4dc6dbfb7d47a":[5,0,7,53,35], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad4ce350770155c9ba364f767960c9466":[5,0,7,53,18], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad6837ba41d15342486e8cbb69fc2ca75":[5,0,7,53,6], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ad7fafb46d604a4e65153fe29f0c2192e":[5,0,7,53,22], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ae4e44b5f5dcb17b5e09779bb2e05a157":[5,0,7,53,17], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#ae51f6057db2cae6bade028c9b624ca06":[5,0,7,53,20], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#aed0d010e7cc571d06337d903b29c2372":[5,0,7,53,9], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#af21b2f97c8c486ff7d87d5541fdd0c50":[5,0,7,53,4], +"classscc_1_1sc__in__opt_3_01bool_01_4.html#af9c315123f7f84f8e125cdef76b0ef63":[5,0,7,53,1], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html":[5,0,7,54], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0701f11891939386ea46b433f020b8f1":[5,0,7,54,30], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0b1204e53775ef034df39181e9c8ac0d":[5,0,7,54,13], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0dc195c8dab0952363afe8f0e1179050":[5,0,7,54,22], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a156628895a7683fcbc66536afe47f776":[5,0,7,54,37], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a15856d696017248bb1c2dfa39113a7fc":[5,0,7,54,16], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a17df7b4954543b39c3ec3517e74bf40d":[5,0,7,54,21], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a20f837fcc144564d5c82dafb3420ff61":[5,0,7,54,3], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3ac6dc825e357c297e5da36e9ed7ed0c":[5,0,7,54,15], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3c67315654570d2b78eb95fcea5e0d0f":[5,0,7,54,24], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a4fc45d8daaf119bcb4b6d07e255fb873":[5,0,7,54,20], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a560c219cb03326280cba5895b7195863":[5,0,7,54,23], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a615d83ba4d4d1f2ca6ea75e9c14f9e78":[5,0,7,54,1], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7283a171a666a3f68757e989c85e3c93":[5,0,7,54,2], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7dc337dd71ace81c7013f07d31811bc4":[5,0,7,54,25], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a87bc362e1960d40e143ca9e473864fc8":[5,0,7,54,35], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8a85b98aeac8bd991dd63961b151da26":[5,0,7,54,10], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8f21a75da7290afe03f745722386a4bd":[5,0,7,54,7], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8f3edeec1bd9e4a10a56538b12d16ae2":[5,0,7,54,38], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a92723fc21111a93f2ccf96f4053ee391":[5,0,7,54,14], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a93e4751128f4a1ed3c9bab9735ed2943":[5,0,7,54,5], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9f823a1aec5ffdabecf01896ea0ce404":[5,0,7,54,29], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa42f6bbfe19b676cb38d21dc1e6e9a08":[5,0,7,54,4], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa4d2da801bb6222aa65e136064fd804b":[5,0,7,54,17], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa629cc0ad889c7d2e943a401e30413ed":[5,0,7,54,28], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa84e5227a01388b8357514d8145e94c9":[5,0,7,54,0], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#aaa458b7365660250cd85a9af2e872af0":[5,0,7,54,11], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab04332826010dfaaa8aae8a470f320ac":[5,0,7,54,31], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab55526582dfeaef202f25036588885a2":[5,0,7,54,36], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab80923d3c56d39306d878d23ab2d98e0":[5,0,7,54,26], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abc501d19f8a3813cfa9a7fe55c5a1dbc":[5,0,7,54,34], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abc6358c8fbbbcb7591ee95bc6323cfe7":[5,0,7,54,9], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#abd1e994f5264db8ed1261c80d8d2e586":[5,0,7,54,12], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac1cb0650098ea44f9eca43f2ffebc2a7":[5,0,7,54,32], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac94f8198a6564a27f668e56281799d30":[5,0,7,54,27], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad02250afca4908eac4ce4f665a7c2696":[5,0,7,54,18], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad67da1e8d326326a173e9daa609b840a":[5,0,7,54,6], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae37018f96acdf8a7b225f61291200f17":[5,0,7,54,33], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae90c43d796f8ffb160129a85c472ab97":[5,0,7,54,8], +"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#afb2996e8efa27fdc0ef8a6574abbadaf":[5,0,7,54,19], +"classscc_1_1sc__inout__opt.html":[5,0,7,55], +"classscc_1_1sc__inout__opt.html#a009c1e98f720c21586c544f53fd217ba":[5,0,7,55,25] }; diff --git a/develop/navtreeindex6.js b/develop/navtreeindex6.js index c0a1985b..9cf9c706 100644 --- a/develop/navtreeindex6.js +++ b/develop/navtreeindex6.js @@ -1,156 +1,150 @@ var NAVTREEINDEX6 = { -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad67da1e8d326326a173e9daa609b840a":[5,0,7,61,6], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae37018f96acdf8a7b225f61291200f17":[5,0,7,61,33], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae90c43d796f8ffb160129a85c472ab97":[5,0,7,61,8], -"classscc_1_1sc__in__opt_3_01sc__dt_1_1sc__logic_01_4.html#afb2996e8efa27fdc0ef8a6574abbadaf":[5,0,7,61,19], -"classscc_1_1sc__inout__opt.html":[5,0,7,62], -"classscc_1_1sc__inout__opt.html#a009c1e98f720c21586c544f53fd217ba":[5,0,7,62,25], -"classscc_1_1sc__inout__opt.html#a016fa8a6fc5e187aa52fb609f14889a3":[5,0,7,62,19], -"classscc_1_1sc__inout__opt.html#a0b7dd44918a468585d66285430dac129":[5,0,7,62,3], -"classscc_1_1sc__inout__opt.html#a12f0b446329367dcca450701b8693c3c":[5,0,7,62,18], -"classscc_1_1sc__inout__opt.html#a1f044189e16aab8bf98de880b638a68c":[5,0,7,62,21], -"classscc_1_1sc__inout__opt.html#a234939be32081957f5c5c1cf8322ba36":[5,0,7,62,2], -"classscc_1_1sc__inout__opt.html#a2738d7d28fbe0f1e1c0f64e4ac0daa6c":[5,0,7,62,12], -"classscc_1_1sc__inout__opt.html#a31263843e83964719447551716a4a0f9":[5,0,7,62,28], -"classscc_1_1sc__inout__opt.html#a34955da8b061b2f331387a394ab2fc3c":[5,0,7,62,33], -"classscc_1_1sc__inout__opt.html#a3f18aa4eae4da8c3fe3c826fd0433db3":[5,0,7,62,4], -"classscc_1_1sc__inout__opt.html#a41430f6efc502149b8e3b6ad695769d8":[5,0,7,62,1], -"classscc_1_1sc__inout__opt.html#a45e14b3ab30dee3a39fc692d5a567841":[5,0,7,62,16], -"classscc_1_1sc__inout__opt.html#a526b55a33226798050ef7ad82ac03aef":[5,0,7,62,9], -"classscc_1_1sc__inout__opt.html#a5c1281be3833562e106094a5df25735b":[5,0,7,62,13], -"classscc_1_1sc__inout__opt.html#a64ca3502a5534eec3a5e70056744771a":[5,0,7,62,6], -"classscc_1_1sc__inout__opt.html#a7716f1859642b4c01f27247284ac3cc3":[5,0,7,62,8], -"classscc_1_1sc__inout__opt.html#a7f4fc6310bded783c228c552889d33ac":[5,0,7,62,15], -"classscc_1_1sc__inout__opt.html#a81b73209c4283d2e47e42eee0f762843":[5,0,7,62,17], -"classscc_1_1sc__inout__opt.html#a9298ba5a89b9c4fabba531cd1ffe42cf":[5,0,7,62,31], -"classscc_1_1sc__inout__opt.html#a95bc49a4da2cfbf41645628e61f3958d":[5,0,7,62,27], -"classscc_1_1sc__inout__opt.html#a969eda7bc3a02031664302a2907e0245":[5,0,7,62,10], -"classscc_1_1sc__inout__opt.html#aa07066c21c0d5dc6feed74d14817a76f":[5,0,7,62,29], -"classscc_1_1sc__inout__opt.html#aaead6c067289ec4afd623106cb12b92a":[5,0,7,62,23], -"classscc_1_1sc__inout__opt.html#ab0b1fba3844d25d347e2b2be552940ec":[5,0,7,62,20], -"classscc_1_1sc__inout__opt.html#ab1a6aef6ad5a51c82723a74c24b3b0b0":[5,0,7,62,22], -"classscc_1_1sc__inout__opt.html#ab5a054fa7031d4e50e3dbd37e9cb3448":[5,0,7,62,5], -"classscc_1_1sc__inout__opt.html#aba8814b31b8165a93f26dcd53fe30be4":[5,0,7,62,26], -"classscc_1_1sc__inout__opt.html#ac39bc6165ff428d942619b5853d8df9a":[5,0,7,62,32], -"classscc_1_1sc__inout__opt.html#ac8a108aca04c2c503fce90e62c949047":[5,0,7,62,7], -"classscc_1_1sc__inout__opt.html#aeeb235f7fc678d4915d7033fff4f0c2d":[5,0,7,62,14], -"classscc_1_1sc__inout__opt.html#aef88e80fcc2a3aef497b7856a6f08b00":[5,0,7,62,30], -"classscc_1_1sc__inout__opt.html#af285a031936bae6f608ba67e6a7ef77d":[5,0,7,62,0], -"classscc_1_1sc__inout__opt.html#af47b867524b650867fc41b411ca4ee04":[5,0,7,62,24], -"classscc_1_1sc__inout__opt.html#afe1b6d6446f231b8eda67ae187225882":[5,0,7,62,11], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html":[5,0,7,63], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a0cf8561f5c33a952fb91347eb2655198":[5,0,7,63,4], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a12620bd0f1cddb179cece7bdcde3ca80":[5,0,7,63,19], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a131c79bbf4ebeb32c3afa59a05b40fdb":[5,0,7,63,22], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a16a5e567d3cb0c9768c6b94ef26ea6c3":[5,0,7,63,33], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a17bc12b0c5c5ec6228f609bada3018b4":[5,0,7,63,14], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a1a7e561cfc77abeb7ecf0ae198c52946":[5,0,7,63,30], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a359383a2bfed11eea866e1c702b6d574":[5,0,7,63,7], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a49c3b60c6d6c763018cfc298c0a04fff":[5,0,7,63,5], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a4f44adc09b4c1c73189c5befe054df76":[5,0,7,63,6], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a5b2029cb58031cbb56070c0fabe1f0b2":[5,0,7,63,17], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a690f36bd2a27f3c80196a82bf953eaec":[5,0,7,63,35], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a6dba440040f34e34a51864f80a700ad6":[5,0,7,63,34], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a71332131c3871ef2ab7336e42d43e03a":[5,0,7,63,37], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a720f33c501e4a420d51e1bb5b9d4cf58":[5,0,7,63,25], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a73af6e1fcbedeaf67d821b5a62b730f2":[5,0,7,63,1], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a79bb2267f5419a7d93cd5f11777bf659":[5,0,7,63,8], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7b2cca8c1fe4e76da7b9c5354281f91f":[5,0,7,63,20], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7d38f2b51eb7bae0f4a677d1f9f53d62":[5,0,7,63,12], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7ef52c5ebe3c1178ce4126cbded4a471":[5,0,7,63,29], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a800968ea8895cbca8dd91092c96a4813":[5,0,7,63,11], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a805979f1ac4a3d31b29013f4511acdba":[5,0,7,63,18], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a84a9eecffeb0238d8979abe180551fb6":[5,0,7,63,15], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a8c2e707e9a82051244ee6bebcccf2e76":[5,0,7,63,2], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a951b30e353938feb999b31686f3b2360":[5,0,7,63,32], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a980968def660224555a78ea196e86c10":[5,0,7,63,26], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a9d5dd105fca7bda0e6d4d50f03dd43d6":[5,0,7,63,27], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ab46aa025fdf0754ee3c24cda67e7cc18":[5,0,7,63,3], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#abad433d53b0886ff432d1576a0d897af":[5,0,7,63,31], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac06302b2655cd63054b02b17914f19b7":[5,0,7,63,0], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac4c8f786acabc874f3b4b5f3458eb1e5":[5,0,7,63,21], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac95ce8fbef6cafe44dcf088b92e1a13c":[5,0,7,63,36], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#acc2c199ee9c84dd4f0a8d27f54ca5f2a":[5,0,7,63,28], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ad3db89100bb4c9eac4bf92ccb24f1b37":[5,0,7,63,23], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ad7a5433305d4e336f58acde36ecabff4":[5,0,7,63,10], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae2579559af35b24e395e99d5d12c4f21":[5,0,7,63,9], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae47daae279119b189bb77cd1f9e1a023":[5,0,7,63,13], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae986972cfdb52472aea3179a719aa2ee":[5,0,7,63,24], -"classscc_1_1sc__inout__opt_3_01bool_01_4.html#aee86aa895f7c707700c4518ca35a40cb":[5,0,7,63,16], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html":[5,0,7,64], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a001ba3c476966f1b9b3a990acfd993c0":[5,0,7,64,14], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a03f30d59ead3401572807533f583f0ed":[5,0,7,64,2], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a06d692152b307f513b2574495ffc164c":[5,0,7,64,24], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0cdc213011104366878c08a7d8d9749b":[5,0,7,64,10], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a13ab7abd47ce445011f59b99194e630c":[5,0,7,64,21], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a1890aa0da3c9afca23e0bb0b65ef8f77":[5,0,7,64,18], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a1dc457617d60dfcda8d51d450efd226f":[5,0,7,64,33], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a2b69317b2e34517b4d119b5c3cd910b2":[5,0,7,64,8], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a2e1abe2a563de31081c06c37ea5e414e":[5,0,7,64,7], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3116138cdbc9ad06157f20093fc9b65c":[5,0,7,64,29], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3fb5e6cb68857dcf0167e04d657de0c6":[5,0,7,64,16], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a45445992e8be53330b9c4ad8834d629f":[5,0,7,64,4], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a51848fffa0227d4e0f4cee4a8a726801":[5,0,7,64,6], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a5285a54b127e95a10d415323f07c6975":[5,0,7,64,25], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a63e74544b83fc4fa7dddd3704e85d6a4":[5,0,7,64,36], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a6709cdc27dbe6d1b8f7b32d267bee2cd":[5,0,7,64,19], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a707850a69a686d2f4f4168bba971c43c":[5,0,7,64,17], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7ca38edea71a139b8f3f181d915f929d":[5,0,7,64,35], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a84aba4eb0bedbd3607aa48915ef1f826":[5,0,7,64,32], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8621e3a09b73b54426dad4dd29095dd9":[5,0,7,64,22], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9063b2c9a086d2d32984e7dddbb39a3c":[5,0,7,64,0], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9069c415c7b5b7ecdc664a88186e3506":[5,0,7,64,31], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a98526ffd84b90b3aa0c48318f5c43dcc":[5,0,7,64,26], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9f0d4ae54bc690fa628800c42bf81530":[5,0,7,64,27], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa18fe4282999470693bc4b8b6b701006":[5,0,7,64,30], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa2ccaf84379c116b6886137fc1b55813":[5,0,7,64,9], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab01bc331e110c98481f5e15099ef2c77":[5,0,7,64,1], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab6e18a99a6776a724c581fb72e3b3cff":[5,0,7,64,34], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac3b2c50e460d11363bc07c44dfa785b3":[5,0,7,64,37], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac9b3f86de00ed46dc24d070041111d46":[5,0,7,64,13], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#acfcadc7b2b72665135903c3172686a9b":[5,0,7,64,28], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad00eb0c692a99eae944c05dc445e7b28":[5,0,7,64,12], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae4220775853fec21cb4024ee3200f2b9":[5,0,7,64,5], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae52dd628cdf1131cc04bde304649bc90":[5,0,7,64,11], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae844b461209c984714dd9637d45cdef5":[5,0,7,64,3], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aeeac32b8b09e03fcb9a6a3aa165cc554":[5,0,7,64,15], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#af066a8a5cd0f6b6a2a2d21b95c56304b":[5,0,7,64,23], -"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#af6d4ef671bb5e640c8df048b8358030a":[5,0,7,64,20], -"classscc_1_1sc__out__opt.html":[5,0,7,65], -"classscc_1_1sc__out__opt.html#a08a40b3c0e9e8117bd3ddce8dd9e2a37":[5,0,7,65,17], -"classscc_1_1sc__out__opt.html#a12a7bf4e4966aa424d6bbc80236c606c":[5,0,7,65,18], -"classscc_1_1sc__out__opt.html#a26800506fb096940d99a235c5d1048f3":[5,0,7,65,5], -"classscc_1_1sc__out__opt.html#a2c82bfd1c4babf1ee46dd14b9bc762eb":[5,0,7,65,10], -"classscc_1_1sc__out__opt.html#a2fa4e9d7dcbb2156e36e555f2c280c21":[5,0,7,65,12], -"classscc_1_1sc__out__opt.html#a550c6bf46a185946b7650a3048cc0436":[5,0,7,65,21], -"classscc_1_1sc__out__opt.html#a61e2b24ef8bb34a1522f9b87d69d5722":[5,0,7,65,9], -"classscc_1_1sc__out__opt.html#a63eaeb95539463008a2a276c4c8e5684":[5,0,7,65,15], -"classscc_1_1sc__out__opt.html#a772bbb0960ccb6478ec177801385ab2a":[5,0,7,65,1], -"classscc_1_1sc__out__opt.html#a7b7fd11b1252ecc6f970aae980d5d49e":[5,0,7,65,13], -"classscc_1_1sc__out__opt.html#a7d52a04a49ab341d87b1996a21314495":[5,0,7,65,0], -"classscc_1_1sc__out__opt.html#a7e2f79bebdd566794bfbb18cf2cbb8ca":[5,0,7,65,3], -"classscc_1_1sc__out__opt.html#a872323d4b0ea4cc5906d67605c2b1938":[5,0,7,65,19], -"classscc_1_1sc__out__opt.html#a874d8e0a67f8efe2c206cd639c4a00ba":[5,0,7,65,6], -"classscc_1_1sc__out__opt.html#a924e24e44556891455b02888e4b0aa87":[5,0,7,65,8], -"classscc_1_1sc__out__opt.html#aba83b521bd2a26b684b9295d10fce93c":[5,0,7,65,11], -"classscc_1_1sc__out__opt.html#abae733153a136d522d2b7bdb46c06abc":[5,0,7,65,20], -"classscc_1_1sc__out__opt.html#ac45cc6032325b873c6e510d06ab31b11":[5,0,7,65,14], -"classscc_1_1sc__out__opt.html#add4962d86e144eb098ca3556ef982684":[5,0,7,65,2], -"classscc_1_1sc__out__opt.html#ae30aa44417a1158b270de1e28e99725c":[5,0,7,65,7], -"classscc_1_1sc__out__opt.html#af6a339aaffffd816ebb773906e51fd53":[5,0,7,65,16], -"classscc_1_1sc__out__opt.html#aff26e62d34e4bb2886b3bc341559e4ce":[5,0,7,65,4], -"classscc_1_1sc__owning__signal.html":[5,0,7,50], -"classscc_1_1sc__owning__signal.html#a3da2ad0d8eb5c91ac1e1f3aff223532d":[5,0,7,50,0], -"classscc_1_1sc__owning__signal.html#a3e19fc0d9a1da13b396ec96aa37eaaaf":[5,0,7,50,3], -"classscc_1_1sc__owning__signal.html#a55d4579df65d75955f4d756f88f01b67":[5,0,7,50,5], -"classscc_1_1sc__owning__signal.html#a5d024ba85d712fea9777eec81765bf98":[5,0,7,50,1], -"classscc_1_1sc__owning__signal.html#a7540fc8a9b5c078863ec966f814ee16f":[5,0,7,50,7], -"classscc_1_1sc__owning__signal.html#a75e49ff355ab0eabcfc799b4e9f1842d":[5,0,7,50,6], -"classscc_1_1sc__owning__signal.html#a7f35d4c29e0e7629097ff032ab13e998":[5,0,7,50,8], -"classscc_1_1sc__owning__signal.html#aa0d5c002fd1c6badfc01d12cafcb18a8":[5,0,7,50,2], -"classscc_1_1sc__owning__signal.html#ad654edac4470c2c00b6029c3f11a29c3":[5,0,7,50,4], -"classscc_1_1sc__owning__signal.html#afd2b6b29f6fde076f88fdf7c7cf54f43":[5,0,7,50,9], +"classscc_1_1sc__inout__opt.html#a016fa8a6fc5e187aa52fb609f14889a3":[5,0,7,55,19], +"classscc_1_1sc__inout__opt.html#a0b7dd44918a468585d66285430dac129":[5,0,7,55,3], +"classscc_1_1sc__inout__opt.html#a12f0b446329367dcca450701b8693c3c":[5,0,7,55,18], +"classscc_1_1sc__inout__opt.html#a1f044189e16aab8bf98de880b638a68c":[5,0,7,55,21], +"classscc_1_1sc__inout__opt.html#a234939be32081957f5c5c1cf8322ba36":[5,0,7,55,2], +"classscc_1_1sc__inout__opt.html#a2738d7d28fbe0f1e1c0f64e4ac0daa6c":[5,0,7,55,12], +"classscc_1_1sc__inout__opt.html#a31263843e83964719447551716a4a0f9":[5,0,7,55,28], +"classscc_1_1sc__inout__opt.html#a34955da8b061b2f331387a394ab2fc3c":[5,0,7,55,33], +"classscc_1_1sc__inout__opt.html#a3f18aa4eae4da8c3fe3c826fd0433db3":[5,0,7,55,4], +"classscc_1_1sc__inout__opt.html#a41430f6efc502149b8e3b6ad695769d8":[5,0,7,55,1], +"classscc_1_1sc__inout__opt.html#a45e14b3ab30dee3a39fc692d5a567841":[5,0,7,55,16], +"classscc_1_1sc__inout__opt.html#a526b55a33226798050ef7ad82ac03aef":[5,0,7,55,9], +"classscc_1_1sc__inout__opt.html#a5c1281be3833562e106094a5df25735b":[5,0,7,55,13], +"classscc_1_1sc__inout__opt.html#a64ca3502a5534eec3a5e70056744771a":[5,0,7,55,6], +"classscc_1_1sc__inout__opt.html#a7716f1859642b4c01f27247284ac3cc3":[5,0,7,55,8], +"classscc_1_1sc__inout__opt.html#a7f4fc6310bded783c228c552889d33ac":[5,0,7,55,15], +"classscc_1_1sc__inout__opt.html#a81b73209c4283d2e47e42eee0f762843":[5,0,7,55,17], +"classscc_1_1sc__inout__opt.html#a9298ba5a89b9c4fabba531cd1ffe42cf":[5,0,7,55,31], +"classscc_1_1sc__inout__opt.html#a95bc49a4da2cfbf41645628e61f3958d":[5,0,7,55,27], +"classscc_1_1sc__inout__opt.html#a969eda7bc3a02031664302a2907e0245":[5,0,7,55,10], +"classscc_1_1sc__inout__opt.html#aa07066c21c0d5dc6feed74d14817a76f":[5,0,7,55,29], +"classscc_1_1sc__inout__opt.html#aaead6c067289ec4afd623106cb12b92a":[5,0,7,55,23], +"classscc_1_1sc__inout__opt.html#ab0b1fba3844d25d347e2b2be552940ec":[5,0,7,55,20], +"classscc_1_1sc__inout__opt.html#ab1a6aef6ad5a51c82723a74c24b3b0b0":[5,0,7,55,22], +"classscc_1_1sc__inout__opt.html#ab5a054fa7031d4e50e3dbd37e9cb3448":[5,0,7,55,5], +"classscc_1_1sc__inout__opt.html#aba8814b31b8165a93f26dcd53fe30be4":[5,0,7,55,26], +"classscc_1_1sc__inout__opt.html#ac39bc6165ff428d942619b5853d8df9a":[5,0,7,55,32], +"classscc_1_1sc__inout__opt.html#ac8a108aca04c2c503fce90e62c949047":[5,0,7,55,7], +"classscc_1_1sc__inout__opt.html#aeeb235f7fc678d4915d7033fff4f0c2d":[5,0,7,55,14], +"classscc_1_1sc__inout__opt.html#aef88e80fcc2a3aef497b7856a6f08b00":[5,0,7,55,30], +"classscc_1_1sc__inout__opt.html#af285a031936bae6f608ba67e6a7ef77d":[5,0,7,55,0], +"classscc_1_1sc__inout__opt.html#af47b867524b650867fc41b411ca4ee04":[5,0,7,55,24], +"classscc_1_1sc__inout__opt.html#afe1b6d6446f231b8eda67ae187225882":[5,0,7,55,11], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html":[5,0,7,56], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a0cf8561f5c33a952fb91347eb2655198":[5,0,7,56,4], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a12620bd0f1cddb179cece7bdcde3ca80":[5,0,7,56,19], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a131c79bbf4ebeb32c3afa59a05b40fdb":[5,0,7,56,22], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a16a5e567d3cb0c9768c6b94ef26ea6c3":[5,0,7,56,33], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a17bc12b0c5c5ec6228f609bada3018b4":[5,0,7,56,14], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a1a7e561cfc77abeb7ecf0ae198c52946":[5,0,7,56,30], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a359383a2bfed11eea866e1c702b6d574":[5,0,7,56,7], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a49c3b60c6d6c763018cfc298c0a04fff":[5,0,7,56,5], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a4f44adc09b4c1c73189c5befe054df76":[5,0,7,56,6], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a5b2029cb58031cbb56070c0fabe1f0b2":[5,0,7,56,17], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a690f36bd2a27f3c80196a82bf953eaec":[5,0,7,56,35], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a6dba440040f34e34a51864f80a700ad6":[5,0,7,56,34], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a71332131c3871ef2ab7336e42d43e03a":[5,0,7,56,37], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a720f33c501e4a420d51e1bb5b9d4cf58":[5,0,7,56,25], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a73af6e1fcbedeaf67d821b5a62b730f2":[5,0,7,56,1], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a79bb2267f5419a7d93cd5f11777bf659":[5,0,7,56,8], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7b2cca8c1fe4e76da7b9c5354281f91f":[5,0,7,56,20], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7d38f2b51eb7bae0f4a677d1f9f53d62":[5,0,7,56,12], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a7ef52c5ebe3c1178ce4126cbded4a471":[5,0,7,56,29], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a800968ea8895cbca8dd91092c96a4813":[5,0,7,56,11], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a805979f1ac4a3d31b29013f4511acdba":[5,0,7,56,18], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a84a9eecffeb0238d8979abe180551fb6":[5,0,7,56,15], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a8c2e707e9a82051244ee6bebcccf2e76":[5,0,7,56,2], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a951b30e353938feb999b31686f3b2360":[5,0,7,56,32], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a980968def660224555a78ea196e86c10":[5,0,7,56,26], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#a9d5dd105fca7bda0e6d4d50f03dd43d6":[5,0,7,56,27], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ab46aa025fdf0754ee3c24cda67e7cc18":[5,0,7,56,3], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#abad433d53b0886ff432d1576a0d897af":[5,0,7,56,31], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac06302b2655cd63054b02b17914f19b7":[5,0,7,56,0], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac4c8f786acabc874f3b4b5f3458eb1e5":[5,0,7,56,21], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ac95ce8fbef6cafe44dcf088b92e1a13c":[5,0,7,56,36], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#acc2c199ee9c84dd4f0a8d27f54ca5f2a":[5,0,7,56,28], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ad3db89100bb4c9eac4bf92ccb24f1b37":[5,0,7,56,23], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ad7a5433305d4e336f58acde36ecabff4":[5,0,7,56,10], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae2579559af35b24e395e99d5d12c4f21":[5,0,7,56,9], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae47daae279119b189bb77cd1f9e1a023":[5,0,7,56,13], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#ae986972cfdb52472aea3179a719aa2ee":[5,0,7,56,24], +"classscc_1_1sc__inout__opt_3_01bool_01_4.html#aee86aa895f7c707700c4518ca35a40cb":[5,0,7,56,16], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html":[5,0,7,57], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a001ba3c476966f1b9b3a990acfd993c0":[5,0,7,57,14], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a03f30d59ead3401572807533f583f0ed":[5,0,7,57,2], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a06d692152b307f513b2574495ffc164c":[5,0,7,57,24], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a0cdc213011104366878c08a7d8d9749b":[5,0,7,57,10], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a13ab7abd47ce445011f59b99194e630c":[5,0,7,57,21], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a1890aa0da3c9afca23e0bb0b65ef8f77":[5,0,7,57,18], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a1dc457617d60dfcda8d51d450efd226f":[5,0,7,57,33], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a2b69317b2e34517b4d119b5c3cd910b2":[5,0,7,57,8], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a2e1abe2a563de31081c06c37ea5e414e":[5,0,7,57,7], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3116138cdbc9ad06157f20093fc9b65c":[5,0,7,57,29], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a3fb5e6cb68857dcf0167e04d657de0c6":[5,0,7,57,16], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a45445992e8be53330b9c4ad8834d629f":[5,0,7,57,4], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a51848fffa0227d4e0f4cee4a8a726801":[5,0,7,57,6], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a5285a54b127e95a10d415323f07c6975":[5,0,7,57,25], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a63e74544b83fc4fa7dddd3704e85d6a4":[5,0,7,57,36], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a6709cdc27dbe6d1b8f7b32d267bee2cd":[5,0,7,57,19], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a707850a69a686d2f4f4168bba971c43c":[5,0,7,57,17], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a7ca38edea71a139b8f3f181d915f929d":[5,0,7,57,35], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a84aba4eb0bedbd3607aa48915ef1f826":[5,0,7,57,32], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a8621e3a09b73b54426dad4dd29095dd9":[5,0,7,57,22], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9063b2c9a086d2d32984e7dddbb39a3c":[5,0,7,57,0], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9069c415c7b5b7ecdc664a88186e3506":[5,0,7,57,31], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a98526ffd84b90b3aa0c48318f5c43dcc":[5,0,7,57,26], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#a9f0d4ae54bc690fa628800c42bf81530":[5,0,7,57,27], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa18fe4282999470693bc4b8b6b701006":[5,0,7,57,30], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aa2ccaf84379c116b6886137fc1b55813":[5,0,7,57,9], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab01bc331e110c98481f5e15099ef2c77":[5,0,7,57,1], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ab6e18a99a6776a724c581fb72e3b3cff":[5,0,7,57,34], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac3b2c50e460d11363bc07c44dfa785b3":[5,0,7,57,37], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ac9b3f86de00ed46dc24d070041111d46":[5,0,7,57,13], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#acfcadc7b2b72665135903c3172686a9b":[5,0,7,57,28], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ad00eb0c692a99eae944c05dc445e7b28":[5,0,7,57,12], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae4220775853fec21cb4024ee3200f2b9":[5,0,7,57,5], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae52dd628cdf1131cc04bde304649bc90":[5,0,7,57,11], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#ae844b461209c984714dd9637d45cdef5":[5,0,7,57,3], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#aeeac32b8b09e03fcb9a6a3aa165cc554":[5,0,7,57,15], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#af066a8a5cd0f6b6a2a2d21b95c56304b":[5,0,7,57,23], +"classscc_1_1sc__inout__opt_3_01sc__dt_1_1sc__logic_01_4.html#af6d4ef671bb5e640c8df048b8358030a":[5,0,7,57,20], +"classscc_1_1sc__out__opt.html":[5,0,7,58], +"classscc_1_1sc__out__opt.html#a08a40b3c0e9e8117bd3ddce8dd9e2a37":[5,0,7,58,17], +"classscc_1_1sc__out__opt.html#a12a7bf4e4966aa424d6bbc80236c606c":[5,0,7,58,18], +"classscc_1_1sc__out__opt.html#a26800506fb096940d99a235c5d1048f3":[5,0,7,58,5], +"classscc_1_1sc__out__opt.html#a2c82bfd1c4babf1ee46dd14b9bc762eb":[5,0,7,58,10], +"classscc_1_1sc__out__opt.html#a2fa4e9d7dcbb2156e36e555f2c280c21":[5,0,7,58,12], +"classscc_1_1sc__out__opt.html#a550c6bf46a185946b7650a3048cc0436":[5,0,7,58,21], +"classscc_1_1sc__out__opt.html#a61e2b24ef8bb34a1522f9b87d69d5722":[5,0,7,58,9], +"classscc_1_1sc__out__opt.html#a63eaeb95539463008a2a276c4c8e5684":[5,0,7,58,15], +"classscc_1_1sc__out__opt.html#a772bbb0960ccb6478ec177801385ab2a":[5,0,7,58,1], +"classscc_1_1sc__out__opt.html#a7b7fd11b1252ecc6f970aae980d5d49e":[5,0,7,58,13], +"classscc_1_1sc__out__opt.html#a7d52a04a49ab341d87b1996a21314495":[5,0,7,58,0], +"classscc_1_1sc__out__opt.html#a7e2f79bebdd566794bfbb18cf2cbb8ca":[5,0,7,58,3], +"classscc_1_1sc__out__opt.html#a872323d4b0ea4cc5906d67605c2b1938":[5,0,7,58,19], +"classscc_1_1sc__out__opt.html#a874d8e0a67f8efe2c206cd639c4a00ba":[5,0,7,58,6], +"classscc_1_1sc__out__opt.html#a924e24e44556891455b02888e4b0aa87":[5,0,7,58,8], +"classscc_1_1sc__out__opt.html#aba83b521bd2a26b684b9295d10fce93c":[5,0,7,58,11], +"classscc_1_1sc__out__opt.html#abae733153a136d522d2b7bdb46c06abc":[5,0,7,58,20], +"classscc_1_1sc__out__opt.html#ac45cc6032325b873c6e510d06ab31b11":[5,0,7,58,14], +"classscc_1_1sc__out__opt.html#add4962d86e144eb098ca3556ef982684":[5,0,7,58,2], +"classscc_1_1sc__out__opt.html#ae30aa44417a1158b270de1e28e99725c":[5,0,7,58,7], +"classscc_1_1sc__out__opt.html#af6a339aaffffd816ebb773906e51fd53":[5,0,7,58,16], +"classscc_1_1sc__out__opt.html#aff26e62d34e4bb2886b3bc341559e4ce":[5,0,7,58,4], +"classscc_1_1sc__owning__signal.html":[5,0,7,43], +"classscc_1_1sc__owning__signal.html#a3da2ad0d8eb5c91ac1e1f3aff223532d":[5,0,7,43,0], +"classscc_1_1sc__owning__signal.html#a3e19fc0d9a1da13b396ec96aa37eaaaf":[5,0,7,43,3], +"classscc_1_1sc__owning__signal.html#a55d4579df65d75955f4d756f88f01b67":[5,0,7,43,5], +"classscc_1_1sc__owning__signal.html#a5d024ba85d712fea9777eec81765bf98":[5,0,7,43,1], +"classscc_1_1sc__owning__signal.html#a7540fc8a9b5c078863ec966f814ee16f":[5,0,7,43,7], +"classscc_1_1sc__owning__signal.html#a75e49ff355ab0eabcfc799b4e9f1842d":[5,0,7,43,6], +"classscc_1_1sc__owning__signal.html#a7f35d4c29e0e7629097ff032ab13e998":[5,0,7,43,8], +"classscc_1_1sc__owning__signal.html#aa0d5c002fd1c6badfc01d12cafcb18a8":[5,0,7,43,2], +"classscc_1_1sc__owning__signal.html#ad654edac4470c2c00b6029c3f11a29c3":[5,0,7,43,4], +"classscc_1_1sc__owning__signal.html#afd2b6b29f6fde076f88fdf7c7cf54f43":[5,0,7,43,9], "classscc_1_1sc__register__indexed.html":[5,0,7,6], "classscc_1_1sc__register__indexed.html#a036de3dbf7c9c5cebe5cc86472b9cd42":[5,0,7,6,7], "classscc_1_1sc__register__indexed.html#a1d94a8db3979e061d5d79ece209faf09":[5,0,7,6,12], @@ -168,31 +162,32 @@ var NAVTREEINDEX6 = "classscc_1_1sc__register__indexed.html#af31d634e8b9028cff36b7130476f650c":[5,0,7,6,10], "classscc_1_1sc__register__masked.html":[5,0,7,7], "classscc_1_1sc__register__masked.html#af9e64a7838ab901337f37d10db0ffb16":[5,0,7,7,0], -"classscc_1_1sc__thread__pool.html":[5,0,7,51], -"classscc_1_1sc__thread__pool.html#a1ae0dacb15ff4e65ae2b0b5d4e569b65":[5,0,7,51,2], -"classscc_1_1sc__thread__pool.html#a5df0c401e92858cac3fd1d7297d9ba20":[5,0,7,51,0], -"classscc_1_1sc__thread__pool.html#ac2bed106c27d4a43703385b9b0f4d619":[5,0,7,51,1], -"classscc_1_1sc__thread__pool.html#adc7e574ce9fe52b86187ce528dfdae09":[5,0,7,51,3], -"classscc_1_1stream__redirection.html":[5,0,7,47], -"classscc_1_1stream__redirection.html#a02f60007cb53ba38a7725ad12a96680b":[5,0,7,47,8], -"classscc_1_1stream__redirection.html#a1bc2c33e51ae0d7e59748b7816f7c0b9":[5,0,7,47,1], -"classscc_1_1stream__redirection.html#a1fae423b440cf656c7aefaa2e25efc48":[5,0,7,47,7], -"classscc_1_1stream__redirection.html#a28b4412342f6da1c3179aff1af21d2d3":[5,0,7,47,5], -"classscc_1_1stream__redirection.html#a323892996356db87de0490293205e3c6":[5,0,7,47,3], -"classscc_1_1stream__redirection.html#a675f98b7fd60fbfe02de265430472e02":[5,0,7,47,9], -"classscc_1_1stream__redirection.html#a6ce04c3a33b7fb2ae50f8ed0b74be42d":[5,0,7,47,4], -"classscc_1_1stream__redirection.html#a7088b6421b223b574d698e6c15bd3def":[5,0,7,47,11], -"classscc_1_1stream__redirection.html#a94126354b3e1b3c36bd464d22ec8a73b":[5,0,7,47,6], -"classscc_1_1stream__redirection.html#a98ddd308a4dc97af77b33c1238ee2b4e":[5,0,7,47,2], -"classscc_1_1stream__redirection.html#ac2b01ef40c78a158caaf885f93dec40c":[5,0,7,47,10], -"classscc_1_1stream__redirection.html#af5122c6b8fbe10efe8fd660547e95ba3":[5,0,7,47,0], +"classscc_1_1sc__thread__pool.html":[5,0,7,44], +"classscc_1_1sc__thread__pool.html#a1ae0dacb15ff4e65ae2b0b5d4e569b65":[5,0,7,44,2], +"classscc_1_1sc__thread__pool.html#a5df0c401e92858cac3fd1d7297d9ba20":[5,0,7,44,0], +"classscc_1_1sc__thread__pool.html#ac2bed106c27d4a43703385b9b0f4d619":[5,0,7,44,1], +"classscc_1_1sc__thread__pool.html#adc7e574ce9fe52b86187ce528dfdae09":[5,0,7,44,3], +"classscc_1_1stream__redirection.html":[5,0,7,40], +"classscc_1_1stream__redirection.html#a02f60007cb53ba38a7725ad12a96680b":[5,0,7,40,8], +"classscc_1_1stream__redirection.html#a1bc2c33e51ae0d7e59748b7816f7c0b9":[5,0,7,40,1], +"classscc_1_1stream__redirection.html#a1fae423b440cf656c7aefaa2e25efc48":[5,0,7,40,7], +"classscc_1_1stream__redirection.html#a28b4412342f6da1c3179aff1af21d2d3":[5,0,7,40,5], +"classscc_1_1stream__redirection.html#a323892996356db87de0490293205e3c6":[5,0,7,40,3], +"classscc_1_1stream__redirection.html#a675f98b7fd60fbfe02de265430472e02":[5,0,7,40,9], +"classscc_1_1stream__redirection.html#a6ce04c3a33b7fb2ae50f8ed0b74be42d":[5,0,7,40,4], +"classscc_1_1stream__redirection.html#a7088b6421b223b574d698e6c15bd3def":[5,0,7,40,11], +"classscc_1_1stream__redirection.html#a94126354b3e1b3c36bd464d22ec8a73b":[5,0,7,40,6], +"classscc_1_1stream__redirection.html#a98ddd308a4dc97af77b33c1238ee2b4e":[5,0,7,40,2], +"classscc_1_1stream__redirection.html#ac2b01ef40c78a158caaf885f93dec40c":[5,0,7,40,10], +"classscc_1_1stream__redirection.html#af5122c6b8fbe10efe8fd660547e95ba3":[5,0,7,40,0], "classscc_1_1ticking__clock.html":[5,0,7,3], "classscc_1_1ticking__clock.html#a4cb91bd0a564f6ced786b2b75b04aa8f":[5,0,7,3,2], "classscc_1_1ticking__clock.html#a689dd9093b4fd42c0cf82f400875f0f1":[5,0,7,3,0], "classscc_1_1ticking__clock.html#a7756f74eef8800739294d27979332100":[5,0,7,3,1], "classscc_1_1tickless__clock.html":[5,0,7,4], +"classscc_1_1tickless__clock.html#a21f2b9a8c27b7adf3f6be224c1fa7dc5":[5,0,7,4,1], "classscc_1_1tickless__clock.html#a58d1a6e05c8d6a070de172dfa36c067d":[5,0,7,4,0], -"classscc_1_1tickless__clock.html#acc806a6b4e68f07ab55230528d9d8b58":[5,0,7,4,1], +"classscc_1_1tickless__clock.html#acc806a6b4e68f07ab55230528d9d8b58":[5,0,7,4,2], "classscc_1_1tlm__target.html":[5,0,7,13], "classscc_1_1tlm__target.html#a117bd934898867078288e37d5941b9a7":[5,0,7,13,7], "classscc_1_1tlm__target.html#a26a14e2a32d595039b7d5094a12bc9a8":[5,0,7,13,3], @@ -237,17 +232,22 @@ var NAVTREEINDEX6 = "classscc_1_1trace_1_1gz__writer.html#ac17c2722bbc0c2f24a4d6189829e0f30":[5,0,7,2,3,3], "classscc_1_1trace_1_1gz__writer.html#ad0c83f9332887d1e9caf3657df439fa1":[5,0,7,2,3,4], "classscc_1_1trace_1_1gz__writer.html#ae42eb7ffb1e8161dcf5dd9e34cb52f0f":[5,0,7,2,3,2], -"classscc_1_1traceable.html":[5,0,7,68], -"classscc_1_1traceable.html#a1af8970cc881c520704bfb0440cbdbaf":[5,0,7,68,1], -"classscc_1_1traceable.html#acd66c57ddd0f7931bffa5baf29013bcf":[5,0,7,68,2], -"classscc_1_1traceable.html#afde2a0855aa2875f63b72b9db329551c":[5,0,7,68,0], -"classscc_1_1tracer.html":[5,0,7,69], -"classscc_1_1tracer.html#a0a212adb4280b8276607bad0ce3d5df1":[5,0,7,69,15], -"classscc_1_1tracer.html#a0a9b5a23c415dad3d02ca0a07d4af5b6":[5,0,7,69,4], -"classscc_1_1tracer.html#a225be8643d7469071dd98e95e2991178":[5,0,7,69,8], -"classscc_1_1tracer.html#a3544711d7f8b4452a75079cef13b8fb2":[5,0,7,69,7], -"classscc_1_1tracer.html#a37e144600236d8052ee8213242e552ae":[5,0,7,69,13], -"classscc_1_1tracer.html#a4bbd6bdb0af6b2d2e25a52246923ef40":[5,0,7,69,16], -"classscc_1_1tracer.html#a4f284c061d3b35d260d0df39e8fbf1cd":[5,0,7,69,1], -"classscc_1_1tracer.html#a5527f05a6e17ff54b4d0bc58a92b122d":[5,0,7,69,17] +"classscc_1_1traceable.html":[5,0,7,61], +"classscc_1_1traceable.html#a1af8970cc881c520704bfb0440cbdbaf":[5,0,7,61,1], +"classscc_1_1traceable.html#acd66c57ddd0f7931bffa5baf29013bcf":[5,0,7,61,2], +"classscc_1_1traceable.html#afde2a0855aa2875f63b72b9db329551c":[5,0,7,61,0], +"classscc_1_1tracer.html":[5,0,7,62], +"classscc_1_1tracer.html#a0a212adb4280b8276607bad0ce3d5df1":[5,0,7,62,15], +"classscc_1_1tracer.html#a0a9b5a23c415dad3d02ca0a07d4af5b6":[5,0,7,62,4], +"classscc_1_1tracer.html#a225be8643d7469071dd98e95e2991178":[5,0,7,62,8], +"classscc_1_1tracer.html#a3544711d7f8b4452a75079cef13b8fb2":[5,0,7,62,7], +"classscc_1_1tracer.html#a37e144600236d8052ee8213242e552ae":[5,0,7,62,13], +"classscc_1_1tracer.html#a4bbd6bdb0af6b2d2e25a52246923ef40":[5,0,7,62,16], +"classscc_1_1tracer.html#a4f284c061d3b35d260d0df39e8fbf1cd":[5,0,7,62,1], +"classscc_1_1tracer.html#a5527f05a6e17ff54b4d0bc58a92b122d":[5,0,7,62,17], +"classscc_1_1tracer.html#a5df99939fbd165eda9a8e6c71b6316f9":[5,0,7,62,11], +"classscc_1_1tracer.html#a7582da0578480d4aef7a367fd4415c3a":[5,0,7,62,14], +"classscc_1_1tracer.html#a8a3e17c07c7c191742d72c08b9ac2865":[5,0,7,62,10], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ce":[5,0,7,62,0], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea0e9e688e80cf58c16b85def53262e6f7":[5,0,7,62,0,10] }; diff --git a/develop/navtreeindex7.js b/develop/navtreeindex7.js index ab0049bb..d090b5eb 100644 --- a/develop/navtreeindex7.js +++ b/develop/navtreeindex7.js @@ -1,59 +1,54 @@ var NAVTREEINDEX7 = { -"classscc_1_1tracer.html#a5df99939fbd165eda9a8e6c71b6316f9":[5,0,7,69,11], -"classscc_1_1tracer.html#a7582da0578480d4aef7a367fd4415c3a":[5,0,7,69,14], -"classscc_1_1tracer.html#a8a3e17c07c7c191742d72c08b9ac2865":[5,0,7,69,10], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ce":[5,0,7,69,0], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea0e9e688e80cf58c16b85def53262e6f7":[5,0,7,69,0,10], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea113eceefb55f242f9f83304380f71ce3":[5,0,7,69,0,7], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea11d4c8b8466e051386f7c26e637e02fd":[5,0,7,69,0,13], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea265d1012f308bf8ff1c8f4a16d48dc6b":[5,0,7,69,0,2], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea29c3f1a5fdec2e4d110c9dcf637d7b5f":[5,0,7,69,0,0], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea31692a65e5e057026b5ac07540a9ac45":[5,0,7,69,0,3], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea622c22a4e923eac0a369fde57434e85a":[5,0,7,69,0,1], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea637fd28f81560350bbf29e3fba628152":[5,0,7,69,0,6], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea6d062539565a22a492eed807b215929a":[5,0,7,69,0,4], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea7e7ada40c34873b311398efaede82ed1":[5,0,7,69,0,11], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea9521360da95fa319a17724477e80314b":[5,0,7,69,0,12], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea9f097b0a71870a9485d94350e705a8bc":[5,0,7,69,0,5], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ceac7e336e80f5e9799d395f1ce113d075b":[5,0,7,69,0,8], -"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ceafca269b217502e0a19a68d05ebacd388":[5,0,7,69,0,9], -"classscc_1_1tracer.html#a933bd06d072597b3f1ced9bf9bebbef3":[5,0,7,69,5], -"classscc_1_1tracer.html#a9600023b7da5c818a76f2b2c50b739a7":[5,0,7,69,3], -"classscc_1_1tracer.html#aa731b1c9ada4f4ef44cc1c84eaf02a97":[5,0,7,69,9], -"classscc_1_1tracer.html#ab5e677557c706c0a422ec1cae2785364":[5,0,7,69,12], -"classscc_1_1tracer.html#ab750905ee61da060b61d17103724541e":[5,0,7,69,2], -"classscc_1_1tracer.html#af919b140de14d6510d8e233862317f60":[5,0,7,69,6], -"classscc_1_1tracer__base.html":[5,0,7,78], -"classscc_1_1tracer__base.html#a46c28f6f1f804b5d2d2cd37df7fd1600":[5,0,7,78,5], -"classscc_1_1tracer__base.html#a4f87fe3253de75384c35103c94d00628":[5,0,7,78,8], -"classscc_1_1tracer__base.html#a6a2ebee4379a80b0266d257582b8db0e":[5,0,7,78,10], -"classscc_1_1tracer__base.html#a6aec3d56e7e73c0cef1046164a250c6a":[5,0,7,78,1], -"classscc_1_1tracer__base.html#a9c05d4bdee7c23ee7b3328c1e6f89888":[5,0,7,78,6], -"classscc_1_1tracer__base.html#aa001f2732378922fbc4414fa8ae4bfa5":[5,0,7,78,0], -"classscc_1_1tracer__base.html#ab89161002098e41cd35933fe21680335":[5,0,7,78,9], -"classscc_1_1tracer__base.html#ab8d9773f1b0af44a8647b579b9920991":[5,0,7,78,4], -"classscc_1_1tracer__base.html#abe84fc98c6bb97f4071c14a19f531abf":[5,0,7,78,7], -"classscc_1_1tracer__base.html#acd704016de6f8bab88468ae4f0201420":[5,0,7,78,3], -"classscc_1_1tracer__base.html#af67c0e3931c52e0ed74f266c27ea5c58":[5,0,7,78,2], -"classscc_1_1value__registry.html":[5,0,7,81], -"classscc_1_1value__registry.html#a0b53f40d7cacadb2cafef79dc1483c38":[5,0,7,81,0], -"classscc_1_1value__registry.html#a2e5d2779fa6d5dde1ea9dfa597b1f3af":[5,0,7,81,2], -"classscc_1_1value__registry.html#ac0b5270563f3e9a6938490eee174665a":[5,0,7,81,1], -"classscc_1_1value__registry.html#ac3a2ccf3256d1913c1e41360bb48091a":[5,0,7,81,3], -"classscc_1_1value__registry.html#adeeff174be47ec9664efb6a79ddea834":[5,0,7,81,4], -"classscc_1_1value__registry__impl.html":[5,0,7,79], -"classscc_1_1value__registry__impl.html#a14d6dcfcf9ce4a26fd273daa8d725d22":[5,0,7,79,9], -"classscc_1_1value__registry__impl.html#a2719ef6244b4655d01554c95d7d0a99c":[5,0,7,79,3], -"classscc_1_1value__registry__impl.html#a2cddf76aa07d2b04bcb72207c63ec162":[5,0,7,79,1], -"classscc_1_1value__registry__impl.html#a54847dea495b8caafce2909fb1ee7c13":[5,0,7,79,10], -"classscc_1_1value__registry__impl.html#a63a9bfa7ba3e1d17560d439b18dd7124":[5,0,7,79,7], -"classscc_1_1value__registry__impl.html#a691a645add0e6ace3190a4bb5f4af848":[5,0,7,79,0], -"classscc_1_1value__registry__impl.html#a78fa4df077ea4c611947b62bda64dace":[5,0,7,79,2], -"classscc_1_1value__registry__impl.html#ab4d31d1ddced77938cca31977319c816":[5,0,7,79,6], -"classscc_1_1value__registry__impl.html#ab91e17705a2cf2227137f67d86d7ecf1":[5,0,7,79,4], -"classscc_1_1value__registry__impl.html#acda074a37cf48c626d82401667c58bae":[5,0,7,79,5], -"classscc_1_1value__registry__impl.html#ace76d508615fe361e22752073ab7793d":[5,0,7,79,8], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea113eceefb55f242f9f83304380f71ce3":[5,0,7,62,0,7], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea11d4c8b8466e051386f7c26e637e02fd":[5,0,7,62,0,13], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea265d1012f308bf8ff1c8f4a16d48dc6b":[5,0,7,62,0,2], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea29c3f1a5fdec2e4d110c9dcf637d7b5f":[5,0,7,62,0,0], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea31692a65e5e057026b5ac07540a9ac45":[5,0,7,62,0,3], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea622c22a4e923eac0a369fde57434e85a":[5,0,7,62,0,1], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea637fd28f81560350bbf29e3fba628152":[5,0,7,62,0,6], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea6d062539565a22a492eed807b215929a":[5,0,7,62,0,4], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea7e7ada40c34873b311398efaede82ed1":[5,0,7,62,0,11], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea9521360da95fa319a17724477e80314b":[5,0,7,62,0,12], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613cea9f097b0a71870a9485d94350e705a8bc":[5,0,7,62,0,5], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ceac7e336e80f5e9799d395f1ce113d075b":[5,0,7,62,0,8], +"classscc_1_1tracer.html#a8ba2e352a1b382212c1411fef82613ceafca269b217502e0a19a68d05ebacd388":[5,0,7,62,0,9], +"classscc_1_1tracer.html#a933bd06d072597b3f1ced9bf9bebbef3":[5,0,7,62,5], +"classscc_1_1tracer.html#a9600023b7da5c818a76f2b2c50b739a7":[5,0,7,62,3], +"classscc_1_1tracer.html#aa731b1c9ada4f4ef44cc1c84eaf02a97":[5,0,7,62,9], +"classscc_1_1tracer.html#ab5e677557c706c0a422ec1cae2785364":[5,0,7,62,12], +"classscc_1_1tracer.html#ab750905ee61da060b61d17103724541e":[5,0,7,62,2], +"classscc_1_1tracer.html#af919b140de14d6510d8e233862317f60":[5,0,7,62,6], +"classscc_1_1tracer__base.html":[5,0,7,71], +"classscc_1_1tracer__base.html#a46c28f6f1f804b5d2d2cd37df7fd1600":[5,0,7,71,5], +"classscc_1_1tracer__base.html#a4f87fe3253de75384c35103c94d00628":[5,0,7,71,8], +"classscc_1_1tracer__base.html#a6a2ebee4379a80b0266d257582b8db0e":[5,0,7,71,10], +"classscc_1_1tracer__base.html#a6aec3d56e7e73c0cef1046164a250c6a":[5,0,7,71,1], +"classscc_1_1tracer__base.html#a9c05d4bdee7c23ee7b3328c1e6f89888":[5,0,7,71,6], +"classscc_1_1tracer__base.html#aa001f2732378922fbc4414fa8ae4bfa5":[5,0,7,71,0], +"classscc_1_1tracer__base.html#ab89161002098e41cd35933fe21680335":[5,0,7,71,9], +"classscc_1_1tracer__base.html#ab8d9773f1b0af44a8647b579b9920991":[5,0,7,71,4], +"classscc_1_1tracer__base.html#abe84fc98c6bb97f4071c14a19f531abf":[5,0,7,71,7], +"classscc_1_1tracer__base.html#acd704016de6f8bab88468ae4f0201420":[5,0,7,71,3], +"classscc_1_1tracer__base.html#af67c0e3931c52e0ed74f266c27ea5c58":[5,0,7,71,2], +"classscc_1_1value__registry.html":[5,0,7,74], +"classscc_1_1value__registry.html#a0b53f40d7cacadb2cafef79dc1483c38":[5,0,7,74,0], +"classscc_1_1value__registry.html#a2e5d2779fa6d5dde1ea9dfa597b1f3af":[5,0,7,74,2], +"classscc_1_1value__registry.html#ac0b5270563f3e9a6938490eee174665a":[5,0,7,74,1], +"classscc_1_1value__registry.html#ac3a2ccf3256d1913c1e41360bb48091a":[5,0,7,74,3], +"classscc_1_1value__registry.html#adeeff174be47ec9664efb6a79ddea834":[5,0,7,74,4], +"classscc_1_1value__registry__impl.html":[5,0,7,72], +"classscc_1_1value__registry__impl.html#a14d6dcfcf9ce4a26fd273daa8d725d22":[5,0,7,72,9], +"classscc_1_1value__registry__impl.html#a2719ef6244b4655d01554c95d7d0a99c":[5,0,7,72,3], +"classscc_1_1value__registry__impl.html#a2cddf76aa07d2b04bcb72207c63ec162":[5,0,7,72,1], +"classscc_1_1value__registry__impl.html#a54847dea495b8caafce2909fb1ee7c13":[5,0,7,72,10], +"classscc_1_1value__registry__impl.html#a63a9bfa7ba3e1d17560d439b18dd7124":[5,0,7,72,7], +"classscc_1_1value__registry__impl.html#a691a645add0e6ace3190a4bb5f4af848":[5,0,7,72,0], +"classscc_1_1value__registry__impl.html#a78fa4df077ea4c611947b62bda64dace":[5,0,7,72,2], +"classscc_1_1value__registry__impl.html#ab4d31d1ddced77938cca31977319c816":[5,0,7,72,6], +"classscc_1_1value__registry__impl.html#ab91e17705a2cf2227137f67d86d7ecf1":[5,0,7,72,4], +"classscc_1_1value__registry__impl.html#acda074a37cf48c626d82401667c58bae":[5,0,7,72,5], +"classscc_1_1value__registry__impl.html#ace76d508615fe361e22752073ab7793d":[5,0,7,72,8], "classscp_1_1tlm__extensions_1_1initiator__id.html":[5,0,8,0,0], "classscp_1_1tlm__extensions_1_1initiator__id.html#a0c3ffa7be94b33a0ffa50ac7cf52c109":[5,0,8,0,0,6], "classscp_1_1tlm__extensions_1_1initiator__id.html#a0f3881d519e1e23537c6963befcae229":[5,0,8,0,0,10], @@ -249,5 +244,10 @@ var NAVTREEINDEX7 = "classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#aa4e7ee192da33085b08aa0689b8ae507":[5,0,11,0,2,6,5], "classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#aaf68ac59c2417aff4922ead23f2f3fac":[5,0,11,0,2,6,1], "classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ab199f4318b9ee7824f6ff02022302830":[5,0,11,0,2,6,15], -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ab3893a4e1a13ebca80ea79c0248bcf3a":[5,0,11,0,2,6,9] +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ab3893a4e1a13ebca80ea79c0248bcf3a":[5,0,11,0,2,6,9], +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ac7f9f7f75a9a942cf4c4f96ac34e2748":[5,0,11,0,2,6,2], +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#acb10aa49b4fe3684c32934e79bea2bde":[5,0,11,0,2,6,7], +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ad4cb39a2221d9ad0f6e844821953e131":[5,0,11,0,2,6,3], +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ae35fd634176c399faaeea05d82292d79":[5,0,11,0,2,6,13], +"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#af7257d8fda8bdbdd2218349d97d5d9eb":[5,0,11,0,2,6,11] }; diff --git a/develop/navtreeindex8.js b/develop/navtreeindex8.js index 163aaaf6..42710c93 100644 --- a/develop/navtreeindex8.js +++ b/develop/navtreeindex8.js @@ -1,10 +1,5 @@ var NAVTREEINDEX8 = { -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ac7f9f7f75a9a942cf4c4f96ac34e2748":[5,0,11,0,2,6,2], -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#acb10aa49b4fe3684c32934e79bea2bde":[5,0,11,0,2,6,7], -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ad4cb39a2221d9ad0f6e844821953e131":[5,0,11,0,2,6,3], -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#ae35fd634176c399faaeea05d82292d79":[5,0,11,0,2,6,13], -"classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#af7257d8fda8bdbdd2218349d97d5d9eb":[5,0,11,0,2,6,11], "classtlm_1_1scc_1_1scv_1_1tlm__rec__target__socket.html#af7666af4473c7f7f1b740dba95659141":[5,0,11,0,2,6,10], "classtlm_1_1scc_1_1scv_1_1tlm__recorder.html":[5,0,11,0,2,8], "classtlm_1_1scc_1_1scv_1_1tlm__recorder.html#a011d2b25d42d6c1110c03b5a0e226cde":[5,0,11,0,2,8,6], @@ -249,5 +244,10 @@ var NAVTREEINDEX8 = "classutil_1_1range__lut.html#a67ed97e57463275aba35f2f9987d8222":[5,0,12,10,14], "classutil_1_1range__lut.html#a7addfc426727f3daabba8d6c819da160":[5,0,12,10,1], "classutil_1_1range__lut.html#a7b7ad72a4d8d204f73e91b28264a9746":[5,0,12,10,9], -"classutil_1_1range__lut.html#ae10ec7cb5121b7d9719136c2fd40e9c4":[5,0,12,10,15] +"classutil_1_1range__lut.html#ae10ec7cb5121b7d9719136c2fd40e9c4":[5,0,12,10,15], +"classutil_1_1range__lut.html#ae15b0076effece78d601899869b92525":[5,0,12,10,8], +"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98e":[5,0,12,10,2], +"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98ea31f9749a7620ca6653b38b7042164a95":[5,0,12,10,2,2], +"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98ea7e99fb6c5b28a7c8bc3ff7bc676b2849":[5,0,12,10,2,1], +"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98eacf7fb6ab7c2e455f398a70a1836ced99":[5,0,12,10,2,0] }; diff --git a/develop/navtreeindex9.js b/develop/navtreeindex9.js index 0afb4d99..8a288843 100644 --- a/develop/navtreeindex9.js +++ b/develop/navtreeindex9.js @@ -1,10 +1,5 @@ var NAVTREEINDEX9 = { -"classutil_1_1range__lut.html#ae15b0076effece78d601899869b92525":[5,0,12,10,8], -"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98e":[5,0,12,10,2], -"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98ea31f9749a7620ca6653b38b7042164a95":[5,0,12,10,2,2], -"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98ea7e99fb6c5b28a7c8bc3ff7bc676b2849":[5,0,12,10,2,1], -"classutil_1_1range__lut.html#af0a2482a6758bd63bc610b424075a98eacf7fb6ab7c2e455f398a70a1836ced99":[5,0,12,10,2,0], "classutil_1_1range__lut.html#afaae1bf453a7ca473691dfd8d5d38e6d":[5,0,12,10,13], "classutil_1_1sparse__array.html":[5,0,12,11], "classutil_1_1sparse__array.html#a0b2229afb9be542d97237c5bfe5b5358":[5,0,12,11,1], @@ -57,11 +52,11 @@ var NAVTREEINDEX9 = "classutil_1_1watchdog.html#abcd7fc9f88948191b73e707562f8f732":[5,0,12,14,4], "clock__if__mixins_8h_source.html":[6,0,0,2,0,0], "common_2util_2mt19937__rng_8h_source.html":[6,0,0,1,0,8], -"configurable__tracer_8cpp_source.html":[6,0,0,3,0,5], -"configurable__tracer_8h_source.html":[6,0,0,3,0,6], -"configurer_8cpp_source.html":[6,0,0,3,0,7], -"configurer_8h_source.html":[6,0,0,3,0,8], -"configurer__nocci_8cpp_source.html":[6,0,0,3,0,9], +"configurable__tracer_8cpp_source.html":[6,0,0,3,0,6], +"configurable__tracer_8h_source.html":[6,0,0,3,0,7], +"configurer_8cpp_source.html":[6,0,0,3,0,8], +"configurer_8h_source.html":[6,0,0,3,0,9], +"configurer__nocci_8cpp_source.html":[6,0,0,3,0,10], "delegate_8h_source.html":[6,0,0,1,0,1], "deprecated.html":[2], "dir_0e219418303dc644f9d277f9c9d57d1a.html":[6,0,1,0,1], @@ -102,11 +97,12 @@ var NAVTREEINDEX9 = "dir_ecd2599f241f99e60c436470b0a1e2a4.html":[6,0,0,3], "dir_fdedb0aba14d44ce9d99bc100e026e6a.html":[6,0,0,1], "dir_ff9f1cc2327aca43a3ba2b9ea3b4cb19.html":[6,0,1,0,0,3], -"ext__attribute_8h_source.html":[6,0,0,3,0,10], -"fifo__w__cb_8h_source.html":[6,0,0,3,0,11], +"examples.html":[7], +"ext__attribute_8h_source.html":[6,0,0,3,0,11], +"fifo__w__cb_8h_source.html":[6,0,0,3,0,12], "files.html":[6,0], -"fst__trace_8cpp_source.html":[6,0,0,3,0,12], -"fst__trace_8hh_source.html":[6,0,0,3,0,13], +"fst__trace_8cpp_source.html":[6,0,0,3,0,13], +"fst__trace_8hh_source.html":[6,0,0,3,0,14], "functions.html":[5,3,0], "functions.html":[5,3,0,0], "functions_b.html":[5,3,0,1], @@ -115,8 +111,8 @@ var NAVTREEINDEX9 = "functions_e.html":[5,3,0,4], "functions_enum.html":[5,3,4], "functions_f.html":[5,3,0,5], -"functions_func.html":[5,3,1], "functions_func.html":[5,3,1,0], +"functions_func.html":[5,3,1], "functions_func_b.html":[5,3,1,1], "functions_func_c.html":[5,3,1,2], "functions_func_d.html":[5,3,1,3], @@ -163,8 +159,8 @@ var NAVTREEINDEX9 = "group__scc-sysc.html":[3,1], "gz__writer_8hh_source.html":[6,0,0,3,0,1,0], "hierarchy.html":[5,2], -"hierarchy__dumper_8cpp_source.html":[6,0,0,3,0,14], -"hierarchy__dumper_8h_source.html":[6,0,0,3,0,15], +"hierarchy__dumper_8cpp_source.html":[6,0,0,3,0,15], +"hierarchy__dumper_8h_source.html":[6,0,0,3,0,16], "index.html":[0], "index.html":[], "index.html#autotoc_md6":[0,0], @@ -186,7 +182,7 @@ var NAVTREEINDEX9 = "lz4__streambuf_8h_source.html":[6,0,0,1,0,7], "memory_8h_source.html":[6,0,0,2,0,1], "modules.html":[3], -"mt19937__rng_8cpp_source.html":[6,0,0,3,0,16], +"mt19937__rng_8cpp_source.html":[6,0,0,3,0,17], "namespaceahb.html":[4,0,0], "namespaceahb.html#a08df7812ac70b210c84b19ea00d4e75b":[4,0,0,7], "namespaceahb.html#a08df7812ac70b210c84b19ea00d4e75ba5826d2990481dd71b3e258ddf8435676":[4,0,0,7,3], @@ -249,5 +245,9 @@ var NAVTREEINDEX9 = "namespaceaxi.html#a3ac2b54867ed11253153275a95bf1ef6":[4,0,2,105], "namespaceaxi.html#a49361f4b5cd1c0260568de9d78f90fb8":[4,0,2,62], "namespaceaxi.html#a4c96bf76cb481bfecaf5bcc0cf7eaa58":[4,0,2,104], -"namespaceaxi.html#a4eeffc37861c128b179a8b0c73d5a893":[4,0,2,102] +"namespaceaxi.html#a4eeffc37861c128b179a8b0c73d5a893":[4,0,2,102], +"namespaceaxi.html#a54bdd4e158af6b6d86a26fcf03bb4edb":[4,0,2,94], +"namespaceaxi.html#a5569a48d81a31294a7c417b849a50c87":[4,0,2,125], +"namespaceaxi.html#a56b2be1513079d5f01cdc825df0d6bed":[4,0,2,116], +"namespaceaxi.html#a5e2c13adbf88ec6cd3f8bd36082a2613":[4,0,2,89] }; diff --git a/develop/obi_2pin_2target_8h_source.html b/develop/obi_2pin_2target_8h_source.html index dc442991..b11f45a9 100644 --- a/develop/obi_2pin_2target_8h_source.html +++ b/develop/obi_2pin_2target_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/obi__tlm_8h_source.html b/develop/obi__tlm_8h_source.html index b3be7fa8..621702f2 100644 --- a/develop/obi__tlm_8h_source.html +++ b/develop/obi__tlm_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/observer_8h_source.html b/develop/observer_8h_source.html index 60250dbd..13364214 100644 --- a/develop/observer_8h_source.html +++ b/develop/observer_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/ordered__semaphore_8cpp_source.html b/develop/ordered__semaphore_8cpp_source.html index 24086757..0b119ace 100644 --- a/develop/ordered__semaphore_8cpp_source.html +++ b/develop/ordered__semaphore_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/ordered__semaphore_8h_source.html b/develop/ordered__semaphore_8h_source.html index 5dc84afe..622d0a38 100644 --- a/develop/ordered__semaphore_8h_source.html +++ b/develop/ordered__semaphore_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/ordered__target_8cpp_source.html b/develop/ordered__target_8cpp_source.html index 56d19db5..b60db406 100644 --- a/develop/ordered__target_8cpp_source.html +++ b/develop/ordered__target_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/ordered__target_8h_source.html b/develop/ordered__target_8h_source.html index 38741f1a..6b7ae851 100644 --- a/develop/ordered__target_8h_source.html +++ b/develop/ordered__target_8h_source.html @@ -24,7 +24,7 @@ @@ -175,13 +175,13 @@
                                              scc::sc_attribute_randomized< int > & rd_resp_delay
                                              the latency between request and response phase. Will be overwritten by the return of the callback fun...
                                              scc::fifo_w_cb< std::tuple< tlm::tlm_generic_payload *, unsigned > > rd_req2resp_fifo
                                              queues realizing the min latency
                                              -
                                              cci::cci_param< double > total_bw_limit_byte_per_sec
                                              the bandwidth limit for read accesses
                                              +
                                              cci::cci_param< double > total_bw_limit_byte_per_sec
                                              the bandwidth limit for read accesses. A value of -1 disables the limiting
                                              void snoop_resp(tlm::tlm_generic_payload &payload, bool sync=false) override
                                              scc::sc_attribute_randomized< int > & wr_resp_delay
                                              the latency between request and response phase. Will be overwritten by the return of the callback fun...
                                              scc::fifo_w_cb< tlm::tlm_generic_payload * > rd_resp_fifo
                                              queues to handle bandwidth limit
                                              void transport(tlm::tlm_generic_payload &payload, bool lt_transport=false) override
                                              -
                                              cci::cci_param< double > rd_bw_limit_byte_per_sec
                                              the bandwidth limit for read accesses
                                              -
                                              cci::cci_param< double > wr_bw_limit_byte_per_sec
                                              the bandwidth limit for write accesses
                                              +
                                              cci::cci_param< double > rd_bw_limit_byte_per_sec
                                              the bandwidth limit for read accesses. A value of -1 disables the limiting
                                              +
                                              cci::cci_param< double > wr_bw_limit_byte_per_sec
                                              the bandwidth limit for write accesses. A value of -1 disables the limiting
                                              fifo with callbacks
                                              Definition: fifo_w_cb.h:38
                                              The ordered_semaphore primitive channel class.
                                              diff --git a/develop/pages.html b/develop/pages.html index d1fb409e..d0034a67 100644 --- a/develop/pages.html +++ b/develop/pages.html @@ -24,7 +24,7 @@ diff --git a/develop/parallel__pe_8cpp_source.html b/develop/parallel__pe_8cpp_source.html index 8f31549f..ff36fb19 100644 --- a/develop/parallel__pe_8cpp_source.html +++ b/develop/parallel__pe_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/parallel__pe_8h_source.html b/develop/parallel__pe_8h_source.html index 38315d9b..68dfaaeb 100644 --- a/develop/parallel__pe_8h_source.html +++ b/develop/parallel__pe_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/path__trace_8h_source.html b/develop/path__trace_8h_source.html index 7282fa68..a3e080dd 100644 --- a/develop/path__trace_8h_source.html +++ b/develop/path__trace_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/peq_8h_source.html b/develop/peq_8h_source.html index f45f4698..ed670468 100644 --- a/develop/peq_8h_source.html +++ b/develop/peq_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/perf__estimator_8cpp_source.html b/develop/perf__estimator_8cpp_source.html index 5e794099..8fcbd03b 100644 --- a/develop/perf__estimator_8cpp_source.html +++ b/develop/perf__estimator_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/perf__estimator_8h_source.html b/develop/perf__estimator_8h_source.html index 645e11fe..4d856b0e 100644 --- a/develop/perf__estimator_8h_source.html +++ b/develop/perf__estimator_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/pool__allocator_8h_source.html b/develop/pool__allocator_8h_source.html index 8d468e63..51bf9fd8 100644 --- a/develop/pool__allocator_8h_source.html +++ b/develop/pool__allocator_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/protocol__fsm_8h_source.html b/develop/protocol__fsm_8h_source.html index 908f85dc..1ecaaee3 100644 --- a/develop/protocol__fsm_8h_source.html +++ b/develop/protocol__fsm_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/range__lut_8h_source.html b/develop/range__lut_8h_source.html index 8b0873e7..84baceea 100644 --- a/develop/range__lut_8h_source.html +++ b/develop/range__lut_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/register_8h_source.html b/develop/register_8h_source.html index 73985633..48924f9a 100644 --- a/develop/register_8h_source.html +++ b/develop/register_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/reordering__target_8cpp_source.html b/develop/reordering__target_8cpp_source.html index 4968a344..63d11ce8 100644 --- a/develop/reordering__target_8cpp_source.html +++ b/develop/reordering__target_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/reordering__target_8h_source.html b/develop/reordering__target_8h_source.html index 2e66960d..68b2036c 100644 --- a/develop/reordering__target_8h_source.html +++ b/develop/reordering__target_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/report_8cpp_source.html b/develop/report_8cpp_source.html index dcb20ff8..1c9be4fc 100644 --- a/develop/report_8cpp_source.html +++ b/develop/report_8cpp_source.html @@ -24,7 +24,7 @@ @@ -490,189 +490,193 @@
                                              423  }
                                              424 }
                                              425 
                                              -
                                              426 void scc::reinit_logging(scc::log level) {
                                              -
                                              427  if(log_cfg.install_handler)
                                              -
                                              428  sc_report_handler::set_handler(report_handler);
                                              -
                                              429  log_cfg.level = level;
                                              -
                                              430  lut.clear();
                                              -
                                              431  if(!log_cfg.instance_based_log_levels || getenv("SCC_DISABLE_INSTANCE_BASED_LOGGING"))
                                              -
                                              432  inst_based_logging() = false;
                                              -
                                              433  log_cfg.initialized = true;
                                              -
                                              434 }
                                              -
                                              435 
                                              -
                                              436 bool scc::is_logging_initialized() { return log_cfg.initialized; }
                                              -
                                              437 
                                              -
                                              438 void scc::init_logging(scc::log level, unsigned type_field_width, bool print_time) {
                                              -
                                              439  log_cfg.msg_type_field_width = type_field_width;
                                              -
                                              440  log_cfg.print_sys_time = print_time;
                                              -
                                              441  log_cfg.level = level;
                                              -
                                              442  configure_logging();
                                              -
                                              443  log_cfg.initialized = true;
                                              -
                                              444 }
                                              -
                                              445 
                                              -
                                              446 void scc::init_logging(const scc::LogConfig& log_config) {
                                              -
                                              447  log_cfg = log_config;
                                              -
                                              448  configure_logging();
                                              -
                                              449  log_cfg.initialized = true;
                                              -
                                              450 }
                                              -
                                              451 
                                              - -
                                              453  log_cfg.level = level;
                                              -
                                              454  sc_report_handler::set_verbosity_level(verbosity[static_cast<unsigned>(level)]);
                                              -
                                              455  log_cfg.console_logger->set_level(
                                              -
                                              456  static_cast<spdlog::level::level_enum>(SPDLOG_LEVEL_OFF - min<int>(SPDLOG_LEVEL_OFF, static_cast<int>(log_cfg.level))));
                                              -
                                              457  log_cfg.initialized = true;
                                              -
                                              458 }
                                              -
                                              459 
                                              -
                                              460 auto scc::get_logging_level() -> scc::log { return log_cfg.level; }
                                              -
                                              461 
                                              -
                                              462 void scc::set_cycle_base(sc_time period) { log_cfg.cycle_base = period; }
                                              +
                                              426 void scc::reinit_logging() {
                                              +
                                              427  reinit_logging(log_cfg.level);
                                              +
                                              428 }
                                              +
                                              429 
                                              +
                                              430 void scc::reinit_logging(scc::log level) {
                                              +
                                              431  if(log_cfg.install_handler)
                                              +
                                              432  sc_report_handler::set_handler(report_handler);
                                              +
                                              433  log_cfg.level = level;
                                              +
                                              434  lut.clear();
                                              +
                                              435  if(!log_cfg.instance_based_log_levels || getenv("SCC_DISABLE_INSTANCE_BASED_LOGGING"))
                                              +
                                              436  inst_based_logging() = false;
                                              +
                                              437  log_cfg.initialized = true;
                                              +
                                              438 }
                                              +
                                              439 
                                              +
                                              440 bool scc::is_logging_initialized() { return log_cfg.initialized; }
                                              +
                                              441 
                                              +
                                              442 void scc::init_logging(scc::log level, unsigned type_field_width, bool print_time) {
                                              +
                                              443  log_cfg.msg_type_field_width = type_field_width;
                                              +
                                              444  log_cfg.print_sys_time = print_time;
                                              +
                                              445  log_cfg.level = level;
                                              +
                                              446  configure_logging();
                                              +
                                              447  log_cfg.initialized = true;
                                              +
                                              448 }
                                              +
                                              449 
                                              +
                                              450 void scc::init_logging(const scc::LogConfig& log_config) {
                                              +
                                              451  log_cfg = log_config;
                                              +
                                              452  configure_logging();
                                              +
                                              453  log_cfg.initialized = true;
                                              +
                                              454 }
                                              +
                                              455 
                                              + +
                                              457  log_cfg.level = level;
                                              +
                                              458  sc_report_handler::set_verbosity_level(verbosity[static_cast<unsigned>(level)]);
                                              +
                                              459  log_cfg.console_logger->set_level(
                                              +
                                              460  static_cast<spdlog::level::level_enum>(SPDLOG_LEVEL_OFF - min<int>(SPDLOG_LEVEL_OFF, static_cast<int>(log_cfg.level))));
                                              +
                                              461  log_cfg.initialized = true;
                                              +
                                              462 }
                                              463 
                                              - -
                                              465  this->level = level;
                                              -
                                              466  return *this;
                                              -
                                              467 }
                                              -
                                              468 
                                              - -
                                              470  this->msg_type_field_width = width;
                                              -
                                              471  return *this;
                                              -
                                              472 }
                                              -
                                              473 
                                              - -
                                              475  this->print_sys_time = enable;
                                              -
                                              476  return *this;
                                              -
                                              477 }
                                              -
                                              478 
                                              - -
                                              480  this->print_sim_time = enable;
                                              -
                                              481  return *this;
                                              -
                                              482 }
                                              -
                                              483 
                                              - -
                                              485  this->print_delta = enable;
                                              -
                                              486  return *this;
                                              -
                                              487 }
                                              -
                                              488 
                                              - -
                                              490  this->print_severity = enable;
                                              -
                                              491  return *this;
                                              -
                                              492 }
                                              -
                                              493 
                                              -
                                              494 auto scc::LogConfig::logFileName(string&& name) -> scc::LogConfig& {
                                              -
                                              495  this->log_file_name = name;
                                              -
                                              496  return *this;
                                              -
                                              497 }
                                              -
                                              498 
                                              -
                                              499 auto scc::LogConfig::logFileName(const string& name) -> scc::LogConfig& {
                                              -
                                              500  this->log_file_name = name;
                                              -
                                              501  return *this;
                                              -
                                              502 }
                                              -
                                              503 
                                              - -
                                              505  this->colored_output = enable;
                                              -
                                              506  return *this;
                                              -
                                              507 }
                                              -
                                              508 
                                              -
                                              509 auto scc::LogConfig::logFilterRegex(string&& expr) -> scc::LogConfig& {
                                              -
                                              510  this->log_filter_regex = expr;
                                              -
                                              511  return *this;
                                              -
                                              512 }
                                              -
                                              513 
                                              -
                                              514 auto scc::LogConfig::logFilterRegex(const string& expr) -> scc::LogConfig& {
                                              -
                                              515  this->log_filter_regex = expr;
                                              -
                                              516  return *this;
                                              -
                                              517 }
                                              -
                                              518 
                                              - -
                                              520  this->log_async = v;
                                              -
                                              521  return *this;
                                              -
                                              522 }
                                              -
                                              523 
                                              - -
                                              525  this->dont_create_broker = v;
                                              -
                                              526  return *this;
                                              -
                                              527 }
                                              -
                                              528 
                                              - -
                                              530  this->report_only_first_error = v;
                                              -
                                              531  return *this;
                                              -
                                              532 }
                                              - -
                                              534  this->instance_based_log_levels = v;
                                              +
                                              464 auto scc::get_logging_level() -> scc::log { return log_cfg.level; }
                                              +
                                              465 
                                              +
                                              466 void scc::set_cycle_base(sc_time period) { log_cfg.cycle_base = period; }
                                              +
                                              467 
                                              + +
                                              469  this->level = level;
                                              +
                                              470  return *this;
                                              +
                                              471 }
                                              +
                                              472 
                                              + +
                                              474  this->msg_type_field_width = width;
                                              +
                                              475  return *this;
                                              +
                                              476 }
                                              +
                                              477 
                                              + +
                                              479  this->print_sys_time = enable;
                                              +
                                              480  return *this;
                                              +
                                              481 }
                                              +
                                              482 
                                              + +
                                              484  this->print_sim_time = enable;
                                              +
                                              485  return *this;
                                              +
                                              486 }
                                              +
                                              487 
                                              + +
                                              489  this->print_delta = enable;
                                              +
                                              490  return *this;
                                              +
                                              491 }
                                              +
                                              492 
                                              + +
                                              494  this->print_severity = enable;
                                              +
                                              495  return *this;
                                              +
                                              496 }
                                              +
                                              497 
                                              +
                                              498 auto scc::LogConfig::logFileName(string&& name) -> scc::LogConfig& {
                                              +
                                              499  this->log_file_name = name;
                                              +
                                              500  return *this;
                                              +
                                              501 }
                                              +
                                              502 
                                              +
                                              503 auto scc::LogConfig::logFileName(const string& name) -> scc::LogConfig& {
                                              +
                                              504  this->log_file_name = name;
                                              +
                                              505  return *this;
                                              +
                                              506 }
                                              +
                                              507 
                                              + +
                                              509  this->colored_output = enable;
                                              +
                                              510  return *this;
                                              +
                                              511 }
                                              +
                                              512 
                                              +
                                              513 auto scc::LogConfig::logFilterRegex(string&& expr) -> scc::LogConfig& {
                                              +
                                              514  this->log_filter_regex = expr;
                                              +
                                              515  return *this;
                                              +
                                              516 }
                                              +
                                              517 
                                              +
                                              518 auto scc::LogConfig::logFilterRegex(const string& expr) -> scc::LogConfig& {
                                              +
                                              519  this->log_filter_regex = expr;
                                              +
                                              520  return *this;
                                              +
                                              521 }
                                              +
                                              522 
                                              + +
                                              524  this->log_async = v;
                                              +
                                              525  return *this;
                                              +
                                              526 }
                                              +
                                              527 
                                              + +
                                              529  this->dont_create_broker = v;
                                              +
                                              530  return *this;
                                              +
                                              531 }
                                              +
                                              532 
                                              + +
                                              534  this->report_only_first_error = v;
                                              535  return *this;
                                              536 }
                                              - -
                                              538  this->install_handler = v;
                                              + +
                                              538  this->instance_based_log_levels = v;
                                              539  return *this;
                                              540 }
                                              -
                                              541 
                                              -
                                              542 auto scc::get_log_verbosity(char const* str) -> sc_core::sc_verbosity {
                                              -
                                              543  if(inst_based_logging()) {
                                              -
                                              544  auto it = lut.table.find(str);
                                              -
                                              545  if(it != lut.table.end())
                                              -
                                              546  return it->second;
                                              -
                                              547  if(strchr(str, '.') == nullptr || sc_core::sc_get_current_object()) {
                                              -
                                              548  string current_name = std::string(str);
                                              -
                                              549  auto broker = sc_core::sc_get_current_object() ? cci::cci_get_broker() : cci::cci_get_global_broker(originator);
                                              -
                                              550  while(true) {
                                              -
                                              551  string param_name = (current_name.empty()) ? SCC_LOG_LEVEL_PARAM_NAME : current_name + "." SCC_LOG_LEVEL_PARAM_NAME;
                                              -
                                              552  auto h = broker.get_param_handle(param_name);
                                              -
                                              553  if(h.is_valid()) {
                                              -
                                              554  sc_core::sc_verbosity ret = verbosity.at(std::min<unsigned>(h.get_cci_value().get_int(), verbosity.size() - 1));
                                              -
                                              555  lut.insert(str, ret);
                                              -
                                              556  return ret;
                                              -
                                              557  } else {
                                              -
                                              558  auto val = broker.get_preset_cci_value(param_name);
                                              -
                                              559  if(val.is_int()) {
                                              -
                                              560  sc_core::sc_verbosity ret = verbosity.at(std::min<unsigned>(val.get_int(), verbosity.size() - 1));
                                              -
                                              561  lut.insert(str, ret);
                                              -
                                              562  return ret;
                                              -
                                              563  } else {
                                              -
                                              564  if(current_name.empty()) {
                                              -
                                              565  sc_core::sc_verbosity ret =
                                              -
                                              566  static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              -
                                              567  lut.insert(str, ret);
                                              -
                                              568  return ret;
                                              -
                                              569  }
                                              -
                                              570  auto pos = current_name.rfind(".");
                                              -
                                              571  if(pos == std::string::npos) {
                                              -
                                              572  current_name = "";
                                              -
                                              573  } else {
                                              -
                                              574  current_name = current_name.substr(0, pos);
                                              -
                                              575  }
                                              -
                                              576  }
                                              -
                                              577  }
                                              -
                                              578  }
                                              -
                                              579  }
                                              -
                                              580  }
                                              -
                                              581  return static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              -
                                              582 }
                                              + +
                                              542  this->install_handler = v;
                                              +
                                              543  return *this;
                                              +
                                              544 }
                                              +
                                              545 
                                              +
                                              546 auto scc::get_log_verbosity(char const* str) -> sc_core::sc_verbosity {
                                              +
                                              547  if(inst_based_logging()) {
                                              +
                                              548  auto it = lut.table.find(str);
                                              +
                                              549  if(it != lut.table.end())
                                              +
                                              550  return it->second;
                                              +
                                              551  if(strchr(str, '.') == nullptr || sc_core::sc_get_current_object()) {
                                              +
                                              552  string current_name = std::string(str);
                                              +
                                              553  auto broker = sc_core::sc_get_current_object() ? cci::cci_get_broker() : cci::cci_get_global_broker(originator);
                                              +
                                              554  while(true) {
                                              +
                                              555  string param_name = (current_name.empty()) ? SCC_LOG_LEVEL_PARAM_NAME : current_name + "." SCC_LOG_LEVEL_PARAM_NAME;
                                              +
                                              556  auto h = broker.get_param_handle(param_name);
                                              +
                                              557  if(h.is_valid()) {
                                              +
                                              558  sc_core::sc_verbosity ret = verbosity.at(std::min<unsigned>(h.get_cci_value().get_int(), verbosity.size() - 1));
                                              +
                                              559  lut.insert(str, ret);
                                              +
                                              560  return ret;
                                              +
                                              561  } else {
                                              +
                                              562  auto val = broker.get_preset_cci_value(param_name);
                                              +
                                              563  if(val.is_int()) {
                                              +
                                              564  sc_core::sc_verbosity ret = verbosity.at(std::min<unsigned>(val.get_int(), verbosity.size() - 1));
                                              +
                                              565  lut.insert(str, ret);
                                              +
                                              566  return ret;
                                              +
                                              567  } else {
                                              +
                                              568  if(current_name.empty()) {
                                              +
                                              569  sc_core::sc_verbosity ret =
                                              +
                                              570  static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              +
                                              571  lut.insert(str, ret);
                                              +
                                              572  return ret;
                                              +
                                              573  }
                                              +
                                              574  auto pos = current_name.rfind(".");
                                              +
                                              575  if(pos == std::string::npos) {
                                              +
                                              576  current_name = "";
                                              +
                                              577  } else {
                                              +
                                              578  current_name = current_name.substr(0, pos);
                                              +
                                              579  }
                                              +
                                              580  }
                                              +
                                              581  }
                                              +
                                              582  }
                                              +
                                              583  }
                                              +
                                              584  }
                                              +
                                              585  return static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              +
                                              586 }
                                              ~stream_redirection()
                                              destructor restoring the output stream buffer
                                              Definition: report.cpp:322
                                              void reset()
                                              reset the stream redirection and restore output buffer of the stream
                                              Definition: report.cpp:326
                                              stream_redirection(std::ostream &os, log level)
                                              constructor redirecting the given stream to a SystemC log message of given llog level
                                              SCC SystemC utilities.
                                              -
                                              bool is_logging_initialized()
                                              get the state of the SCC logging system
                                              Definition: report.cpp:436
                                              -
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:452
                                              -
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:438
                                              -
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:460
                                              +
                                              bool is_logging_initialized()
                                              get the state of the SCC logging system
                                              Definition: report.cpp:440
                                              +
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:456
                                              +
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:442
                                              +
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:464
                                              void set_cycle_base(sc_core::sc_time period)
                                              sets the cycle base for cycle based logging
                                              -
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:308
                                              -
                                              log
                                              enum defining the log levels
                                              Definition: report.h:84
                                              +
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:318
                                              +
                                              log
                                              enum defining the log levels
                                              Definition: report.h:85
                                              std::string padded(std::string str, size_t width, bool show_ellipsis=true)
                                              pad a string to a given length by either cutting of the overflow or inserting an ellipsis
                                              Definition: ities.h:324
                                              -
                                              the configuration class for the logging setup
                                              Definition: report.h:152
                                              -
                                              LogConfig & printSeverity(bool=true)
                                              Definition: report.cpp:489
                                              -
                                              LogConfig & printSysTime(bool=true)
                                              Definition: report.cpp:474
                                              +
                                              the configuration class for the logging setup
                                              Definition: report.h:162
                                              +
                                              LogConfig & printSeverity(bool=true)
                                              Definition: report.cpp:493
                                              +
                                              LogConfig & printSysTime(bool=true)
                                              Definition: report.cpp:478
                                              LogConfig & logFilterRegex(std::string &&)
                                              -
                                              LogConfig & reportOnlyFirstError(bool=true)
                                              Definition: report.cpp:529
                                              -
                                              LogConfig & coloredOutput(bool=true)
                                              Definition: report.cpp:504
                                              -
                                              LogConfig & dontCreateBroker(bool=true)
                                              Definition: report.cpp:524
                                              -
                                              LogConfig & logLevel(log)
                                              Definition: report.cpp:464
                                              -
                                              LogConfig & msgTypeFieldWidth(unsigned)
                                              Definition: report.cpp:469
                                              -
                                              LogConfig & printSimTime(bool=true)
                                              Definition: report.cpp:479
                                              -
                                              LogConfig & logAsync(bool=true)
                                              Definition: report.cpp:519
                                              -
                                              LogConfig & printDelta(bool=true)
                                              Definition: report.cpp:484
                                              -
                                              LogConfig & instanceBasedLogLevels(bool=true)
                                              Definition: report.cpp:533
                                              -
                                              LogConfig & installHandler(bool=true)
                                              Definition: report.cpp:537
                                              +
                                              LogConfig & reportOnlyFirstError(bool=true)
                                              Definition: report.cpp:533
                                              +
                                              LogConfig & coloredOutput(bool=true)
                                              Definition: report.cpp:508
                                              +
                                              LogConfig & dontCreateBroker(bool=true)
                                              Definition: report.cpp:528
                                              +
                                              LogConfig & logLevel(log)
                                              Definition: report.cpp:468
                                              +
                                              LogConfig & msgTypeFieldWidth(unsigned)
                                              Definition: report.cpp:473
                                              +
                                              LogConfig & printSimTime(bool=true)
                                              Definition: report.cpp:483
                                              +
                                              LogConfig & logAsync(bool=true)
                                              Definition: report.cpp:523
                                              +
                                              LogConfig & printDelta(bool=true)
                                              Definition: report.cpp:488
                                              +
                                              LogConfig & instanceBasedLogLevels(bool=true)
                                              Definition: report.cpp:537
                                              +
                                              LogConfig & installHandler(bool=true)
                                              Definition: report.cpp:541
                                              LogConfig & logFileName(std::string &&)
                                              diff --git a/develop/resetable_8h_source.html b/develop/resetable_8h_source.html index 2a29b9d8..d42cd23e 100644 --- a/develop/resetable_8h_source.html +++ b/develop/resetable_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/resource__access__if_8h_source.html b/develop/resource__access__if_8h_source.html index 379c9b49..17b3db72 100644 --- a/develop/resource__access__if_8h_source.html +++ b/develop/resource__access__if_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/router_8h_source.html b/develop/router_8h_source.html index e3c4ac98..0f994234 100644 --- a/develop/router_8h_source.html +++ b/develop/router_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__attribute__randomized_8h_source.html b/develop/sc__attribute__randomized_8h_source.html index 2b8ef673..da88b0e3 100644 --- a/develop/sc__attribute__randomized_8h_source.html +++ b/develop/sc__attribute__randomized_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__clock__ext_8h_source.html b/develop/sc__clock__ext_8h_source.html index 4df62081..1cc65ee0 100644 --- a/develop/sc__clock__ext_8h_source.html +++ b/develop/sc__clock__ext_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__logic__7_8cpp_source.html b/develop/sc__logic__7_8cpp_source.html index ba9837eb..5620bd34 100644 --- a/develop/sc__logic__7_8cpp_source.html +++ b/develop/sc__logic__7_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__logic__7_8h_source.html b/develop/sc__logic__7_8h_source.html index 50d09f02..b6fbe5f7 100644 --- a/develop/sc__logic__7_8h_source.html +++ b/develop/sc__logic__7_8h_source.html @@ -24,7 +24,7 @@ @@ -349,9 +349,9 @@
                                              288 #endif /* INCL_SYSC_CORE_SC_LOGIC_7_H_ */
                                              SCC SystemC utilities.
                                              -
                                              std::istream & operator>>(std::istream &is, log &val)
                                              read a log level from input stream e.g. used by boost::lexical_cast
                                              Definition: report.h:105
                                              +
                                              std::istream & operator>>(std::istream &is, log &val)
                                              read a log level from input stream e.g. used by boost::lexical_cast
                                              Definition: report.h:113
                                              trace_types operator&(trace_types lhs, trace_types rhs)
                                              operator overload to allow boolean and operations on trace_types
                                              Definition: tracer_base.h:62
                                              -
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:124
                                              +
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:130
                                              trace_types operator|(trace_types lhs, trace_types rhs)
                                              operator overload to allow boolean or operations on trace_types
                                              Definition: tracer_base.h:51
                                              diff --git a/develop/sc__owning__signal_8h_source.html b/develop/sc__owning__signal_8h_source.html index 7d36dbd2..e9a68b62 100644 --- a/develop/sc__owning__signal_8h_source.html +++ b/develop/sc__owning__signal_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__thread__pool_8cpp_source.html b/develop/sc__thread__pool_8cpp_source.html index 584a88cb..99a7df64 100644 --- a/develop/sc__thread__pool_8cpp_source.html +++ b/develop/sc__thread__pool_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__thread__pool_8h_source.html b/develop/sc__thread__pool_8h_source.html index 57079871..749cfe99 100644 --- a/develop/sc__thread__pool_8h_source.html +++ b/develop/sc__thread__pool_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__variable_8h_source.html b/develop/sc__variable_8h_source.html index 2c632623..62b2d477 100644 --- a/develop/sc__variable_8h_source.html +++ b/develop/sc__variable_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sc__vcd__trace_8h_source.html b/develop/sc__vcd__trace_8h_source.html index 9134c849..bfd1a81e 100644 --- a/develop/sc__vcd__trace_8h_source.html +++ b/develop/sc__vcd__trace_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scc_2report_8h_source.html b/develop/scc_2report_8h_source.html index 5962fcb5..f90de814 100644 --- a/develop/scc_2report_8h_source.html +++ b/develop/scc_2report_8h_source.html @@ -24,7 +24,7 @@ @@ -85,214 +85,238 @@
                                              18 #define _SCC_REPORT_H_
                                              19 
                                              20 #include "utilities.h"
                                              -
                                              21 #include <cstring>
                                              -
                                              22 #include <iomanip>
                                              -
                                              23 #include <iostream>
                                              -
                                              24 #include <sstream>
                                              -
                                              25 #include <sysc/kernel/sc_time.h>
                                              -
                                              26 #include <sysc/utils/sc_report.h>
                                              -
                                              27 #include <util/ities.h>
                                              -
                                              28 
                                              -
                                              29 #if defined(_MSC_VER) && defined(ERROR)
                                              -
                                              30 #undef ERROR
                                              -
                                              31 #endif
                                              -
                                              32 
                                              -
                                              74 #define SCC_LOG_LEVEL_PARAM_NAME "log_level"
                                              -
                                              80 namespace scc {
                                              -
                                              82 static std::array<const char* const, 8> buffer = {{"NONE", "FATAL", "ERROR", "WARNING", "INFO", "DEBUG", "TRACE", "TRACEALL"}};
                                              -
                                              84 enum class log { NONE, FATAL, ERROR, WARNING, INFO, DEBUG, TRACE, TRACEALL, DBGTRACE = TRACEALL };
                                              -
                                              92 inline log as_log(int logLevel) {
                                              -
                                              93  assert(logLevel >= static_cast<int>(log::NONE) && logLevel <= static_cast<int>(log::TRACEALL));
                                              -
                                              94  std::array<const log, 8> m = {{log::NONE, log::FATAL, log::ERROR, log::WARNING, log::INFO, log::DEBUG, log::TRACE, log::TRACEALL}};
                                              -
                                              95  return m[logLevel];
                                              -
                                              96 }
                                              -
                                              105 inline std::istream& operator>>(std::istream& is, log& val) {
                                              -
                                              106  std::string buf;
                                              -
                                              107  is >> buf;
                                              -
                                              108  for(auto i = 0U; i <= static_cast<unsigned>(log::TRACEALL); ++i) {
                                              -
                                              109  if(std::strcmp(buf.c_str(), buffer[i]) == 0) {
                                              -
                                              110  val = as_log(i);
                                              -
                                              111  return is;
                                              -
                                              112  }
                                              -
                                              113  }
                                              -
                                              114  return is;
                                              -
                                              115 }
                                              -
                                              124 inline std::ostream& operator<<(std::ostream& os, log const& val) {
                                              -
                                              125  os << buffer[static_cast<unsigned>(val)];
                                              -
                                              126  return os;
                                              -
                                              127 }
                                              -
                                              136 void init_logging(log level = log::WARNING, unsigned type_field_width = 24, bool print_time = false);
                                              -
                                              145 void reinit_logging(log level = log::WARNING);
                                              -
                                              152 struct LogConfig {
                                              -
                                              153  log level{log::WARNING};
                                              -
                                              154  unsigned msg_type_field_width{24};
                                              -
                                              155  bool print_sys_time{false};
                                              -
                                              156  bool print_sim_time{true};
                                              -
                                              157  bool print_delta{false};
                                              -
                                              158  bool print_severity{true};
                                              -
                                              159  bool colored_output{true};
                                              -
                                              160  std::string log_file_name{""};
                                              -
                                              161  std::string log_filter_regex{""};
                                              -
                                              162  bool log_async{true};
                                              -
                                              163  bool dont_create_broker{false};
                                              -
                                              164  bool report_only_first_error{false};
                                              -
                                              165  bool instance_based_log_levels{true};
                                              -
                                              166  bool install_handler{true};
                                              -
                                              167 
                                              - -
                                              179  LogConfig& msgTypeFieldWidth(unsigned);
                                              -
                                              185  LogConfig& printSysTime(bool = true);
                                              -
                                              191  LogConfig& printSimTime(bool = true);
                                              -
                                              197  LogConfig& printDelta(bool = true);
                                              -
                                              203  LogConfig& printSeverity(bool = true);
                                              -
                                              209  LogConfig& coloredOutput(bool = true);
                                              -
                                              215  LogConfig& logFileName(std::string&&);
                                              -
                                              221  LogConfig& logFileName(const std::string&);
                                              -
                                              227  LogConfig& logFilterRegex(std::string&&);
                                              -
                                              233  LogConfig& logFilterRegex(const std::string&);
                                              -
                                              239  LogConfig& logAsync(bool = true);
                                              -
                                              245  LogConfig& dontCreateBroker(bool = true);
                                              -
                                              251  LogConfig& reportOnlyFirstError(bool = true);
                                              -
                                              257  LogConfig& instanceBasedLogLevels(bool = true);
                                              -
                                              263  LogConfig& installHandler(bool = true);
                                              -
                                              264 };
                                              -
                                              271 void init_logging(const LogConfig& log_config);
                                              - -
                                              285 void set_logging_level(log level);
                                              - -
                                              301 void set_cycle_base(sc_core::sc_time period);
                                              -
                                              308 inline sc_core::sc_verbosity get_log_verbosity() {
                                              -
                                              309  return static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              -
                                              310 }
                                              -
                                              321 sc_core::sc_verbosity get_log_verbosity(char const* t);
                                              -
                                              332 inline sc_core::sc_verbosity get_log_verbosity(std::string const& t) { return get_log_verbosity(t.c_str()); }
                                              -
                                              341 template <sc_core::sc_severity SEVERITY> struct ScLogger {
                                              -
                                              350  ScLogger(const char* file, int line, int verbosity = sc_core::SC_MEDIUM)
                                              -
                                              351  : t(nullptr)
                                              -
                                              352  , file(file)
                                              -
                                              353  , line(line)
                                              -
                                              354  , level(verbosity){};
                                              -
                                              355 
                                              -
                                              356  ScLogger() = delete;
                                              -
                                              357 
                                              -
                                              358  ScLogger(const ScLogger&) = delete;
                                              -
                                              359 
                                              -
                                              360  ScLogger(ScLogger&&) = delete;
                                              -
                                              361 
                                              -
                                              362  ScLogger& operator=(const ScLogger&) = delete;
                                              -
                                              363 
                                              -
                                              364  ScLogger& operator=(ScLogger&&) = delete;
                                              -
                                              370  virtual ~ScLogger() { ::sc_core::sc_report_handler::report(SEVERITY, t ? t : "SystemC", os.str().c_str(), level, file, line); }
                                              -
                                              377  inline ScLogger& type() {
                                              -
                                              378  this->t = nullptr;
                                              -
                                              379  return *this;
                                              -
                                              380  }
                                              -
                                              388  inline ScLogger& type(char const* t) {
                                              -
                                              389  this->t = const_cast<char*>(t);
                                              -
                                              390  return *this;
                                              -
                                              391  }
                                              -
                                              399  inline ScLogger& type(std::string const& t) {
                                              -
                                              400  this->t = const_cast<char*>(t.c_str());
                                              -
                                              401  return *this;
                                              -
                                              402  }
                                              -
                                              409  inline std::ostream& get() { return os; };
                                              -
                                              410 
                                              -
                                              411 protected:
                                              -
                                              412  std::ostringstream os{};
                                              -
                                              413  char* t{nullptr};
                                              -
                                              414  const char* file;
                                              -
                                              415  const int line;
                                              -
                                              416  const int level;
                                              -
                                              417 };
                                              -
                                              418 
                                              -
                                              423 #define SCCLOG(lvl, ...) ::scc::ScLogger<::sc_core::SC_INFO>(__FILE__, __LINE__, lvl / 10).type(__VA_ARGS__).get()
                                              -
                                              425 #define SCCTRACEALL(...) \
                                              -
                                              426  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_DEBUG) \
                                              -
                                              427  SCCLOG(sc_core::SC_DEBUG, __VA_ARGS__)
                                              -
                                              429 #define SCCTRACE(...) \
                                              -
                                              430  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_FULL) \
                                              -
                                              431  SCCLOG(sc_core::SC_FULL, __VA_ARGS__)
                                              -
                                              433 #define SCCDEBUG(...) \
                                              -
                                              434  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_HIGH) \
                                              -
                                              435  SCCLOG(sc_core::SC_HIGH, __VA_ARGS__)
                                              -
                                              437 #define SCCINFO(...) \
                                              -
                                              438  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_MEDIUM) \
                                              -
                                              439  SCCLOG(sc_core::SC_MEDIUM, __VA_ARGS__)
                                              -
                                              441 #define SCCWARN(...) \
                                              -
                                              442  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_LOW) \
                                              -
                                              443  ::scc::ScLogger<::sc_core::SC_WARNING>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              -
                                              445 #define SCCERR(...) ::scc::ScLogger<::sc_core::SC_ERROR>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              -
                                              447 #define SCCFATAL(...) ::scc::ScLogger<::sc_core::SC_FATAL>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              -
                                              448 
                                              -
                                              449 #ifdef NDEBUG
                                              -
                                              450 #define SCC_ASSERT(expr) ((void)0)
                                              -
                                              451 #else
                                              -
                                              452 #define SCC_ASSERT(expr) ((void)((expr) ? 0 : (SC_REPORT_FATAL(::sc_core::SC_ID_ASSERTION_FAILED_, #expr), 0)))
                                              -
                                              453 #endif
                                              -
                                              455 #define SCMOD this->name()
                                              -
                                              463 class stream_redirection : public std::stringbuf {
                                              -
                                              464 public:
                                              -
                                              472  stream_redirection(std::ostream& os, log level);
                                              -
                                              473 
                                              -
                                              474  stream_redirection(stream_redirection const&) = delete;
                                              -
                                              475 
                                              -
                                              476  stream_redirection& operator=(stream_redirection const&) = delete;
                                              -
                                              477 
                                              - -
                                              479 
                                              -
                                              480  stream_redirection& operator=(stream_redirection&&) = delete;
                                              - -
                                              492  void reset();
                                              -
                                              493 
                                              -
                                              494 protected:
                                              -
                                              495  std::streamsize xsputn(const char_type* s, std::streamsize n) override;
                                              -
                                              496  int sync() override;
                                              -
                                              497  std::ostream& os;
                                              -
                                              498  log level;
                                              -
                                              499  std::streambuf* old_buf{nullptr};
                                              -
                                              500 };
                                              -
                                              501 
                                              -
                                              502 } // namespace scc // end of scc-sysc
                                              -
                                              504 #endif /* _SCC_REPORT_H_ */
                                              -
                                              stream redirector
                                              Definition: report.h:463
                                              +
                                              21 #include <cci_core/cci_value_converter.h>
                                              +
                                              22 #include <cstring>
                                              +
                                              23 #include <iomanip>
                                              +
                                              24 #include <iostream>
                                              +
                                              25 #include <sstream>
                                              +
                                              26 #include <stdexcept>
                                              +
                                              27 #include <sysc/kernel/sc_time.h>
                                              +
                                              28 #include <sysc/utils/sc_report.h>
                                              +
                                              29 #include <unordered_map>
                                              +
                                              30 #include <util/ities.h>
                                              +
                                              31 
                                              +
                                              32 #if defined(_MSC_VER) && defined(ERROR)
                                              +
                                              33 #undef ERROR
                                              +
                                              34 #endif
                                              +
                                              35 
                                              +
                                              77 #define SCC_LOG_LEVEL_PARAM_NAME "log_level"
                                              +
                                              83 namespace scc {
                                              +
                                              85 enum class log { NONE, FATAL, ERROR, WARNING, INFO, DEBUG, TRACE, TRACEALL, DBGTRACE = TRACEALL };
                                              +
                                              86 namespace {
                                              +
                                              88 static std::array<const char* const, 8> log_level_names = {{"NONE", "FATAL", "ERROR", "WARNING", "INFO", "DEBUG", "TRACE", "TRACEALL"}};
                                              +
                                              89 static const std::unordered_map<std::string, scc::log> log_level_lut = {
                                              +
                                              90  {"NONE", scc::log::NONE}, {"FATAL", scc::log::FATAL}, {"ERROR", scc::log::ERROR}, {"WARNING", scc::log::WARNING},
                                              +
                                              91  {"INFO", scc::log::INFO}, {"DEBUG", scc::log::DEBUG}, {"TRACE", scc::log::TRACE}, {"TRACEALL", scc::log::TRACEALL}};
                                              +
                                              92 } // namespace
                                              +
                                              100 inline log as_log(int logLevel) {
                                              +
                                              101  assert(logLevel >= static_cast<int>(log::NONE) && logLevel <= static_cast<int>(log::TRACEALL));
                                              +
                                              102  std::array<const log, 8> m = {{log::NONE, log::FATAL, log::ERROR, log::WARNING, log::INFO, log::DEBUG, log::TRACE, log::TRACEALL}};
                                              +
                                              103  return m[logLevel];
                                              +
                                              104 }
                                              +
                                              113 inline std::istream& operator>>(std::istream& is, log& val) {
                                              +
                                              114  std::string buf;
                                              +
                                              115  is >> buf;
                                              +
                                              116  auto it = scc::log_level_lut.find(buf);
                                              +
                                              117  if(it == std::end(scc::log_level_lut))
                                              +
                                              118  throw std::out_of_range(std::string("Illegal log level value: ") + buf);
                                              +
                                              119  val = it->second;
                                              +
                                              120  return is;
                                              +
                                              121 }
                                              +
                                              130 inline std::ostream& operator<<(std::ostream& os, log const& val) {
                                              +
                                              131  os << log_level_names[static_cast<unsigned>(val)];
                                              +
                                              132  return os;
                                              +
                                              133 }
                                              +
                                              142 void init_logging(log level = log::WARNING, unsigned type_field_width = 24, bool print_time = false);
                                              +
                                              148 void reinit_logging();
                                              +
                                              155 void reinit_logging(log level);
                                              +
                                              162 struct LogConfig {
                                              +
                                              163  log level{log::WARNING};
                                              +
                                              164  unsigned msg_type_field_width{24};
                                              +
                                              165  bool print_sys_time{false};
                                              +
                                              166  bool print_sim_time{true};
                                              +
                                              167  bool print_delta{false};
                                              +
                                              168  bool print_severity{true};
                                              +
                                              169  bool colored_output{true};
                                              +
                                              170  std::string log_file_name{""};
                                              +
                                              171  std::string log_filter_regex{""};
                                              +
                                              172  bool log_async{true};
                                              +
                                              173  bool dont_create_broker{false};
                                              +
                                              174  bool report_only_first_error{false};
                                              +
                                              175  bool instance_based_log_levels{true};
                                              +
                                              176  bool install_handler{true};
                                              +
                                              177 
                                              + +
                                              189  LogConfig& msgTypeFieldWidth(unsigned);
                                              +
                                              195  LogConfig& printSysTime(bool = true);
                                              +
                                              201  LogConfig& printSimTime(bool = true);
                                              +
                                              207  LogConfig& printDelta(bool = true);
                                              +
                                              213  LogConfig& printSeverity(bool = true);
                                              +
                                              219  LogConfig& coloredOutput(bool = true);
                                              +
                                              225  LogConfig& logFileName(std::string&&);
                                              +
                                              231  LogConfig& logFileName(const std::string&);
                                              +
                                              237  LogConfig& logFilterRegex(std::string&&);
                                              +
                                              243  LogConfig& logFilterRegex(const std::string&);
                                              +
                                              249  LogConfig& logAsync(bool = true);
                                              +
                                              255  LogConfig& dontCreateBroker(bool = true);
                                              +
                                              261  LogConfig& reportOnlyFirstError(bool = true);
                                              +
                                              267  LogConfig& instanceBasedLogLevels(bool = true);
                                              +
                                              273  LogConfig& installHandler(bool = true);
                                              +
                                              274 };
                                              +
                                              281 void init_logging(const LogConfig& log_config);
                                              + +
                                              295 void set_logging_level(log level);
                                              + +
                                              311 void set_cycle_base(sc_core::sc_time period);
                                              +
                                              318 inline sc_core::sc_verbosity get_log_verbosity() {
                                              +
                                              319  return static_cast<sc_core::sc_verbosity>(::sc_core::sc_report_handler::get_verbosity_level());
                                              +
                                              320 }
                                              +
                                              331 sc_core::sc_verbosity get_log_verbosity(char const* t);
                                              +
                                              342 inline sc_core::sc_verbosity get_log_verbosity(std::string const& t) { return get_log_verbosity(t.c_str()); }
                                              +
                                              351 template <sc_core::sc_severity SEVERITY> struct ScLogger {
                                              +
                                              360  ScLogger(const char* file, int line, int verbosity = sc_core::SC_MEDIUM)
                                              +
                                              361  : t(nullptr)
                                              +
                                              362  , file(file)
                                              +
                                              363  , line(line)
                                              +
                                              364  , level(verbosity){};
                                              +
                                              365 
                                              +
                                              366  ScLogger() = delete;
                                              +
                                              367 
                                              +
                                              368  ScLogger(const ScLogger&) = delete;
                                              +
                                              369 
                                              +
                                              370  ScLogger(ScLogger&&) = delete;
                                              +
                                              371 
                                              +
                                              372  ScLogger& operator=(const ScLogger&) = delete;
                                              +
                                              373 
                                              +
                                              374  ScLogger& operator=(ScLogger&&) = delete;
                                              +
                                              380  virtual ~ScLogger() { ::sc_core::sc_report_handler::report(SEVERITY, t ? t : "SystemC", os.str().c_str(), level, file, line); }
                                              +
                                              387  inline ScLogger& type() {
                                              +
                                              388  this->t = nullptr;
                                              +
                                              389  return *this;
                                              +
                                              390  }
                                              +
                                              398  inline ScLogger& type(char const* t) {
                                              +
                                              399  this->t = const_cast<char*>(t);
                                              +
                                              400  return *this;
                                              +
                                              401  }
                                              +
                                              409  inline ScLogger& type(std::string const& t) {
                                              +
                                              410  this->t = const_cast<char*>(t.c_str());
                                              +
                                              411  return *this;
                                              +
                                              412  }
                                              +
                                              419  inline std::ostream& get() { return os; };
                                              +
                                              420 
                                              +
                                              421 protected:
                                              +
                                              422  std::ostringstream os{};
                                              +
                                              423  char* t{nullptr};
                                              +
                                              424  const char* file;
                                              +
                                              425  const int line;
                                              +
                                              426  const int level;
                                              +
                                              427 };
                                              +
                                              428 
                                              +
                                              433 #define SCCLOG(lvl, ...) ::scc::ScLogger<::sc_core::SC_INFO>(__FILE__, __LINE__, lvl / 10).type(__VA_ARGS__).get()
                                              +
                                              435 #define SCCTRACEALL(...) \
                                              +
                                              436  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_DEBUG) \
                                              +
                                              437  SCCLOG(sc_core::SC_DEBUG, __VA_ARGS__)
                                              +
                                              439 #define SCCTRACE(...) \
                                              +
                                              440  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_FULL) \
                                              +
                                              441  SCCLOG(sc_core::SC_FULL, __VA_ARGS__)
                                              +
                                              443 #define SCCDEBUG(...) \
                                              +
                                              444  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_HIGH) \
                                              +
                                              445  SCCLOG(sc_core::SC_HIGH, __VA_ARGS__)
                                              +
                                              447 #define SCCINFO(...) \
                                              +
                                              448  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_MEDIUM) \
                                              +
                                              449  SCCLOG(sc_core::SC_MEDIUM, __VA_ARGS__)
                                              +
                                              451 #define SCCWARN(...) \
                                              +
                                              452  if(::scc::get_log_verbosity(__VA_ARGS__) >= sc_core::SC_LOW) \
                                              +
                                              453  ::scc::ScLogger<::sc_core::SC_WARNING>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              +
                                              455 #define SCCERR(...) ::scc::ScLogger<::sc_core::SC_ERROR>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              +
                                              457 #define SCCFATAL(...) ::scc::ScLogger<::sc_core::SC_FATAL>(__FILE__, __LINE__, sc_core::SC_MEDIUM).type(__VA_ARGS__).get()
                                              +
                                              458 
                                              +
                                              459 #ifdef NDEBUG
                                              +
                                              460 #define SCC_ASSERT(expr) ((void)0)
                                              +
                                              461 #else
                                              +
                                              462 #define SCC_ASSERT(expr) ((void)((expr) ? 0 : (SC_REPORT_FATAL(::sc_core::SC_ID_ASSERTION_FAILED_, #expr), 0)))
                                              +
                                              463 #endif
                                              +
                                              465 #define SCMOD this->name()
                                              +
                                              473 class stream_redirection : public std::stringbuf {
                                              +
                                              474 public:
                                              +
                                              482  stream_redirection(std::ostream& os, log level);
                                              +
                                              483 
                                              +
                                              484  stream_redirection(stream_redirection const&) = delete;
                                              +
                                              485 
                                              +
                                              486  stream_redirection& operator=(stream_redirection const&) = delete;
                                              +
                                              487 
                                              + +
                                              489 
                                              +
                                              490  stream_redirection& operator=(stream_redirection&&) = delete;
                                              + +
                                              502  void reset();
                                              +
                                              503 
                                              +
                                              504 protected:
                                              +
                                              505  std::streamsize xsputn(const char_type* s, std::streamsize n) override;
                                              +
                                              506  int sync() override;
                                              +
                                              507  std::ostream& os;
                                              +
                                              508  log level;
                                              +
                                              509  std::streambuf* old_buf{nullptr};
                                              +
                                              510 };
                                              +
                                              511 
                                              +
                                              512 } // namespace scc // end of scc-sysc
                                              +
                                              514 namespace cci {
                                              +
                                              515 template <> inline bool cci_value_converter<scc::log>::pack(cci_value::reference dst, scc::log const& src) {
                                              +
                                              516  dst.set_string(scc::log_level_names[static_cast<unsigned>(src)]);
                                              +
                                              517  return true;
                                              +
                                              518 }
                                              +
                                              519 template <> inline bool cci_value_converter<scc::log>::unpack(scc::log& dst, cci_value::const_reference src) {
                                              +
                                              520  // Highly defensive unpacker; probably could check less
                                              +
                                              521  if(!src.is_string())
                                              +
                                              522  return false;
                                              +
                                              523  auto it = scc::log_level_lut.find(src.get_string());
                                              +
                                              524  if(it != std::end(scc::log_level_lut)) {
                                              +
                                              525  dst = it->second;
                                              +
                                              526  return true;
                                              +
                                              527  }
                                              +
                                              528  return false;
                                              +
                                              529 }
                                              +
                                              530 } // namespace cci
                                              +
                                              531 #endif /* _SCC_REPORT_H_ */
                                              +
                                              stream redirector
                                              Definition: report.h:473
                                              ~stream_redirection()
                                              destructor restoring the output stream buffer
                                              Definition: report.cpp:322
                                              void reset()
                                              reset the stream redirection and restore output buffer of the stream
                                              Definition: report.cpp:326
                                              stream_redirection(std::ostream &os, log level)
                                              constructor redirecting the given stream to a SystemC log message of given llog level
                                              SCC SystemC utilities.
                                              -
                                              std::istream & operator>>(std::istream &is, log &val)
                                              read a log level from input stream e.g. used by boost::lexical_cast
                                              Definition: report.h:105
                                              -
                                              bool is_logging_initialized()
                                              get the state of the SCC logging system
                                              Definition: report.cpp:436
                                              -
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:452
                                              -
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:438
                                              -
                                              log as_log(int logLevel)
                                              safely convert an integer into a log level
                                              Definition: report.h:92
                                              -
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:460
                                              +
                                              std::istream & operator>>(std::istream &is, log &val)
                                              read a log level from input stream e.g. used by boost::lexical_cast
                                              Definition: report.h:113
                                              +
                                              bool is_logging_initialized()
                                              get the state of the SCC logging system
                                              Definition: report.cpp:440
                                              +
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:456
                                              +
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:442
                                              +
                                              log as_log(int logLevel)
                                              safely convert an integer into a log level
                                              Definition: report.h:100
                                              +
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:464
                                              void set_cycle_base(sc_core::sc_time period)
                                              sets the cycle base for cycle based logging
                                              -
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:308
                                              -
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:124
                                              -
                                              log
                                              enum defining the log levels
                                              Definition: report.h:84
                                              -
                                              the configuration class for the logging setup
                                              Definition: report.h:152
                                              -
                                              LogConfig & printSeverity(bool=true)
                                              Definition: report.cpp:489
                                              -
                                              LogConfig & printSysTime(bool=true)
                                              Definition: report.cpp:474
                                              +
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:318
                                              +
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:130
                                              +
                                              log
                                              enum defining the log levels
                                              Definition: report.h:85
                                              +
                                              the configuration class for the logging setup
                                              Definition: report.h:162
                                              +
                                              LogConfig & printSeverity(bool=true)
                                              Definition: report.cpp:493
                                              +
                                              LogConfig & printSysTime(bool=true)
                                              Definition: report.cpp:478
                                              LogConfig & logFilterRegex(std::string &&)
                                              -
                                              LogConfig & reportOnlyFirstError(bool=true)
                                              Definition: report.cpp:529
                                              -
                                              LogConfig & coloredOutput(bool=true)
                                              Definition: report.cpp:504
                                              -
                                              LogConfig & dontCreateBroker(bool=true)
                                              Definition: report.cpp:524
                                              -
                                              LogConfig & logLevel(log)
                                              Definition: report.cpp:464
                                              -
                                              LogConfig & msgTypeFieldWidth(unsigned)
                                              Definition: report.cpp:469
                                              +
                                              LogConfig & reportOnlyFirstError(bool=true)
                                              Definition: report.cpp:533
                                              +
                                              LogConfig & coloredOutput(bool=true)
                                              Definition: report.cpp:508
                                              +
                                              LogConfig & dontCreateBroker(bool=true)
                                              Definition: report.cpp:528
                                              +
                                              LogConfig & logLevel(log)
                                              Definition: report.cpp:468
                                              +
                                              LogConfig & msgTypeFieldWidth(unsigned)
                                              Definition: report.cpp:473
                                              LogConfig & logFileName(const std::string &)
                                              -
                                              LogConfig & printSimTime(bool=true)
                                              Definition: report.cpp:479
                                              -
                                              LogConfig & logAsync(bool=true)
                                              Definition: report.cpp:519
                                              -
                                              LogConfig & printDelta(bool=true)
                                              Definition: report.cpp:484
                                              -
                                              LogConfig & instanceBasedLogLevels(bool=true)
                                              Definition: report.cpp:533
                                              -
                                              LogConfig & installHandler(bool=true)
                                              Definition: report.cpp:537
                                              +
                                              LogConfig & printSimTime(bool=true)
                                              Definition: report.cpp:483
                                              +
                                              LogConfig & logAsync(bool=true)
                                              Definition: report.cpp:523
                                              +
                                              LogConfig & printDelta(bool=true)
                                              Definition: report.cpp:488
                                              +
                                              LogConfig & instanceBasedLogLevels(bool=true)
                                              Definition: report.cpp:537
                                              +
                                              LogConfig & installHandler(bool=true)
                                              Definition: report.cpp:541
                                              LogConfig & logFilterRegex(const std::string &)
                                              LogConfig & logFileName(std::string &&)
                                              -
                                              the logger class
                                              Definition: report.h:341
                                              -
                                              ScLogger & type(char const *t)
                                              set the category of the log entry
                                              Definition: report.h:388
                                              -
                                              virtual ~ScLogger()
                                              the destructor generating the SystemC report
                                              Definition: report.h:370
                                              -
                                              ScLogger & type(std::string const &t)
                                              set the category of the log entry
                                              Definition: report.h:399
                                              -
                                              std::ostream & get()
                                              get the underlying ostringstream
                                              Definition: report.h:409
                                              -
                                              ScLogger & type()
                                              reset the category of the log entry
                                              Definition: report.h:377
                                              -
                                              ScLogger(const char *file, int line, int verbosity=sc_core::SC_MEDIUM)
                                              Definition: report.h:350
                                              +
                                              the logger class
                                              Definition: report.h:351
                                              +
                                              ScLogger & type(char const *t)
                                              set the category of the log entry
                                              Definition: report.h:398
                                              +
                                              virtual ~ScLogger()
                                              the destructor generating the SystemC report
                                              Definition: report.h:380
                                              +
                                              ScLogger & type(std::string const &t)
                                              set the category of the log entry
                                              Definition: report.h:409
                                              +
                                              std::ostream & get()
                                              get the underlying ostringstream
                                              Definition: report.h:419
                                              +
                                              ScLogger & type()
                                              reset the category of the log entry
                                              Definition: report.h:387
                                              +
                                              ScLogger(const char *file, int line, int verbosity=sc_core::SC_MEDIUM)
                                              Definition: report.h:360
                                              diff --git a/develop/scc_8h_source.html b/develop/scc_8h_source.html index 3b065039..0b493a7b 100644 --- a/develop/scc_8h_source.html +++ b/develop/scc_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scc__bus__interfaces_8h_source.html b/develop/scc__bus__interfaces_8h_source.html index 734f4f07..e69295ee 100644 --- a/develop/scc__bus__interfaces_8h_source.html +++ b/develop/scc__bus__interfaces_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scc__components_8h_source.html b/develop/scc__components_8h_source.html index 44955943..2060eed5 100644 --- a/develop/scc__components_8h_source.html +++ b/develop/scc__components_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scc__sysc_8h_source.html b/develop/scc__sysc_8h_source.html index fbdb8d1b..ccdfb1ec 100644 --- a/develop/scc__sysc_8h_source.html +++ b/develop/scc__sysc_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scc__util_8h_source.html b/develop/scc__util_8h_source.html index 517455ef..40d954ae 100644 --- a/develop/scc__util_8h_source.html +++ b/develop/scc__util_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sccassert_8h_source.html b/develop/sccassert_8h_source.html index f4c24b6f..ce7c750e 100644 --- a/develop/sccassert_8h_source.html +++ b/develop/sccassert_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scp_2report_8h_source.html b/develop/scp_2report_8h_source.html index 2f0ca79e..028d6268 100644 --- a/develop/scp_2report_8h_source.html +++ b/develop/scp_2report_8h_source.html @@ -24,7 +24,7 @@ @@ -129,13 +129,13 @@
                                              75 #define SCP_ASSERT(expr) ((void)((expr) ? 0 : (SC_REPORT_FATAL(::sc_core::SC_ID_ASSERTION_FAILED_, #expr), 0)))
                                              76 #endif // end of scp-report
                                              78 #endif /* _SCP_REPORT_H_ */
                                              -
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:452
                                              -
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:438
                                              -
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:460
                                              +
                                              void set_logging_level(log level)
                                              sets the SystemC logging level
                                              Definition: report.cpp:456
                                              +
                                              void init_logging(log level=log::WARNING, unsigned type_field_width=24, bool print_time=false)
                                              initializes the SystemC logging system with a particular logging level
                                              Definition: report.cpp:442
                                              +
                                              log get_logging_level()
                                              get the SystemC logging level
                                              Definition: report.cpp:464
                                              void set_cycle_base(sc_core::sc_time period)
                                              sets the cycle base for cycle based logging
                                              -
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:308
                                              -
                                              log
                                              enum defining the log levels
                                              Definition: report.h:84
                                              -
                                              the configuration class for the logging setup
                                              Definition: report.h:152
                                              +
                                              sc_core::sc_verbosity get_log_verbosity()
                                              get the global verbosity level
                                              Definition: report.h:318
                                              +
                                              log
                                              enum defining the log levels
                                              Definition: report.h:85
                                              +
                                              the configuration class for the logging setup
                                              Definition: report.h:162
                                              diff --git a/develop/scv__tr__binary_8cpp_source.html b/develop/scv__tr__binary_8cpp_source.html index 0d221129..89ad9b93 100644 --- a/develop/scv__tr__binary_8cpp_source.html +++ b/develop/scv__tr__binary_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scv__tr__compressed_8cpp_source.html b/develop/scv__tr__compressed_8cpp_source.html index 0546895c..56428135 100644 --- a/develop/scv__tr__compressed_8cpp_source.html +++ b/develop/scv__tr__compressed_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scv__tr__db_8h_source.html b/develop/scv__tr__db_8h_source.html index 26847f34..11f6e7bb 100644 --- a/develop/scv__tr__db_8h_source.html +++ b/develop/scv__tr__db_8h_source.html @@ -24,7 +24,7 @@ @@ -107,8 +107,8 @@
                                              void scv_tr_mtc_init()
                                              initializes the infrastructure to use a compressed text based transaction recording database with a m...
                                              Definition: scv_tr_mtc.cpp:327
                                              void scv_tr_sqlite_init()
                                              initializes the infrastructure to use a SQLite based transaction recording database
                                              void scv_tr_compressed_init()
                                              initializes the infrastructure to use a gzip compressed text based transaction recording database
                                              -
                                              void scv_tr_plain_init()
                                              initializes the infrastructure to use a plain text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:406
                                              -
                                              void scv_tr_lz4_init()
                                              initializes the infrastructure to use a LZ4 compressed text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:398
                                              +
                                              void scv_tr_plain_init()
                                              initializes the infrastructure to use a plain text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:402
                                              +
                                              void scv_tr_lz4_init()
                                              initializes the infrastructure to use a LZ4 compressed text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:394
                                              diff --git a/develop/scv__tr__ftr_8cpp_source.html b/develop/scv__tr__ftr_8cpp_source.html index 7d4c055d..2aa4de6d 100644 --- a/develop/scv__tr__ftr_8cpp_source.html +++ b/develop/scv__tr__ftr_8cpp_source.html @@ -24,7 +24,7 @@ @@ -342,7 +342,7 @@
                                              275 #ifndef HAS_SCV
                                              276 }
                                              277 #endif
                                              -
                                              log
                                              enum defining the log levels
                                              Definition: report.h:84
                                              +
                                              log
                                              enum defining the log levels
                                              Definition: report.h:85
                                              SystemC Verification Library (SCV) Transaction Recording.
                                              diff --git a/develop/scv__tr__ldb_8cpp_source.html b/develop/scv__tr__ldb_8cpp_source.html index c948eaf2..a479afc3 100644 --- a/develop/scv__tr__ldb_8cpp_source.html +++ b/develop/scv__tr__ldb_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scv__tr__lz4_8cpp_source.html b/develop/scv__tr__lz4_8cpp_source.html index 3b1f8de9..8bfa8993 100644 --- a/develop/scv__tr__lz4_8cpp_source.html +++ b/develop/scv__tr__lz4_8cpp_source.html @@ -24,7 +24,7 @@ @@ -86,408 +86,404 @@
                                              19 #include <cstdio>
                                              20 #include <cstring>
                                              21 #include <fcntl.h>
                                              -
                                              22 #include <fstream>
                                              -
                                              23 #include <iostream>
                                              -
                                              24 #include <sstream>
                                              -
                                              25 #include <stdexcept>
                                              -
                                              26 #include <string>
                                              -
                                              27 #include <unordered_map>
                                              -
                                              28 #include <unordered_set>
                                              -
                                              29 #include <vector>
                                              -
                                              30 #ifdef FMT_SPDLOG_INTERNAL
                                              -
                                              31 #include <fmt/fmt.h>
                                              -
                                              32 #else
                                              -
                                              33 #include <fmt/format.h>
                                              -
                                              34 #endif
                                              -
                                              35 #include <util/lz4_streambuf.h>
                                              -
                                              36 // clang-format off
                                              -
                                              37 #ifdef HAS_SCV
                                              -
                                              38 #include <scv.h>
                                              -
                                              39 #else
                                              -
                                              40 #include <scv-tr.h>
                                              -
                                              41 namespace scv_tr {
                                              -
                                              42 #endif
                                              -
                                              43 // clang-format on
                                              +
                                              22 #include <fmt/format.h>
                                              +
                                              23 #include <fstream>
                                              +
                                              24 #include <iostream>
                                              +
                                              25 #include <sstream>
                                              +
                                              26 #include <stdexcept>
                                              +
                                              27 #include <string>
                                              +
                                              28 #include <unordered_map>
                                              +
                                              29 #include <unordered_set>
                                              +
                                              30 #include <util/lz4_streambuf.h>
                                              +
                                              31 #include <vector>
                                              +
                                              32 // clang-format off
                                              +
                                              33 #ifdef HAS_SCV
                                              +
                                              34 #include <scv.h>
                                              +
                                              35 #else
                                              +
                                              36 #include <scv-tr.h>
                                              +
                                              37 namespace scv_tr {
                                              +
                                              38 #endif
                                              +
                                              39 // clang-format on
                                              +
                                              40 // ----------------------------------------------------------------------------
                                              +
                                              41 // ----------------------------------------------------------------------------
                                              +
                                              42 using namespace std;
                                              +
                                              43 
                                              44 // ----------------------------------------------------------------------------
                                              -
                                              45 // ----------------------------------------------------------------------------
                                              -
                                              46 using namespace std;
                                              -
                                              47 
                                              -
                                              48 // ----------------------------------------------------------------------------
                                              -
                                              49 enum EventType { BEGIN, RECORD, END };
                                              -
                                              50 struct AttrDesc {
                                              -
                                              51  EventType const evt;
                                              -
                                              52  scv_extensions_if::data_type const type;
                                              -
                                              53  std::string const name;
                                              -
                                              54  AttrDesc(EventType evt, scv_extensions_if::data_type type, std::string const& name)
                                              -
                                              55  : evt(evt)
                                              -
                                              56  , type(type)
                                              -
                                              57  , name(name) {}
                                              -
                                              58 };
                                              -
                                              59 using data_type = scv_extensions_if::data_type;
                                              -
                                              60 // ----------------------------------------------------------------------------
                                              -
                                              61 namespace {
                                              -
                                              62 const std::array<char const*, scv_extensions_if::STRING + 1> data_type_str = {{
                                              -
                                              63  "BOOLEAN", // bool
                                              -
                                              64  "ENUMERATION", // enum
                                              -
                                              65  "INTEGER", // char, short, int, long, long long, sc_int, sc_bigint
                                              -
                                              66  "UNSIGNED", // unsigned { char, short, int, long, long long }, sc_uint, sc_biguint
                                              -
                                              67  "FLOATING_POINT_NUMBER", // float, double
                                              -
                                              68  "BIT_VECTOR", // sc_bit, sc_bv
                                              -
                                              69  "LOGIC_VECTOR", // sc_logic, sc_lv
                                              -
                                              70  "FIXED_POINT_INTEGER", // sc_fixed
                                              -
                                              71  "UNSIGNED_FIXED_POINT_INTEGER", // sc_ufixed
                                              -
                                              72  "RECORD", // struct/class
                                              -
                                              73  "POINTER", // T*
                                              -
                                              74  "ARRAY", // T[N]
                                              -
                                              75  "STRING" // string, std::string
                                              -
                                              76 
                                              -
                                              77 }};
                                              -
                                              78 class PlainWriter {
                                              -
                                              79 public:
                                              -
                                              80  std::ofstream out;
                                              -
                                              81  PlainWriter(const std::string& name)
                                              -
                                              82  : out(name) {}
                                              -
                                              83  ~PlainWriter() {
                                              -
                                              84  if(out.is_open())
                                              -
                                              85  out.close();
                                              -
                                              86  }
                                              -
                                              87  bool is_open() { return out.is_open(); }
                                              -
                                              88 };
                                              -
                                              89 class LZ4Writer {
                                              -
                                              90  std::ofstream ofs;
                                              -
                                              91  std::unique_ptr<util::lz4c_steambuf> strbuf;
                                              -
                                              92 
                                              -
                                              93 public:
                                              -
                                              94  std::ostream out;
                                              -
                                              95  LZ4Writer(const std::string& name)
                                              -
                                              96  : ofs(name, std::ios::binary | std::ios::trunc)
                                              -
                                              97  , strbuf(new util::lz4c_steambuf(ofs, 8192))
                                              -
                                              98  , out(strbuf.get()) {}
                                              -
                                              99  ~LZ4Writer() {
                                              -
                                              100  if(is_open()) {
                                              -
                                              101  strbuf->close();
                                              -
                                              102  ofs.close();
                                              -
                                              103  }
                                              -
                                              104  }
                                              -
                                              105 
                                              -
                                              106  bool is_open() { return ofs.is_open(); }
                                              -
                                              107 };
                                              -
                                              108 
                                              -
                                              109 template <typename WRITER> struct Formatter {
                                              -
                                              110  std::unique_ptr<WRITER> writer;
                                              -
                                              111  Formatter(const std::string& name)
                                              -
                                              112  : writer(new WRITER(name)) {}
                                              -
                                              113 
                                              -
                                              114  Formatter() {}
                                              -
                                              115 
                                              -
                                              116  inline bool open(const std::string& name) {
                                              -
                                              117  writer.reset(new WRITER(name));
                                              -
                                              118  return writer->is_open();
                                              -
                                              119  }
                                              -
                                              120 
                                              -
                                              121  inline void close() { delete writer.release(); }
                                              -
                                              122 
                                              -
                                              123  inline void writeStream(uint64_t id, std::string const& name, std::string const& kind) {
                                              -
                                              124  auto buf = fmt::format("scv_tr_stream (ID {}, name \"{}\", kind \"{}\")\n", id, name.c_str(), kind.c_str());
                                              -
                                              125  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              126  }
                                              -
                                              127 
                                              -
                                              128  inline void writeGenerator(uint64_t id, std::string const& name, uint64_t stream, std::vector<AttrDesc> const& attributes) {
                                              -
                                              129  auto buf = fmt::format("scv_tr_generator (ID {}, name \"{}\", scv_tr_stream {},\n", id, name.c_str(), stream);
                                              -
                                              130  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              131  auto idx = 0U;
                                              -
                                              132  for(auto attr : attributes) {
                                              -
                                              133  if(attr.evt == BEGIN) {
                                              -
                                              134  auto buf = fmt::format("begin_attribute (ID {}, name \"{}\", type \"{}\")\n", idx, attr.name, data_type_str[attr.type]);
                                              -
                                              135  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              136  } else if(attr.evt == END) {
                                              -
                                              137  auto buf = fmt::format("end_attribute (ID {}, name \"{}\", type \"{}\")\n", idx, attr.name, data_type_str[attr.type]);
                                              -
                                              138  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              139  }
                                              -
                                              140  ++idx;
                                              -
                                              141  }
                                              -
                                              142  writer->out.write(")\n", 2);
                                              -
                                              143  }
                                              -
                                              144 
                                              -
                                              145  inline void writeTransaction(uint64_t id, uint64_t generator, EventType type, uint64_t time) {
                                              -
                                              146  auto buf = type == BEGIN ? fmt::format("tx_begin {} {} {} ps\n", id, generator, time)
                                              -
                                              147  : fmt::format("tx_end {} {} {} ps\n", id, generator, time);
                                              -
                                              148  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              149  }
                                              -
                                              150 
                                              -
                                              151  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, const string& value) {
                                              -
                                              152  // data_type::BOOLEAN, data_type::ENUMERATION, data_type::BIT_VECTOR, data_type::LOGIC_VECTOR, data_type::STRING
                                              -
                                              153  auto buf = event == EventType::RECORD
                                              -
                                              154  ? fmt::format("tx_record_attribute {} \"{}\" {} = \"{}\"\n", id, name, data_type_str[type], value)
                                              -
                                              155  : fmt::format("a \"{}\"\n", value);
                                              -
                                              156  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              157  }
                                              -
                                              158 
                                              -
                                              159  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, int64_t value) {
                                              -
                                              160  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              -
                                              161  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              -
                                              162  : fmt::format("a {}\n", value);
                                              -
                                              163  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              164  }
                                              -
                                              165 
                                              -
                                              166  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, uint64_t value) {
                                              -
                                              167  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              -
                                              168  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              -
                                              169  : fmt::format("a {}\n", value);
                                              -
                                              170  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              171  }
                                              -
                                              172 
                                              -
                                              173  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, bool value) {
                                              -
                                              174  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              -
                                              175  auto buf = event == EventType::RECORD
                                              -
                                              176  ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value ? "true" : "false")
                                              -
                                              177  : fmt::format("a {}\n", value ? "true" : "false");
                                              -
                                              178  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              179  }
                                              -
                                              180 
                                              -
                                              181  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, double value) {
                                              -
                                              182  // data_type::FLOATING_POINT_NUMBER
                                              -
                                              183  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              -
                                              184  : fmt::format("a {}\n", value);
                                              -
                                              185  writer->out.write(buf.c_str(), buf.size());
                                              -
                                              186  }
                                              -
                                              187 
                                              -
                                              188  inline void writeRelation(const std::string& name, uint64_t sink_id, uint64_t src_id) {
                                              -
                                              189  auto buf = fmt::format("tx_relation \"{}\" {} {}\n", name, sink_id, src_id);
                                              -
                                              190  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              45 enum EventType { BEGIN, RECORD, END };
                                              +
                                              46 struct AttrDesc {
                                              +
                                              47  EventType const evt;
                                              +
                                              48  scv_extensions_if::data_type const type;
                                              +
                                              49  std::string const name;
                                              +
                                              50  AttrDesc(EventType evt, scv_extensions_if::data_type type, std::string const& name)
                                              +
                                              51  : evt(evt)
                                              +
                                              52  , type(type)
                                              +
                                              53  , name(name) {}
                                              +
                                              54 };
                                              +
                                              55 using data_type = scv_extensions_if::data_type;
                                              +
                                              56 // ----------------------------------------------------------------------------
                                              +
                                              57 namespace {
                                              +
                                              58 const std::array<char const*, scv_extensions_if::STRING + 1> data_type_str = {{
                                              +
                                              59  "BOOLEAN", // bool
                                              +
                                              60  "ENUMERATION", // enum
                                              +
                                              61  "INTEGER", // char, short, int, long, long long, sc_int, sc_bigint
                                              +
                                              62  "UNSIGNED", // unsigned { char, short, int, long, long long }, sc_uint, sc_biguint
                                              +
                                              63  "FLOATING_POINT_NUMBER", // float, double
                                              +
                                              64  "BIT_VECTOR", // sc_bit, sc_bv
                                              +
                                              65  "LOGIC_VECTOR", // sc_logic, sc_lv
                                              +
                                              66  "FIXED_POINT_INTEGER", // sc_fixed
                                              +
                                              67  "UNSIGNED_FIXED_POINT_INTEGER", // sc_ufixed
                                              +
                                              68  "RECORD", // struct/class
                                              +
                                              69  "POINTER", // T*
                                              +
                                              70  "ARRAY", // T[N]
                                              +
                                              71  "STRING" // string, std::string
                                              +
                                              72 
                                              +
                                              73 }};
                                              +
                                              74 class PlainWriter {
                                              +
                                              75 public:
                                              +
                                              76  std::ofstream out;
                                              +
                                              77  PlainWriter(const std::string& name)
                                              +
                                              78  : out(name) {}
                                              +
                                              79  ~PlainWriter() {
                                              +
                                              80  if(out.is_open())
                                              +
                                              81  out.close();
                                              +
                                              82  }
                                              +
                                              83  bool is_open() { return out.is_open(); }
                                              +
                                              84 };
                                              +
                                              85 class LZ4Writer {
                                              +
                                              86  std::ofstream ofs;
                                              +
                                              87  std::unique_ptr<util::lz4c_steambuf> strbuf;
                                              +
                                              88 
                                              +
                                              89 public:
                                              +
                                              90  std::ostream out;
                                              +
                                              91  LZ4Writer(const std::string& name)
                                              +
                                              92  : ofs(name, std::ios::binary | std::ios::trunc)
                                              +
                                              93  , strbuf(new util::lz4c_steambuf(ofs, 8192))
                                              +
                                              94  , out(strbuf.get()) {}
                                              +
                                              95  ~LZ4Writer() {
                                              +
                                              96  if(is_open()) {
                                              +
                                              97  strbuf->close();
                                              +
                                              98  ofs.close();
                                              +
                                              99  }
                                              +
                                              100  }
                                              +
                                              101 
                                              +
                                              102  bool is_open() { return ofs.is_open(); }
                                              +
                                              103 };
                                              +
                                              104 
                                              +
                                              105 template <typename WRITER> struct Formatter {
                                              +
                                              106  std::unique_ptr<WRITER> writer;
                                              +
                                              107  Formatter(const std::string& name)
                                              +
                                              108  : writer(new WRITER(name)) {}
                                              +
                                              109 
                                              +
                                              110  Formatter() {}
                                              +
                                              111 
                                              +
                                              112  inline bool open(const std::string& name) {
                                              +
                                              113  writer.reset(new WRITER(name));
                                              +
                                              114  return writer->is_open();
                                              +
                                              115  }
                                              +
                                              116 
                                              +
                                              117  inline void close() { delete writer.release(); }
                                              +
                                              118 
                                              +
                                              119  inline void writeStream(uint64_t id, std::string const& name, std::string const& kind) {
                                              +
                                              120  auto buf = fmt::format("scv_tr_stream (ID {}, name \"{}\", kind \"{}\")\n", id, name.c_str(), kind.c_str());
                                              +
                                              121  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              122  }
                                              +
                                              123 
                                              +
                                              124  inline void writeGenerator(uint64_t id, std::string const& name, uint64_t stream, std::vector<AttrDesc> const& attributes) {
                                              +
                                              125  auto buf = fmt::format("scv_tr_generator (ID {}, name \"{}\", scv_tr_stream {},\n", id, name.c_str(), stream);
                                              +
                                              126  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              127  auto idx = 0U;
                                              +
                                              128  for(auto attr : attributes) {
                                              +
                                              129  if(attr.evt == BEGIN) {
                                              +
                                              130  auto buf = fmt::format("begin_attribute (ID {}, name \"{}\", type \"{}\")\n", idx, attr.name, data_type_str[attr.type]);
                                              +
                                              131  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              132  } else if(attr.evt == END) {
                                              +
                                              133  auto buf = fmt::format("end_attribute (ID {}, name \"{}\", type \"{}\")\n", idx, attr.name, data_type_str[attr.type]);
                                              +
                                              134  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              135  }
                                              +
                                              136  ++idx;
                                              +
                                              137  }
                                              +
                                              138  writer->out.write(")\n", 2);
                                              +
                                              139  }
                                              +
                                              140 
                                              +
                                              141  inline void writeTransaction(uint64_t id, uint64_t generator, EventType type, uint64_t time) {
                                              +
                                              142  auto buf = type == BEGIN ? fmt::format("tx_begin {} {} {} ps\n", id, generator, time)
                                              +
                                              143  : fmt::format("tx_end {} {} {} ps\n", id, generator, time);
                                              +
                                              144  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              145  }
                                              +
                                              146 
                                              +
                                              147  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, const string& value) {
                                              +
                                              148  // data_type::BOOLEAN, data_type::ENUMERATION, data_type::BIT_VECTOR, data_type::LOGIC_VECTOR, data_type::STRING
                                              +
                                              149  auto buf = event == EventType::RECORD
                                              +
                                              150  ? fmt::format("tx_record_attribute {} \"{}\" {} = \"{}\"\n", id, name, data_type_str[type], value)
                                              +
                                              151  : fmt::format("a \"{}\"\n", value);
                                              +
                                              152  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              153  }
                                              +
                                              154 
                                              +
                                              155  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, int64_t value) {
                                              +
                                              156  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              +
                                              157  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              +
                                              158  : fmt::format("a {}\n", value);
                                              +
                                              159  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              160  }
                                              +
                                              161 
                                              +
                                              162  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, uint64_t value) {
                                              +
                                              163  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              +
                                              164  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              +
                                              165  : fmt::format("a {}\n", value);
                                              +
                                              166  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              167  }
                                              +
                                              168 
                                              +
                                              169  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, bool value) {
                                              +
                                              170  // data_type::INTEGER, data_type::UNSIGNED, data_type::FIXED_POINT_INTEGER, data_type::UNSIGNED_FIXED_POINT_INTEGER
                                              +
                                              171  auto buf = event == EventType::RECORD
                                              +
                                              172  ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value ? "true" : "false")
                                              +
                                              173  : fmt::format("a {}\n", value ? "true" : "false");
                                              +
                                              174  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              175  }
                                              +
                                              176 
                                              +
                                              177  inline void writeAttribute(uint64_t id, EventType event, const string& name, data_type type, double value) {
                                              +
                                              178  // data_type::FLOATING_POINT_NUMBER
                                              +
                                              179  auto buf = event == EventType::RECORD ? fmt::format("tx_record_attribute {} \"{}\" {} = {}\n", id, name, data_type_str[type], value)
                                              +
                                              180  : fmt::format("a {}\n", value);
                                              +
                                              181  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              182  }
                                              +
                                              183 
                                              +
                                              184  inline void writeRelation(const std::string& name, uint64_t sink_id, uint64_t src_id) {
                                              +
                                              185  auto buf = fmt::format("tx_relation \"{}\" {} {}\n", name, sink_id, src_id);
                                              +
                                              186  writer->out.write(buf.c_str(), buf.size());
                                              +
                                              187  }
                                              +
                                              188  static Formatter& get() {
                                              +
                                              189  static Formatter db;
                                              +
                                              190  return db;
                                              191  }
                                              -
                                              192  static Formatter& get() {
                                              -
                                              193  static Formatter db;
                                              -
                                              194  return db;
                                              -
                                              195  }
                                              -
                                              196 };
                                              -
                                              197 template <typename DB> void dbCb(const scv_tr_db& _scv_tr_db, scv_tr_db::callback_reason reason, void* data) {
                                              -
                                              198  // This is called from the scv_tr_db ctor.
                                              -
                                              199  static string fName("DEFAULT_scv_tr_sqlite");
                                              -
                                              200  switch(reason) {
                                              -
                                              201  case scv_tr_db::CREATE:
                                              -
                                              202  if((_scv_tr_db.get_name() != nullptr) && (strlen(_scv_tr_db.get_name()) != 0))
                                              -
                                              203  fName = _scv_tr_db.get_name();
                                              -
                                              204  try {
                                              -
                                              205  DB::get().open(fName);
                                              -
                                              206  } catch(...) {
                                              -
                                              207  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't open recording file");
                                              -
                                              208  }
                                              -
                                              209  break;
                                              -
                                              210  case scv_tr_db::DELETE:
                                              -
                                              211  try {
                                              -
                                              212  DB::get().close();
                                              -
                                              213  } catch(...) {
                                              -
                                              214  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't close recording file");
                                              -
                                              215  }
                                              -
                                              216  break;
                                              -
                                              217  default:
                                              -
                                              218  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Unknown reason in scv_tr_db callback");
                                              -
                                              219  }
                                              -
                                              220 }
                                              -
                                              221 // ----------------------------------------------------------------------------
                                              -
                                              222 template <typename DB> void streamCb(const scv_tr_stream& s, scv_tr_stream::callback_reason reason, void* data) {
                                              -
                                              223  if(reason == scv_tr_stream::CREATE) {
                                              -
                                              224  try {
                                              -
                                              225  DB::get().writeStream(s.get_id(), s.get_name(), s.get_stream_kind());
                                              -
                                              226  } catch(std::runtime_error& e) {
                                              -
                                              227  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create stream");
                                              -
                                              228  }
                                              -
                                              229  }
                                              -
                                              230 }
                                              -
                                              231 // ----------------------------------------------------------------------------
                                              -
                                              232 template <typename DB> inline void recordAttribute(uint64_t id, EventType event, const string& name, data_type type, const string& value) {
                                              -
                                              233  try {
                                              -
                                              234  DB::get().writeAttribute(id, event, name, type, value);
                                              -
                                              235  } catch(std::runtime_error& e) {
                                              -
                                              236  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create attribute entry");
                                              -
                                              237  }
                                              -
                                              238 }
                                              -
                                              239 // ----------------------------------------------------------------------------
                                              -
                                              240 inline std::string get_name(const char* prefix, const scv_extensions_if* my_exts_p) {
                                              -
                                              241  string name;
                                              -
                                              242  if(!prefix || strlen(prefix) == 0) {
                                              -
                                              243  name = my_exts_p->get_name();
                                              -
                                              244  } else {
                                              -
                                              245  if((my_exts_p->get_name() == nullptr) || (strlen(my_exts_p->get_name()) == 0)) {
                                              -
                                              246  name = prefix;
                                              -
                                              247  } else {
                                              -
                                              248  name = fmt::format("{}.{}", prefix, my_exts_p->get_name());
                                              -
                                              249  }
                                              -
                                              250  }
                                              -
                                              251  return (name == "") ? "<unnamed>" : name;
                                              -
                                              252 }
                                              -
                                              253 
                                              -
                                              254 // ----------------------------------------------------------------------------
                                              -
                                              255 template <typename DB>
                                              -
                                              256 inline void recordAttributes(uint64_t id, EventType eventType, char const* prefix, const scv_extensions_if* my_exts_p) {
                                              -
                                              257  if(my_exts_p == nullptr)
                                              -
                                              258  return;
                                              -
                                              259  auto name = get_name(prefix, my_exts_p);
                                              -
                                              260  switch(my_exts_p->get_type()) {
                                              -
                                              261  case scv_extensions_if::RECORD: {
                                              -
                                              262  int num_fields = my_exts_p->get_num_fields();
                                              -
                                              263  if(num_fields > 0) {
                                              -
                                              264  for(int field_counter = 0; field_counter < num_fields; field_counter++) {
                                              -
                                              265  const scv_extensions_if* field_data_p = my_exts_p->get_field(field_counter);
                                              -
                                              266  recordAttributes<DB>(id, eventType, prefix, field_data_p);
                                              -
                                              267  }
                                              -
                                              268  }
                                              -
                                              269  } break;
                                              -
                                              270  case scv_extensions_if::POINTER:
                                              -
                                              271  if(auto ptr = my_exts_p->get_pointer()) {
                                              -
                                              272  std::stringstream ss;
                                              -
                                              273  ss << prefix << "*";
                                              -
                                              274  recordAttributes<DB>(id, eventType, ss.str().c_str(), ptr);
                                              -
                                              275  }
                                              +
                                              192 };
                                              +
                                              193 template <typename DB> void dbCb(const scv_tr_db& _scv_tr_db, scv_tr_db::callback_reason reason, void* data) {
                                              +
                                              194  // This is called from the scv_tr_db ctor.
                                              +
                                              195  static string fName("DEFAULT_scv_tr_sqlite");
                                              +
                                              196  switch(reason) {
                                              +
                                              197  case scv_tr_db::CREATE:
                                              +
                                              198  if((_scv_tr_db.get_name() != nullptr) && (strlen(_scv_tr_db.get_name()) != 0))
                                              +
                                              199  fName = _scv_tr_db.get_name();
                                              +
                                              200  try {
                                              +
                                              201  DB::get().open(fName);
                                              +
                                              202  } catch(...) {
                                              +
                                              203  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't open recording file");
                                              +
                                              204  }
                                              +
                                              205  break;
                                              +
                                              206  case scv_tr_db::DELETE:
                                              +
                                              207  try {
                                              +
                                              208  DB::get().close();
                                              +
                                              209  } catch(...) {
                                              +
                                              210  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't close recording file");
                                              +
                                              211  }
                                              +
                                              212  break;
                                              +
                                              213  default:
                                              +
                                              214  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Unknown reason in scv_tr_db callback");
                                              +
                                              215  }
                                              +
                                              216 }
                                              +
                                              217 // ----------------------------------------------------------------------------
                                              +
                                              218 template <typename DB> void streamCb(const scv_tr_stream& s, scv_tr_stream::callback_reason reason, void* data) {
                                              +
                                              219  if(reason == scv_tr_stream::CREATE) {
                                              +
                                              220  try {
                                              +
                                              221  DB::get().writeStream(s.get_id(), s.get_name(), s.get_stream_kind());
                                              +
                                              222  } catch(std::runtime_error& e) {
                                              +
                                              223  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create stream");
                                              +
                                              224  }
                                              +
                                              225  }
                                              +
                                              226 }
                                              +
                                              227 // ----------------------------------------------------------------------------
                                              +
                                              228 template <typename DB> inline void recordAttribute(uint64_t id, EventType event, const string& name, data_type type, const string& value) {
                                              +
                                              229  try {
                                              +
                                              230  DB::get().writeAttribute(id, event, name, type, value);
                                              +
                                              231  } catch(std::runtime_error& e) {
                                              +
                                              232  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create attribute entry");
                                              +
                                              233  }
                                              +
                                              234 }
                                              +
                                              235 // ----------------------------------------------------------------------------
                                              +
                                              236 inline std::string get_name(const char* prefix, const scv_extensions_if* my_exts_p) {
                                              +
                                              237  string name;
                                              +
                                              238  if(!prefix || strlen(prefix) == 0) {
                                              +
                                              239  name = my_exts_p->get_name();
                                              +
                                              240  } else {
                                              +
                                              241  if((my_exts_p->get_name() == nullptr) || (strlen(my_exts_p->get_name()) == 0)) {
                                              +
                                              242  name = prefix;
                                              +
                                              243  } else {
                                              +
                                              244  name = fmt::format("{}.{}", prefix, my_exts_p->get_name());
                                              +
                                              245  }
                                              +
                                              246  }
                                              +
                                              247  return (name == "") ? "<unnamed>" : name;
                                              +
                                              248 }
                                              +
                                              249 
                                              +
                                              250 // ----------------------------------------------------------------------------
                                              +
                                              251 template <typename DB>
                                              +
                                              252 inline void recordAttributes(uint64_t id, EventType eventType, char const* prefix, const scv_extensions_if* my_exts_p) {
                                              +
                                              253  if(my_exts_p == nullptr)
                                              +
                                              254  return;
                                              +
                                              255  auto name = get_name(prefix, my_exts_p);
                                              +
                                              256  switch(my_exts_p->get_type()) {
                                              +
                                              257  case scv_extensions_if::RECORD: {
                                              +
                                              258  int num_fields = my_exts_p->get_num_fields();
                                              +
                                              259  if(num_fields > 0) {
                                              +
                                              260  for(int field_counter = 0; field_counter < num_fields; field_counter++) {
                                              +
                                              261  const scv_extensions_if* field_data_p = my_exts_p->get_field(field_counter);
                                              +
                                              262  recordAttributes<DB>(id, eventType, prefix, field_data_p);
                                              +
                                              263  }
                                              +
                                              264  }
                                              +
                                              265  } break;
                                              +
                                              266  case scv_extensions_if::POINTER:
                                              +
                                              267  if(auto ptr = my_exts_p->get_pointer()) {
                                              +
                                              268  std::stringstream ss;
                                              +
                                              269  ss << prefix << "*";
                                              +
                                              270  recordAttributes<DB>(id, eventType, ss.str().c_str(), ptr);
                                              +
                                              271  }
                                              +
                                              272  break;
                                              +
                                              273  case scv_extensions_if::ENUMERATION:
                                              +
                                              274  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::ENUMERATION,
                                              +
                                              275  my_exts_p->get_enum_string((int)(my_exts_p->get_integer())));
                                              276  break;
                                              -
                                              277  case scv_extensions_if::ENUMERATION:
                                              -
                                              278  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::ENUMERATION,
                                              -
                                              279  my_exts_p->get_enum_string((int)(my_exts_p->get_integer())));
                                              -
                                              280  break;
                                              -
                                              281  case scv_extensions_if::BOOLEAN:
                                              -
                                              282  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::BOOLEAN, my_exts_p->get_bool());
                                              +
                                              277  case scv_extensions_if::BOOLEAN:
                                              +
                                              278  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::BOOLEAN, my_exts_p->get_bool());
                                              +
                                              279  break;
                                              +
                                              280  case scv_extensions_if::INTEGER:
                                              +
                                              281  case scv_extensions_if::FIXED_POINT_INTEGER:
                                              +
                                              282  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::INTEGER, (int64_t)my_exts_p->get_integer());
                                              283  break;
                                              -
                                              284  case scv_extensions_if::INTEGER:
                                              -
                                              285  case scv_extensions_if::FIXED_POINT_INTEGER:
                                              -
                                              286  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::INTEGER, (int64_t)my_exts_p->get_integer());
                                              -
                                              287  break;
                                              -
                                              288  case scv_extensions_if::UNSIGNED:
                                              -
                                              289  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::UNSIGNED, (uint64_t)my_exts_p->get_unsigned());
                                              -
                                              290  break;
                                              -
                                              291  case scv_extensions_if::STRING:
                                              -
                                              292  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::STRING, my_exts_p->get_string());
                                              -
                                              293  break;
                                              -
                                              294  case scv_extensions_if::FLOATING_POINT_NUMBER:
                                              -
                                              295  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::FLOATING_POINT_NUMBER, my_exts_p->get_double());
                                              -
                                              296  break;
                                              -
                                              297  case scv_extensions_if::BIT_VECTOR: {
                                              -
                                              298  sc_bv_base tmp_bv(my_exts_p->get_bitwidth());
                                              -
                                              299  my_exts_p->get_value(tmp_bv);
                                              -
                                              300  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::BIT_VECTOR, tmp_bv.to_string());
                                              -
                                              301  } break;
                                              -
                                              302  case scv_extensions_if::LOGIC_VECTOR: {
                                              -
                                              303  sc_lv_base tmp_lv(my_exts_p->get_bitwidth());
                                              -
                                              304  my_exts_p->get_value(tmp_lv);
                                              -
                                              305  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::LOGIC_VECTOR, tmp_lv.to_string());
                                              -
                                              306  } break;
                                              -
                                              307  case scv_extensions_if::ARRAY:
                                              -
                                              308  for(int array_elt_index = 0; array_elt_index < my_exts_p->get_array_size(); array_elt_index++) {
                                              -
                                              309  const scv_extensions_if* field_data_p = my_exts_p->get_array_elt(array_elt_index);
                                              -
                                              310  recordAttributes<DB>(id, eventType, prefix, field_data_p);
                                              -
                                              311  }
                                              -
                                              312  break;
                                              -
                                              313  default: {
                                              -
                                              314  std::array<char, 100> tmpString;
                                              -
                                              315  sprintf(tmpString.data(), "Unsupported attribute type = %d", my_exts_p->get_type());
                                              -
                                              316  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, tmpString.data());
                                              -
                                              317  }
                                              -
                                              318  }
                                              -
                                              319 }
                                              -
                                              320 // ----------------------------------------------------------------------------
                                              -
                                              321 template <typename DB> void generatorCb(const scv_tr_generator_base& g, scv_tr_generator_base::callback_reason reason, void* data) {
                                              -
                                              322  if(reason == scv_tr_generator_base::CREATE) {
                                              -
                                              323  try {
                                              -
                                              324  std::vector<AttrDesc> attrs;
                                              -
                                              325  const scv_extensions_if* my_begin_exts_p = g.get_begin_exts_p();
                                              -
                                              326  if(my_begin_exts_p != nullptr) {
                                              -
                                              327  attrs.emplace_back(BEGIN, my_begin_exts_p->get_type(), g.get_begin_attribute_name() ? g.get_begin_attribute_name() : "");
                                              +
                                              284  case scv_extensions_if::UNSIGNED:
                                              +
                                              285  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::UNSIGNED, (uint64_t)my_exts_p->get_unsigned());
                                              +
                                              286  break;
                                              +
                                              287  case scv_extensions_if::STRING:
                                              +
                                              288  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::STRING, my_exts_p->get_string());
                                              +
                                              289  break;
                                              +
                                              290  case scv_extensions_if::FLOATING_POINT_NUMBER:
                                              +
                                              291  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::FLOATING_POINT_NUMBER, my_exts_p->get_double());
                                              +
                                              292  break;
                                              +
                                              293  case scv_extensions_if::BIT_VECTOR: {
                                              +
                                              294  sc_bv_base tmp_bv(my_exts_p->get_bitwidth());
                                              +
                                              295  my_exts_p->get_value(tmp_bv);
                                              +
                                              296  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::BIT_VECTOR, tmp_bv.to_string());
                                              +
                                              297  } break;
                                              +
                                              298  case scv_extensions_if::LOGIC_VECTOR: {
                                              +
                                              299  sc_lv_base tmp_lv(my_exts_p->get_bitwidth());
                                              +
                                              300  my_exts_p->get_value(tmp_lv);
                                              +
                                              301  DB::get().writeAttribute(id, eventType, name, scv_extensions_if::LOGIC_VECTOR, tmp_lv.to_string());
                                              +
                                              302  } break;
                                              +
                                              303  case scv_extensions_if::ARRAY:
                                              +
                                              304  for(int array_elt_index = 0; array_elt_index < my_exts_p->get_array_size(); array_elt_index++) {
                                              +
                                              305  const scv_extensions_if* field_data_p = my_exts_p->get_array_elt(array_elt_index);
                                              +
                                              306  recordAttributes<DB>(id, eventType, prefix, field_data_p);
                                              +
                                              307  }
                                              +
                                              308  break;
                                              +
                                              309  default: {
                                              +
                                              310  std::array<char, 100> tmpString;
                                              +
                                              311  sprintf(tmpString.data(), "Unsupported attribute type = %d", my_exts_p->get_type());
                                              +
                                              312  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, tmpString.data());
                                              +
                                              313  }
                                              +
                                              314  }
                                              +
                                              315 }
                                              +
                                              316 // ----------------------------------------------------------------------------
                                              +
                                              317 template <typename DB> void generatorCb(const scv_tr_generator_base& g, scv_tr_generator_base::callback_reason reason, void* data) {
                                              +
                                              318  if(reason == scv_tr_generator_base::CREATE) {
                                              +
                                              319  try {
                                              +
                                              320  std::vector<AttrDesc> attrs;
                                              +
                                              321  const scv_extensions_if* my_begin_exts_p = g.get_begin_exts_p();
                                              +
                                              322  if(my_begin_exts_p != nullptr) {
                                              +
                                              323  attrs.emplace_back(BEGIN, my_begin_exts_p->get_type(), g.get_begin_attribute_name() ? g.get_begin_attribute_name() : "");
                                              +
                                              324  }
                                              +
                                              325  const scv_extensions_if* my_end_exts_p = g.get_end_exts_p();
                                              +
                                              326  if(my_end_exts_p != nullptr) {
                                              +
                                              327  attrs.emplace_back(END, my_end_exts_p->get_type(), g.get_end_attribute_name() ? g.get_end_attribute_name() : "");
                                              328  }
                                              -
                                              329  const scv_extensions_if* my_end_exts_p = g.get_end_exts_p();
                                              -
                                              330  if(my_end_exts_p != nullptr) {
                                              -
                                              331  attrs.emplace_back(END, my_end_exts_p->get_type(), g.get_end_attribute_name() ? g.get_end_attribute_name() : "");
                                              -
                                              332  }
                                              -
                                              333  DB::get().writeGenerator(g.get_id(), g.get_name(), g.get_scv_tr_stream().get_id(), attrs);
                                              -
                                              334  } catch(std::runtime_error& e) {
                                              -
                                              335  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create generator entry");
                                              -
                                              336  }
                                              -
                                              337  }
                                              -
                                              338 }
                                              -
                                              339 // ----------------------------------------------------------------------------
                                              -
                                              340 template <typename DB> void transactionCb(const scv_tr_handle& t, scv_tr_handle::callback_reason reason, void* data) {
                                              -
                                              341  if(t.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              -
                                              342  return;
                                              -
                                              343  if(t.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              -
                                              344  return;
                                              -
                                              345 
                                              -
                                              346  uint64_t id = t.get_id();
                                              -
                                              347  vector<uint64_t>::size_type concurrencyIdx;
                                              -
                                              348  const scv_extensions_if* my_exts_p;
                                              -
                                              349  switch(reason) {
                                              -
                                              350  case scv_tr_handle::BEGIN: {
                                              -
                                              351  DB::get().writeTransaction(t.get_id(), t.get_scv_tr_generator_base().get_id(), BEGIN, t.get_begin_sc_time().value());
                                              -
                                              352  my_exts_p = t.get_begin_exts_p();
                                              -
                                              353  if(my_exts_p == nullptr)
                                              -
                                              354  my_exts_p = t.get_scv_tr_generator_base().get_begin_exts_p();
                                              -
                                              355  if(my_exts_p) {
                                              -
                                              356  auto tmp_str =
                                              -
                                              357  t.get_scv_tr_generator_base().get_begin_attribute_name() ? t.get_scv_tr_generator_base().get_begin_attribute_name() : "";
                                              -
                                              358  recordAttributes<DB>(id, BEGIN, tmp_str, my_exts_p);
                                              -
                                              359  }
                                              -
                                              360  } break;
                                              -
                                              361  case scv_tr_handle::END: {
                                              -
                                              362  DB::get().writeTransaction(t.get_id(), t.get_scv_tr_generator_base().get_id(), END, t.get_begin_sc_time().value());
                                              -
                                              363  my_exts_p = t.get_end_exts_p();
                                              -
                                              364  if(my_exts_p == nullptr)
                                              -
                                              365  my_exts_p = t.get_scv_tr_generator_base().get_end_exts_p();
                                              -
                                              366  if(my_exts_p) {
                                              -
                                              367  auto tmp_str =
                                              -
                                              368  t.get_scv_tr_generator_base().get_end_attribute_name() ? t.get_scv_tr_generator_base().get_end_attribute_name() : "";
                                              -
                                              369  recordAttributes<DB>(t.get_id(), END, tmp_str, my_exts_p);
                                              -
                                              370  }
                                              -
                                              371  } break;
                                              -
                                              372  default:;
                                              -
                                              373  }
                                              -
                                              374 }
                                              -
                                              375 // ----------------------------------------------------------------------------
                                              -
                                              376 template <typename DB> void attributeCb(const scv_tr_handle& t, const char* name, const scv_extensions_if* ext, void* data) {
                                              -
                                              377  if(t.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              -
                                              378  return;
                                              -
                                              379  if(t.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              -
                                              380  return;
                                              -
                                              381  recordAttributes<DB>(t.get_id(), RECORD, name == nullptr ? "" : name, ext);
                                              -
                                              382 }
                                              -
                                              383 // ----------------------------------------------------------------------------
                                              -
                                              384 template <typename DB>
                                              -
                                              385 void relationCb(const scv_tr_handle& tr_1, const scv_tr_handle& tr_2, void* data, scv_tr_relation_handle_t relation_handle) {
                                              -
                                              386  if(tr_1.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              -
                                              387  return;
                                              -
                                              388  if(tr_1.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              -
                                              389  return;
                                              -
                                              390  try {
                                              -
                                              391  DB::get().writeRelation(tr_1.get_scv_tr_stream().get_scv_tr_db()->get_relation_name(relation_handle), tr_1.get_id(), tr_2.get_id());
                                              -
                                              392  } catch(std::runtime_error& e) {
                                              -
                                              393  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create transaction relation");
                                              -
                                              394  }
                                              -
                                              395 }
                                              -
                                              396 } // namespace
                                              -
                                              397 // ----------------------------------------------------------------------------
                                              - -
                                              399  scv_tr_db::register_class_cb(dbCb<Formatter<LZ4Writer>>);
                                              -
                                              400  scv_tr_stream::register_class_cb(streamCb<Formatter<LZ4Writer>>);
                                              -
                                              401  scv_tr_generator_base::register_class_cb(generatorCb<Formatter<LZ4Writer>>);
                                              -
                                              402  scv_tr_handle::register_class_cb(transactionCb<Formatter<LZ4Writer>>);
                                              -
                                              403  scv_tr_handle::register_record_attribute_cb(attributeCb<Formatter<LZ4Writer>>);
                                              -
                                              404  scv_tr_handle::register_relation_cb(relationCb<Formatter<LZ4Writer>>);
                                              -
                                              405 }
                                              - -
                                              407  scv_tr_db::register_class_cb(dbCb<Formatter<PlainWriter>>);
                                              -
                                              408  scv_tr_stream::register_class_cb(streamCb<Formatter<PlainWriter>>);
                                              -
                                              409  scv_tr_generator_base::register_class_cb(generatorCb<Formatter<PlainWriter>>);
                                              -
                                              410  scv_tr_handle::register_class_cb(transactionCb<Formatter<PlainWriter>>);
                                              -
                                              411  scv_tr_handle::register_record_attribute_cb(attributeCb<Formatter<PlainWriter>>);
                                              -
                                              412  scv_tr_handle::register_relation_cb(relationCb<Formatter<PlainWriter>>);
                                              -
                                              413 }
                                              -
                                              414 // ----------------------------------------------------------------------------
                                              -
                                              415 #ifndef HAS_SCV
                                              -
                                              416 }
                                              -
                                              417 #endif
                                              +
                                              329  DB::get().writeGenerator(g.get_id(), g.get_name(), g.get_scv_tr_stream().get_id(), attrs);
                                              +
                                              330  } catch(std::runtime_error& e) {
                                              +
                                              331  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create generator entry");
                                              +
                                              332  }
                                              +
                                              333  }
                                              +
                                              334 }
                                              +
                                              335 // ----------------------------------------------------------------------------
                                              +
                                              336 template <typename DB> void transactionCb(const scv_tr_handle& t, scv_tr_handle::callback_reason reason, void* data) {
                                              +
                                              337  if(t.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              +
                                              338  return;
                                              +
                                              339  if(t.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              +
                                              340  return;
                                              +
                                              341 
                                              +
                                              342  uint64_t id = t.get_id();
                                              +
                                              343  vector<uint64_t>::size_type concurrencyIdx;
                                              +
                                              344  const scv_extensions_if* my_exts_p;
                                              +
                                              345  switch(reason) {
                                              +
                                              346  case scv_tr_handle::BEGIN: {
                                              +
                                              347  DB::get().writeTransaction(t.get_id(), t.get_scv_tr_generator_base().get_id(), BEGIN, t.get_begin_sc_time().value());
                                              +
                                              348  my_exts_p = t.get_begin_exts_p();
                                              +
                                              349  if(my_exts_p == nullptr)
                                              +
                                              350  my_exts_p = t.get_scv_tr_generator_base().get_begin_exts_p();
                                              +
                                              351  if(my_exts_p) {
                                              +
                                              352  auto tmp_str =
                                              +
                                              353  t.get_scv_tr_generator_base().get_begin_attribute_name() ? t.get_scv_tr_generator_base().get_begin_attribute_name() : "";
                                              +
                                              354  recordAttributes<DB>(id, BEGIN, tmp_str, my_exts_p);
                                              +
                                              355  }
                                              +
                                              356  } break;
                                              +
                                              357  case scv_tr_handle::END: {
                                              +
                                              358  DB::get().writeTransaction(t.get_id(), t.get_scv_tr_generator_base().get_id(), END, t.get_begin_sc_time().value());
                                              +
                                              359  my_exts_p = t.get_end_exts_p();
                                              +
                                              360  if(my_exts_p == nullptr)
                                              +
                                              361  my_exts_p = t.get_scv_tr_generator_base().get_end_exts_p();
                                              +
                                              362  if(my_exts_p) {
                                              +
                                              363  auto tmp_str =
                                              +
                                              364  t.get_scv_tr_generator_base().get_end_attribute_name() ? t.get_scv_tr_generator_base().get_end_attribute_name() : "";
                                              +
                                              365  recordAttributes<DB>(t.get_id(), END, tmp_str, my_exts_p);
                                              +
                                              366  }
                                              +
                                              367  } break;
                                              +
                                              368  default:;
                                              +
                                              369  }
                                              +
                                              370 }
                                              +
                                              371 // ----------------------------------------------------------------------------
                                              +
                                              372 template <typename DB> void attributeCb(const scv_tr_handle& t, const char* name, const scv_extensions_if* ext, void* data) {
                                              +
                                              373  if(t.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              +
                                              374  return;
                                              +
                                              375  if(t.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              +
                                              376  return;
                                              +
                                              377  recordAttributes<DB>(t.get_id(), RECORD, name == nullptr ? "" : name, ext);
                                              +
                                              378 }
                                              +
                                              379 // ----------------------------------------------------------------------------
                                              +
                                              380 template <typename DB>
                                              +
                                              381 void relationCb(const scv_tr_handle& tr_1, const scv_tr_handle& tr_2, void* data, scv_tr_relation_handle_t relation_handle) {
                                              +
                                              382  if(tr_1.get_scv_tr_stream().get_scv_tr_db() == nullptr)
                                              +
                                              383  return;
                                              +
                                              384  if(tr_1.get_scv_tr_stream().get_scv_tr_db()->get_recording() == false)
                                              +
                                              385  return;
                                              +
                                              386  try {
                                              +
                                              387  DB::get().writeRelation(tr_1.get_scv_tr_stream().get_scv_tr_db()->get_relation_name(relation_handle), tr_1.get_id(), tr_2.get_id());
                                              +
                                              388  } catch(std::runtime_error& e) {
                                              +
                                              389  _scv_message::message(_scv_message::TRANSACTION_RECORDING_INTERNAL, "Can't create transaction relation");
                                              +
                                              390  }
                                              +
                                              391 }
                                              +
                                              392 } // namespace
                                              +
                                              393 // ----------------------------------------------------------------------------
                                              + +
                                              395  scv_tr_db::register_class_cb(dbCb<Formatter<LZ4Writer>>);
                                              +
                                              396  scv_tr_stream::register_class_cb(streamCb<Formatter<LZ4Writer>>);
                                              +
                                              397  scv_tr_generator_base::register_class_cb(generatorCb<Formatter<LZ4Writer>>);
                                              +
                                              398  scv_tr_handle::register_class_cb(transactionCb<Formatter<LZ4Writer>>);
                                              +
                                              399  scv_tr_handle::register_record_attribute_cb(attributeCb<Formatter<LZ4Writer>>);
                                              +
                                              400  scv_tr_handle::register_relation_cb(relationCb<Formatter<LZ4Writer>>);
                                              +
                                              401 }
                                              + +
                                              403  scv_tr_db::register_class_cb(dbCb<Formatter<PlainWriter>>);
                                              +
                                              404  scv_tr_stream::register_class_cb(streamCb<Formatter<PlainWriter>>);
                                              +
                                              405  scv_tr_generator_base::register_class_cb(generatorCb<Formatter<PlainWriter>>);
                                              +
                                              406  scv_tr_handle::register_class_cb(transactionCb<Formatter<PlainWriter>>);
                                              +
                                              407  scv_tr_handle::register_record_attribute_cb(attributeCb<Formatter<PlainWriter>>);
                                              +
                                              408  scv_tr_handle::register_relation_cb(relationCb<Formatter<PlainWriter>>);
                                              +
                                              409 }
                                              +
                                              410 // ----------------------------------------------------------------------------
                                              +
                                              411 #ifndef HAS_SCV
                                              +
                                              412 }
                                              +
                                              413 #endif
                                              SystemC Verification Library (SCV) Transaction Recording.
                                              -
                                              void scv_tr_plain_init()
                                              initializes the infrastructure to use a plain text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:406
                                              -
                                              void scv_tr_lz4_init()
                                              initializes the infrastructure to use a LZ4 compressed text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:398
                                              +
                                              void scv_tr_plain_init()
                                              initializes the infrastructure to use a plain text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:402
                                              +
                                              void scv_tr_lz4_init()
                                              initializes the infrastructure to use a LZ4 compressed text based transaction recording database
                                              Definition: scv_tr_lz4.cpp:394
                                              SCC common utilities.
                                              Definition: bit_field.h:30
                                              - + diff --git a/develop/scv__tr__mtc_8cpp_source.html b/develop/scv__tr__mtc_8cpp_source.html index 1ec97e78..f555a8ce 100644 --- a/develop/scv__tr__mtc_8cpp_source.html +++ b/develop/scv__tr__mtc_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/scv__tr__sqlite_8cpp_source.html b/develop/scv__tr__sqlite_8cpp_source.html index 2e54d2dc..1e455dbb 100644 --- a/develop/scv__tr__sqlite_8cpp_source.html +++ b/develop/scv__tr__sqlite_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/signal__if_8h_source.html b/develop/signal__if_8h_source.html index 5d6f6dd5..d31b4544 100644 --- a/develop/signal__if_8h_source.html +++ b/develop/signal__if_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/signal__initiator__mixin_8h_source.html b/develop/signal__initiator__mixin_8h_source.html index 3dcf50e0..b1531eab 100644 --- a/develop/signal__initiator__mixin_8h_source.html +++ b/develop/signal__initiator__mixin_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/signal__opt__ports_8cpp_source.html b/develop/signal__opt__ports_8cpp_source.html index 8e3e0087..c765207f 100644 --- a/develop/signal__opt__ports_8cpp_source.html +++ b/develop/signal__opt__ports_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/signal__opt__ports_8h_source.html b/develop/signal__opt__ports_8h_source.html index 84fa24b8..35049ef1 100644 --- a/develop/signal__opt__ports_8h_source.html +++ b/develop/signal__opt__ports_8h_source.html @@ -24,7 +24,7 @@ @@ -842,7 +842,7 @@
                                              SCC SystemC utilities.
                                              -
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:124
                                              +
                                              std::ostream & operator<<(std::ostream &os, log const &val)
                                              output the textual representation of the log level
                                              Definition: report.h:130
                                              diff --git a/develop/signal__target__mixin_8h_source.html b/develop/signal__target__mixin_8h_source.html index 5fd59fbc..26557892 100644 --- a/develop/signal__target__mixin_8h_source.html +++ b/develop/signal__target__mixin_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/simple__ace__target_8h_source.html b/develop/simple__ace__target_8h_source.html index ccdcbc48..e01cc564 100644 --- a/develop/simple__ace__target_8h_source.html +++ b/develop/simple__ace__target_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/simple__initiator_8cpp_source.html b/develop/simple__initiator_8cpp_source.html index 4594f20d..8e706e1e 100644 --- a/develop/simple__initiator_8cpp_source.html +++ b/develop/simple__initiator_8cpp_source.html @@ -24,7 +24,7 @@ @@ -170,7 +170,7 @@
                                              103  if(ret == tlm::TLM_UPDATED) {
                                              104  schedule(EndPartReqE, fsm_hndl->trans, t, true);
                                              105  }
                                              -
                                              106  if(protocol_cb[BegPartReqE])
                                              +
                                              106  if((bool)protocol_cb[BegPartReqE])
                                              107  cbpeq.notify(std::make_tuple(BegPartReqE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              108  };
                                              109  fsm_hndl->fsm->cb[EndPartReqE] = [this, fsm_hndl]() -> void {
                                              @@ -184,7 +184,7 @@
                                              117  schedule(BegReqE, fsm_hndl->trans, ::scc::get_value(wr_data_beat_delay) - 1);
                                              118  else
                                              119  schedule(BegReqE, fsm_hndl->trans, 0);
                                              -
                                              120  if(protocol_cb[EndPartReqE])
                                              +
                                              120  if((bool)protocol_cb[EndPartReqE])
                                              121  cbpeq.notify(std::make_tuple(EndPartReqE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              122  };
                                              123  fsm_hndl->fsm->cb[BegReqE] = [this, fsm_hndl]() -> void {
                                              @@ -198,7 +198,7 @@
                                              131  schedule(EndReqE, fsm_hndl->trans, t, true);
                                              132  }
                                              133  }
                                              -
                                              134  if(protocol_cb[BegReqE])
                                              +
                                              134  if((bool)protocol_cb[BegReqE])
                                              135  cbpeq.notify(std::make_tuple(BegReqE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              136  };
                                              137  fsm_hndl->fsm->cb[EndReqE] = [this, fsm_hndl]() -> void {
                                              @@ -258,7 +258,7 @@
                                              191  else
                                              192  rd.post();
                                              193  }
                                              -
                                              194  if(protocol_cb[EndReqE])
                                              +
                                              194  if((bool)protocol_cb[EndReqE])
                                              195  cbpeq.notify(std::make_tuple(EndReqE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              196  };
                                              197  fsm_hndl->fsm->cb[BegPartRespE] = [this, fsm_hndl]() -> void {
                                              @@ -272,7 +272,7 @@
                                              205  else
                                              206  schedule(EndPartRespE, fsm_hndl->trans, SC_ZERO_TIME);
                                              207  }
                                              -
                                              208  if(protocol_cb[BegPartRespE])
                                              +
                                              208  if((bool)protocol_cb[BegPartRespE])
                                              209  cbpeq.notify(std::make_tuple(BegPartRespE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              210  };
                                              211  fsm_hndl->fsm->cb[EndPartRespE] = [this, fsm_hndl]() -> void {
                                              @@ -286,7 +286,7 @@
                                              219  auto ret = socket_fw->nb_transport_fw(*fsm_hndl->trans, phase, t);
                                              220  fsm_hndl->beat_count++;
                                              221  }
                                              -
                                              222  if(protocol_cb[EndPartRespE])
                                              +
                                              222  if((bool)protocol_cb[EndPartRespE])
                                              223  cbpeq.notify(std::make_tuple(EndPartRespE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              224  };
                                              225  fsm_hndl->fsm->cb[BegRespE] = [this, fsm_hndl]() -> void {
                                              @@ -302,7 +302,7 @@
                                              235  else
                                              236  schedule(EndRespE, fsm_hndl->trans, SC_ZERO_TIME);
                                              237  }
                                              -
                                              238  if(protocol_cb[BegRespE])
                                              +
                                              238  if((bool)protocol_cb[BegRespE])
                                              239  cbpeq.notify(std::make_tuple(BegRespE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              240  };
                                              241  fsm_hndl->fsm->cb[EndRespE] = [this, fsm_hndl]() -> void {
                                              @@ -317,7 +317,7 @@
                                              250  } else
                                              251  fsm_hndl->finish.notify(sc_core::SC_ZERO_TIME);
                                              252  }
                                              -
                                              253  if(protocol_cb[EndRespE])
                                              +
                                              253  if((bool)protocol_cb[EndRespE])
                                              254  cbpeq.notify(std::make_tuple(EndRespE, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              255  };
                                              256  fsm_hndl->fsm->cb[Ack] = [this, fsm_hndl]() -> void {
                                              @@ -325,7 +325,7 @@
                                              258  tlm::tlm_phase phase = axi::ACK;
                                              259  auto ret = socket_fw->nb_transport_fw(*fsm_hndl->trans, phase, t);
                                              260  fsm_hndl->finish.notify(sc_core::SC_ZERO_TIME);
                                              -
                                              261  if(protocol_cb[Ack])
                                              +
                                              261  if((bool)protocol_cb[Ack])
                                              262  cbpeq.notify(std::make_tuple(Ack, fsm_hndl->trans, fsm_hndl->is_snoop), sc_core::SC_ZERO_TIME);
                                              263  };
                                              264 }
                                              diff --git a/develop/simple__initiator_8h_source.html b/develop/simple__initiator_8h_source.html index d9dc00d4..938ec909 100644 --- a/develop/simple__initiator_8h_source.html +++ b/develop/simple__initiator_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/simple__target_8h_source.html b/develop/simple__target_8h_source.html index 116092ac..44766961 100644 --- a/develop/simple__target_8h_source.html +++ b/develop/simple__target_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/sparse__array_8h_source.html b/develop/sparse__array_8h_source.html index 7b6f35f8..9c63b35a 100644 --- a/develop/sparse__array_8h_source.html +++ b/develop/sparse__array_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/src_2bus__interfaces_2axi_2axi__initiator_8cpp_source.html b/develop/src_2bus__interfaces_2axi_2axi__initiator_8cpp_source.html index 9daded1e..f4427e0e 100644 --- a/develop/src_2bus__interfaces_2axi_2axi__initiator_8cpp_source.html +++ b/develop/src_2bus__interfaces_2axi_2axi__initiator_8cpp_source.html @@ -24,7 +24,7 @@ diff --git a/develop/src_2bus__interfaces_2axi_2axi__initiator_8h_source.html b/develop/src_2bus__interfaces_2axi_2axi__initiator_8h_source.html index 65a56744..bc69db47 100644 --- a/develop/src_2bus__interfaces_2axi_2axi__initiator_8h_source.html +++ b/develop/src_2bus__interfaces_2axi_2axi__initiator_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/strprintf_8h_source.html b/develop/strprintf_8h_source.html index dc76fb8c..6e6b3f8a 100644 --- a/develop/strprintf_8h_source.html +++ b/develop/strprintf_8h_source.html @@ -24,7 +24,7 @@ diff --git a/develop/structace__target__pe_1_1bw__intor__impl-members.html b/develop/structace__target__pe_1_1bw__intor__impl-members.html index 7c0130e4..edfbee29 100644 --- a/develop/structace__target__pe_1_1bw__intor__impl-members.html +++ b/develop/structace__target__pe_1_1bw__intor__impl-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structace__target__pe_1_1bw__intor__impl.html b/develop/structace__target__pe_1_1bw__intor__impl.html index 36066abd..d686e28c 100644 --- a/develop/structace__target__pe_1_1bw__intor__impl.html +++ b/develop/structace__target__pe_1_1bw__intor__impl.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1ahb__extension-members.html b/develop/structahb_1_1ahb__extension-members.html index ba7127b6..47f061a3 100644 --- a/develop/structahb_1_1ahb__extension-members.html +++ b/develop/structahb_1_1ahb__extension-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1ahb__extension.html b/develop/structahb_1_1ahb__extension.html index b39fedc9..36ae4ddd 100644 --- a/develop/structahb_1_1ahb__extension.html +++ b/develop/structahb_1_1ahb__extension.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1enable__for__enum-members.html b/develop/structahb_1_1enable__for__enum-members.html index 13a8785e..1a48f345 100644 --- a/develop/structahb_1_1enable__for__enum-members.html +++ b/develop/structahb_1_1enable__for__enum-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1enable__for__enum.html b/develop/structahb_1_1enable__for__enum.html index 00291178..dc997147 100644 --- a/develop/structahb_1_1enable__for__enum.html +++ b/develop/structahb_1_1enable__for__enum.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state-members.html b/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state-members.html index 1859b28e..d7191ffc 100644 --- a/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state-members.html +++ b/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state.html b/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state.html index 69161559..2dca2569 100644 --- a/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state.html +++ b/develop/structahb_1_1pe_1_1ahb__initiator__b_1_1tx__state.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ac__ace-members.html b/develop/structaxi_1_1ac__ace-members.html index b872da6b..9137ad9d 100644 --- a/develop/structaxi_1_1ac__ace-members.html +++ b/develop/structaxi_1_1ac__ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ac__ace.html b/develop/structaxi_1_1ac__ace.html index 4684e1fd..83700c8b 100644 --- a/develop/structaxi_1_1ac__ace.html +++ b/develop/structaxi_1_1ac__ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace-members.html b/develop/structaxi_1_1ace-members.html index b95ef193..5dd37eba 100644 --- a/develop/structaxi_1_1ace-members.html +++ b/develop/structaxi_1_1ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace.html b/develop/structaxi_1_1ace.html index 12f8eeb8..410a0e33 100644 --- a/develop/structaxi_1_1ace.html +++ b/develop/structaxi_1_1ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__cfg-members.html b/develop/structaxi_1_1ace__cfg-members.html index a7a099d8..642521db 100644 --- a/develop/structaxi_1_1ace__cfg-members.html +++ b/develop/structaxi_1_1ace__cfg-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__cfg.html b/develop/structaxi_1_1ace__cfg.html index 1291f722..afe6ae08 100644 --- a/develop/structaxi_1_1ace__cfg.html +++ b/develop/structaxi_1_1ace__cfg.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__extension-members.html b/develop/structaxi_1_1ace__extension-members.html index 5d34231c..2c1f8afc 100644 --- a/develop/structaxi_1_1ace__extension-members.html +++ b/develop/structaxi_1_1ace__extension-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__extension.html b/develop/structaxi_1_1ace__extension.html index 8c108f11..830ccb5d 100644 --- a/develop/structaxi_1_1ace__extension.html +++ b/develop/structaxi_1_1ace__extension.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__initiator__socket-members.html b/develop/structaxi_1_1ace__initiator__socket-members.html index cba5c536..2b429a93 100644 --- a/develop/structaxi_1_1ace__initiator__socket-members.html +++ b/develop/structaxi_1_1ace__initiator__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__initiator__socket.html b/develop/structaxi_1_1ace__initiator__socket.html index bc088d4b..b443aa6b 100644 --- a/develop/structaxi_1_1ace__initiator__socket.html +++ b/develop/structaxi_1_1ace__initiator__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__response-members.html b/develop/structaxi_1_1ace__response-members.html index 5e60f0a7..cc4b957e 100644 --- a/develop/structaxi_1_1ace__response-members.html +++ b/develop/structaxi_1_1ace__response-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__response.html b/develop/structaxi_1_1ace__response.html index 244ab67a..080e1e79 100644 --- a/develop/structaxi_1_1ace__response.html +++ b/develop/structaxi_1_1ace__response.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__target__socket-members.html b/develop/structaxi_1_1ace__target__socket-members.html index f0c1de42..a131a8df 100644 --- a/develop/structaxi_1_1ace__target__socket-members.html +++ b/develop/structaxi_1_1ace__target__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ace__target__socket.html b/develop/structaxi_1_1ace__target__socket.html index 2bdaa3d3..2a8623d6 100644 --- a/develop/structaxi_1_1ace__target__socket.html +++ b/develop/structaxi_1_1ace__target__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__ace-members.html b/develop/structaxi_1_1ar__ace-members.html index 25817697..0fd7b4d0 100644 --- a/develop/structaxi_1_1ar__ace-members.html +++ b/develop/structaxi_1_1ar__ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__ace.html b/develop/structaxi_1_1ar__ace.html index 4b35d7b4..4f420b48 100644 --- a/develop/structaxi_1_1ar__ace.html +++ b/develop/structaxi_1_1ar__ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__axi-members.html b/develop/structaxi_1_1ar__axi-members.html index 92a32ec9..d50283f0 100644 --- a/develop/structaxi_1_1ar__axi-members.html +++ b/develop/structaxi_1_1ar__axi-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__axi.html b/develop/structaxi_1_1ar__axi.html index a0cced52..c7c8ec4b 100644 --- a/develop/structaxi_1_1ar__axi.html +++ b/develop/structaxi_1_1ar__axi.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__axi__lite-members.html b/develop/structaxi_1_1ar__axi__lite-members.html index b857d501..67cecc0b 100644 --- a/develop/structaxi_1_1ar__axi__lite-members.html +++ b/develop/structaxi_1_1ar__axi__lite-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1ar__axi__lite.html b/develop/structaxi_1_1ar__axi__lite.html index c06c556d..e39b44fb 100644 --- a/develop/structaxi_1_1ar__axi__lite.html +++ b/develop/structaxi_1_1ar__axi__lite.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__ace-members.html b/develop/structaxi_1_1aw__ace-members.html index 1bfed79e..140d13ad 100644 --- a/develop/structaxi_1_1aw__ace-members.html +++ b/develop/structaxi_1_1aw__ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__ace.html b/develop/structaxi_1_1aw__ace.html index dbdb8748..4d2d20ff 100644 --- a/develop/structaxi_1_1aw__ace.html +++ b/develop/structaxi_1_1aw__ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__axi-members.html b/develop/structaxi_1_1aw__axi-members.html index 5793ddc8..a8185750 100644 --- a/develop/structaxi_1_1aw__axi-members.html +++ b/develop/structaxi_1_1aw__axi-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__axi.html b/develop/structaxi_1_1aw__axi.html index beeeffe5..b8c27db4 100644 --- a/develop/structaxi_1_1aw__axi.html +++ b/develop/structaxi_1_1aw__axi.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__axi__lite-members.html b/develop/structaxi_1_1aw__axi__lite-members.html index 7ef4af29..942ab6d4 100644 --- a/develop/structaxi_1_1aw__axi__lite-members.html +++ b/develop/structaxi_1_1aw__axi__lite-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1aw__axi__lite.html b/develop/structaxi_1_1aw__axi__lite.html index 7668756a..5c581842 100644 --- a/develop/structaxi_1_1aw__axi__lite.html +++ b/develop/structaxi_1_1aw__axi__lite.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi3-members.html b/develop/structaxi_1_1axi3-members.html index a18defb7..ae754a2e 100644 --- a/develop/structaxi_1_1axi3-members.html +++ b/develop/structaxi_1_1axi3-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi3.html b/develop/structaxi_1_1axi3.html index 5b5d085a..bd47a37c 100644 --- a/develop/structaxi_1_1axi3.html +++ b/develop/structaxi_1_1axi3.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi3__extension-members.html b/develop/structaxi_1_1axi3__extension-members.html index 0a6b8acd..c0a5cb45 100644 --- a/develop/structaxi_1_1axi3__extension-members.html +++ b/develop/structaxi_1_1axi3__extension-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi3__extension.html b/develop/structaxi_1_1axi3__extension.html index 8b2e87f9..63f1f0c4 100644 --- a/develop/structaxi_1_1axi3__extension.html +++ b/develop/structaxi_1_1axi3__extension.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4-members.html b/develop/structaxi_1_1axi4-members.html index 854f9081..84900cac 100644 --- a/develop/structaxi_1_1axi4-members.html +++ b/develop/structaxi_1_1axi4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4.html b/develop/structaxi_1_1axi4.html index 7cb80aa7..eb81bf57 100644 --- a/develop/structaxi_1_1axi4.html +++ b/develop/structaxi_1_1axi4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__cfg-members.html b/develop/structaxi_1_1axi4__cfg-members.html index f57be9b9..51838276 100644 --- a/develop/structaxi_1_1axi4__cfg-members.html +++ b/develop/structaxi_1_1axi4__cfg-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__cfg.html b/develop/structaxi_1_1axi4__cfg.html index 006cbe9f..3b9cfca8 100644 --- a/develop/structaxi_1_1axi4__cfg.html +++ b/develop/structaxi_1_1axi4__cfg.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__extension-members.html b/develop/structaxi_1_1axi4__extension-members.html index f7a7c1a2..b958323d 100644 --- a/develop/structaxi_1_1axi4__extension-members.html +++ b/develop/structaxi_1_1axi4__extension-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__extension.html b/develop/structaxi_1_1axi4__extension.html index 574214d2..df959271 100644 --- a/develop/structaxi_1_1axi4__extension.html +++ b/develop/structaxi_1_1axi4__extension.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__lite__cfg-members.html b/develop/structaxi_1_1axi4__lite__cfg-members.html index da07cd02..93529d70 100644 --- a/develop/structaxi_1_1axi4__lite__cfg-members.html +++ b/develop/structaxi_1_1axi4__lite__cfg-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi4__lite__cfg.html b/develop/structaxi_1_1axi4__lite__cfg.html index 8a921890..3be5f408 100644 --- a/develop/structaxi_1_1axi4__lite__cfg.html +++ b/develop/structaxi_1_1axi4__lite__cfg.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__extension-members.html b/develop/structaxi_1_1axi__extension-members.html index fd1832e4..65752144 100644 --- a/develop/structaxi_1_1axi__extension-members.html +++ b/develop/structaxi_1_1axi__extension-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__extension.html b/develop/structaxi_1_1axi__extension.html index 21364245..7adf4c48 100644 --- a/develop/structaxi_1_1axi__extension.html +++ b/develop/structaxi_1_1axi__extension.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__initiator__socket-members.html b/develop/structaxi_1_1axi__initiator__socket-members.html index d9e978ec..545ed917 100644 --- a/develop/structaxi_1_1axi__initiator__socket-members.html +++ b/develop/structaxi_1_1axi__initiator__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__initiator__socket.html b/develop/structaxi_1_1axi__initiator__socket.html index 63209642..80953fe8 100644 --- a/develop/structaxi_1_1axi__initiator__socket.html +++ b/develop/structaxi_1_1axi__initiator__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__protocol__types-members.html b/develop/structaxi_1_1axi__protocol__types-members.html index 1d3b09d0..c102a63a 100644 --- a/develop/structaxi_1_1axi__protocol__types-members.html +++ b/develop/structaxi_1_1axi__protocol__types-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__protocol__types.html b/develop/structaxi_1_1axi__protocol__types.html index 88f84636..6cb7186e 100644 --- a/develop/structaxi_1_1axi__protocol__types.html +++ b/develop/structaxi_1_1axi__protocol__types.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__target__socket-members.html b/develop/structaxi_1_1axi__target__socket-members.html index 1184eedf..9c215356 100644 --- a/develop/structaxi_1_1axi__target__socket-members.html +++ b/develop/structaxi_1_1axi__target__socket-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1axi__target__socket.html b/develop/structaxi_1_1axi__target__socket.html index a06bd61e..2fc8ab85 100644 --- a/develop/structaxi_1_1axi__target__socket.html +++ b/develop/structaxi_1_1axi__target__socket.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1b__axi-members.html b/develop/structaxi_1_1b__axi-members.html index fbd85dd9..768dd787 100644 --- a/develop/structaxi_1_1b__axi-members.html +++ b/develop/structaxi_1_1b__axi-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1b__axi.html b/develop/structaxi_1_1b__axi.html index feb4eb8c..582b4b22 100644 --- a/develop/structaxi_1_1b__axi.html +++ b/develop/structaxi_1_1b__axi.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1b__axi__lite-members.html b/develop/structaxi_1_1b__axi__lite-members.html index 1a8e694a..3e91451b 100644 --- a/develop/structaxi_1_1b__axi__lite-members.html +++ b/develop/structaxi_1_1b__axi__lite-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1b__axi__lite.html b/develop/structaxi_1_1b__axi__lite.html index 76b88eaf..02bb4438 100644 --- a/develop/structaxi_1_1b__axi__lite.html +++ b/develop/structaxi_1_1b__axi__lite.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1cd__ace-members.html b/develop/structaxi_1_1cd__ace-members.html index e6cd4e2a..56571f66 100644 --- a/develop/structaxi_1_1cd__ace-members.html +++ b/develop/structaxi_1_1cd__ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1cd__ace.html b/develop/structaxi_1_1cd__ace.html index 7c331430..fc100d7d 100644 --- a/develop/structaxi_1_1cd__ace.html +++ b/develop/structaxi_1_1cd__ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1checker_1_1checker__if-members.html b/develop/structaxi_1_1checker_1_1checker__if-members.html index 36324eb0..0ef41080 100644 --- a/develop/structaxi_1_1checker_1_1checker__if-members.html +++ b/develop/structaxi_1_1checker_1_1checker__if-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1checker_1_1checker__if.html b/develop/structaxi_1_1checker_1_1checker__if.html index 77d946db..0c22a334 100644 --- a/develop/structaxi_1_1checker_1_1checker__if.html +++ b/develop/structaxi_1_1checker_1_1checker__if.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1common-members.html b/develop/structaxi_1_1common-members.html index 627a426d..1d9155a2 100644 --- a/develop/structaxi_1_1common-members.html +++ b/develop/structaxi_1_1common-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1common.html b/develop/structaxi_1_1common.html index 07a3106d..48f39bdb 100644 --- a/develop/structaxi_1_1common.html +++ b/develop/structaxi_1_1common.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1cr__ace-members.html b/develop/structaxi_1_1cr__ace-members.html index a366e6e4..c51cc9e8 100644 --- a/develop/structaxi_1_1cr__ace-members.html +++ b/develop/structaxi_1_1cr__ace-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1cr__ace.html b/develop/structaxi_1_1cr__ace.html index 0c063e74..0c5036fc 100644 --- a/develop/structaxi_1_1cr__ace.html +++ b/develop/structaxi_1_1cr__ace.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum-members.html b/develop/structaxi_1_1enable__for__enum-members.html index 1918f70d..f6a3c457 100644 --- a/develop/structaxi_1_1enable__for__enum-members.html +++ b/develop/structaxi_1_1enable__for__enum-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum.html b/develop/structaxi_1_1enable__for__enum.html index 6f30f1ec..6f63e9f0 100644 --- a/develop/structaxi_1_1enable__for__enum.html +++ b/develop/structaxi_1_1enable__for__enum.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4-members.html index a5efb6af..7311d5c3 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4.html index d6146db3..393a2655 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01bar__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4-members.html index e59342e5..b66f1199 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4.html index 8795ad3b..e75092e2 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01burst__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4-members.html index 423a5151..6175e471 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4.html index bf5a862d..24d4fa75 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01domain__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4-members.html index bbdfea76..db59db42 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4.html index e17388a2..ebc28084 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01lock__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4-members.html index fb0c9d0c..11b7e0ec 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4.html index 016590b4..03b123da 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01resp__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4-members.html b/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4-members.html index 6679c70f..7f0f6227 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4-members.html +++ b/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4.html b/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4.html index 87b6c967..a0817881 100644 --- a/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4.html +++ b/develop/structaxi_1_1enable__for__enum_3_01snoop__e_01_4.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1ATrans-members.html b/develop/structaxi_1_1fsm_1_1ATrans-members.html index 85d03a57..cbd864f6 100644 --- a/develop/structaxi_1_1fsm_1_1ATrans-members.html +++ b/develop/structaxi_1_1fsm_1_1ATrans-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1ATrans.html b/develop/structaxi_1_1fsm_1_1ATrans.html index c08e4608..c77120b2 100644 --- a/develop/structaxi_1_1fsm_1_1ATrans.html +++ b/develop/structaxi_1_1fsm_1_1ATrans.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1AckRecv.html b/develop/structaxi_1_1fsm_1_1AckRecv.html index 3eeceb22..21e9f2cf 100644 --- a/develop/structaxi_1_1fsm_1_1AckRecv.html +++ b/develop/structaxi_1_1fsm_1_1AckRecv.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1AxiProtocolFsm-members.html b/develop/structaxi_1_1fsm_1_1AxiProtocolFsm-members.html index b0e95b4f..c2737d44 100644 --- a/develop/structaxi_1_1fsm_1_1AxiProtocolFsm-members.html +++ b/develop/structaxi_1_1fsm_1_1AxiProtocolFsm-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1AxiProtocolFsm.html b/develop/structaxi_1_1fsm_1_1AxiProtocolFsm.html index d656d86f..818d3ebc 100644 --- a/develop/structaxi_1_1fsm_1_1AxiProtocolFsm.html +++ b/develop/structaxi_1_1fsm_1_1AxiProtocolFsm.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1BegPartReq.html b/develop/structaxi_1_1fsm_1_1BegPartReq.html index 0e7a69b4..1cf2a852 100644 --- a/develop/structaxi_1_1fsm_1_1BegPartReq.html +++ b/develop/structaxi_1_1fsm_1_1BegPartReq.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1BegPartResp.html b/develop/structaxi_1_1fsm_1_1BegPartResp.html index a5739c0d..b7dd966c 100644 --- a/develop/structaxi_1_1fsm_1_1BegPartResp.html +++ b/develop/structaxi_1_1fsm_1_1BegPartResp.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1BegReq.html b/develop/structaxi_1_1fsm_1_1BegReq.html index 586d807f..895bcd25 100644 --- a/develop/structaxi_1_1fsm_1_1BegReq.html +++ b/develop/structaxi_1_1fsm_1_1BegReq.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1BegResp.html b/develop/structaxi_1_1fsm_1_1BegResp.html index d2a48832..c630a46d 100644 --- a/develop/structaxi_1_1fsm_1_1BegResp.html +++ b/develop/structaxi_1_1fsm_1_1BegResp.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1EndPartReq.html b/develop/structaxi_1_1fsm_1_1EndPartReq.html index 112986a8..135110c8 100644 --- a/develop/structaxi_1_1fsm_1_1EndPartReq.html +++ b/develop/structaxi_1_1fsm_1_1EndPartReq.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1EndPartResp.html b/develop/structaxi_1_1fsm_1_1EndPartResp.html index a268d64c..d73512d2 100644 --- a/develop/structaxi_1_1fsm_1_1EndPartResp.html +++ b/develop/structaxi_1_1fsm_1_1EndPartResp.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1EndReq.html b/develop/structaxi_1_1fsm_1_1EndReq.html index 607c42cd..40b25cbb 100644 --- a/develop/structaxi_1_1fsm_1_1EndReq.html +++ b/develop/structaxi_1_1fsm_1_1EndReq.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1EndResp.html b/develop/structaxi_1_1fsm_1_1EndResp.html index 63968cd4..f4b04306 100644 --- a/develop/structaxi_1_1fsm_1_1EndResp.html +++ b/develop/structaxi_1_1fsm_1_1EndResp.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1EndRespNoAck.html b/develop/structaxi_1_1fsm_1_1EndRespNoAck.html index b4f1bc8e..7f84d3fc 100644 --- a/develop/structaxi_1_1fsm_1_1EndRespNoAck.html +++ b/develop/structaxi_1_1fsm_1_1EndRespNoAck.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Idle-members.html b/develop/structaxi_1_1fsm_1_1Idle-members.html index e717cd13..f3a1a531 100644 --- a/develop/structaxi_1_1fsm_1_1Idle-members.html +++ b/develop/structaxi_1_1fsm_1_1Idle-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Idle.html b/develop/structaxi_1_1fsm_1_1Idle.html index 82a0cada..ba4f1d6f 100644 --- a/develop/structaxi_1_1fsm_1_1Idle.html +++ b/develop/structaxi_1_1fsm_1_1Idle.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1PartialRequest-members.html b/develop/structaxi_1_1fsm_1_1PartialRequest-members.html index a8a5bdf0..321cb8d7 100644 --- a/develop/structaxi_1_1fsm_1_1PartialRequest-members.html +++ b/develop/structaxi_1_1fsm_1_1PartialRequest-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1PartialRequest.html b/develop/structaxi_1_1fsm_1_1PartialRequest.html index 0c3b7538..4cde636d 100644 --- a/develop/structaxi_1_1fsm_1_1PartialRequest.html +++ b/develop/structaxi_1_1fsm_1_1PartialRequest.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1PartialResponse-members.html b/develop/structaxi_1_1fsm_1_1PartialResponse-members.html index 6bb232c2..d81ef4d7 100644 --- a/develop/structaxi_1_1fsm_1_1PartialResponse-members.html +++ b/develop/structaxi_1_1fsm_1_1PartialResponse-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1PartialResponse.html b/develop/structaxi_1_1fsm_1_1PartialResponse.html index 463a56ad..1735006d 100644 --- a/develop/structaxi_1_1fsm_1_1PartialResponse.html +++ b/develop/structaxi_1_1fsm_1_1PartialResponse.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1ReadIdle-members.html b/develop/structaxi_1_1fsm_1_1ReadIdle-members.html index f340407d..ee3ce67e 100644 --- a/develop/structaxi_1_1fsm_1_1ReadIdle-members.html +++ b/develop/structaxi_1_1fsm_1_1ReadIdle-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1ReadIdle.html b/develop/structaxi_1_1fsm_1_1ReadIdle.html index 650690dc..901b0c95 100644 --- a/develop/structaxi_1_1fsm_1_1ReadIdle.html +++ b/develop/structaxi_1_1fsm_1_1ReadIdle.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Request-members.html b/develop/structaxi_1_1fsm_1_1Request-members.html index 5f09eb5d..25faa4ae 100644 --- a/develop/structaxi_1_1fsm_1_1Request-members.html +++ b/develop/structaxi_1_1fsm_1_1Request-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Request.html b/develop/structaxi_1_1fsm_1_1Request.html index ba5f101b..8556c20f 100644 --- a/develop/structaxi_1_1fsm_1_1Request.html +++ b/develop/structaxi_1_1fsm_1_1Request.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Response-members.html b/develop/structaxi_1_1fsm_1_1Response-members.html index 402e2998..8bf61fcc 100644 --- a/develop/structaxi_1_1fsm_1_1Response-members.html +++ b/develop/structaxi_1_1fsm_1_1Response-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1Response.html b/develop/structaxi_1_1fsm_1_1Response.html index 25676467..ffb149e8 100644 --- a/develop/structaxi_1_1fsm_1_1Response.html +++ b/develop/structaxi_1_1fsm_1_1Response.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WReq.html b/develop/structaxi_1_1fsm_1_1WReq.html index 00776d5f..f43d1e73 100644 --- a/develop/structaxi_1_1fsm_1_1WReq.html +++ b/develop/structaxi_1_1fsm_1_1WReq.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WaitAck-members.html b/develop/structaxi_1_1fsm_1_1WaitAck-members.html index 64bb102c..536d2bc7 100644 --- a/develop/structaxi_1_1fsm_1_1WaitAck-members.html +++ b/develop/structaxi_1_1fsm_1_1WaitAck-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WaitAck.html b/develop/structaxi_1_1fsm_1_1WaitAck.html index af7c49a2..5291a0f9 100644 --- a/develop/structaxi_1_1fsm_1_1WaitAck.html +++ b/develop/structaxi_1_1fsm_1_1WaitAck.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WaitForResponse-members.html b/develop/structaxi_1_1fsm_1_1WaitForResponse-members.html index d16153bf..98422229 100644 --- a/develop/structaxi_1_1fsm_1_1WaitForResponse-members.html +++ b/develop/structaxi_1_1fsm_1_1WaitForResponse-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WaitForResponse.html b/develop/structaxi_1_1fsm_1_1WaitForResponse.html index 4e3f0dd8..8bb942bb 100644 --- a/develop/structaxi_1_1fsm_1_1WaitForResponse.html +++ b/develop/structaxi_1_1fsm_1_1WaitForResponse.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WriteIdle-members.html b/develop/structaxi_1_1fsm_1_1WriteIdle-members.html index a360cdd7..d40e0dcd 100644 --- a/develop/structaxi_1_1fsm_1_1WriteIdle-members.html +++ b/develop/structaxi_1_1fsm_1_1WriteIdle-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1WriteIdle.html b/develop/structaxi_1_1fsm_1_1WriteIdle.html index 8f776fb4..2d5503df 100644 --- a/develop/structaxi_1_1fsm_1_1WriteIdle.html +++ b/develop/structaxi_1_1fsm_1_1WriteIdle.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1base-members.html b/develop/structaxi_1_1fsm_1_1base-members.html index dba3c67e..5a025ce7 100644 --- a/develop/structaxi_1_1fsm_1_1base-members.html +++ b/develop/structaxi_1_1fsm_1_1base-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1base.html b/develop/structaxi_1_1fsm_1_1base.html index 0f57ae07..b8bd0ff4 100644 --- a/develop/structaxi_1_1fsm_1_1base.html +++ b/develop/structaxi_1_1fsm_1_1base.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1fsm__handle-members.html b/develop/structaxi_1_1fsm_1_1fsm__handle-members.html index 50ec2a3e..f83befdc 100644 --- a/develop/structaxi_1_1fsm_1_1fsm__handle-members.html +++ b/develop/structaxi_1_1fsm_1_1fsm__handle-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1fsm_1_1fsm__handle.html b/develop/structaxi_1_1fsm_1_1fsm__handle.html index 0eeb96d2..8f8c9752 100644 --- a/develop/structaxi_1_1fsm_1_1fsm__handle.html +++ b/develop/structaxi_1_1fsm_1_1fsm__handle.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lite__master__types-members.html b/develop/structaxi_1_1lite__master__types-members.html index 355c63a5..ed219bee 100644 --- a/develop/structaxi_1_1lite__master__types-members.html +++ b/develop/structaxi_1_1lite__master__types-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lite__master__types.html b/develop/structaxi_1_1lite__master__types.html index 13705466..4b895867 100644 --- a/develop/structaxi_1_1lite__master__types.html +++ b/develop/structaxi_1_1lite__master__types.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lite__slave__types-members.html b/develop/structaxi_1_1lite__slave__types-members.html index 4d7f28f2..f34e15fc 100644 --- a/develop/structaxi_1_1lite__slave__types-members.html +++ b/develop/structaxi_1_1lite__slave__types-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lite__slave__types.html b/develop/structaxi_1_1lite__slave__types.html index 0564b789..61841360 100644 --- a/develop/structaxi_1_1lite__slave__types.html +++ b/develop/structaxi_1_1lite__slave__types.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry-members.html b/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry-members.html index 7ddef2e9..99488edd 100644 --- a/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry-members.html +++ b/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry.html b/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry.html index c0150344..06fc37e2 100644 --- a/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry.html +++ b/develop/structaxi_1_1lwtr_1_1nb__ace__rec__entry.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1master__types-members.html b/develop/structaxi_1_1master__types-members.html index fccba6c4..8da38513 100644 --- a/develop/structaxi_1_1master__types-members.html +++ b/develop/structaxi_1_1master__types-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1master__types.html b/develop/structaxi_1_1master__types.html index b9edb822..0e634a4d 100644 --- a/develop/structaxi_1_1master__types.html +++ b/develop/structaxi_1_1master__types.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state-members.html b/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state-members.html index 65498453..834e2a69 100644 --- a/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state-members.html +++ b/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state-members.html @@ -24,7 +24,7 @@ diff --git a/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state.html b/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state.html index d66570eb..ba534faf 100644 --- a/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state.html +++ b/develop/structaxi_1_1pe_1_1axi__initiator__b_1_1tx__state.html @@ -24,7 +24,7 @@ @@ -90,7 +90,7 @@
                                              _min_restriction<T> scc::min_restriction _min_restriction<T> scc::min_restriction ( min)
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library

                                              Detailed Description

                                              -

                                              Definition at line 140 of file axi_initiator.h.

                                              +

                                              Definition at line 142 of file axi_initiator.h.


                                              The documentation for this struct was generated from the following file:
                                              • /home/eyck/git/SystemC-Components/third_party/axi_chi/axi/pe/axi_initiator.h
                                              diff --git a/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry-members.html b/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry-members.html index fe15d27c..ccfc6312 100644 --- a/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry-members.html +++ b/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html b/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html index b5ed4d6d..47dae9f6 100644 --- a/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html +++ b/develop/structaxi_1_1pe_1_1tx__reorderer_1_1que__entry.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__initiator-members.html b/develop/structaxi_1_1pin_1_1ace__initiator-members.html index 9ad1ae9b..d41b8433 100644 --- a/develop/structaxi_1_1pin_1_1ace__initiator-members.html +++ b/develop/structaxi_1_1pin_1_1ace__initiator-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -77,7 +77,7 @@ ac_trace (defined in axi::ac_ace< CFG, CFG::master_types >)axi::ac_ace< CFG, CFG::master_types > ac_valid (defined in axi::ac_ace< CFG, CFG::master_types >)axi::ac_ace< CFG, CFG::master_types > ac_vmidext (defined in axi::ac_ace< CFG, CFG::master_types >)axi::ac_ace< CFG, CFG::master_types > - ace_initiator(sc_core::sc_module_name const &nm) (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG >inline + ace_initiator(sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG >inline active_fsm (defined in axi::fsm::base)axi::fsm::baseprotected allocated_fsm (defined in axi::fsm::base)axi::fsm::baseprotected ar_ace()=default (defined in axi::ar_ace< CFG, CFG::master_types >)axi::ar_ace< CFG, CFG::master_types > @@ -173,42 +173,43 @@ axi::fsm::base::nb_fw(payload_type &trans, phase_type const &phase, sc_core::sc_time &t)axi::fsm::baseprotected payload_type typedef (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > phase_type typedef (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > - process_fsm_clk_queue()axi::fsm::baseprotected - process_fsm_event()axi::fsm::baseprotected - r_ack (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_data (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_id (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_last (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_ready (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_resp (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_trace (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_user (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - r_valid (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected - react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected - rresp_ace()=default (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > - rresp_ace(const char *prefix) (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types >inline - SC_HAS_PROCESS(ace_initiator) (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > - schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected - tsckt (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > - w_ack (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_data (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_id (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_last (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_ready (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_strb (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_trace (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_user (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - w_valid (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - wdata_axi()=default (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > - wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >inline - wr_start (defined in axi::fsm::base)axi::fsm::baseprotected - ~base()axi::fsm::baseinlineprotectedvirtual + pipelined_wrreq (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > + process_fsm_clk_queue()axi::fsm::baseprotected + process_fsm_event()axi::fsm::baseprotected + r_ack (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_data (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_id (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_last (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_ready (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_resp (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_trace (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_user (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + r_valid (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected + react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected + rresp_ace()=default (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types > + rresp_ace(const char *prefix) (defined in axi::rresp_ace< CFG, CFG::master_types >)axi::rresp_ace< CFG, CFG::master_types >inline + SC_HAS_PROCESS(ace_initiator) (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > + schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected + tsckt (defined in axi::pin::ace_initiator< CFG >)axi::pin::ace_initiator< CFG > + w_ack (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_data (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_id (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_last (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_ready (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_strb (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_trace (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_user (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + w_valid (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + wdata_axi()=default (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES > + wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >inline + wr_start (defined in axi::fsm::base)axi::fsm::baseprotected + ~base()axi::fsm::baseinlineprotectedvirtual diff --git a/develop/structaxi_1_1pin_1_1ace__initiator.html b/develop/structaxi_1_1pin_1_1ace__initiator.html index 0d2fe920..9b62bc3c 100644 --- a/develop/structaxi_1_1pin_1_1ace__initiator.html +++ b/develop/structaxi_1_1pin_1_1ace__initiator.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -62,6 +62,7 @@
                                              +Classes | Public Types | Public Member Functions | Public Attributes | @@ -132,9 +133,9 @@  SC_HAS_PROCESS (ace_initiator)   -ace_initiator (sc_core::sc_module_name const &nm) -  +ace_initiator (sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) +  - Public Member Functions inherited from axi::aw_ace< CFG, CFG::master_types >  aw_ace (const char *prefix) @@ -221,6 +222,9 @@ axi::ace_target_socket< CFG::BUSWIDTH > tsckt {"tsckt"}   + +cci::cci_param< bool > pipelined_wrreq {"pipelined_wrreq", false} +  - Public Attributes inherited from axi::aw_ace< CFG, CFG::master_types > TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > aw_id @@ -568,7 +572,7 @@ struct axi::pin::ace_initiator< CFG >

                                              -

                                              Definition at line 36 of file ace_initiator.h.

                                              +

                                              Definition at line 38 of file ace_initiator.h.


                                              The documentation for this struct was generated from the following file:
                                              • /home/eyck/git/SystemC-Components/src/bus_interfaces/axi/pin/ace_initiator.h
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__initiator.js b/develop/structaxi_1_1pin_1_1ace__initiator.js index f30d6e20..7fcfadfe 100644 --- a/develop/structaxi_1_1pin_1_1ace__initiator.js +++ b/develop/structaxi_1_1pin_1_1ace__initiator.js @@ -2,8 +2,9 @@ var structaxi_1_1pin_1_1ace__initiator = [ [ "payload_type", "structaxi_1_1pin_1_1ace__initiator.html#ad638947a22e1cf0a460b89537b8c120f", null ], [ "phase_type", "structaxi_1_1pin_1_1ace__initiator.html#a40110f88df445005684d5ce4f6e5d847", null ], - [ "ace_initiator", "structaxi_1_1pin_1_1ace__initiator.html#ae3ea71803abf5439d7f739b099681490", null ], + [ "ace_initiator", "structaxi_1_1pin_1_1ace__initiator.html#a2b2b91ad63048f29193d4a4387c6570d", null ], [ "SC_HAS_PROCESS", "structaxi_1_1pin_1_1ace__initiator.html#a69a885243b851c2a38b0fe64598877ae", null ], [ "clk_i", "structaxi_1_1pin_1_1ace__initiator.html#ac97c937183d8c8a9ca51e2b2f4d05e6e", null ], + [ "pipelined_wrreq", "structaxi_1_1pin_1_1ace__initiator.html#a95d36c46a4fa1a521cbded7d9543ae0c", null ], [ "tsckt", "structaxi_1_1pin_1_1ace__initiator.html#a1e0e18e90549401a60832e66ccb25e63", null ] ]; \ No newline at end of file diff --git a/develop/structaxi_1_1pin_1_1ace__lite__initiator-members.html b/develop/structaxi_1_1pin_1_1ace__lite__initiator-members.html index a889995c..e8915a65 100644 --- a/develop/structaxi_1_1pin_1_1ace__lite__initiator-members.html +++ b/develop/structaxi_1_1pin_1_1ace__lite__initiator-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -68,7 +68,7 @@

                                              This is the complete list of members for axi::pin::ace_lite_initiator< CFG >, including all inherited members.

                                              - + @@ -150,41 +150,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                              ace_lite_initiator(sc_core::sc_module_name const &nm) (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >inline
                                              ace_lite_initiator(sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >inline
                                              active_fsm (defined in axi::fsm::base)axi::fsm::baseprotected
                                              allocated_fsm (defined in axi::fsm::base)axi::fsm::baseprotected
                                              ar_ace()=default (defined in axi::ar_ace< CFG, TYPES >)axi::ar_ace< CFG, TYPES >
                                              axi::fsm::base::nb_fw(payload_type &trans, phase_type const &phase, sc_core::sc_time &t)axi::fsm::baseprotected
                                              payload_type typedef (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              phase_type typedef (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              process_fsm_clk_queue()axi::fsm::baseprotected
                                              process_fsm_event()axi::fsm::baseprotected
                                              r_data (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_id (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_last (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_ready (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_resp (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_trace (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_user (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_valid (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected
                                              react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected
                                              rresp_axi()=default (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              rresp_axi(const char *prefix) (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >inline
                                              SC_HAS_PROCESS(ace_lite_initiator) (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected
                                              tsckt (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              w_ack (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_data (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_id (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_last (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_ready (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_strb (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_trace (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_user (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_valid (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              wdata_axi()=default (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >inline
                                              wr_start (defined in axi::fsm::base)axi::fsm::baseprotected
                                              ~base()axi::fsm::baseinlineprotectedvirtual
                                              pipelined_wrreq (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              process_fsm_clk_queue()axi::fsm::baseprotected
                                              process_fsm_event()axi::fsm::baseprotected
                                              r_data (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_id (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_last (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_ready (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_resp (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_trace (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_user (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              r_valid (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected
                                              react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected
                                              rresp_axi()=default (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >
                                              rresp_axi(const char *prefix) (defined in axi::rresp_axi< CFG, TYPES >)axi::rresp_axi< CFG, TYPES >inline
                                              SC_HAS_PROCESS(ace_lite_initiator) (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected
                                              schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected
                                              transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected
                                              tsckt (defined in axi::pin::ace_lite_initiator< CFG >)axi::pin::ace_lite_initiator< CFG >
                                              w_ack (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_data (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_id (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_last (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_ready (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_strb (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_trace (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_user (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              w_valid (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              wdata_axi()=default (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >
                                              wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, TYPES >)axi::wdata_axi< CFG, TYPES >inline
                                              wr_start (defined in axi::fsm::base)axi::fsm::baseprotected
                                              ~base()axi::fsm::baseinlineprotectedvirtual
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__lite__initiator.html b/develop/structaxi_1_1pin_1_1ace__lite__initiator.html index cea5abaa..7bee1278 100644 --- a/develop/structaxi_1_1pin_1_1ace__lite__initiator.html +++ b/develop/structaxi_1_1pin_1_1ace__lite__initiator.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -62,6 +62,7 @@
                                              +Classes | Public Types | Public Member Functions | Public Attributes | @@ -123,9 +124,9 @@  SC_HAS_PROCESS (ace_lite_initiator)   -ace_lite_initiator (sc_core::sc_module_name const &nm) -  +ace_lite_initiator (sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) +  - Public Member Functions inherited from axi::aw_ace< CFG, TYPES >  aw_ace (const char *prefix) @@ -203,6 +204,9 @@ axi::axi_target_socket< CFG::BUSWIDTH > tsckt {"tsckt"}   + +cci::cci_param< bool > pipelined_wrreq {"pipelined_wrreq", false} +  - Public Attributes inherited from axi::aw_ace< CFG, TYPES > TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > aw_id {"aw_id"} @@ -499,7 +503,7 @@ struct axi::pin::ace_lite_initiator< CFG >

                                              -

                                              Definition at line 34 of file ace_lite_initiator.h.

                                              +

                                              Definition at line 38 of file ace_lite_initiator.h.


                                              The documentation for this struct was generated from the following file: diff --git a/develop/structaxi_1_1pin_1_1ace__lite__initiator.js b/develop/structaxi_1_1pin_1_1ace__lite__initiator.js index 8ec7e455..3207e4f4 100644 --- a/develop/structaxi_1_1pin_1_1ace__lite__initiator.js +++ b/develop/structaxi_1_1pin_1_1ace__lite__initiator.js @@ -2,8 +2,9 @@ var structaxi_1_1pin_1_1ace__lite__initiator = [ [ "payload_type", "structaxi_1_1pin_1_1ace__lite__initiator.html#aaab85a1a64a60b759d2da2796f3e5e2a", null ], [ "phase_type", "structaxi_1_1pin_1_1ace__lite__initiator.html#aff5dcb4ab83c887df553fac56a98f661", null ], - [ "ace_lite_initiator", "structaxi_1_1pin_1_1ace__lite__initiator.html#af18b263b5032f4ec3c3447e25b637aec", null ], + [ "ace_lite_initiator", "structaxi_1_1pin_1_1ace__lite__initiator.html#a7ec73f826e3790269a9830029c60e587", null ], [ "SC_HAS_PROCESS", "structaxi_1_1pin_1_1ace__lite__initiator.html#a7c2961050fea91c88fb82be819816823", null ], [ "clk_i", "structaxi_1_1pin_1_1ace__lite__initiator.html#aba822315e15d051f6cd17bd085f00607", null ], + [ "pipelined_wrreq", "structaxi_1_1pin_1_1ace__lite__initiator.html#abe9c24a6104c41767989d93d9e952782", null ], [ "tsckt", "structaxi_1_1pin_1_1ace__lite__initiator.html#a78f346ce1a33dcb8672ea86509439c0e", null ] ]; \ No newline at end of file diff --git a/develop/structaxi_1_1pin_1_1ace__lite__target-members.html b/develop/structaxi_1_1pin_1_1ace__lite__target-members.html index f76516c7..04545d1d 100644 --- a/develop/structaxi_1_1pin_1_1ace__lite__target-members.html +++ b/develop/structaxi_1_1pin_1_1ace__lite__target-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__lite__target.html b/develop/structaxi_1_1pin_1_1ace__lite__target.html index 6912c90c..3ec9993f 100644 --- a/develop/structaxi_1_1pin_1_1ace__lite__target.html +++ b/develop/structaxi_1_1pin_1_1ace__lite__target.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__target-members.html b/develop/structaxi_1_1pin_1_1ace__target-members.html index 0a62e4a6..32468d95 100644 --- a/develop/structaxi_1_1pin_1_1ace__target-members.html +++ b/develop/structaxi_1_1pin_1_1ace__target-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pin_1_1ace__target.html b/develop/structaxi_1_1pin_1_1ace__target.html index 418bdbdd..157d1461 100644 --- a/develop/structaxi_1_1pin_1_1ace__target.html +++ b/develop/structaxi_1_1pin_1_1ace__target.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              diff --git a/develop/structaxi_1_1pin_1_1axi4__initiator-members.html b/develop/structaxi_1_1pin_1_1axi4__initiator-members.html index 08d83708..13f405df 100644 --- a/develop/structaxi_1_1pin_1_1axi4__initiator-members.html +++ b/develop/structaxi_1_1pin_1_1axi4__initiator-members.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -100,7 +100,7 @@ aw_size (defined in axi::aw_axi< CFG, CFG::master_types >)axi::aw_axi< CFG, CFG::master_types > aw_user (defined in axi::aw_axi< CFG, CFG::master_types >)axi::aw_axi< CFG, CFG::master_types > aw_valid (defined in axi::aw_axi< CFG, CFG::master_types >)axi::aw_axi< CFG, CFG::master_types > - axi4_initiator(sc_core::sc_module_name const &nm) (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG >inline + axi4_initiator(sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG >inline b_axi()=default (defined in axi::b_axi< CFG, CFG::master_types >)axi::b_axi< CFG, CFG::master_types > b_axi(const char *prefix) (defined in axi::b_axi< CFG, CFG::master_types >)axi::b_axi< CFG, CFG::master_types >inline b_id (defined in axi::b_axi< CFG, CFG::master_types >)axi::b_axi< CFG, CFG::master_types > @@ -137,41 +137,42 @@ axi::fsm::base::nb_fw(payload_type &trans, phase_type const &phase, sc_core::sc_time &t)axi::fsm::baseprotected payload_type typedef (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > phase_type typedef (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > - process_fsm_clk_queue()axi::fsm::baseprotected - process_fsm_event()axi::fsm::baseprotected - r_data (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_id (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_last (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_ready (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_resp (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_trace (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_user (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - r_valid (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected - react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected - rresp_axi()=default (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > - rresp_axi(const char *prefix) (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types >inline - SC_HAS_PROCESS(axi4_initiator) (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > - schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected - schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected - transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected - tsckt (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > - w_ack (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_data (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_id (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_last (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_ready (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_strb (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_trace (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_user (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - w_valid (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - wdata_axi()=default (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > - wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types >inline - wr_start (defined in axi::fsm::base)axi::fsm::baseprotected - ~base()axi::fsm::baseinlineprotectedvirtual + pipelined_wrreq (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > + process_fsm_clk_queue()axi::fsm::baseprotected + process_fsm_event()axi::fsm::baseprotected + r_data (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_id (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_last (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_ready (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_resp (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_trace (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_user (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + r_valid (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + react(axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans)axi::fsm::baseinlineprotected + react(axi::fsm::protocol_time_point_e event, payload_type *trans) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + react(axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) (defined in axi::fsm::base)axi::fsm::baseprotected + rresp_axi()=default (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types > + rresp_axi(const char *prefix) (defined in axi::rresp_axi< CFG, CFG::master_types >)axi::rresp_axi< CFG, CFG::master_types >inline + SC_HAS_PROCESS(axi4_initiator) (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > + schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false)axi::fsm::baseinlineprotected + schedule(axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) (defined in axi::fsm::base)axi::fsm::baseinlineprotected + transfer_width_in_bytes (defined in axi::fsm::base)axi::fsm::baseprotected + tsckt (defined in axi::pin::axi4_initiator< CFG >)axi::pin::axi4_initiator< CFG > + w_ack (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_data (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_id (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_last (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_ready (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_strb (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_trace (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_user (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + w_valid (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + wdata_axi()=default (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types > + wdata_axi(const char *prefix) (defined in axi::wdata_axi< CFG, CFG::master_types >)axi::wdata_axi< CFG, CFG::master_types >inline + wr_start (defined in axi::fsm::base)axi::fsm::baseprotected + ~base()axi::fsm::baseinlineprotectedvirtual diff --git a/develop/structaxi_1_1pin_1_1axi4__initiator.html b/develop/structaxi_1_1pin_1_1axi4__initiator.html index 40055e4b..96b6ee42 100644 --- a/develop/structaxi_1_1pin_1_1axi4__initiator.html +++ b/develop/structaxi_1_1pin_1_1axi4__initiator.html @@ -24,7 +24,7 @@
                                              scc -  2022.4.0 +  2024.03
                                              SystemC components library
                                              @@ -62,6 +62,7 @@
                                              +Classes | Public Types | Public Member Functions | Public Attributes | @@ -123,9 +124,9 @@  SC_HAS_PROCESS (axi4_initiator)   -axi4_initiator (sc_core::sc_module_name const &nm) -  +axi4_initiator (sc_core::sc_module_name const &nm, bool pipelined_wrreq=false) +  - Public Member Functions inherited from axi::aw_axi< CFG, CFG::master_types >  aw_axi (const char *prefix) @@ -197,6 +198,9 @@ axi::axi_target_socket< CFG::BUSWIDTH > tsckt {"tsckt"}   + +cci::cci_param< bool > pipelined_wrreq {"pipelined_wrreq", false} +  - Public Attributes inherited from axi::aw_axi< CFG, CFG::master_types > TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > aw_id @@ -448,7 +452,7 @@ struct axi::pin::axi4_initiator< CFG >

-

Definition at line 35 of file axi4_initiator.h.

+

Definition at line 37 of file axi4_initiator.h.


The documentation for this struct was generated from the following file: diff --git a/develop/structaxi_1_1pin_1_1axi4__initiator.js b/develop/structaxi_1_1pin_1_1axi4__initiator.js index 4251123a..6077c376 100644 --- a/develop/structaxi_1_1pin_1_1axi4__initiator.js +++ b/develop/structaxi_1_1pin_1_1axi4__initiator.js @@ -2,8 +2,9 @@ var structaxi_1_1pin_1_1axi4__initiator = [ [ "payload_type", "structaxi_1_1pin_1_1axi4__initiator.html#ac24630213b919fd5cd8dc4aac6314c11", null ], [ "phase_type", "structaxi_1_1pin_1_1axi4__initiator.html#aab41df154bed7d1234137d6ba113b9ef", null ], - [ "axi4_initiator", "structaxi_1_1pin_1_1axi4__initiator.html#a9944c4067e4905d2c2b1e72610850378", null ], + [ "axi4_initiator", "structaxi_1_1pin_1_1axi4__initiator.html#aa735a0f7e1abb6cde1af15e642b9a59f", null ], [ "SC_HAS_PROCESS", "structaxi_1_1pin_1_1axi4__initiator.html#a163010579b0ac029a4109c46281ae208", null ], [ "clk_i", "structaxi_1_1pin_1_1axi4__initiator.html#ab1a5bfac1b830f1135c3e5c2ab255343", null ], + [ "pipelined_wrreq", "structaxi_1_1pin_1_1axi4__initiator.html#a5aee440c12d48d231a5e01b02e1abd7f", null ], [ "tsckt", "structaxi_1_1pin_1_1axi4__initiator.html#a3543872e305fc5aac1efb6b556635a43", null ] ]; \ No newline at end of file diff --git a/develop/structaxi_1_1pin_1_1axi4__target-members.html b/develop/structaxi_1_1pin_1_1axi4__target-members.html index 07512615..a4b0c0d4 100644 --- a/develop/structaxi_1_1pin_1_1axi4__target-members.html +++ b/develop/structaxi_1_1pin_1_1axi4__target-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1pin_1_1axi4__target.html b/develop/structaxi_1_1pin_1_1axi4__target.html index ca8f663d..ef71986d 100644 --- a/develop/structaxi_1_1pin_1_1axi4__target.html +++ b/develop/structaxi_1_1pin_1_1axi4__target.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1request-members.html b/develop/structaxi_1_1request-members.html index d1f08dfc..633a7df6 100644 --- a/develop/structaxi_1_1request-members.html +++ b/develop/structaxi_1_1request-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1request.html b/develop/structaxi_1_1request.html index 9ef122e0..4ab407a3 100644 --- a/develop/structaxi_1_1request.html +++ b/develop/structaxi_1_1request.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1response-members.html b/develop/structaxi_1_1response-members.html index 231d7040..3f8c5d69 100644 --- a/develop/structaxi_1_1response-members.html +++ b/develop/structaxi_1_1response-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1response.html b/develop/structaxi_1_1response.html index caa4b9fe..41673832 100644 --- a/develop/structaxi_1_1response.html +++ b/develop/structaxi_1_1response.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__ace-members.html b/develop/structaxi_1_1rresp__ace-members.html index b7247d91..6af54f75 100644 --- a/develop/structaxi_1_1rresp__ace-members.html +++ b/develop/structaxi_1_1rresp__ace-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__ace.html b/develop/structaxi_1_1rresp__ace.html index 5c36af96..f9592eca 100644 --- a/develop/structaxi_1_1rresp__ace.html +++ b/develop/structaxi_1_1rresp__ace.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__axi-members.html b/develop/structaxi_1_1rresp__axi-members.html index 25786f9a..783ba222 100644 --- a/develop/structaxi_1_1rresp__axi-members.html +++ b/develop/structaxi_1_1rresp__axi-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__axi.html b/develop/structaxi_1_1rresp__axi.html index 396eec9b..2b580db5 100644 --- a/develop/structaxi_1_1rresp__axi.html +++ b/develop/structaxi_1_1rresp__axi.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__axi__lite-members.html b/develop/structaxi_1_1rresp__axi__lite-members.html index 2b02e39c..876756f4 100644 --- a/develop/structaxi_1_1rresp__axi__lite-members.html +++ b/develop/structaxi_1_1rresp__axi__lite-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1rresp__axi__lite.html b/develop/structaxi_1_1rresp__axi__lite.html index b1ab216f..fdf9c758 100644 --- a/develop/structaxi_1_1rresp__axi__lite.html +++ b/develop/structaxi_1_1rresp__axi__lite.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types-members.html b/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types-members.html index bfe94449..7922b8ab 100644 --- a/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types-members.html +++ b/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types.html b/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types.html index 0f5e8940..3c93f901 100644 --- a/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types.html +++ b/develop/structaxi_1_1scv_1_1impl_1_1ace__recording__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1select__if-members.html b/develop/structaxi_1_1select__if-members.html index e9d2c9ec..f9281f82 100644 --- a/develop/structaxi_1_1select__if-members.html +++ b/develop/structaxi_1_1select__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1select__if.html b/develop/structaxi_1_1select__if.html index 97e79b46..7af70f88 100644 --- a/develop/structaxi_1_1select__if.html +++ b/develop/structaxi_1_1select__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4-members.html b/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4-members.html index ab346c0f..fa2a677d 100644 --- a/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4-members.html +++ b/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4.html b/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4.html index ad42bb50..b8590ae0 100644 --- a/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4.html +++ b/develop/structaxi_1_1select__if_3_01true_00_01T_00_01S_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1signal__types-members.html b/develop/structaxi_1_1signal__types-members.html index 15ba2d41..dbfc3d2c 100644 --- a/develop/structaxi_1_1signal__types-members.html +++ b/develop/structaxi_1_1signal__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1signal__types.html b/develop/structaxi_1_1signal__types.html index 92bb2796..d82570c8 100644 --- a/develop/structaxi_1_1signal__types.html +++ b/develop/structaxi_1_1signal__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1slave__types-members.html b/develop/structaxi_1_1slave__types-members.html index 2c04d2ea..cf2733dd 100644 --- a/develop/structaxi_1_1slave__types-members.html +++ b/develop/structaxi_1_1slave__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1slave__types.html b/develop/structaxi_1_1slave__types.html index b7c20f86..61817db8 100644 --- a/develop/structaxi_1_1slave__types.html +++ b/develop/structaxi_1_1slave__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1wdata__axi-members.html b/develop/structaxi_1_1wdata__axi-members.html index 44aedc7b..53b38c5a 100644 --- a/develop/structaxi_1_1wdata__axi-members.html +++ b/develop/structaxi_1_1wdata__axi-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1wdata__axi.html b/develop/structaxi_1_1wdata__axi.html index 4b04fb5c..106d92a3 100644 --- a/develop/structaxi_1_1wdata__axi.html +++ b/develop/structaxi_1_1wdata__axi.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1wdata__axi__lite-members.html b/develop/structaxi_1_1wdata__axi__lite-members.html index 0c96b432..dad28304 100644 --- a/develop/structaxi_1_1wdata__axi__lite-members.html +++ b/develop/structaxi_1_1wdata__axi__lite-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi_1_1wdata__axi__lite.html b/develop/structaxi_1_1wdata__axi__lite.html index c60df887..d2a046bd 100644 --- a/develop/structaxi_1_1wdata__axi__lite.html +++ b/develop/structaxi_1_1wdata__axi__lite.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi__target__pe_1_1bw__intor__impl-members.html b/develop/structaxi__target__pe_1_1bw__intor__impl-members.html index 46c14b8d..99c52e5e 100644 --- a/develop/structaxi__target__pe_1_1bw__intor__impl-members.html +++ b/develop/structaxi__target__pe_1_1bw__intor__impl-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structaxi__target__pe_1_1bw__intor__impl.html b/develop/structaxi__target__pe_1_1bw__intor__impl.html index 9f0e4712..c875b268 100644 --- a/develop/structaxi__target__pe_1_1bw__intor__impl.html +++ b/develop/structaxi__target__pe_1_1bw__intor__impl.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__credit__extension-members.html b/develop/structchi_1_1chi__credit__extension-members.html index 5f3c7bbe..4b43be75 100644 --- a/develop/structchi_1_1chi__credit__extension-members.html +++ b/develop/structchi_1_1chi__credit__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__credit__extension.html b/develop/structchi_1_1chi__credit__extension.html index b309577f..ed103777 100644 --- a/develop/structchi_1_1chi__credit__extension.html +++ b/develop/structchi_1_1chi__credit__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__ctrl__extension-members.html b/develop/structchi_1_1chi__ctrl__extension-members.html index 171fda2e..0f2d545a 100644 --- a/develop/structchi_1_1chi__ctrl__extension-members.html +++ b/develop/structchi_1_1chi__ctrl__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__ctrl__extension.html b/develop/structchi_1_1chi__ctrl__extension.html index db44a9c6..db15c905 100644 --- a/develop/structchi_1_1chi__ctrl__extension.html +++ b/develop/structchi_1_1chi__ctrl__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__data__extension-members.html b/develop/structchi_1_1chi__data__extension-members.html index 086b36b6..d6819438 100644 --- a/develop/structchi_1_1chi__data__extension-members.html +++ b/develop/structchi_1_1chi__data__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__data__extension.html b/develop/structchi_1_1chi__data__extension.html index 4d6c7683..fdb4ea84 100644 --- a/develop/structchi_1_1chi__data__extension.html +++ b/develop/structchi_1_1chi__data__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__initiator__socket-members.html b/develop/structchi_1_1chi__initiator__socket-members.html index ce81e708..e55248d4 100644 --- a/develop/structchi_1_1chi__initiator__socket-members.html +++ b/develop/structchi_1_1chi__initiator__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__initiator__socket.html b/develop/structchi_1_1chi__initiator__socket.html index 9498edab..01813d29 100644 --- a/develop/structchi_1_1chi__initiator__socket.html +++ b/develop/structchi_1_1chi__initiator__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__protocol__types-members.html b/develop/structchi_1_1chi__protocol__types-members.html index 2b7e2420..6dc6184e 100644 --- a/develop/structchi_1_1chi__protocol__types-members.html +++ b/develop/structchi_1_1chi__protocol__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__protocol__types.html b/develop/structchi_1_1chi__protocol__types.html index b60939ba..430b04b0 100644 --- a/develop/structchi_1_1chi__protocol__types.html +++ b/develop/structchi_1_1chi__protocol__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__snp__extension-members.html b/develop/structchi_1_1chi__snp__extension-members.html index faa0b820..ad87b421 100644 --- a/develop/structchi_1_1chi__snp__extension-members.html +++ b/develop/structchi_1_1chi__snp__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__snp__extension.html b/develop/structchi_1_1chi__snp__extension.html index 9c8ae197..99502110 100644 --- a/develop/structchi_1_1chi__snp__extension.html +++ b/develop/structchi_1_1chi__snp__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__target__socket-members.html b/develop/structchi_1_1chi__target__socket-members.html index e3616912..5d451a15 100644 --- a/develop/structchi_1_1chi__target__socket-members.html +++ b/develop/structchi_1_1chi__target__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1chi__target__socket.html b/develop/structchi_1_1chi__target__socket.html index 64c5e492..93540050 100644 --- a/develop/structchi_1_1chi__target__socket.html +++ b/develop/structchi_1_1chi__target__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1common-members.html b/develop/structchi_1_1common-members.html index 2ff984f4..264ddfdb 100644 --- a/develop/structchi_1_1common-members.html +++ b/develop/structchi_1_1common-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1common.html b/develop/structchi_1_1common.html index 84df4c51..300f0550 100644 --- a/develop/structchi_1_1common.html +++ b/develop/structchi_1_1common.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1credit-members.html b/develop/structchi_1_1credit-members.html index 55784bde..46d6dccf 100644 --- a/develop/structchi_1_1credit-members.html +++ b/develop/structchi_1_1credit-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1credit.html b/develop/structchi_1_1credit.html index 1f93e191..e753f94a 100644 --- a/develop/structchi_1_1credit.html +++ b/develop/structchi_1_1credit.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1data-members.html b/develop/structchi_1_1data-members.html index 7e41a22b..38fab676 100644 --- a/develop/structchi_1_1data-members.html +++ b/develop/structchi_1_1data-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1data.html b/develop/structchi_1_1data.html index f1a800e3..587349bc 100644 --- a/develop/structchi_1_1data.html +++ b/develop/structchi_1_1data.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum-members.html b/develop/structchi_1_1enable__for__enum-members.html index 5ca82497..05ebbc73 100644 --- a/develop/structchi_1_1enable__for__enum-members.html +++ b/develop/structchi_1_1enable__for__enum-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum.html b/develop/structchi_1_1enable__for__enum.html index b3f0cb01..f2ad6142 100644 --- a/develop/structchi_1_1enable__for__enum.html +++ b/develop/structchi_1_1enable__for__enum.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4-members.html index b5bd4841..9b4c8884 100644 --- a/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4.html index b5bd6f40..fe320fdd 100644 --- a/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01dat__optype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4-members.html index e72beead..f0efc901 100644 --- a/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4.html index 2c0d7b2d..63887354 100644 --- a/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01dat__resptype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4-members.html index f9d3359d..369fd879 100644 --- a/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4.html index 1ede3ca6..9c2da236 100644 --- a/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01req__optype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4-members.html index e70cefbe..86c9e8bd 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4.html index 6ea6148b..d94cc77d 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__optype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4-members.html index 59dd2ce7..2c283361 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4.html index 994b9e8f..4426556b 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__resperrtype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4-members.html index fff9ea4e..3a4c5cca 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4.html index 3211430c..27dac3f4 100644 --- a/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01rsp__resptype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4-members.html b/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4-members.html index 928bea25..c7256d70 100644 --- a/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4-members.html +++ b/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html b/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html index 9794de5b..900abe45 100644 --- a/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html +++ b/develop/structchi_1_1enable__for__enum_3_01snp__optype__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry-members.html b/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry-members.html index a6c1c001..b483c9d4 100644 --- a/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry-members.html +++ b/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry.html b/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry.html index 33fd3ffb..ec003577 100644 --- a/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry.html +++ b/develop/structchi_1_1lwtr_1_1nb__chi__rec__entry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state-members.html b/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state-members.html index 64bd6360..11a3b88d 100644 --- a/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state-members.html +++ b/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state.html b/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state.html index 3a90b802..8c19ada7 100644 --- a/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state.html +++ b/develop/structchi_1_1pe_1_1chi__rn__initiator__b_1_1tx__state.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -94,7 +94,7 @@

Detailed Description

-

Definition at line 117 of file chi_rn_initiator.h.

+

Definition at line 118 of file chi_rn_initiator.h.


The documentation for this struct was generated from the following file: diff --git a/develop/structchi_1_1request-members.html b/develop/structchi_1_1request-members.html index 7256694e..154bc97b 100644 --- a/develop/structchi_1_1request-members.html +++ b/develop/structchi_1_1request-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1request.html b/develop/structchi_1_1request.html index 399309a9..9904c1d6 100644 --- a/develop/structchi_1_1request.html +++ b/develop/structchi_1_1request.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1response-members.html b/develop/structchi_1_1response-members.html index a8fd9f21..9c4e2a3b 100644 --- a/develop/structchi_1_1response-members.html +++ b/develop/structchi_1_1response-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1response.html b/develop/structchi_1_1response.html index 92ee4f0f..55208f31 100644 --- a/develop/structchi_1_1response.html +++ b/develop/structchi_1_1response.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types-members.html b/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types-members.html index 639f7270..67d8e3ce 100644 --- a/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types-members.html +++ b/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types.html b/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types.html index 64447e1e..8330728c 100644 --- a/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types.html +++ b/develop/structchi_1_1scv_1_1impl_1_1chi__recording__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1snp__request-members.html b/develop/structchi_1_1snp__request-members.html index 5b5d3e3a..d41ed791 100644 --- a/develop/structchi_1_1snp__request-members.html +++ b/develop/structchi_1_1snp__request-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structchi_1_1snp__request.html b/develop/structchi_1_1snp__request.html index 06feb104..c422e0c2 100644 --- a/develop/structchi_1_1snp__request.html +++ b/develop/structchi_1_1snp__request.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4-members.html index c7674b21..6a369702 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4.html index 9b7e5ed9..c2ff7137 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__command_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html index 54dfac74..0f2ca53d 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html index 1d9defdd..2ec5bca0 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__dmi_1_1dmi__access__e_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4-members.html index 1aa2404f..0bc4d936 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4.html index 06185310..503918de 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__gp__option_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4-members.html index 828b4b96..4915b1f1 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4.html index 48b4a930..d65e934c 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__phase_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4-members.html index d8b84022..2b35c66d 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4.html index 92147a14..415c8ed1 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__response__status_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4-members.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4-members.html index 5c8d715d..0321f87d 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4-members.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4.html b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4.html index 0bcc658e..83962d22 100644 --- a/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4.html +++ b/develop/structlwtr_1_1value__converter_3_01tlm_1_1tlm__sync__enum_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structobi_1_1obi__extension-members.html b/develop/structobi_1_1obi__extension-members.html index 7a48fb6e..914e9896 100644 --- a/develop/structobi_1_1obi__extension-members.html +++ b/develop/structobi_1_1obi__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structobi_1_1obi__extension.html b/develop/structobi_1_1obi__extension.html index a920352e..d4346252 100644 --- a/develop/structobi_1_1obi__extension.html +++ b/develop/structobi_1_1obi__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1ForLoop-members.html b/develop/structscc_1_1ForLoop-members.html index beea33a2..196ea3e1 100644 --- a/develop/structscc_1_1ForLoop-members.html +++ b/develop/structscc_1_1ForLoop-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1ForLoop.html b/develop/structscc_1_1ForLoop.html index 0b541a0c..fe3cd656 100644 --- a/develop/structscc_1_1ForLoop.html +++ b/develop/structscc_1_1ForLoop.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1ForLoop_3_011_01_4-members.html b/develop/structscc_1_1ForLoop_3_011_01_4-members.html index f3095945..a38bc833 100644 --- a/develop/structscc_1_1ForLoop_3_011_01_4-members.html +++ b/develop/structscc_1_1ForLoop_3_011_01_4-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1ForLoop_3_011_01_4.html b/develop/structscc_1_1ForLoop_3_011_01_4.html index 88e8a044..cd933411 100644 --- a/develop/structscc_1_1ForLoop_3_011_01_4.html +++ b/develop/structscc_1_1ForLoop_3_011_01_4.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1LogConfig-members.html b/develop/structscc_1_1LogConfig-members.html index f2f0d904..117e2bd2 100644 --- a/develop/structscc_1_1LogConfig-members.html +++ b/develop/structscc_1_1LogConfig-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1LogConfig.html b/develop/structscc_1_1LogConfig.html index 208dc725..101c781a 100644 --- a/develop/structscc_1_1LogConfig.html +++ b/develop/structscc_1_1LogConfig.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -159,7 +159,7 @@

the configuration class for the logging setup

using this class allows to configure the logging output in many aspects. The class follows the builder pattern.

-

Definition at line 152 of file report.h.

+

Definition at line 162 of file report.h.

Member Function Documentation

◆ coloredOutput()

@@ -184,7 +184,7 @@

Returns
self
-

Definition at line 504 of file report.cpp.

+

Definition at line 508 of file report.cpp.

@@ -211,7 +211,7 @@

Returns
self
-

Definition at line 524 of file report.cpp.

+

Definition at line 528 of file report.cpp.

@@ -237,7 +237,7 @@

Definition at line 537 of file report.cpp.

+

Definition at line 541 of file report.cpp.

@@ -263,7 +263,7 @@

Definition at line 533 of file report.cpp.

+

Definition at line 537 of file report.cpp.

@@ -290,7 +290,7 @@

Returns
self
-

Definition at line 519 of file report.cpp.

+

Definition at line 523 of file report.cpp.

@@ -417,7 +417,7 @@

Returns
self
-

Definition at line 464 of file report.cpp.

+

Definition at line 468 of file report.cpp.

@@ -444,7 +444,7 @@

Returns
self
-

Definition at line 469 of file report.cpp.

+

Definition at line 473 of file report.cpp.

@@ -471,7 +471,7 @@

Returns
self
-

Definition at line 484 of file report.cpp.

+

Definition at line 488 of file report.cpp.

@@ -498,7 +498,7 @@

Returns
self
-

Definition at line 489 of file report.cpp.

+

Definition at line 493 of file report.cpp.

@@ -525,7 +525,7 @@

Returns
self
-

Definition at line 479 of file report.cpp.

+

Definition at line 483 of file report.cpp.

@@ -552,7 +552,7 @@

Returns
self
-

Definition at line 474 of file report.cpp.

+

Definition at line 478 of file report.cpp.

@@ -578,7 +578,7 @@

Definition at line 529 of file report.cpp.

+

Definition at line 533 of file report.cpp.

diff --git a/develop/structscc_1_1ScLogger-members.html b/develop/structscc_1_1ScLogger-members.html index 9a4ffe8a..39efd61a 100644 --- a/develop/structscc_1_1ScLogger-members.html +++ b/develop/structscc_1_1ScLogger-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1ScLogger.html b/develop/structscc_1_1ScLogger.html index e918de85..ad52548b 100644 --- a/develop/structscc_1_1ScLogger.html +++ b/develop/structscc_1_1ScLogger.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -139,7 +139,7 @@ -

Definition at line 341 of file report.h.

+

Definition at line 351 of file report.h.

Constructor & Destructor Documentation

◆ ScLogger()

@@ -191,7 +191,7 @@

Definition at line 350 of file report.h.

+

Definition at line 360 of file report.h.

@@ -224,7 +224,7 @@

Returns
the output stream collecting the log message
-

Definition at line 409 of file report.h.

+

Definition at line 419 of file report.h.

@@ -256,7 +256,7 @@

Returns
reference to self for chaining
-

Definition at line 377 of file report.h.

+

Definition at line 387 of file report.h.

@@ -295,7 +295,7 @@

Returns
reference to self for chaining
-

Definition at line 388 of file report.h.

+

Definition at line 398 of file report.h.

@@ -334,7 +334,7 @@

Returns
reference to self for chaining
-

Definition at line 399 of file report.h.

+

Definition at line 409 of file report.h.

diff --git a/develop/structscc_1_1__discrete__restriction-members.html b/develop/structscc_1_1__discrete__restriction-members.html deleted file mode 100644 index 2f58c957..00000000 --- a/develop/structscc_1_1__discrete__restriction-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -scc: Member List - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
-
-
scc::_discrete_restriction< T > Member List
-
-
- -

This is the complete list of members for scc::_discrete_restriction< T >, including all inherited members.

- - - - -
_discrete_restriction(COLLECTION_TYPE values) (defined in scc::_discrete_restriction< T >)scc::_discrete_restriction< T >inline
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_discrete_restriction< T >)scc::_discrete_restriction< T >inline
values (defined in scc::_discrete_restriction< T >)scc::_discrete_restriction< T >
-
- - - - diff --git a/develop/structscc_1_1__discrete__restriction.html b/develop/structscc_1_1__discrete__restriction.html deleted file mode 100644 index dc26c3f5..00000000 --- a/develop/structscc_1_1__discrete__restriction.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -scc: scc::_discrete_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_discrete_restriction< T > Struct Template Reference
-
-
- - - - - - - -

-Public Member Functions

-template<typename COLLECTION_TYPE >
 _discrete_restriction (COLLECTION_TYPE values)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - -

-Public Attributes

-std::unordered_set< T > const values
 
-

Detailed Description

-

template<typename T>
-struct scc::_discrete_restriction< T >

- - -

Definition at line 75 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__discrete__restriction.js b/develop/structscc_1_1__discrete__restriction.js deleted file mode 100644 index 3349802a..00000000 --- a/develop/structscc_1_1__discrete__restriction.js +++ /dev/null @@ -1,6 +0,0 @@ -var structscc_1_1__discrete__restriction = -[ - [ "_discrete_restriction", "structscc_1_1__discrete__restriction.html#a5a25f5eafbd0de4b333d2ddb1459870c", null ], - [ "operator()", "structscc_1_1__discrete__restriction.html#abb01c560c44197b1a774f4c97eae9f15", null ], - [ "values", "structscc_1_1__discrete__restriction.html#ac09374f8554ab2097d1f381fa23be542", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__max__excl__restriction-members.html b/develop/structscc_1_1__max__excl__restriction-members.html deleted file mode 100644 index 50d4a6b0..00000000 --- a/develop/structscc_1_1__max__excl__restriction-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -scc: Member List - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
-
-
scc::_max_excl_restriction< T > Member List
-
-
- -

This is the complete list of members for scc::_max_excl_restriction< T >, including all inherited members.

- - - - -
_max_excl_restriction(T max) (defined in scc::_max_excl_restriction< T >)scc::_max_excl_restriction< T >inline
max (defined in scc::_max_excl_restriction< T >)scc::_max_excl_restriction< T >
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_max_excl_restriction< T >)scc::_max_excl_restriction< T >inline
-
- - - - diff --git a/develop/structscc_1_1__max__excl__restriction.html b/develop/structscc_1_1__max__excl__restriction.html deleted file mode 100644 index a76c86fc..00000000 --- a/develop/structscc_1_1__max__excl__restriction.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - -scc: scc::_max_excl_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_max_excl_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_max_excl_restriction (T max)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - -

-Public Attributes

-T const max
 
-

Detailed Description

-

template<typename T>
-struct scc::_max_excl_restriction< T >

- - -

Definition at line 67 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__max__excl__restriction.js b/develop/structscc_1_1__max__excl__restriction.js deleted file mode 100644 index 9c9c217a..00000000 --- a/develop/structscc_1_1__max__excl__restriction.js +++ /dev/null @@ -1,6 +0,0 @@ -var structscc_1_1__max__excl__restriction = -[ - [ "_max_excl_restriction", "structscc_1_1__max__excl__restriction.html#a4d0ecc4b22a2f6cdc18b5bd01891fe5e", null ], - [ "operator()", "structscc_1_1__max__excl__restriction.html#a64366d04c3700ad0db579d069fa2bad6", null ], - [ "max", "structscc_1_1__max__excl__restriction.html#a9d6ac59482e2350361cc983e24692fc7", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__max__restriction.html b/develop/structscc_1_1__max__restriction.html deleted file mode 100644 index 779fe408..00000000 --- a/develop/structscc_1_1__max__restriction.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - -scc: scc::_max_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_max_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_max_restriction (T max)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - -

-Public Attributes

-T const max
 
-

Detailed Description

-

template<typename T>
-struct scc::_max_restriction< T >

- - -

Definition at line 59 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__max__restriction.js b/develop/structscc_1_1__max__restriction.js deleted file mode 100644 index d0434c97..00000000 --- a/develop/structscc_1_1__max__restriction.js +++ /dev/null @@ -1,6 +0,0 @@ -var structscc_1_1__max__restriction = -[ - [ "_max_restriction", "structscc_1_1__max__restriction.html#a9c23b9701eb894a8bc6dcc9e485fef21", null ], - [ "operator()", "structscc_1_1__max__restriction.html#a0d0c527133192d5818ae6e2a64c8d5e4", null ], - [ "max", "structscc_1_1__max__restriction.html#a02c3e3e505b01e01aa4597e293263242", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__min__excl__restriction-members.html b/develop/structscc_1_1__min__excl__restriction-members.html deleted file mode 100644 index 1967fd8a..00000000 --- a/develop/structscc_1_1__min__excl__restriction-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -scc: Member List - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
-
-
scc::_min_excl_restriction< T > Member List
-
-
- -

This is the complete list of members for scc::_min_excl_restriction< T >, including all inherited members.

- - - - -
_min_excl_restriction(T min) (defined in scc::_min_excl_restriction< T >)scc::_min_excl_restriction< T >inline
min (defined in scc::_min_excl_restriction< T >)scc::_min_excl_restriction< T >
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_min_excl_restriction< T >)scc::_min_excl_restriction< T >inline
-
- - - - diff --git a/develop/structscc_1_1__min__excl__restriction.html b/develop/structscc_1_1__min__excl__restriction.html deleted file mode 100644 index 8cd66e3e..00000000 --- a/develop/structscc_1_1__min__excl__restriction.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - -scc: scc::_min_excl_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_min_excl_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_min_excl_restriction (T min)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - -

-Public Attributes

-T const min
 
-

Detailed Description

-

template<typename T>
-struct scc::_min_excl_restriction< T >

- - -

Definition at line 51 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__min__excl__restriction.js b/develop/structscc_1_1__min__excl__restriction.js deleted file mode 100644 index 2e11aa9c..00000000 --- a/develop/structscc_1_1__min__excl__restriction.js +++ /dev/null @@ -1,6 +0,0 @@ -var structscc_1_1__min__excl__restriction = -[ - [ "_min_excl_restriction", "structscc_1_1__min__excl__restriction.html#a01ab6129292a9784ee8f94518b96fd71", null ], - [ "operator()", "structscc_1_1__min__excl__restriction.html#a971103e984f937c810bff047f9cfde9f", null ], - [ "min", "structscc_1_1__min__excl__restriction.html#a78fbe1b131f778e8842939f8d10c0a99", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__min__max__excl__restriction-members.html b/develop/structscc_1_1__min__max__excl__restriction-members.html deleted file mode 100644 index 19cceec8..00000000 --- a/develop/structscc_1_1__min__max__excl__restriction-members.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - -scc: Member List - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
-
-
scc::_min_max_excl_restriction< T > Member List
-
-
- -

This is the complete list of members for scc::_min_max_excl_restriction< T >, including all inherited members.

- - - - - -
_min_max_excl_restriction(T min, T max) (defined in scc::_min_max_excl_restriction< T >)scc::_min_max_excl_restriction< T >inline
max (defined in scc::_min_max_excl_restriction< T >)scc::_min_max_excl_restriction< T >
min (defined in scc::_min_max_excl_restriction< T >)scc::_min_max_excl_restriction< T >
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_min_max_excl_restriction< T >)scc::_min_max_excl_restriction< T >inline
-
- - - - diff --git a/develop/structscc_1_1__min__max__excl__restriction.html b/develop/structscc_1_1__min__max__excl__restriction.html deleted file mode 100644 index 034a2ef0..00000000 --- a/develop/structscc_1_1__min__max__excl__restriction.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - -scc: scc::_min_max_excl_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_min_max_excl_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_min_max_excl_restriction (T min, T max)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - - - -

-Public Attributes

-T const min
 
-T const max
 
-

Detailed Description

-

template<typename T>
-struct scc::_min_max_excl_restriction< T >

- - -

Definition at line 33 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__min__max__excl__restriction.js b/develop/structscc_1_1__min__max__excl__restriction.js deleted file mode 100644 index 5e1a61c0..00000000 --- a/develop/structscc_1_1__min__max__excl__restriction.js +++ /dev/null @@ -1,7 +0,0 @@ -var structscc_1_1__min__max__excl__restriction = -[ - [ "_min_max_excl_restriction", "structscc_1_1__min__max__excl__restriction.html#a8d8626c7fa578acac5ab91d0b0e956b4", null ], - [ "operator()", "structscc_1_1__min__max__excl__restriction.html#a68b53f3da65b99c473259018d935fd2f", null ], - [ "max", "structscc_1_1__min__max__excl__restriction.html#a52b619df3ab17d0f8aa8b4eacddbfd3d", null ], - [ "min", "structscc_1_1__min__max__excl__restriction.html#a5ee759edf3653def287d307acbf045e4", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__min__max__restriction-members.html b/develop/structscc_1_1__min__max__restriction-members.html deleted file mode 100644 index 7c5c2ebb..00000000 --- a/develop/structscc_1_1__min__max__restriction-members.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - -scc: Member List - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
-
-
scc::_min_max_restriction< T > Member List
-
-
- -

This is the complete list of members for scc::_min_max_restriction< T >, including all inherited members.

- - - - - -
_min_max_restriction(T min, T max) (defined in scc::_min_max_restriction< T >)scc::_min_max_restriction< T >inline
max (defined in scc::_min_max_restriction< T >)scc::_min_max_restriction< T >
min (defined in scc::_min_max_restriction< T >)scc::_min_max_restriction< T >
operator()(cci::cci_param_write_event< T > const &ev) const (defined in scc::_min_max_restriction< T >)scc::_min_max_restriction< T >inline
-
- - - - diff --git a/develop/structscc_1_1__min__max__restriction.html b/develop/structscc_1_1__min__max__restriction.html deleted file mode 100644 index 74087bb4..00000000 --- a/develop/structscc_1_1__min__max__restriction.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - -scc: scc::_min_max_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_min_max_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_min_max_restriction (T min, T max)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - - - -

-Public Attributes

-T const min
 
-T const max
 
-

Detailed Description

-

template<typename T>
-struct scc::_min_max_restriction< T >

- - -

Definition at line 23 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__min__max__restriction.js b/develop/structscc_1_1__min__max__restriction.js deleted file mode 100644 index 40afacd5..00000000 --- a/develop/structscc_1_1__min__max__restriction.js +++ /dev/null @@ -1,7 +0,0 @@ -var structscc_1_1__min__max__restriction = -[ - [ "_min_max_restriction", "structscc_1_1__min__max__restriction.html#aff665e4a73dbce31a258e6b7e08ae459", null ], - [ "operator()", "structscc_1_1__min__max__restriction.html#a9a0d4d7606b62fa1e122d6e933dc663d", null ], - [ "max", "structscc_1_1__min__max__restriction.html#a965362acfd28304d0ddf19c4b4524623", null ], - [ "min", "structscc_1_1__min__max__restriction.html#aff4250c15f1523b5bda33ad9e843f7f0", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1__min__restriction.html b/develop/structscc_1_1__min__restriction.html deleted file mode 100644 index 38e28b87..00000000 --- a/develop/structscc_1_1__min__restriction.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - -scc: scc::_min_restriction< T > Struct Template Reference - - - - - - - - - - - -
-
- - - - - - -
-
scc -  2022.4.0 -
-
SystemC components library
-
-
- - - - - - -
-
- -
-
-
- -
-
- -
-
scc::_min_restriction< T > Struct Template Reference
-
-
- - - - - - -

-Public Member Functions

_min_restriction (T min)
 
-bool operator() (cci::cci_param_write_event< T > const &ev) const
 
- - - -

-Public Attributes

-T const min
 
-

Detailed Description

-

template<typename T>
-struct scc::_min_restriction< T >

- - -

Definition at line 43 of file cci_param_restricted.h.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/develop/structscc_1_1__min__restriction.js b/develop/structscc_1_1__min__restriction.js deleted file mode 100644 index 66667a98..00000000 --- a/develop/structscc_1_1__min__restriction.js +++ /dev/null @@ -1,6 +0,0 @@ -var structscc_1_1__min__restriction = -[ - [ "_min_restriction", "structscc_1_1__min__restriction.html#a538771b6826f30d7ed178c00b7bdace4", null ], - [ "operator()", "structscc_1_1__min__restriction.html#a6d60e43565bd944f05210c49d09b7ec1", null ], - [ "min", "structscc_1_1__min__restriction.html#aedd6ccc772278d2ba6b25d851bd6298c", null ] -]; \ No newline at end of file diff --git a/develop/structscc_1_1addr__range-members.html b/develop/structscc_1_1addr__range-members.html index 45cb9d81..ba2a275e 100644 --- a/develop/structscc_1_1addr__range-members.html +++ b/develop/structscc_1_1addr__range-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1addr__range.html b/develop/structscc_1_1addr__range.html index 3f784eb5..49d54274 100644 --- a/develop/structscc_1_1addr__range.html +++ b/develop/structscc_1_1addr__range.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1cci__param__restricted-members.html b/develop/structscc_1_1cci__param__restricted-members.html index 2d368b1f..0c7c2daf 100644 --- a/develop/structscc_1_1cci__param__restricted-members.html +++ b/develop/structscc_1_1cci__param__restricted-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -68,8 +68,8 @@

This is the complete list of members for scc::cci_param_restricted< T, TM >, including all inherited members.

- - + +
cci_param_restricted(const std::string &name, const T &default_value, RESTR const &restr, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=cci::cci_originator())scc::cci_param_restricted< T, TM >inline
cci_param_restricted(const std::string &name, const T &default_value, RESTR const &restr, cci::cci_broker_handle private_broker, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=cci::cci_originator())scc::cci_param_restricted< T, TM >inline
cci_param_restricted(const std::string &name, const T &default_value, RESTR const &restr, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=sc_core::sc_get_current_object() ? cci::cci_originator() :cci::cci_originator("sc_main"))scc::cci_param_restricted< T, TM >inline
cci_param_restricted(const std::string &name, const T &default_value, RESTR const &restr, cci::cci_broker_handle private_broker, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=sc_core::sc_get_current_object() ? cci::cci_originator() :cci::cci_originator("sc_main"))scc::cci_param_restricted< T, TM >inline
diff --git a/develop/structscc_1_1cci__param__restricted.html b/develop/structscc_1_1cci__param__restricted.html index ddd57556..aa22c923 100644 --- a/develop/structscc_1_1cci__param__restricted.html +++ b/develop/structscc_1_1cci__param__restricted.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -94,18 +94,27 @@

Public Member Functions

Constructors
-template<typename RESTR > - cci_param_restricted (const std::string &name, const T &default_value, RESTR const &restr, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=cci::cci_originator()) -  -template<typename RESTR > - cci_param_restricted (const std::string &name, const T &default_value, RESTR const &restr, cci::cci_broker_handle private_broker, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=cci::cci_originator()) -  +template<typename RESTR > + cci_param_restricted (const std::string &name, const T &default_value, RESTR const &restr, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=sc_core::sc_get_current_object() ? cci::cci_originator() :cci::cci_originator("sc_main")) +  +template<typename RESTR > + cci_param_restricted (const std::string &name, const T &default_value, RESTR const &restr, cci::cci_broker_handle private_broker, const std::string &desc="", cci::cci_name_type name_type=cci::CCI_RELATIVE_NAME, const cci::cci_originator &originator=sc_core::sc_get_current_object() ? cci::cci_originator() :cci::cci_originator("sc_main")) + 

Detailed Description

template<typename T, cci::cci_param_mutable_type TM = cci::CCI_MUTABLE_PARAM>
struct scc::cci_param_restricted< T, TM >

extension of cci_param<T, TM> which automatically registeres a callback to restrict the valid values given to the parameter.

+

The parameter can be use with a restriction created by:

Template Parameters
@@ -114,10 +123,10 @@ -

Definition at line 180 of file cci_param_restricted.h.

+

Definition at line 196 of file cci_param_restricted.h.

Constructor & Destructor Documentation

- -

◆ cci_param_restricted() [1/2]

+ +

◆ cci_param_restricted() [1/2]

@@ -163,7 +172,7 @@

- + @@ -190,12 +199,12 @@

Definition at line 196 of file cci_param_restricted.h.

+

Definition at line 212 of file cci_param_restricted.h.

- -

◆ cci_param_restricted() [2/2]

+ +

◆ cci_param_restricted() [2/2]

@@ -247,7 +256,7 @@

- + @@ -275,7 +284,7 @@

Definition at line 217 of file cci_param_restricted.h.

+

Definition at line 234 of file cci_param_restricted.h.

diff --git a/develop/structscc_1_1cci__param__restricted.js b/develop/structscc_1_1cci__param__restricted.js index a89b8bf3..590a102b 100644 --- a/develop/structscc_1_1cci__param__restricted.js +++ b/develop/structscc_1_1cci__param__restricted.js @@ -1,5 +1,5 @@ var structscc_1_1cci__param__restricted = [ - [ "cci_param_restricted", "structscc_1_1cci__param__restricted.html#a6b7f0b6ac7677e10cc8ad1a0fd3e3629", null ], - [ "cci_param_restricted", "structscc_1_1cci__param__restricted.html#aeafefd5891fb058a13d6dd40f9325ac4", null ] + [ "cci_param_restricted", "structscc_1_1cci__param__restricted.html#a966b92a6e7f3adf56c3533985cecc878", null ], + [ "cci_param_restricted", "structscc_1_1cci__param__restricted.html#a4bfb0b712c768ba24fdcde092b7467f4", null ] ]; \ No newline at end of file diff --git a/develop/structscc_1_1configurer_1_1ConfigHolder-members.html b/develop/structscc_1_1configurer_1_1ConfigHolder-members.html index af554e53..90be4ed1 100644 --- a/develop/structscc_1_1configurer_1_1ConfigHolder-members.html +++ b/develop/structscc_1_1configurer_1_1ConfigHolder-members.html @@ -24,7 +24,7 @@

@@ -68,10 +68,10 @@

This is the complete list of members for scc::configurer::ConfigHolder, including all inherited members.

Ttype of the parameter value
const cci::cci_originator & originator = cci::cci_originator() originator = sc_core::sc_get_current_object() ? cci::cci_originator() : cci::cci_originator("sc_main") 
const cci::cci_originator & originator = cci::cci_originator() originator = sc_core::sc_get_current_object() ? cci::cci_originator() : cci::cci_originator("sc_main") 
scc -  2022.4.0 +  2024.03
SystemC components library
- + - +
broker (defined in scc::json_config_reader)scc::json_config_reader
broker (defined in scc::json_config_reader)scc::json_config_reader
ConfigHolder(configurer::broker_t &broker) (defined in scc::configurer::ConfigHolder)scc::configurer::ConfigHolderinline
document (defined in scc::configurer::ConfigHolder)scc::configurer::ConfigHolder
valid (defined in scc::json_config_reader)scc::json_config_reader
valid (defined in scc::json_config_reader)scc::json_config_reader
diff --git a/develop/structscc_1_1configurer_1_1ConfigHolder.html b/develop/structscc_1_1configurer_1_1ConfigHolder.html index 6dd49fb9..9f8f688f 100644 --- a/develop/structscc_1_1configurer_1_1ConfigHolder.html +++ b/develop/structscc_1_1configurer_1_1ConfigHolder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -102,7 +102,7 @@

Detailed Description

-

Definition at line 621 of file configurer.cpp.

+

Definition at line 637 of file configurer.cpp.


The documentation for this struct was generated from the following files:
  • /home/eyck/git/SystemC-Components/src/sysc/scc/configurer.cpp
  • /home/eyck/git/SystemC-Components/src/sysc/scc/configurer_nocci.cpp
  • diff --git a/develop/structscc_1_1fst__trace__file-members.html b/develop/structscc_1_1fst__trace__file-members.html index 1ea1886f..c39bf2a5 100644 --- a/develop/structscc_1_1fst__trace__file-members.html +++ b/develop/structscc_1_1fst__trace__file-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1fst__trace__file.html b/develop/structscc_1_1fst__trace__file.html index 27a081c6..e3cf8f05 100644 --- a/develop/structscc_1_1fst__trace__file.html +++ b/develop/structscc_1_1fst__trace__file.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1observer-members.html b/develop/structscc_1_1observer-members.html index a447e7c2..80175588 100644 --- a/develop/structscc_1_1observer-members.html +++ b/develop/structscc_1_1observer-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1observer.html b/develop/structscc_1_1observer.html index 81960053..97f3906a 100644 --- a/develop/structscc_1_1observer.html +++ b/develop/structscc_1_1observer.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1observer_1_1notification__handle-members.html b/develop/structscc_1_1observer_1_1notification__handle-members.html index 387d0c0e..8522843f 100644 --- a/develop/structscc_1_1observer_1_1notification__handle-members.html +++ b/develop/structscc_1_1observer_1_1notification__handle-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1observer_1_1notification__handle.html b/develop/structscc_1_1observer_1_1notification__handle.html index 37ac391f..2ad06460 100644 --- a/develop/structscc_1_1observer_1_1notification__handle.html +++ b/develop/structscc_1_1observer_1_1notification__handle.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1ordered__semaphore_1_1lock-members.html b/develop/structscc_1_1ordered__semaphore_1_1lock-members.html index a7c11b73..50833f8d 100644 --- a/develop/structscc_1_1ordered__semaphore_1_1lock-members.html +++ b/develop/structscc_1_1ordered__semaphore_1_1lock-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1ordered__semaphore_1_1lock.html b/develop/structscc_1_1ordered__semaphore_1_1lock.html index b82f2ad6..001421a4 100644 --- a/develop/structscc_1_1ordered__semaphore_1_1lock.html +++ b/develop/structscc_1_1ordered__semaphore_1_1lock.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1ordered__semaphore__t-members.html b/develop/structscc_1_1ordered__semaphore__t-members.html index 66ff04b6..505f3b8b 100644 --- a/develop/structscc_1_1ordered__semaphore__t-members.html +++ b/develop/structscc_1_1ordered__semaphore__t-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1ordered__semaphore__t.html b/develop/structscc_1_1ordered__semaphore__t.html index a41d99b2..72bcdbce 100644 --- a/develop/structscc_1_1ordered__semaphore__t.html +++ b/develop/structscc_1_1ordered__semaphore__t.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1peq-members.html b/develop/structscc_1_1peq-members.html index a6d4b872..4a47b431 100644 --- a/develop/structscc_1_1peq-members.html +++ b/develop/structscc_1_1peq-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1peq.html b/develop/structscc_1_1peq.html index a94d6b0b..f724992a 100644 --- a/develop/structscc_1_1peq.html +++ b/develop/structscc_1_1peq.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1router_1_1range__entry-members.html b/develop/structscc_1_1router_1_1range__entry-members.html index 5ca68e2c..58b715b6 100644 --- a/develop/structscc_1_1router_1_1range__entry-members.html +++ b/develop/structscc_1_1router_1_1range__entry-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1router_1_1range__entry.html b/develop/structscc_1_1router_1_1range__entry.html index 4f1ea87b..c1dc4e39 100644 --- a/develop/structscc_1_1router_1_1range__entry.html +++ b/develop/structscc_1_1router_1_1range__entry.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__bigint__tester-members.html b/develop/structscc_1_1sc__bigint__tester-members.html index 8556c82f..61eebf75 100644 --- a/develop/structscc_1_1sc__bigint__tester-members.html +++ b/develop/structscc_1_1sc__bigint__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__bigint__tester.html b/develop/structscc_1_1sc__bigint__tester.html index de348d82..ce9d772e 100644 --- a/develop/structscc_1_1sc__bigint__tester.html +++ b/develop/structscc_1_1sc__bigint__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__biguint__tester-members.html b/develop/structscc_1_1sc__biguint__tester-members.html index 254867a7..f82312f5 100644 --- a/develop/structscc_1_1sc__biguint__tester-members.html +++ b/develop/structscc_1_1sc__biguint__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__biguint__tester.html b/develop/structscc_1_1sc__biguint__tester.html index 154972cb..8f423126 100644 --- a/develop/structscc_1_1sc__biguint__tester.html +++ b/develop/structscc_1_1sc__biguint__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__bv__tester-members.html b/develop/structscc_1_1sc__bv__tester-members.html index e95b3faf..72c4966e 100644 --- a/develop/structscc_1_1sc__bv__tester-members.html +++ b/develop/structscc_1_1sc__bv__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__bv__tester.html b/develop/structscc_1_1sc__bv__tester.html index de44e952..48e320b6 100644 --- a/develop/structscc_1_1sc__bv__tester.html +++ b/develop/structscc_1_1sc__bv__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__clock__ext-members.html b/develop/structscc_1_1sc__clock__ext-members.html index 4e6d643a..a4db9f69 100644 --- a/develop/structscc_1_1sc__clock__ext-members.html +++ b/develop/structscc_1_1sc__clock__ext-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__clock__ext.html b/develop/structscc_1_1sc__clock__ext.html index 9b533fa0..aa996c5f 100644 --- a/develop/structscc_1_1sc__clock__ext.html +++ b/develop/structscc_1_1sc__clock__ext.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__int__tester-members.html b/develop/structscc_1_1sc__int__tester-members.html index f7d36070..90921926 100644 --- a/develop/structscc_1_1sc__int__tester-members.html +++ b/develop/structscc_1_1sc__int__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__int__tester.html b/develop/structscc_1_1sc__int__tester.html index 8215fd5b..55bddbce 100644 --- a/develop/structscc_1_1sc__int__tester.html +++ b/develop/structscc_1_1sc__int__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__lv__tester-members.html b/develop/structscc_1_1sc__lv__tester-members.html index 2f25c5fc..beb43eca 100644 --- a/develop/structscc_1_1sc__lv__tester-members.html +++ b/develop/structscc_1_1sc__lv__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__lv__tester.html b/develop/structscc_1_1sc__lv__tester.html index 3743edf3..91e05f2e 100644 --- a/develop/structscc_1_1sc__lv__tester.html +++ b/develop/structscc_1_1sc__lv__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable-members.html b/develop/structscc_1_1sc__ref__variable-members.html index 6e9656c3..b6e35e81 100644 --- a/develop/structscc_1_1sc__ref__variable-members.html +++ b/develop/structscc_1_1sc__ref__variable-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable.html b/develop/structscc_1_1sc__ref__variable.html index a2912f9e..70fc964f 100644 --- a/develop/structscc_1_1sc__ref__variable.html +++ b/develop/structscc_1_1sc__ref__variable.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4-members.html b/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4-members.html index 10db91b5..6419403b 100644 --- a/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4-members.html +++ b/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html b/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html index c5bbf27f..489fc2a0 100644 --- a/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html +++ b/develop/structscc_1_1sc__ref__variable_3_01sc__core_1_1sc__event_01_4.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable__masked-members.html b/develop/structscc_1_1sc__ref__variable__masked-members.html index 08c5ab89..05b70dab 100644 --- a/develop/structscc_1_1sc__ref__variable__masked-members.html +++ b/develop/structscc_1_1sc__ref__variable__masked-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__ref__variable__masked.html b/develop/structscc_1_1sc__ref__variable__masked.html index d65c22f2..0dd96a9e 100644 --- a/develop/structscc_1_1sc__ref__variable__masked.html +++ b/develop/structscc_1_1sc__ref__variable__masked.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__uint__tester-members.html b/develop/structscc_1_1sc__uint__tester-members.html index 8c5de3c4..81d96fd8 100644 --- a/develop/structscc_1_1sc__uint__tester-members.html +++ b/develop/structscc_1_1sc__uint__tester-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__uint__tester.html b/develop/structscc_1_1sc__uint__tester.html index bda9e891..5f9d631d 100644 --- a/develop/structscc_1_1sc__uint__tester.html +++ b/develop/structscc_1_1sc__uint__tester.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable-members.html b/develop/structscc_1_1sc__variable-members.html index 3aa4459f..00fb2412 100644 --- a/develop/structscc_1_1sc__variable-members.html +++ b/develop/structscc_1_1sc__variable-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable.html b/develop/structscc_1_1sc__variable.html index 208bbcb0..7783a562 100644 --- a/develop/structscc_1_1sc__variable.html +++ b/develop/structscc_1_1sc__variable.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_1_1creator-members.html b/develop/structscc_1_1sc__variable_1_1creator-members.html index e181283b..3b4f1ffc 100644 --- a/develop/structscc_1_1sc__variable_1_1creator-members.html +++ b/develop/structscc_1_1sc__variable_1_1creator-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_1_1creator.html b/develop/structscc_1_1sc__variable_1_1creator.html index 686cc9f9..f7047703 100644 --- a/develop/structscc_1_1sc__variable_1_1creator.html +++ b/develop/structscc_1_1sc__variable_1_1creator.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_3_01bool_01_4-members.html b/develop/structscc_1_1sc__variable_3_01bool_01_4-members.html index 4de11206..d2ad5e69 100644 --- a/develop/structscc_1_1sc__variable_3_01bool_01_4-members.html +++ b/develop/structscc_1_1sc__variable_3_01bool_01_4-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_3_01bool_01_4.html b/develop/structscc_1_1sc__variable_3_01bool_01_4.html index 588d3a25..978158a4 100644 --- a/develop/structscc_1_1sc__variable_3_01bool_01_4.html +++ b/develop/structscc_1_1sc__variable_3_01bool_01_4.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator-members.html b/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator-members.html index c4d4568e..ab412573 100644 --- a/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator-members.html +++ b/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html b/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html index c807ce7a..c3edbfaf 100644 --- a/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html +++ b/develop/structscc_1_1sc__variable_3_01bool_01_4_1_1creator.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable__b-members.html b/develop/structscc_1_1sc__variable__b-members.html index f8769778..c0b3f6f3 100644 --- a/develop/structscc_1_1sc__variable__b-members.html +++ b/develop/structscc_1_1sc__variable__b-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable__b.html b/develop/structscc_1_1sc__variable__b.html index 02e634a0..3054508c 100644 --- a/develop/structscc_1_1sc__variable__b.html +++ b/develop/structscc_1_1sc__variable__b.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable__vector-members.html b/develop/structscc_1_1sc__variable__vector-members.html index c6681b77..e0f8c1bf 100644 --- a/develop/structscc_1_1sc__variable__vector-members.html +++ b/develop/structscc_1_1sc__variable__vector-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1sc__variable__vector.html b/develop/structscc_1_1sc__variable__vector.html index c6d95464..5d546418 100644 --- a/develop/structscc_1_1sc__variable__vector.html +++ b/develop/structscc_1_1sc__variable__vector.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1target__memory__map__entry-members.html b/develop/structscc_1_1target__memory__map__entry-members.html index a416163d..ab5930a8 100644 --- a/develop/structscc_1_1target__memory__map__entry-members.html +++ b/develop/structscc_1_1target__memory__map__entry-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1target__memory__map__entry.html b/develop/structscc_1_1target__memory__map__entry.html index 801580b1..204e3e0b 100644 --- a/develop/structscc_1_1target__memory__map__entry.html +++ b/develop/structscc_1_1target__memory__map__entry.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1target__name__map__entry-members.html b/develop/structscc_1_1target__name__map__entry-members.html index 2599c4c9..4b95596e 100644 --- a/develop/structscc_1_1target__name__map__entry-members.html +++ b/develop/structscc_1_1target__name__map__entry-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1target__name__map__entry.html b/develop/structscc_1_1target__name__map__entry.html index 13e900c3..f5def8b3 100644 --- a/develop/structscc_1_1target__name__map__entry.html +++ b/develop/structscc_1_1target__name__map__entry.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tick2time-members.html b/develop/structscc_1_1tick2time-members.html index 5dd13b55..2833009d 100644 --- a/develop/structscc_1_1tick2time-members.html +++ b/develop/structscc_1_1tick2time-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tick2time.html b/develop/structscc_1_1tick2time.html index c89a1478..2d97e4e5 100644 --- a/develop/structscc_1_1tick2time.html +++ b/develop/structscc_1_1tick2time.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1time2tick-members.html b/develop/structscc_1_1time2tick-members.html index ee1716bd..7297e30e 100644 --- a/develop/structscc_1_1time2tick-members.html +++ b/develop/structscc_1_1time2tick-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1time2tick.html b/develop/structscc_1_1time2tick.html index efa165b0..33b1bf4d 100644 --- a/develop/structscc_1_1time2tick.html +++ b/develop/structscc_1_1time2tick.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tlm__target__bfs__params-members.html b/develop/structscc_1_1tlm__target__bfs__params-members.html index cddb0c7b..ee732c91 100644 --- a/develop/structscc_1_1tlm__target__bfs__params-members.html +++ b/develop/structscc_1_1tlm__target__bfs__params-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tlm__target__bfs__params.html b/develop/structscc_1_1tlm__target__bfs__params.html index 8575ae1a..d533f97a 100644 --- a/develop/structscc_1_1tlm__target__bfs__params.html +++ b/develop/structscc_1_1tlm__target__bfs__params.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tlm__target__mod-members.html b/develop/structscc_1_1tlm__target__mod-members.html index 220ce099..97222363 100644 --- a/develop/structscc_1_1tlm__target__mod-members.html +++ b/develop/structscc_1_1tlm__target__mod-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1tlm__target__mod.html b/develop/structscc_1_1tlm__target__mod.html index 2e655576..1d43a6f0 100644 --- a/develop/structscc_1_1tlm__target__mod.html +++ b/develop/structscc_1_1tlm__target__mod.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace-members.html b/develop/structscc_1_1trace_1_1fst__trace-members.html index 44d1c6d3..ab0b2433 100644 --- a/develop/structscc_1_1trace_1_1fst__trace-members.html +++ b/develop/structscc_1_1trace_1_1fst__trace-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace.html b/develop/structscc_1_1trace_1_1fst__trace.html index be249606..6c164013 100644 --- a/develop/structscc_1_1trace_1_1fst__trace.html +++ b/develop/structscc_1_1trace_1_1fst__trace.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace__enum-members.html b/develop/structscc_1_1trace_1_1fst__trace__enum-members.html index 34d84684..8d596362 100644 --- a/develop/structscc_1_1trace_1_1fst__trace__enum-members.html +++ b/develop/structscc_1_1trace_1_1fst__trace__enum-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace__enum.html b/develop/structscc_1_1trace_1_1fst__trace__enum.html index eaf02392..a8928abf 100644 --- a/develop/structscc_1_1trace_1_1fst__trace__enum.html +++ b/develop/structscc_1_1trace_1_1fst__trace__enum.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace__t-members.html b/develop/structscc_1_1trace_1_1fst__trace__t-members.html index 7ead2a2b..53b5bb64 100644 --- a/develop/structscc_1_1trace_1_1fst__trace__t-members.html +++ b/develop/structscc_1_1trace_1_1fst__trace__t-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1fst__trace__t.html b/develop/structscc_1_1trace_1_1fst__trace__t.html index 9d32837a..8b273abb 100644 --- a/develop/structscc_1_1trace_1_1fst__trace__t.html +++ b/develop/structscc_1_1trace_1_1fst__trace__t.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1traits-members.html b/develop/structscc_1_1trace_1_1traits-members.html index 71ca81a9..81ff9d33 100644 --- a/develop/structscc_1_1trace_1_1traits-members.html +++ b/develop/structscc_1_1trace_1_1traits-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1traits.html b/develop/structscc_1_1trace_1_1traits.html index b2dfeca5..48a732c3 100644 --- a/develop/structscc_1_1trace_1_1traits.html +++ b/develop/structscc_1_1trace_1_1traits.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1vcd__scope__stack-members.html b/develop/structscc_1_1trace_1_1vcd__scope__stack-members.html index ec46e8f6..c6e233b7 100644 --- a/develop/structscc_1_1trace_1_1vcd__scope__stack-members.html +++ b/develop/structscc_1_1trace_1_1vcd__scope__stack-members.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    diff --git a/develop/structscc_1_1trace_1_1vcd__scope__stack.html b/develop/structscc_1_1trace_1_1vcd__scope__stack.html index 09cdc187..f113ad8a 100644 --- a/develop/structscc_1_1trace_1_1vcd__scope__stack.html +++ b/develop/structscc_1_1trace_1_1vcd__scope__stack.html @@ -24,7 +24,7 @@
    scc -  2022.4.0 +  2024.03
    SystemC components library
    @@ -83,7 +83,7 @@ struct scc::trace::vcd_scope_stack< T >

-

Definition at line 69 of file vcd_trace.hh.

+

Definition at line 65 of file vcd_trace.hh.


The documentation for this struct was generated from the following file:
  • /home/eyck/git/SystemC-Components/src/sysc/scc/trace/vcd_trace.hh
diff --git a/develop/structscc_1_1trace_1_1vcd__trace-members.html b/develop/structscc_1_1trace_1_1vcd__trace-members.html index 616f33dc..20f85094 100644 --- a/develop/structscc_1_1trace_1_1vcd__trace-members.html +++ b/develop/structscc_1_1trace_1_1vcd__trace-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1trace_1_1vcd__trace.html b/develop/structscc_1_1trace_1_1vcd__trace.html index f2795987..466e8eec 100644 --- a/develop/structscc_1_1trace_1_1vcd__trace.html +++ b/develop/structscc_1_1trace_1_1vcd__trace.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -108,7 +108,7 @@

Detailed Description

-

Definition at line 130 of file vcd_trace.hh.

+

Definition at line 126 of file vcd_trace.hh.


The documentation for this struct was generated from the following file:
  • /home/eyck/git/SystemC-Components/src/sysc/scc/trace/vcd_trace.hh
diff --git a/develop/structscc_1_1value__registry__if-members.html b/develop/structscc_1_1value__registry__if-members.html index e06c15a9..f2385a8a 100644 --- a/develop/structscc_1_1value__registry__if-members.html +++ b/develop/structscc_1_1value__registry__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1value__registry__if.html b/develop/structscc_1_1value__registry__if.html index aa4715d3..23831da7 100644 --- a/develop/structscc_1_1value__registry__if.html +++ b/develop/structscc_1_1value__registry__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1value__registry__if_1_1value__holder-members.html b/develop/structscc_1_1value__registry__if_1_1value__holder-members.html index effd22b9..fb788137 100644 --- a/develop/structscc_1_1value__registry__if_1_1value__holder-members.html +++ b/develop/structscc_1_1value__registry__if_1_1value__holder-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1value__registry__if_1_1value__holder.html b/develop/structscc_1_1value__registry__if_1_1value__holder.html index 224c65fb..b3df0ad6 100644 --- a/develop/structscc_1_1value__registry__if_1_1value__holder.html +++ b/develop/structscc_1_1value__registry__if_1_1value__holder.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__mt__trace__file-members.html b/develop/structscc_1_1vcd__mt__trace__file-members.html index bb1717eb..dadba79a 100644 --- a/develop/structscc_1_1vcd__mt__trace__file-members.html +++ b/develop/structscc_1_1vcd__mt__trace__file-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__mt__trace__file.html b/develop/structscc_1_1vcd__mt__trace__file.html index 21615bc3..2a5528bb 100644 --- a/develop/structscc_1_1vcd__mt__trace__file.html +++ b/develop/structscc_1_1vcd__mt__trace__file.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__pull__trace__file-members.html b/develop/structscc_1_1vcd__pull__trace__file-members.html index 72cc4fd2..38435249 100644 --- a/develop/structscc_1_1vcd__pull__trace__file-members.html +++ b/develop/structscc_1_1vcd__pull__trace__file-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__pull__trace__file.html b/develop/structscc_1_1vcd__pull__trace__file.html index f4b9f2c7..4066118c 100644 --- a/develop/structscc_1_1vcd__pull__trace__file.html +++ b/develop/structscc_1_1vcd__pull__trace__file.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__push__trace__file-members.html b/develop/structscc_1_1vcd__push__trace__file-members.html index 3eef124b..f94862fa 100644 --- a/develop/structscc_1_1vcd__push__trace__file-members.html +++ b/develop/structscc_1_1vcd__push__trace__file-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscc_1_1vcd__push__trace__file.html b/develop/structscc_1_1vcd__push__trace__file.html index 001c3962..95441b7e 100644 --- a/develop/structscc_1_1vcd__push__trace__file.html +++ b/develop/structscc_1_1vcd__push__trace__file.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscv__tr_1_1AttrDesc-members.html b/develop/structscv__tr_1_1AttrDesc-members.html index 07a398b4..17cfaf0f 100644 --- a/develop/structscv__tr_1_1AttrDesc-members.html +++ b/develop/structscv__tr_1_1AttrDesc-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structscv__tr_1_1AttrDesc.html b/develop/structscv__tr_1_1AttrDesc.html index fafa860f..6eea064a 100644 --- a/develop/structscv__tr_1_1AttrDesc.html +++ b/develop/structscv__tr_1_1AttrDesc.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -90,7 +90,7 @@

Detailed Description

-

Definition at line 50 of file scv_tr_lz4.cpp.

+

Definition at line 46 of file scv_tr_lz4.cpp.


The documentation for this struct was generated from the following file: diff --git a/develop/structtlm_1_1scc_1_1data__buffer-members.html b/develop/structtlm_1_1scc_1_1data__buffer-members.html index 713f4c30..2cc76b7d 100644 --- a/develop/structtlm_1_1scc_1_1data__buffer-members.html +++ b/develop/structtlm_1_1scc_1_1data__buffer-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1data__buffer.html b/develop/structtlm_1_1scc_1_1data__buffer.html index a58e3699..c2ec48e9 100644 --- a/develop/structtlm_1_1scc_1_1data__buffer.html +++ b/develop/structtlm_1_1scc_1_1data__buffer.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext-members.html b/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext-members.html index 1659e5f4..d7aa0df2 100644 --- a/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext-members.html +++ b/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext.html b/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext.html index 32c6ee67..c1721c4d 100644 --- a/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext.html +++ b/develop/structtlm_1_1scc_1_1lwtr_1_1link__pred__ext.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry-members.html b/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry-members.html index 104f9c96..993c7b7e 100644 --- a/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry-members.html +++ b/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry.html b/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry.html index 422323be..e0082b3a 100644 --- a/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry.html +++ b/develop/structtlm_1_1scc_1_1lwtr_1_1nb__rec__entry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw-members.html index 11dbc5b4..0035a92b 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw.html index 799d7553..c0c1987b 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b-members.html index aa8ea2c7..e9dd8d6f 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b.html index 904ea85b..630d7e3b 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb-members.html index 1cc8b44f..5a7430e5 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb.html index 20db5d71..a3889f69 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__bw__nb.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw-members.html index 9baace72..a39f094f 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw.html index 14e99022..ad663de2 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b-members.html index d954b2e6..aea195a9 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b.html index 68a564af..ff32a276 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__b.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb-members.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb-members.html index 4ec582b4..ce637c82 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb-members.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb.html b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb.html index ae6bb9fe..23aa229e 100644 --- a/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb.html +++ b/develop/structtlm_1_1scc_1_1pe_1_1intor__fw__nb.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal-members.html b/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal-members.html index 44300a01..2f3729b9 100644 --- a/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal-members.html +++ b/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal.html b/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal.html index 305ee5ac..29ea9f71 100644 --- a/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal.html +++ b/develop/structtlm_1_1scc_1_1sc__signal2tlm__signal.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types-members.html b/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types-members.html index 1b3c8740..318f455a 100644 --- a/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types-members.html +++ b/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types.html b/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types.html index 9c184b2b..7f375513 100644 --- a/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types.html +++ b/develop/structtlm_1_1scc_1_1scv_1_1impl_1_1tlm__recording__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__ext__mm-members.html b/develop/structtlm_1_1scc_1_1tlm__ext__mm-members.html index 1f1d011c..9d21d860 100644 --- a/develop/structtlm_1_1scc_1_1tlm__ext__mm-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__ext__mm-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__ext__mm.html b/develop/structtlm_1_1scc_1_1tlm__ext__mm.html index b83c1af0..2e3fe4b1 100644 --- a/develop/structtlm_1_1scc_1_1tlm__ext__mm.html +++ b/develop/structtlm_1_1scc_1_1tlm__ext__mm.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__generic__payload__base-members.html b/develop/structtlm_1_1scc_1_1tlm__generic__payload__base-members.html index e0117bc5..a89cdeee 100644 --- a/develop/structtlm_1_1scc_1_1tlm__generic__payload__base-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__generic__payload__base-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__generic__payload__base.html b/develop/structtlm_1_1scc_1_1tlm__generic__payload__base.html index 8c24d32b..616cd2e7 100644 --- a/develop/structtlm_1_1scc_1_1tlm__generic__payload__base.html +++ b/develop/structtlm_1_1scc_1_1tlm__generic__payload__base.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm-members.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm-members.html index 52981d18..0ff734bc 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm.html index 8d5f38ab..22a16c6f 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm__t-members.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm__t-members.html index 4fe05d22..d89f233f 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm__t-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm__t-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm__t.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm__t.html index 19845aa6..c8e651c0 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm__t.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm__t.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm__v-members.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm__v-members.html index 4e5eb1d6..483e00c5 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm__v-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm__v-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__gp__mm__v.html b/develop/structtlm_1_1scc_1_1tlm__gp__mm__v.html index b19fea69..4deaa724 100644 --- a/develop/structtlm_1_1scc_1_1tlm__gp__mm__v.html +++ b/develop/structtlm_1_1scc_1_1tlm__gp__mm__v.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__id__extension-members.html b/develop/structtlm_1_1scc_1_1tlm__id__extension-members.html index 0459cf15..04722173 100644 --- a/develop/structtlm_1_1scc_1_1tlm__id__extension-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__id__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__id__extension.html b/develop/structtlm_1_1scc_1_1tlm__id__extension.html index 500fe450..d79eddf5 100644 --- a/develop/structtlm_1_1scc_1_1tlm__id__extension.html +++ b/develop/structtlm_1_1scc_1_1tlm__id__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__managed__extension-members.html b/develop/structtlm_1_1scc_1_1tlm__managed__extension-members.html index 68bce83c..eea3d780 100644 --- a/develop/structtlm_1_1scc_1_1tlm__managed__extension-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__managed__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__managed__extension.html b/develop/structtlm_1_1scc_1_1tlm__managed__extension.html index c9f426cc..0a8c9ebc 100644 --- a/develop/structtlm_1_1scc_1_1tlm__managed__extension.html +++ b/develop/structtlm_1_1scc_1_1tlm__managed__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool-members.html b/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool-members.html index 1aece804..76934a85 100644 --- a/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool.html b/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool.html index c1fb72ba..a0254774 100644 --- a/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool.html +++ b/develop/structtlm_1_1scc_1_1tlm__managed__extension_1_1pool.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal-members.html b/develop/structtlm_1_1scc_1_1tlm__signal-members.html index dd5f3f17..51e09825 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal.html b/develop/structtlm_1_1scc_1_1tlm__signal.html index 36027265..6046cf6c 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal-members.html b/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal-members.html index 15f0af25..8f08a8c2 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal.html b/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal.html index 312b6cbd..46e36675 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal2sc__signal.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types-members.html index 7ba4845a..45e46784 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types.html b/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types.html index c9cf8fb4..a36098a0 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__baseprotocol__types.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if-members.html index ad8df1e4..044b780a 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if.html b/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if.html index 27739b71..06942da1 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__bw__transport__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if-members.html index 80204afc..9310d3a1 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if.html b/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if.html index e0ada169..8a05584e 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__fw__transport__if.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__gp-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__gp-members.html index 68fa98ac..b3d923cf 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__gp-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__gp-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__gp.html b/develop/structtlm_1_1scc_1_1tlm__signal__gp.html index c85b9bc1..63b87736 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__gp.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__gp.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm-members.html index c54dd5f1..6627b2d1 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm.html b/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm.html index a67132b9..bb693a38 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__gp_1_1gp__mm.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket-members.html index 6442d822..d2096e5e 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket.html b/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket.html index 2aa8ecdd..94926a80 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__initiator__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__target__socket-members.html b/develop/structtlm_1_1scc_1_1tlm__signal__target__socket-members.html index a53864e9..2ce582d9 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__target__socket-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__target__socket-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__signal__target__socket.html b/develop/structtlm_1_1scc_1_1tlm__signal__target__socket.html index 549aed2f..c813d87b 100644 --- a/develop/structtlm_1_1scc_1_1tlm__signal__target__socket.html +++ b/develop/structtlm_1_1scc_1_1tlm__signal__target__socket.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension-members.html b/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension-members.html index c77310aa..2630e520 100644 --- a/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension-members.html +++ b/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension.html b/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension.html index 67c3839f..f2a67726 100644 --- a/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension.html +++ b/develop/structtlm_1_1scc_1_1tlm__unmanaged__extension.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1BitFieldMember-members.html b/develop/structutil_1_1BitFieldMember-members.html index 5f375bb8..c00a665e 100644 --- a/develop/structutil_1_1BitFieldMember-members.html +++ b/develop/structutil_1_1BitFieldMember-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1BitFieldMember.html b/develop/structutil_1_1BitFieldMember.html index 60efee8a..3ca8ac41 100644 --- a/develop/structutil_1_1BitFieldMember.html +++ b/develop/structutil_1_1BitFieldMember.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1range__lut_1_1lut__entry-members.html b/develop/structutil_1_1range__lut_1_1lut__entry-members.html index 9b5f2d9e..11577bed 100644 --- a/develop/structutil_1_1range__lut_1_1lut__entry-members.html +++ b/develop/structutil_1_1range__lut_1_1lut__entry-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1range__lut_1_1lut__entry.html b/develop/structutil_1_1range__lut_1_1lut__entry.html index 8a779d7e..2aa396a7 100644 --- a/develop/structutil_1_1range__lut_1_1lut__entry.html +++ b/develop/structutil_1_1range__lut_1_1lut__entry.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1stl__pool__allocator_1_1rebind-members.html b/develop/structutil_1_1stl__pool__allocator_1_1rebind-members.html index b4b513cf..dae40f3b 100644 --- a/develop/structutil_1_1stl__pool__allocator_1_1rebind-members.html +++ b/develop/structutil_1_1stl__pool__allocator_1_1rebind-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1stl__pool__allocator_1_1rebind.html b/develop/structutil_1_1stl__pool__allocator_1_1rebind.html index 242ed509..92ed2b21 100644 --- a/develop/structutil_1_1stl__pool__allocator_1_1rebind.html +++ b/develop/structutil_1_1stl__pool__allocator_1_1rebind.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1thread__pool-members.html b/develop/structutil_1_1thread__pool-members.html index bd6ce400..d199d234 100644 --- a/develop/structutil_1_1thread__pool-members.html +++ b/develop/structutil_1_1thread__pool-members.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/structutil_1_1thread__pool.html b/develop/structutil_1_1thread__pool.html index ebd3a82e..8d263e49 100644 --- a/develop/structutil_1_1thread__pool.html +++ b/develop/structutil_1_1thread__pool.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/sysc_2scc_2mt19937__rng_8h_source.html b/develop/sysc_2scc_2mt19937__rng_8h_source.html index 139f9689..fb639078 100644 --- a/develop/sysc_2scc_2mt19937__rng_8h_source.html +++ b/develop/sysc_2scc_2mt19937__rng_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tagged__initiator__mixin_8h_source.html b/develop/tagged__initiator__mixin_8h_source.html index 98cdfa41..a3f93ee6 100644 --- a/develop/tagged__initiator__mixin_8h_source.html +++ b/develop/tagged__initiator__mixin_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tagged__target__mixin_8h_source.html b/develop/tagged__target__mixin_8h_source.html index 12e6e31c..79a326ba 100644 --- a/develop/tagged__target__mixin_8h_source.html +++ b/develop/tagged__target__mixin_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/target_8cpp_source.html b/develop/target_8cpp_source.html index a1c2b8ca..696933ce 100644 --- a/develop/target_8cpp_source.html +++ b/develop/target_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/target__info__if_8h_source.html b/develop/target__info__if_8h_source.html index e6fc92bf..5a6b5d6e 100644 --- a/develop/target__info__if_8h_source.html +++ b/develop/target__info__if_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/target__mixin_8h_source.html b/develop/target__mixin_8h_source.html index e5eea018..0c3fc3d1 100644 --- a/develop/target__mixin_8h_source.html +++ b/develop/target__mixin_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html b/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html index a6dcd159..176b8c93 100644 --- a/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html +++ b/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -109,350 +109,355 @@
42 , socket_fw(port)
43 , transfer_width_in_bytes(transfer_width / 8)
44 , flavor(flavor) {
-
45  add_attribute(data_interleaving);
-
46  add_attribute(artv);
-
47  add_attribute(awtv);
-
48  add_attribute(wbv);
-
49  add_attribute(rbr);
-
50  add_attribute(br);
-
51  add_attribute(ba);
-
52  add_attribute(rla);
-
53  add_attribute(enable_id_serializing);
-
54  fw_i.bind(*this);
-
55  SC_METHOD(clk_counter);
-
56  sensitive << clk_i.pos();
-
57 
-
58  if(flavor == flavor_e::AXI)
-
59  for(auto i = 0u; i < 16; i++)
-
60  sc_core::sc_spawn([this]() { snoop_thread(); });
-
61 }
-
62 
-
63 axi_initiator_b::~axi_initiator_b() {
-
64  for(auto& e : tx_state_by_tx)
-
65  delete e.second;
-
66 }
-
67 
-
68 void axi_initiator_b::end_of_elaboration() {
-
69  clk_if = dynamic_cast<sc_core::sc_clock*>(clk_i.get_interface());
-
70  for(auto i = 0U; i < outstanding_snoops.value; ++i) {
-
71  sc_spawn(sc_bind(&axi_initiator_b::snoop_thread, this));
-
72  }
-
73 }
-
74 
-
75 void axi_initiator_b::b_snoop(payload_type& trans, sc_core::sc_time& t) {
-
76  if(bw_o.get_interface()) {
-
77  auto latency = bw_o->transport(trans);
-
78  if(latency < std::numeric_limits<unsigned>::max())
-
79  t += latency * clk_period;
-
80  }
-
81 }
-
82 
-
83 tlm::tlm_sync_enum axi_initiator_b::nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) {
-
84  SCCTRACE(SCMOD) << __FUNCTION__ << " received with phase " << phase << " with delay = " << t << " with trans " << trans;
-
85  if(phase == tlm::BEGIN_REQ) { // snoop
-
86  snp_peq.notify(trans, t);
-
87  } else if(phase == END_PARTIAL_RESP || phase == tlm::END_RESP) { //snoop
-
88  auto it = snp_state_by_id.find(&trans);
-
89  sc_assert(it != snp_state_by_id.end());
-
90  it->second->peq.notify(std::make_tuple(&trans, phase), t);
-
91  } else { // read/write
-
92  auto it = tx_state_by_tx.find(&trans);
-
93  sc_assert(it != tx_state_by_tx.end());
-
94  auto txs = it->second;
-
95  txs->peq.notify(std::make_tuple(&trans, phase), t);
-
96  }
-
97  return tlm::TLM_ACCEPTED;
-
98 }
-
99 
-
100 void axi_initiator_b::invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) {}
-
101 
-
102 tlm::tlm_phase axi_initiator_b::send(payload_type& trans, axi_initiator_b::tx_state* txs, tlm::tlm_phase phase) {
-
103  sc_core::sc_time delay;
-
104  SCCTRACE(SCMOD) << "Send " << phase << " of " << trans;
-
105  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
-
106  if(ret == tlm::TLM_UPDATED) {
-
107  wait(delay);
-
108  SCCTRACE(SCMOD) << "Received " << phase << " for " << trans;
-
109  return phase;
-
110  } else {
-
111  auto waiting = txs->peq.has_next();
-
112  auto entry = txs->peq.get();
-
113  if(waiting)
-
114  SCCFATAL(SCMOD) << "there is a waiting " << std::get<0>(entry) << " with phase " << std::get<1>(entry);
-
115  sc_assert(!txs->peq.has_next());
-
116  sc_assert(std::get<0>(entry) == &trans);
-
117  SCCTRACE(SCMOD) << "in send() Received " << std::get<1>(entry) << " for " << trans;
-
118  return std::get<1>(entry);
-
119  }
-
120 }
-
121 
-
122 void axi_initiator_b::transport(payload_type& trans, bool blocking) {
-
123  auto axi_id = get_axi_id(trans);
-
124  if(flavor == flavor_e::AXI) {
-
125  if(!trans.get_extension<axi::axi4_extension>() && !trans.get_extension<axi::axi3_extension>()) {
-
126  auto ace = trans.set_extension<axi::ace_extension>(nullptr);
-
127  sc_assert(ace && "No valid extension found in transaction");
-
128  auto axi4 = new axi::axi4_extension();
-
129  *static_cast<axi::axi4*>(axi4) = *static_cast<axi::axi4*>(ace);
-
130  *static_cast<axi::common*>(axi4) = *static_cast<axi::common*>(ace);
-
131  trans.set_extension(axi4);
-
132  delete ace;
-
133  }
-
134  } else {
-
135  sc_assert(trans.get_extension<axi::ace_extension>() && "No ACE extension found in transaction");
-
136  }
-
137  SCCTRACE(SCMOD) << "got transport req for " << trans;
-
138  if(blocking) {
-
139  sc_time t;
-
140  socket_fw->b_transport(trans, t);
-
141  } else {
-
142  auto it = tx_state_by_tx.find(&trans);
-
143  if(it == tx_state_by_tx.end()) {
-
144  bool success;
-
145  std::tie(it, success) = tx_state_by_tx.insert(std::make_pair(&trans, new tx_state()));
-
146  }
-
147  auto& txs = it->second;
-
148  auto timing_e = trans.set_auto_extension<atp::timing_params>(nullptr);
-
149 
-
150  if(enable_id_serializing.value) {
-
151  if(!id_mtx[axi_id]) {
-
152  id_mtx[axi_id] = new scc::ordered_semaphore(1);
-
153  }
-
154  id_mtx[axi_id]->wait(); // wait until running tx with same id is over
-
155  }
-
156  txs->active_tx = &trans;
-
157  auto burst_length = 0;
-
158  if(auto e = trans.get_extension<axi::ace_extension>()) {
-
159  burst_length = is_dataless(e) ? 1 : e->get_length() + 1;
-
160  } else if(auto e = trans.get_extension<axi::axi4_extension>()) {
-
161  burst_length = e->get_length() + 1;
-
162  } else if(auto e = trans.get_extension<axi::axi3_extension>()) {
-
163  burst_length = e->get_length() + 1;
-
164  }
-
165  SCCTRACE(SCMOD) << "start transport " << trans;
-
166  tlm::tlm_phase next_phase{tlm::UNINITIALIZED_PHASE};
-
167  if(!trans.is_read()) { // data less via write channel
-
168  if(!data_interleaving
-
169  .value) { // Note that AXI4 does not allow write data interleaving, and ncore3 only supports AXI4.
-
170  sem_lock lck(wr_chnl);
-
172  for(unsigned i = 1; i < (timing_e ? timing_e->awtv : awtv.value); ++i) {
-
173  wait(clk_i.posedge_event());
-
174  }
-
175  SCCTRACE(SCMOD) << "starting " << burst_length << " write beats of " << trans;
-
176  for(unsigned i = 0; i < burst_length - 1; ++i) {
-
177  if(protocol_cb[axi::fsm::BegPartReqE])
-
178  protocol_cb[axi::fsm::BegPartReqE](trans, false);
-
179  auto res = send(trans, txs, axi::BEGIN_PARTIAL_REQ);
-
180  if(axi::END_PARTIAL_REQ != res)
-
181  SCCFATAL(SCMOD) << "target responded with " << res << " for the " << i << "th beat of "
-
182  << burst_length << " beats in transaction " << trans;
-
183  for(unsigned i = 0; i < (timing_e ? timing_e->wbv : wbv.value); ++i)
-
184  wait(clk_i.posedge_event());
-
185  if(protocol_cb[axi::fsm::EndPartReqE])
-
186  protocol_cb[axi::fsm::EndPartReqE](trans, false);
-
187  }
-
188  auto res = send(trans, txs, tlm::BEGIN_REQ);
-
189  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
-
190  next_phase = res;
-
191  else if(res != tlm::END_REQ)
-
192  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
-
193  wait(clk_i.posedge_event());
-
194  } else { // AXI3 allows data interleaving and there may be support for AXI3 in Symphony
-
195  SCCTRACE(SCMOD) << "starting " << burst_length << " write beats of " << trans;
-
196  for(unsigned i = 0; i < burst_length - 1; ++i) {
-
197  sem_lock lck(wr_chnl);
-
198  if(i == 0)
-
200  for(unsigned i = 1; i < (timing_e ? timing_e->awtv : awtv.value); ++i)
-
201  wait(clk_i.posedge_event());
-
202  auto res = send(trans, txs, axi::BEGIN_PARTIAL_REQ);
-
203  sc_assert(axi::END_PARTIAL_REQ == res);
-
204  for(unsigned i = 1; i < (timing_e ? timing_e->wbv : wbv.value); ++i)
-
205  wait(clk_i.posedge_event());
-
206  }
-
207  sem_lock lck(wr_chnl);
-
208  if(protocol_cb[axi::fsm::BegReqE])
-
209  protocol_cb[axi::fsm::BegReqE](trans, false);
-
210  auto res = send(trans, txs, tlm::BEGIN_REQ);
-
211  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
-
212  next_phase = res;
-
213  else if(res != tlm::END_REQ)
-
214  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
-
215  wait(clk_i.posedge_event());
-
216  if(protocol_cb[axi::fsm::EndReqE])
-
217  protocol_cb[axi::fsm::EndReqE](trans, false);
-
218  }
-
219  } else {
-
220  sem_lock lck(rd_chnl);
-
222  for(unsigned i = 1; i < (timing_e ? timing_e->artv : artv.value); ++i)
-
223  wait(clk_i.posedge_event());
-
224  SCCTRACE(SCMOD) << "starting address phase of " << trans;
-
225  if(protocol_cb[axi::fsm::BegPartReqE])
-
226  protocol_cb[axi::fsm::BegPartReqE](trans, false);
-
227  auto res = send(trans, txs, tlm::BEGIN_REQ);
-
228  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
-
229  next_phase = res;
-
230  else if(res != tlm::END_REQ)
-
231  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
-
232  wait(clk_i.posedge_event());
-
233  if(protocol_cb[axi::fsm::EndReqE])
-
234  protocol_cb[axi::fsm::EndReqE](trans, false);
-
235  }
-
236  auto finished = false;
-
237  if(!trans.is_read() || !trans.get_data_length())
-
238  burst_length = 1;
-
239  const auto exp_burst_length = burst_length;
-
240  do {
-
241  // waiting for response
-
242  auto entry = next_phase == tlm::UNINITIALIZED_PHASE ? txs->peq.get() : std::make_tuple(&trans, next_phase);
-
243  next_phase = tlm::UNINITIALIZED_PHASE;
-
244  // Handle optional CRESP response
-
245  if(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::BEGIN_RESP) {
-
246  if(protocol_cb[axi::fsm::BegRespE])
-
247  protocol_cb[axi::fsm::BegRespE](trans, false);
-
248  SCCTRACE(SCMOD) << "received last beat of " << trans;
-
249  auto delay_in_cycles = timing_e ? (trans.is_read() ? timing_e->rbr : timing_e->br) : br.value;
-
250  for(unsigned i = 0; i < delay_in_cycles; ++i)
-
251  wait(clk_i.posedge_event());
-
252  burst_length--;
-
253  tlm::tlm_phase phase = tlm::END_RESP;
-
254  sc_time delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
255  socket_fw->nb_transport_fw(trans, phase, delay);
-
256  if(burst_length)
-
257  SCCWARN(SCMOD) << "got wrong number of burst beats, expected " << exp_burst_length << ", got "
-
258  << exp_burst_length - burst_length;
-
259  wait(clk_i.posedge_event());
-
260  if(protocol_cb[axi::fsm::EndRespE])
-
261  protocol_cb[axi::fsm::EndRespE](trans, false);
-
262  finished = true;
-
263  } else if(std::get<0>(entry) == &trans &&
-
264  std::get<1>(entry) == axi::BEGIN_PARTIAL_RESP) { // RDAT without CRESP case
-
265  SCCTRACE(SCMOD) << "received beat = "<< burst_length<<" with trans " << trans;
-
266  auto delay_in_cycles = timing_e ? timing_e->rbr : rbr.value;
-
267  for(unsigned i = 0; i < delay_in_cycles; ++i)
-
268  wait(clk_i.posedge_event());
-
269  burst_length--;
-
270  if(protocol_cb[axi::fsm::BegPartRespE])
-
271  protocol_cb[axi::fsm::BegPartRespE](trans, false);
-
272  tlm::tlm_phase phase = axi::END_PARTIAL_RESP;
-
273  sc_time delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
274  auto res = socket_fw->nb_transport_fw(trans, phase, delay);
-
275  if(res == tlm::TLM_UPDATED) {
-
276  next_phase = phase;
-
277  wait(delay);
-
278  }
-
279  if(protocol_cb[axi::fsm::EndPartRespE])
-
280  protocol_cb[axi::fsm::EndPartRespE](trans, false);
-
281  }
-
282  } while(!finished);
-
283  if(flavor == flavor_e::ACE) {
-
284  if(trans.is_read() && rla.value != std::numeric_limits<unsigned>::max()) {
-
285  for(unsigned i = 0; i < rla.value; ++i)
-
286  wait(clk_i.posedge_event());
-
287  tlm::tlm_phase phase = axi::ACK;
-
288  sc_time delay = SC_ZERO_TIME;
-
289  socket_fw->nb_transport_fw(trans, phase, delay);
-
290  wait(clk_i.posedge_event());
-
291 
-
292  } else if(trans.is_write() && ba.value != std::numeric_limits<unsigned>::max()) {
-
293  for(unsigned i = 0; i < ba.value; ++i)
-
294  wait(clk_i.posedge_event());
-
295  tlm::tlm_phase phase = axi::ACK;
-
296  sc_time delay = SC_ZERO_TIME;
-
297  socket_fw->nb_transport_fw(trans, phase, delay);
-
298  wait(clk_i.posedge_event());
-
299  }
-
300  }
-
301  SCCTRACE(SCMOD) << "finished non-blocking protocol";
-
302  if(enable_id_serializing.value) {
-
303  id_mtx[axi_id]->post();
-
304  }
-
305  txs->active_tx = nullptr;
-
306  any_tx_finished.notify(SC_ZERO_TIME);
-
307  }
-
308  SCCTRACE(SCMOD) << "finished transport req for " << trans;
-
309 }
-
310 
-
311 // This process handles the SNOOP request received
-
312 void axi_initiator_b::snoop_thread() {
-
313  tlm::scc::tlm_gp_shared_ptr trans{nullptr};
-
314  while(true) {
-
315  while(!(trans = snp_peq.get_next_transaction())) {
-
316  wait(snp_peq.get_event());
-
317  }
-
318  snoops_in_flight++;
-
319  SCCDEBUG(SCMOD) << "start snoop #" << snoops_in_flight;
-
320  auto req_ext = trans->get_extension<ace_extension>();
-
321  sc_assert(req_ext != nullptr);
-
322 
-
323  auto it = snp_state_by_id.find(&trans);
-
324  if(it == snp_state_by_id.end()) {
-
325  bool success;
-
326  std::tie(it, success) = snp_state_by_id.insert(std::make_pair(trans.get(), new tx_state()));
-
327  }
-
328 
-
329  sc_time delay = clk_if ? clk_if->period() - 1_ps : SC_ZERO_TIME;
-
330  tlm::tlm_phase phase = tlm::END_REQ;
-
331  // here delay is not used in nb_fw of following module
-
332  // therefore one cycle delay between BEG_REQ and END_REQ should be explicitly called here??
-
333  if(protocol_cb[axi::fsm::BegReqE])
-
334  protocol_cb[axi::fsm::BegReqE](*trans, true);
-
335  socket_fw->nb_transport_fw(*trans, phase, delay);
-
336  auto cycles = 0U;
-
337  if(bw_o.get_interface())
-
338  cycles = bw_o->transport(*trans);
-
339  if(protocol_cb[axi::fsm::EndReqE])
-
340  protocol_cb[axi::fsm::EndReqE](*trans, true);
-
341  if(cycles < std::numeric_limits<unsigned>::max()) {
-
342  // we handle the snoop access ourselfs
-
343  for(size_t i = 0; i <= cycles; ++i)
-
344  wait(clk_i.posedge_event());
-
345  snoop_resp(*trans);
-
346  }
-
347  // finish snoop response, should release tlm gp_shared_ptr
-
348  SCCTRACE(SCMOD)<<" finish snoop response, release gp_shared_ptr";
-
349  snoops_in_flight--;
-
350  trans=nullptr;
-
351  }
-
352 }
-
353 
-
354 void axi_initiator_b::snoop_resp(payload_type& trans, bool sync) {
-
355  auto it = snp_state_by_id.find(&trans);
-
356  sc_assert(it != snp_state_by_id.end());
-
357  auto& txs = it->second;
-
358  auto data_len=trans.get_data_length();
-
359  auto burst_length = data_len/transfer_width_in_bytes;
-
360  if(burst_length<1)
-
361  burst_length=1;
-
362  tlm::tlm_phase next_phase{tlm::UNINITIALIZED_PHASE};
-
363  auto delay_in_cycles = wbv.value;
-
364  sem_lock lck(sresp_chnl);
-
365  /*
-
366  * here according to spec, ccresp should first be checked to see whether there is data transfer( decided by TC)
-
367  * if there is data to transfer, start cache data transfer, otherwise only crresp
-
368  * */
-
369  SCCTRACE(SCMOD) << "starting snoop resp with " << burst_length << " beats of " << trans;
-
370  for(unsigned i = 0; i < burst_length - 1; ++i) {
-
371  if(protocol_cb[axi::fsm::BegPartRespE])
-
372  protocol_cb[axi::fsm::BegPartRespE](trans, true);
-
373  auto res = send(trans, txs, axi::BEGIN_PARTIAL_RESP);
-
374  sc_assert(axi::END_PARTIAL_RESP == res);
-
375  wait(clk_i.posedge_event());
-
376  if(protocol_cb[axi::fsm::EndPartRespE])
-
377  protocol_cb[axi::fsm::EndPartRespE](trans, true);
-
378  for(unsigned i = 1; i < delay_in_cycles; ++i)
-
379  wait(clk_i.posedge_event());
-
380  }
-
381  if(protocol_cb[axi::fsm::BegRespE])
-
382  protocol_cb[axi::fsm::BegRespE](trans, true);
-
383  auto res = send(trans, txs, tlm::BEGIN_RESP);
-
384  if(res != tlm::END_RESP)
-
385  SCCERR(SCMOD) << "target did not respond with END_RESP to a BEGIN_RESP";
-
386  wait(clk_i.posedge_event());
-
387  if(protocol_cb[axi::fsm::EndRespE])
-
388  protocol_cb[axi::fsm::EndRespE](trans, true);
-
389 }
-
390 } // namespace pe
-
391 } // namespace axi
+
45  fw_i.bind(*this);
+
46  SC_METHOD(clk_counter);
+
47  sensitive << clk_i.pos();
+
48 
+
49  if(flavor == flavor_e::AXI)
+
50  for(auto i = 0u; i < 16; i++)
+
51  sc_core::sc_spawn([this]() { snoop_thread(); });
+
52 }
+
53 
+
54 axi_initiator_b::~axi_initiator_b() {
+
55  for(auto& e : tx_state_by_tx)
+
56  delete e.second;
+
57 }
+
58 
+
59 void axi_initiator_b::end_of_elaboration() {
+
60  clk_if = dynamic_cast<sc_core::sc_clock*>(clk_i.get_interface());
+
61  for(auto i = 0U; i < outstanding_snoops.get_value(); ++i) {
+
62  sc_spawn(sc_bind(&axi_initiator_b::snoop_thread, this));
+
63  }
+
64 }
+
65 
+
66 void axi_initiator_b::b_snoop(payload_type& trans, sc_core::sc_time& t) {
+
67  if(bw_o.get_interface()) {
+
68  auto latency = bw_o->transport(trans);
+
69  if(latency < std::numeric_limits<unsigned>::max())
+
70  t += latency * clk_period;
+
71  }
+
72 }
+
73 
+
74 tlm::tlm_sync_enum axi_initiator_b::nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) {
+
75  SCCTRACE(SCMOD) << __FUNCTION__ << " received with phase " << phase << " with delay = " << t << " with trans " << trans;
+
76  if(phase == tlm::BEGIN_REQ) { // snoop
+
77  snp_peq.notify(trans, t);
+
78  } else if(phase == END_PARTIAL_RESP || phase == tlm::END_RESP) { //snoop
+
79  auto it = snp_state_by_id.find(&trans);
+
80  sc_assert(it != snp_state_by_id.end());
+
81  it->second->peq.notify(std::make_tuple(&trans, phase), t);
+
82  } else { // read/write
+
83  auto it = tx_state_by_tx.find(&trans);
+
84  sc_assert(it != tx_state_by_tx.end());
+
85  auto txs = it->second;
+
86  txs->peq.notify(std::make_tuple(&trans, phase), t);
+
87  }
+
88  return tlm::TLM_ACCEPTED;
+
89 }
+
90 
+
91 void axi_initiator_b::invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) {}
+
92 
+
93 tlm::tlm_phase axi_initiator_b::send(payload_type& trans, axi_initiator_b::tx_state* txs, tlm::tlm_phase phase) {
+
94  sc_core::sc_time delay;
+
95  SCCTRACE(SCMOD) << "Send " << phase << " of " << trans;
+
96  tlm::tlm_sync_enum ret = socket_fw->nb_transport_fw(trans, phase, delay);
+
97  if(ret == tlm::TLM_UPDATED) {
+
98  wait(delay);
+
99  SCCTRACE(SCMOD) << "Received " << phase << " for " << trans;
+
100  return phase;
+
101  } else {
+
102  auto waiting = txs->peq.has_next();
+
103  auto entry = txs->peq.get();
+
104  if(waiting)
+
105  SCCFATAL(SCMOD) << "there is a waiting " << std::get<0>(entry) << " with phase " << std::get<1>(entry);
+
106  sc_assert(!txs->peq.has_next());
+
107  sc_assert(std::get<0>(entry) == &trans);
+
108  SCCTRACE(SCMOD) << "in send() Received " << std::get<1>(entry) << " for " << trans;
+
109  return std::get<1>(entry);
+
110  }
+
111 }
+
112 
+
113 void axi_initiator_b::transport(payload_type& trans, bool blocking) {
+
114  auto axi_id = get_axi_id(trans);
+
115  if(flavor == flavor_e::AXI) {
+
116  if(!trans.get_extension<axi::axi4_extension>() && !trans.get_extension<axi::axi3_extension>()) {
+
117  auto ace = trans.set_extension<axi::ace_extension>(nullptr);
+
118  sc_assert(ace && "No valid extension found in transaction");
+
119  auto axi4 = new axi::axi4_extension();
+
120  *static_cast<axi::axi4*>(axi4) = *static_cast<axi::axi4*>(ace);
+
121  *static_cast<axi::common*>(axi4) = *static_cast<axi::common*>(ace);
+
122  trans.set_extension(axi4);
+
123  delete ace;
+
124  }
+
125  } else {
+
126  sc_assert(trans.get_extension<axi::ace_extension>() && "No ACE extension found in transaction");
+
127  }
+
128  SCCTRACE(SCMOD) << "got transport req for " << trans;
+
129  if(blocking) {
+
130  sc_time t;
+
131  socket_fw->b_transport(trans, t);
+
132  } else {
+
133  auto it = tx_state_by_tx.find(&trans);
+
134  if(it == tx_state_by_tx.end()) {
+
135  bool success;
+
136  std::tie(it, success) = tx_state_by_tx.insert(std::make_pair(&trans, new tx_state()));
+
137  }
+
138  if(trans.is_read()) rd_waiting++;
+
139  else wr_waiting++;
+
140  auto& txs = it->second;
+
141  auto timing_e = trans.set_auto_extension<atp::timing_params>(nullptr);
+
142 
+
143  if(enable_id_serializing.get_value()) {
+
144  if(!id_mtx[axi_id]) {
+
145  id_mtx[axi_id] = new scc::ordered_semaphore(1);
+
146  }
+
147  id_mtx[axi_id]->wait(); // wait until running tx with same id is over
+
148  }
+
149  txs->active_tx = &trans;
+
150  auto burst_length = 0;
+
151  if(auto e = trans.get_extension<axi::ace_extension>()) {
+
152  burst_length = is_dataless(e) ? 1 : e->get_length() + 1;
+
153  } else if(auto e = trans.get_extension<axi::axi4_extension>()) {
+
154  burst_length = e->get_length() + 1;
+
155  } else if(auto e = trans.get_extension<axi::axi3_extension>()) {
+
156  burst_length = e->get_length() + 1;
+
157  }
+
158  SCCTRACE(SCMOD) << "start transport " << trans;
+
159  tlm::tlm_phase next_phase{tlm::UNINITIALIZED_PHASE};
+
160  if(!trans.is_read()) { // data less via write channel
+
161  if(!data_interleaving.get_value()) { // Note that AXI4 does not allow write data interleaving, and ncore3 only supports AXI4.
+
162  sem_lock lck(wr_chnl);
+
163  wr_waiting--;
+
164  wr_outstanding++;
+
166  for(unsigned i = 1; i < (timing_e ? timing_e->awtv : awtv.get_value()); ++i) {
+
167  wait(clk_i.posedge_event());
+
168  }
+
169  SCCTRACE(SCMOD) << "starting " << burst_length << " write beats of " << trans;
+
170  for(unsigned i = 0; i < burst_length - 1; ++i) {
+
171  if(protocol_cb[axi::fsm::BegPartReqE])
+
172  protocol_cb[axi::fsm::BegPartReqE](trans, false);
+
173  auto res = send(trans, txs, axi::BEGIN_PARTIAL_REQ);
+
174  if(axi::END_PARTIAL_REQ != res)
+
175  SCCFATAL(SCMOD) << "target responded with " << res << " for the " << i << "th beat of "
+
176  << burst_length << " beats in transaction " << trans;
+
177  for(unsigned i = 0; i < (timing_e ? timing_e->wbv : wbv.get_value()); ++i)
+
178  wait(clk_i.posedge_event());
+
179  if(protocol_cb[axi::fsm::EndPartReqE])
+
180  protocol_cb[axi::fsm::EndPartReqE](trans, false);
+
181  }
+
182  auto res = send(trans, txs, tlm::BEGIN_REQ);
+
183  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
+
184  next_phase = res;
+
185  else if(res != tlm::END_REQ)
+
186  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
+
187  wait(clk_i.posedge_event());
+
188  } else { // AXI3 allows data interleaving and there may be support for AXI3 in Symphony
+
189  SCCTRACE(SCMOD) << "starting " << burst_length << " write beats of " << trans;
+
190  for(unsigned i = 0; i < burst_length - 1; ++i) {
+
191  sem_lock lck(wr_chnl);
+
192  if(i==0){
+
193  wr_waiting--;
+
194  wr_outstanding++;
+
196  for(unsigned i = 1; i < (timing_e ? timing_e->awtv : awtv.get_value()); ++i)
+
197  wait(clk_i.posedge_event());
+
198  }
+
199  auto res = send(trans, txs, axi::BEGIN_PARTIAL_REQ);
+
200  sc_assert(axi::END_PARTIAL_REQ == res);
+
201  for(unsigned i = 1; i < (timing_e ? timing_e->wbv : wbv.get_value()); ++i)
+
202  wait(clk_i.posedge_event());
+
203  }
+
204  sem_lock lck(wr_chnl);
+
205  if(burst_length==1){
+
206  wr_waiting--;
+
207  wr_outstanding++;
+
208  }
+
209  if(protocol_cb[axi::fsm::BegReqE])
+
210  protocol_cb[axi::fsm::BegReqE](trans, false);
+
211  auto res = send(trans, txs, tlm::BEGIN_REQ);
+
212  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
+
213  next_phase = res;
+
214  else if(res != tlm::END_REQ)
+
215  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
+
216  wait(clk_i.posedge_event());
+
217  if(protocol_cb[axi::fsm::EndReqE])
+
218  protocol_cb[axi::fsm::EndReqE](trans, false);
+
219  }
+
220  } else {
+
221  sem_lock lck(rd_chnl);
+
222  rd_waiting--;
+
223  rd_outstanding++;
+
225  for(unsigned i = 1; i < (timing_e ? timing_e->artv : artv.get_value()); ++i)
+
226  wait(clk_i.posedge_event());
+
227  SCCTRACE(SCMOD) << "starting address phase of " << trans;
+
228  if(protocol_cb[axi::fsm::BegPartReqE])
+
229  protocol_cb[axi::fsm::BegPartReqE](trans, false);
+
230  auto res = send(trans, txs, tlm::BEGIN_REQ);
+
231  if(res == axi::BEGIN_PARTIAL_RESP || res == tlm::BEGIN_RESP)
+
232  next_phase = res;
+
233  else if(res != tlm::END_REQ)
+
234  SCCERR(SCMOD) << "target did not repsond with END_REQ to a BEGIN_REQ";
+
235  wait(clk_i.posedge_event());
+
236  if(protocol_cb[axi::fsm::EndReqE])
+
237  protocol_cb[axi::fsm::EndReqE](trans, false);
+
238  }
+
239  auto finished = false;
+
240  if(!trans.is_read() || !trans.get_data_length())
+
241  burst_length = 1;
+
242  const auto exp_burst_length = burst_length;
+
243  do {
+
244  // waiting for response
+
245  auto entry = next_phase == tlm::UNINITIALIZED_PHASE ? txs->peq.get() : std::make_tuple(&trans, next_phase);
+
246  next_phase = tlm::UNINITIALIZED_PHASE;
+
247  // Handle optional CRESP response
+
248  if(std::get<0>(entry) == &trans && std::get<1>(entry) == tlm::BEGIN_RESP) {
+
249  if(protocol_cb[axi::fsm::BegRespE])
+
250  protocol_cb[axi::fsm::BegRespE](trans, false);
+
251  SCCTRACE(SCMOD) << "received last beat of " << trans;
+
252  auto delay_in_cycles = timing_e ? (trans.is_read() ? timing_e->rbr : timing_e->br) : br.get_value();
+
253  for(unsigned i = 0; i < delay_in_cycles; ++i)
+
254  wait(clk_i.posedge_event());
+
255  burst_length--;
+
256  tlm::tlm_phase phase = tlm::END_RESP;
+
257  sc_time delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
258  socket_fw->nb_transport_fw(trans, phase, delay);
+
259  if(burst_length)
+
260  SCCWARN(SCMOD) << "got wrong number of burst beats, expected " << exp_burst_length << ", got "
+
261  << exp_burst_length - burst_length;
+
262  wait(clk_i.posedge_event());
+
263  if(protocol_cb[axi::fsm::EndRespE])
+
264  protocol_cb[axi::fsm::EndRespE](trans, false);
+
265  finished = true;
+
266  } else if(std::get<0>(entry) == &trans &&
+
267  std::get<1>(entry) == axi::BEGIN_PARTIAL_RESP) { // RDAT without CRESP case
+
268  SCCTRACE(SCMOD) << "received beat = "<< burst_length<<" with trans " << trans;
+
269  auto delay_in_cycles = timing_e ? timing_e->rbr : rbr.get_value();
+
270  for(unsigned i = 0; i < delay_in_cycles; ++i)
+
271  wait(clk_i.posedge_event());
+
272  burst_length--;
+
273  if(protocol_cb[axi::fsm::BegPartRespE])
+
274  protocol_cb[axi::fsm::BegPartRespE](trans, false);
+
275  tlm::tlm_phase phase = axi::END_PARTIAL_RESP;
+
276  sc_time delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
277  auto res = socket_fw->nb_transport_fw(trans, phase, delay);
+
278  if(res == tlm::TLM_UPDATED) {
+
279  next_phase = phase;
+
280  wait(delay);
+
281  }
+
282  if(protocol_cb[axi::fsm::EndPartRespE])
+
283  protocol_cb[axi::fsm::EndPartRespE](trans, false);
+
284  }
+
285  } while(!finished);
+
286  if(flavor == flavor_e::ACE) {
+
287  if(trans.is_read() && rla.get_value() != std::numeric_limits<unsigned>::max()) {
+
288  for(unsigned i = 0; i < rla.get_value(); ++i)
+
289  wait(clk_i.posedge_event());
+
290  tlm::tlm_phase phase = axi::ACK;
+
291  sc_time delay = SC_ZERO_TIME;
+
292  socket_fw->nb_transport_fw(trans, phase, delay);
+
293  wait(clk_i.posedge_event());
+
294 
+
295  } else if(trans.is_write() && ba.get_value() != std::numeric_limits<unsigned>::max()) {
+
296  for(unsigned i = 0; i < ba.get_value(); ++i)
+
297  wait(clk_i.posedge_event());
+
298  tlm::tlm_phase phase = axi::ACK;
+
299  sc_time delay = SC_ZERO_TIME;
+
300  socket_fw->nb_transport_fw(trans, phase, delay);
+
301  wait(clk_i.posedge_event());
+
302  }
+
303  }
+
304  if(trans.is_read()) rd_outstanding--;
+
305  else wr_outstanding--;
+
306  SCCTRACE(SCMOD) << "finished non-blocking protocol";
+
307  if(enable_id_serializing.get_value()) {
+
308  id_mtx[axi_id]->post();
+
309  }
+
310  txs->active_tx = nullptr;
+
311  any_tx_finished.notify(SC_ZERO_TIME);
+
312  }
+
313  SCCTRACE(SCMOD) << "finished transport req for " << trans;
+
314 }
+
315 
+
316 // This process handles the SNOOP request received
+
317 void axi_initiator_b::snoop_thread() {
+
318  tlm::scc::tlm_gp_shared_ptr trans{nullptr};
+
319  while(true) {
+
320  while(!(trans = snp_peq.get_next_transaction())) {
+
321  wait(snp_peq.get_event());
+
322  }
+
323  snoops_in_flight++;
+
324  SCCDEBUG(SCMOD) << "start snoop #" << snoops_in_flight;
+
325  auto req_ext = trans->get_extension<ace_extension>();
+
326  sc_assert(req_ext != nullptr);
+
327 
+
328  auto it = snp_state_by_id.find(&trans);
+
329  if(it == snp_state_by_id.end()) {
+
330  bool success;
+
331  std::tie(it, success) = snp_state_by_id.insert(std::make_pair(trans.get(), new tx_state()));
+
332  }
+
333 
+
334  sc_time delay = clk_if ? ::scc::time_to_next_posedge(clk_if) - 1_ps : SC_ZERO_TIME;
+
335  tlm::tlm_phase phase = tlm::END_REQ;
+
336  // here delay is not used in nb_fw of following module
+
337  // therefore one cycle delay between BEG_REQ and END_REQ should be explicitly called here??
+
338  if(protocol_cb[axi::fsm::BegReqE])
+
339  protocol_cb[axi::fsm::BegReqE](*trans, true);
+
340  socket_fw->nb_transport_fw(*trans, phase, delay);
+
341  auto cycles = 0U;
+
342  if(bw_o.get_interface())
+
343  cycles = bw_o->transport(*trans);
+
344  if(protocol_cb[axi::fsm::EndReqE])
+
345  protocol_cb[axi::fsm::EndReqE](*trans, true);
+
346  if(cycles < std::numeric_limits<unsigned>::max()) {
+
347  // we handle the snoop access ourselfs
+
348  for(size_t i = 0; i <= cycles; ++i)
+
349  wait(clk_i.posedge_event());
+
350  snoop_resp(*trans);
+
351  }
+
352  // finish snoop response, should release tlm gp_shared_ptr
+
353  SCCTRACE(SCMOD)<<" finish snoop response, release gp_shared_ptr";
+
354  snoops_in_flight--;
+
355  trans=nullptr;
+
356  }
+
357 }
+
358 
+
359 void axi_initiator_b::snoop_resp(payload_type& trans, bool sync) {
+
360  auto it = snp_state_by_id.find(&trans);
+
361  sc_assert(it != snp_state_by_id.end());
+
362  auto& txs = it->second;
+
363  auto data_len=trans.get_data_length();
+
364  auto burst_length = data_len/transfer_width_in_bytes;
+
365  if(burst_length<1)
+
366  burst_length=1;
+
367  tlm::tlm_phase next_phase{tlm::UNINITIALIZED_PHASE};
+
368  auto delay_in_cycles = wbv.get_value();
+
369  sem_lock lck(sresp_chnl);
+
370  /*
+
371  * here according to spec, ccresp should first be checked to see whether there is data transfer( decided by TC)
+
372  * if there is data to transfer, start cache data transfer, otherwise only crresp
+
373  * */
+
374  SCCTRACE(SCMOD) << "starting snoop resp with " << burst_length << " beats of " << trans;
+
375  for(unsigned i = 0; i < burst_length - 1; ++i) {
+
376  if(protocol_cb[axi::fsm::BegPartRespE])
+
377  protocol_cb[axi::fsm::BegPartRespE](trans, true);
+
378  auto res = send(trans, txs, axi::BEGIN_PARTIAL_RESP);
+
379  sc_assert(axi::END_PARTIAL_RESP == res);
+
380  wait(clk_i.posedge_event());
+
381  if(protocol_cb[axi::fsm::EndPartRespE])
+
382  protocol_cb[axi::fsm::EndPartRespE](trans, true);
+
383  for(unsigned i = 1; i < delay_in_cycles; ++i)
+
384  wait(clk_i.posedge_event());
+
385  }
+
386  if(protocol_cb[axi::fsm::BegRespE])
+
387  protocol_cb[axi::fsm::BegRespE](trans, true);
+
388  auto res = send(trans, txs, tlm::BEGIN_RESP);
+
389  if(res != tlm::END_RESP)
+
390  SCCERR(SCMOD) << "target did not respond with END_RESP to a BEGIN_RESP";
+
391  wait(clk_i.posedge_event());
+
392  if(protocol_cb[axi::fsm::EndRespE])
+
393  protocol_cb[axi::fsm::EndRespE](trans, true);
+
394 }
+
395 } // namespace pe
+
396 } // namespace axi
The ordered_semaphore primitive channel class.
TLM2.0 components modeling AHB.
Definition: axi_initiator.h:30
@@ -463,7 +468,7 @@ - +
a lock for the semaphore
diff --git a/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html b/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html index 2801296a..ad096710 100644 --- a/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html +++ b/develop/third__party_2axi__chi_2axi_2pe_2axi__initiator_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -88,239 +88,247 @@
21 #include <tlm/scc/pe/intor_if.h>
22 #include <scc/ordered_semaphore.h>
23 #include <scc/peq.h>
-
24 #include <systemc>
-
25 #include <tlm_utils/peq_with_get.h>
-
26 #include <tuple>
-
27 #include <unordered_map>
-
28 
-
29 namespace axi {
-
30 namespace pe {
-
31 
- -
33  public sc_core::sc_module,
-
34  public axi::ace_bw_transport_if<axi::axi_protocol_types>,
- -
36 {
-
37 public:
-
38 
-
39  using payload_type = axi::axi_protocol_types::tlm_payload_type;
-
40  using phase_type = axi::axi_protocol_types::tlm_phase_type;
-
41 
-
42  sc_core::sc_in<bool> clk_i{"clk_i"};
+
24 #include <scc/sc_variable.h>
+
25 #include <cci_cfg/cci_param_typed.h>
+
26 #include <systemc>
+
27 #include <tlm_utils/peq_with_get.h>
+
28 #include <tuple>
+
29 #include <unordered_map>
+
30 
+
31 namespace axi {
+
32 namespace pe {
+
33 
+ +
35  public sc_core::sc_module,
+
36  public axi::ace_bw_transport_if<axi::axi_protocol_types>,
+ +
38 {
+
39 public:
+
40 
+
41  using payload_type = axi::axi_protocol_types::tlm_payload_type;
+
42  using phase_type = axi::axi_protocol_types::tlm_phase_type;
43 
-
44  sc_core::sc_export<tlm::scc::pe::intor_fw_b> fw_i{"fw_i"};
+
44  sc_core::sc_in<bool> clk_i{"clk_i"};
45 
-
46  sc_core::sc_port<tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND> bw_o{"bw_o"};
+
46  sc_core::sc_export<tlm::scc::pe::intor_fw_b> fw_i{"fw_i"};
47 
-
48  void b_snoop(payload_type& trans, sc_core::sc_time& t) override;
+
48  sc_core::sc_port<tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND> bw_o{"bw_o"};
49 
-
50  tlm::tlm_sync_enum nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) override;
+
50  void b_snoop(payload_type& trans, sc_core::sc_time& t) override;
51 
-
52  void invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) override;
+
52  tlm::tlm_sync_enum nb_transport_bw(payload_type& trans, phase_type& phase, sc_core::sc_time& t) override;
53 
-
54  size_t get_transferwith_in_bytes() const { return transfer_width_in_bytes; }
-
64  void transport(payload_type& trans, bool blocking) override;
-
71  void snoop_resp(payload_type& trans, bool sync = false) override;
-
72 
-
73  axi_initiator_b(sc_core::sc_module_name nm, sc_core::sc_port_b<axi::axi_fw_transport_if<axi_protocol_types>>& port,
-
74  size_t transfer_width, flavor_e flavor);
-
75 
-
76  virtual ~axi_initiator_b();
+
54  void invalidate_direct_mem_ptr(sc_dt::uint64 start_range, sc_dt::uint64 end_range) override;
+
55 
+
56  size_t get_transferwith_in_bytes() const { return transfer_width_in_bytes; }
+
66  void transport(payload_type& trans, bool blocking) override;
+
73  void snoop_resp(payload_type& trans, bool sync = false) override;
+
74 
+
75  axi_initiator_b(sc_core::sc_module_name nm, sc_core::sc_port_b<axi::axi_fw_transport_if<axi_protocol_types>>& port,
+
76  size_t transfer_width, flavor_e flavor);
77 
-
78  axi_initiator_b() = delete;
+
78  virtual ~axi_initiator_b();
79 
-
80  axi_initiator_b(axi_initiator_b const&) = delete;
+
80  axi_initiator_b() = delete;
81 
-
82  axi_initiator_b(axi_initiator_b&&) = delete;
+
82  axi_initiator_b(axi_initiator_b const&) = delete;
83 
-
84  axi_initiator_b& operator=(axi_initiator_b const&) = delete;
+
84  axi_initiator_b(axi_initiator_b&&) = delete;
85 
-
86  axi_initiator_b& operator=(axi_initiator_b&&) = delete;
+
86  axi_initiator_b& operator=(axi_initiator_b const&) = delete;
87 
-
88  // AXI4 does not allow write data interleaving, and ncore3 only supports AXI4.
-
89  // However, AXI3 allows data interleaving and there may be support for AXI3 in Symphony, so keep it configurable in
-
90  // the testbench.
-
91  sc_core::sc_attribute<bool> data_interleaving{"data_interleaving", false};
-
93  sc_core::sc_attribute<unsigned> artv{"artv", 1};
-
95  sc_core::sc_attribute<unsigned> awtv{"awtv", 1};
-
97  sc_core::sc_attribute<unsigned> wbv{"wbv", 1};
-
99  sc_core::sc_attribute<unsigned> rbr{"rbr", 0};
-
101  sc_core::sc_attribute<unsigned> br{"br", 0};
-
103  sc_core::sc_attribute<unsigned> rla{"rla", 1};
-
105  sc_core::sc_attribute<unsigned> ba{"ba", 1};
-
107  sc_core::sc_attribute<bool> enable_id_serializing{"enable_id_serializing", false};
-
109  sc_core::sc_attribute<unsigned> outstanding_snoops{"outstanding_snoops", 8};
-
110 
-
120  void add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function<void(payload_type&, bool)> cb) {
-
121  assert(e < axi::fsm::CB_CNT);
-
122  protocol_cb[e] = cb;
-
123  }
-
124 
-
125 
-
126 protected:
-
127  unsigned calculate_beats(payload_type& p) {
-
128  sc_assert(p.get_data_length() > 0);
-
129  return p.get_data_length() < transfer_width_in_bytes ? 1 : p.get_data_length() / transfer_width_in_bytes;
-
130  }
-
131 
-
132  void snoop_thread();
+
88  axi_initiator_b& operator=(axi_initiator_b&&) = delete;
+
89 
+
90  // AXI4 does not allow write data interleaving, and ncore3 only supports AXI4.
+
91  // However, AXI3 allows data interleaving and there may be support for AXI3 in Symphony, so keep it configurable in
+
92  // the testbench.
+
93  cci::cci_param<bool> data_interleaving{"data_interleaving", false};
+
95  cci::cci_param<unsigned> artv{"artv", 1};
+
97  cci::cci_param<unsigned> awtv{"awtv", 1};
+
99  cci::cci_param<unsigned> wbv{"wbv", 1};
+
101  cci::cci_param<unsigned> rbr{"rbr", 0};
+
103  cci::cci_param<unsigned> br{"br", 0};
+
105  cci::cci_param<unsigned> rla{"rla", 1};
+
107  cci::cci_param<unsigned> ba{"ba", 1};
+
109  cci::cci_param<bool> enable_id_serializing{"enable_id_serializing", false};
+
111  cci::cci_param<unsigned> outstanding_snoops{"outstanding_snoops", 8};
+
112 
+
122  void add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function<void(payload_type&, bool)> cb) {
+
123  assert(e < axi::fsm::CB_CNT);
+
124  protocol_cb[e] = cb;
+
125  }
+
126 
+
127 
+
128 protected:
+
129  unsigned calculate_beats(payload_type& p) {
+
130  sc_assert(p.get_data_length() > 0);
+
131  return p.get_data_length() < transfer_width_in_bytes ? 1 : p.get_data_length() / transfer_width_in_bytes;
+
132  }
133 
-
134  const size_t transfer_width_in_bytes;
+
134  void snoop_thread();
135 
-
136  const flavor_e flavor;
+
136  const size_t transfer_width_in_bytes;
137 
-
138  sc_core::sc_port_b<axi::axi_fw_transport_if<axi_protocol_types>>& socket_fw;
+
138  const flavor_e flavor;
139 
-
140  struct tx_state {
-
141  payload_type* active_tx{nullptr};
- -
143  };
-
144  std::unordered_map<void*, tx_state*> tx_state_by_tx;
-
145  std::unordered_map<unsigned, scc::ordered_semaphore*> id_mtx;
-
146 
-
147  tlm_utils::peq_with_get<payload_type> snp_peq{"snp_peq"};
+
140  sc_core::sc_port_b<axi::axi_fw_transport_if<axi_protocol_types>>& socket_fw;
+
141 
+
142  struct tx_state {
+
143  payload_type* active_tx{nullptr};
+ +
145  };
+
146  std::unordered_map<void*, tx_state*> tx_state_by_tx;
+
147  std::unordered_map<unsigned, scc::ordered_semaphore*> id_mtx;
148 
-
149  std::unordered_map<void*, tx_state*> snp_state_by_id;
+
149  tlm_utils::peq_with_get<payload_type> snp_peq{"snp_peq"};
150 
-
151  scc::ordered_semaphore rd_chnl{1};
+
151  std::unordered_map<void*, tx_state*> snp_state_by_id;
152 
-
153  scc::ordered_semaphore wr_chnl{1};
+
153  scc::ordered_semaphore rd_chnl{1};
154 
-
155  scc::ordered_semaphore sresp_chnl{1};
+
155  scc::ordered_semaphore wr_chnl{1};
156 
-
157  sc_core::sc_event any_tx_finished;
+
157  scc::ordered_semaphore sresp_chnl{1};
158 
-
159  sc_core::sc_time clk_period{10, sc_core::SC_NS};
+
159  sc_core::sc_event any_tx_finished;
160 
-
161 private:
-
162  sc_core::sc_clock* clk_if{nullptr};
-
163  void end_of_elaboration() override;
-
164  void clk_counter() { m_clock_counter++; }
-
165  unsigned get_clk_cnt() { return m_clock_counter; }
-
166 
-
167  tlm::tlm_phase send(payload_type& trans, axi::pe::axi_initiator_b::tx_state* txs, tlm::tlm_phase phase);
-
168 
-
169  unsigned m_clock_counter{0};
-
170  unsigned m_prev_clk_cnt{0};
-
171  unsigned snoops_in_flight{0};
-
172 
-
173  std::array<std::function<void(payload_type&, bool)>, axi::fsm::CB_CNT> protocol_cb;
-
174 };
+
161  sc_core::sc_time clk_period{10, sc_core::SC_NS};
+
162 
+
163  scc::sc_variable<unsigned> rd_waiting{"RdWaiting", 0};
+
164  scc::sc_variable<unsigned> wr_waiting{"WrWaiting", 0};
+
165  scc::sc_variable<unsigned> rd_outstanding{"RdOutstanding", 0};
+
166  scc::sc_variable<unsigned> wr_outstanding{"WrOutstanding", 0};
+
167 
+
168 private:
+
169  sc_core::sc_clock* clk_if{nullptr};
+
170  void end_of_elaboration() override;
+
171  void clk_counter() { m_clock_counter++; }
+
172  unsigned get_clk_cnt() { return m_clock_counter; }
+
173 
+
174  tlm::tlm_phase send(payload_type& trans, axi::pe::axi_initiator_b::tx_state* txs, tlm::tlm_phase phase);
175 
-
179 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
-
180  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
- -
182 public:
-
183  using base = axi_initiator_b;
-
184 
-
185  using payload_type = base::payload_type;
-
186  using phase_type = base::phase_type;
-
191  axi_initiator(const sc_core::sc_module_name& nm, axi::axi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
-
192  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::AXI)
-
193  , socket(socket_) {
-
194  socket(*this);
-
195  }
-
196 
-
197  axi_initiator() = delete;
-
198 
-
199  axi_initiator(axi_initiator const&) = delete;
-
200 
-
201  axi_initiator(axi_initiator&&) = delete;
-
202 
-
203  axi_initiator& operator=(axi_initiator const&) = delete;
-
204 
-
205  axi_initiator& operator=(axi_initiator&&) = delete;
-
206 
-
207 private:
- -
209 };
-
210 
-
214 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
-
215  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
- -
217 public:
-
218  using base = axi_initiator_b;
-
219 
-
220  using payload_type = base::payload_type;
-
221  using phase_type = base::phase_type;
-
226  ace_lite_initiator(const sc_core::sc_module_name& nm, axi::axi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
-
227  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::ACEL)
-
228  , socket(socket_) {
-
229  socket(*this);
-
230  }
-
231 
-
232  ace_lite_initiator() = delete;
-
233 
-
234  ace_lite_initiator(ace_lite_initiator const&) = delete;
-
235 
- -
237 
-
238  ace_lite_initiator& operator=(ace_lite_initiator const&) = delete;
-
239 
-
240  ace_lite_initiator& operator=(ace_lite_initiator&&) = delete;
-
241 
-
242 private:
- -
244 };
-
245 
-
249 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
-
250  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
- -
252 public:
-
253  using base = axi_initiator_b;
-
254 
-
255  using payload_type = base::payload_type;
-
256  using phase_type = base::phase_type;
-
261  ace_initiator(const sc_core::sc_module_name& nm, axi::ace_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
-
262  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::ACE)
-
263  , socket(socket_) {
-
264  socket(*this);
-
265  }
-
266 
-
267  ace_initiator() = delete;
-
268 
-
269  ace_initiator(ace_initiator const&) = delete;
-
270 
-
271  ace_initiator(ace_initiator&&) = delete;
-
272 
-
273  ace_initiator& operator=(ace_initiator const&) = delete;
-
274 
-
275  ace_initiator& operator=(ace_initiator&&) = delete;
-
276 
-
277 private:
- -
279 };
-
280 
-
281 } /* namespace pe */
-
282 } /* namespace axi */
+
176  unsigned m_clock_counter{0};
+
177  unsigned m_prev_clk_cnt{0};
+
178  unsigned snoops_in_flight{0};
+
179 
+
180  std::array<std::function<void(payload_type&, bool)>, axi::fsm::CB_CNT> protocol_cb;
+
181 };
+
182 
+
186 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
+
187  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
+ +
189 public:
+
190  using base = axi_initiator_b;
+
191 
+
192  using payload_type = base::payload_type;
+
193  using phase_type = base::phase_type;
+
198  axi_initiator(const sc_core::sc_module_name& nm, axi::axi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
+
199  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::AXI)
+
200  , socket(socket_) {
+
201  socket(*this);
+
202  }
+
203 
+
204  axi_initiator() = delete;
+
205 
+
206  axi_initiator(axi_initiator const&) = delete;
+
207 
+
208  axi_initiator(axi_initiator&&) = delete;
+
209 
+
210  axi_initiator& operator=(axi_initiator const&) = delete;
+
211 
+
212  axi_initiator& operator=(axi_initiator&&) = delete;
+
213 
+
214 private:
+ +
216 };
+
217 
+
221 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
+
222  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
+ +
224 public:
+
225  using base = axi_initiator_b;
+
226 
+
227  using payload_type = base::payload_type;
+
228  using phase_type = base::phase_type;
+
233  ace_lite_initiator(const sc_core::sc_module_name& nm, axi::axi_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
+
234  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::ACEL)
+
235  , socket(socket_) {
+
236  socket(*this);
+
237  }
+
238 
+
239  ace_lite_initiator() = delete;
+
240 
+
241  ace_lite_initiator(ace_lite_initiator const&) = delete;
+
242 
+ +
244 
+
245  ace_lite_initiator& operator=(ace_lite_initiator const&) = delete;
+
246 
+
247  ace_lite_initiator& operator=(ace_lite_initiator&&) = delete;
+
248 
+
249 private:
+ +
251 };
+
252 
+
256 template <unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1,
+
257  sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
+ +
259 public:
+
260  using base = axi_initiator_b;
+
261 
+
262  using payload_type = base::payload_type;
+
263  using phase_type = base::phase_type;
+
268  ace_initiator(const sc_core::sc_module_name& nm, axi::ace_initiator_socket<BUSWIDTH, TYPES, N, POL>& socket_)
+
269  : axi_initiator_b(nm, socket_.get_base_port(), BUSWIDTH, flavor_e::ACE)
+
270  , socket(socket_) {
+
271  socket(*this);
+
272  }
+
273 
+
274  ace_initiator() = delete;
+
275 
+
276  ace_initiator(ace_initiator const&) = delete;
+
277 
+
278  ace_initiator(ace_initiator&&) = delete;
+
279 
+
280  ace_initiator& operator=(ace_initiator const&) = delete;
+
281 
+
282  ace_initiator& operator=(ace_initiator&&) = delete;
+
283 
+
284 private:
+ +
286 };
+
287 
+
288 } /* namespace pe */
+
289 } /* namespace axi */
- -
ace_initiator(const sc_core::sc_module_name &nm, axi::ace_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
- -
ace_lite_initiator(const sc_core::sc_module_name &nm, axi::axi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
- -
sc_core::sc_attribute< unsigned > artv
Read address valid to next read address valid.
Definition: axi_initiator.h:93
-
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
-
sc_core::sc_attribute< unsigned > rbr
Read data valid to same beat ready.
Definition: axi_initiator.h:99
-
void add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)
register a callback for a certain time point
-
sc_core::sc_attribute< unsigned > ba
Write response handshake to acknowledge.
-
sc_core::sc_attribute< unsigned > rla
Read last data handshake to acknowledge.
-
sc_core::sc_attribute< unsigned > awtv
Write address valid to next write address valid.
Definition: axi_initiator.h:95
-
sc_core::sc_attribute< bool > enable_id_serializing
Quirks enable.
-
sc_core::sc_attribute< unsigned > br
Write response valid to ready.
-
sc_core::sc_attribute< unsigned > wbv
Write data handshake to next beat valid.
Definition: axi_initiator.h:97
-
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
-
sc_core::sc_attribute< unsigned > outstanding_snoops
number of snoops which can be handled
- -
axi_initiator(const sc_core::sc_module_name &nm, axi::axi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
+ +
ace_initiator(const sc_core::sc_module_name &nm, axi::ace_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
+ +
ace_lite_initiator(const sc_core::sc_module_name &nm, axi::axi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
+ +
cci::cci_param< unsigned > rla
Read last data handshake to acknowledge.
+
cci::cci_param< unsigned > wbv
Write data handshake to next beat valid.
Definition: axi_initiator.h:99
+
cci::cci_param< unsigned > br
Write response valid to ready.
+
void snoop_resp(payload_type &trans, bool sync=false) override
triggers a non-blocking snoop response if the snoop callback does not do so.
+
cci::cci_param< unsigned > outstanding_snoops
number of snoops which can be handled
+
void add_protocol_cb(axi::fsm::protocol_time_point_e e, std::function< void(payload_type &, bool)> cb)
register a callback for a certain time point
+
cci::cci_param< unsigned > ba
Write response handshake to acknowledge.
+
cci::cci_param< unsigned > rbr
Read data valid to same beat ready.
+
cci::cci_param< unsigned > artv
Read address valid to next read address valid.
Definition: axi_initiator.h:95
+
void transport(payload_type &trans, bool blocking) override
The forward transport function. It behaves blocking and is re-entrant.
+
cci::cci_param< unsigned > awtv
Write address valid to next write address valid.
Definition: axi_initiator.h:97
+
cci::cci_param< bool > enable_id_serializing
Quirks enable.
+ +
axi_initiator(const sc_core::sc_module_name &nm, axi::axi_initiator_socket< BUSWIDTH, TYPES, N, POL > &socket_)
the constructor
The ordered_semaphore primitive channel class.
TLM2.0 components modeling AHB.
Definition: axi_initiator.h:30
tlm::tlm_fw_transport_if< TYPES > axi_fw_transport_if
alias declaration for the forward interface
Definition: axi_tlm.h:916
The AXI protocol traits class. Since the protocoll defines additional non-ignorable phases a dedicate...
Definition: axi_tlm.h:890
- +
priority event queue
Definition: peq.h:41
+ diff --git a/develop/thread__pool_8h_source.html b/develop/thread__pool_8h_source.html index 7973681a..5d822233 100644 --- a/develop/thread__pool_8h_source.html +++ b/develop/thread__pool_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/thread__syncronizer_8h_source.html b/develop/thread__syncronizer_8h_source.html index 025fcc75..6c8793de 100644 --- a/develop/thread__syncronizer_8h_source.html +++ b/develop/thread__syncronizer_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tick2time_8h_source.html b/develop/tick2time_8h_source.html index 224432fc..957cf6e8 100644 --- a/develop/tick2time_8h_source.html +++ b/develop/tick2time_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/time2tick_8h_source.html b/develop/time2tick_8h_source.html index 28387ed6..63f2fe88 100644 --- a/develop/time2tick_8h_source.html +++ b/develop/time2tick_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/time__n__tick_8cpp_source.html b/develop/time__n__tick_8cpp_source.html index 7b940187..529e8bbd 100644 --- a/develop/time__n__tick_8cpp_source.html +++ b/develop/time__n__tick_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm2__lwtr_8cpp_source.html b/develop/tlm2__lwtr_8cpp_source.html index 587938d4..b6852434 100644 --- a/develop/tlm2__lwtr_8cpp_source.html +++ b/develop/tlm2__lwtr_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm2__lwtr_8h_source.html b/develop/tlm2__lwtr_8h_source.html index 340e48aa..c64df977 100644 --- a/develop/tlm2__lwtr_8h_source.html +++ b/develop/tlm2__lwtr_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm2__pv__av_8h_source.html b/develop/tlm2__pv__av_8h_source.html index 7d70542c..54286ce1 100644 --- a/develop/tlm2__pv__av_8h_source.html +++ b/develop/tlm2__pv__av_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__extension__recording__registry_8h_source.html b/develop/tlm__extension__recording__registry_8h_source.html index 73e01f3d..47556c9d 100644 --- a/develop/tlm__extension__recording__registry_8h_source.html +++ b/develop/tlm__extension__recording__registry_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__extensions_8h_source.html b/develop/tlm__extensions_8h_source.html index a73de664..14fe2e53 100644 --- a/develop/tlm__extensions_8h_source.html +++ b/develop/tlm__extensions_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__gp__data_8h_source.html b/develop/tlm__gp__data_8h_source.html index cc058f15..f52ba30c 100644 --- a/develop/tlm__gp__data_8h_source.html +++ b/develop/tlm__gp__data_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__gp__data__ext_8h_source.html b/develop/tlm__gp__data__ext_8h_source.html index d3802660..0147a9c7 100644 --- a/develop/tlm__gp__data__ext_8h_source.html +++ b/develop/tlm__gp__data__ext_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__gp__shared_8h_source.html b/develop/tlm__gp__shared_8h_source.html index 82246f70..dec2b4e5 100644 --- a/develop/tlm__gp__shared_8h_source.html +++ b/develop/tlm__gp__shared_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__id_8h_source.html b/develop/tlm__id_8h_source.html index 80b1ac23..01263892 100644 --- a/develop/tlm__id_8h_source.html +++ b/develop/tlm__id_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__mm_8h_source.html b/develop/tlm__mm_8h_source.html index 14903bbc..da09859f 100644 --- a/develop/tlm__mm_8h_source.html +++ b/develop/tlm__mm_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__rec__initiator__socket_8h_source.html b/develop/tlm__rec__initiator__socket_8h_source.html index 00ea7dbd..cb24eb60 100644 --- a/develop/tlm__rec__initiator__socket_8h_source.html +++ b/develop/tlm__rec__initiator__socket_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__rec__target__socket_8h_source.html b/develop/tlm__rec__target__socket_8h_source.html index 48cff025..08b085d1 100644 --- a/develop/tlm__rec__target__socket_8h_source.html +++ b/develop/tlm__rec__target__socket_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__recorder_8cpp_source.html b/develop/tlm__recorder_8cpp_source.html index 70565e48..5cfdb37f 100644 --- a/develop/tlm__recorder_8cpp_source.html +++ b/develop/tlm__recorder_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__recorder_8h_source.html b/develop/tlm__recorder_8h_source.html index 230312be..4032b3f1 100644 --- a/develop/tlm__recorder_8h_source.html +++ b/develop/tlm__recorder_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__recorder__module_8h_source.html b/develop/tlm__recorder__module_8h_source.html index c25fa5ad..65e0dff4 100644 --- a/develop/tlm__recorder__module_8h_source.html +++ b/develop/tlm__recorder__module_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__recording__extension_8h_source.html b/develop/tlm__recording__extension_8h_source.html index ac24630e..f1b8305f 100644 --- a/develop/tlm__recording__extension_8h_source.html +++ b/develop/tlm__recording__extension_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__signal_8h_source.html b/develop/tlm__signal_8h_source.html index d9043ceb..6865d9b2 100644 --- a/develop/tlm__signal_8h_source.html +++ b/develop/tlm__signal_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__signal__conv_8h_source.html b/develop/tlm__signal__conv_8h_source.html index 2a09ed26..ec41de2f 100644 --- a/develop/tlm__signal__conv_8h_source.html +++ b/develop/tlm__signal__conv_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__signal__gp_8h_source.html b/develop/tlm__signal__gp_8h_source.html index d44fc0ae..9408fdc1 100644 --- a/develop/tlm__signal__gp_8h_source.html +++ b/develop/tlm__signal__gp_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__signal__sockets_8h_source.html b/develop/tlm__signal__sockets_8h_source.html index 31655696..34012ee9 100644 --- a/develop/tlm__signal__sockets_8h_source.html +++ b/develop/tlm__signal__sockets_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__target_8h_source.html b/develop/tlm__target_8h_source.html index 4d47e2df..cf6b481b 100644 --- a/develop/tlm__target_8h_source.html +++ b/develop/tlm__target_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__target__bfs_8h_source.html b/develop/tlm__target__bfs_8h_source.html index d644f310..0faeabe1 100644 --- a/develop/tlm__target__bfs_8h_source.html +++ b/develop/tlm__target__bfs_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tlm__target__bfs__register__base_8h_source.html b/develop/tlm__target__bfs__register__base_8h_source.html index ba872be8..2ead24e2 100644 --- a/develop/tlm__target__bfs__register__base_8h_source.html +++ b/develop/tlm__target__bfs__register__base_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/todo.html b/develop/todo.html index 3de18850..5b1cc646 100644 --- a/develop/todo.html +++ b/develop/todo.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/trace_8h_source.html b/develop/trace_8h_source.html index f8bbb87c..d340d694 100644 --- a/develop/trace_8h_source.html +++ b/develop/trace_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/traceable_8h_source.html b/develop/traceable_8h_source.html index 047917a1..19085b39 100644 --- a/develop/traceable_8h_source.html +++ b/develop/traceable_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tracer_8cpp_source.html b/develop/tracer_8cpp_source.html index dd83279f..3fd0a86a 100644 --- a/develop/tracer_8cpp_source.html +++ b/develop/tracer_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tracer_8h_source.html b/develop/tracer_8h_source.html index a03b749b..da22f8c9 100644 --- a/develop/tracer_8h_source.html +++ b/develop/tracer_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tracer__base_8cpp_source.html b/develop/tracer__base_8cpp_source.html index cb5e15ae..30fb0bcb 100644 --- a/develop/tracer__base_8cpp_source.html +++ b/develop/tracer__base_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/tracer__base_8h_source.html b/develop/tracer__base_8h_source.html index 8038ebb8..0b06f069 100644 --- a/develop/tracer__base_8h_source.html +++ b/develop/tracer__base_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/types_8h_source.html b/develop/types_8h_source.html index 4ccba6cf..a6926723 100644 --- a/develop/types_8h_source.html +++ b/develop/types_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/types_8hh_source.html b/develop/types_8hh_source.html index 62d73ca3..4c7bb58e 100644 --- a/develop/types_8hh_source.html +++ b/develop/types_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/utilities_8cpp_source.html b/develop/utilities_8cpp_source.html index 4277b834..2fa96df8 100644 --- a/develop/utilities_8cpp_source.html +++ b/develop/utilities_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/utilities_8h_source.html b/develop/utilities_8h_source.html index d225e8f5..da01968a 100644 --- a/develop/utilities_8h_source.html +++ b/develop/utilities_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/value__registry_8cpp_source.html b/develop/value__registry_8cpp_source.html index 204c85ab..7d31cc2a 100644 --- a/develop/value__registry_8cpp_source.html +++ b/develop/value__registry_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/value__registry_8h_source.html b/develop/value__registry_8h_source.html index 115efd89..8adb53e7 100644 --- a/develop/value__registry_8h_source.html +++ b/develop/value__registry_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/vcd__mt__trace_8cpp_source.html b/develop/vcd__mt__trace_8cpp_source.html index e1df0faa..b4b32700 100644 --- a/develop/vcd__mt__trace_8cpp_source.html +++ b/develop/vcd__mt__trace_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/vcd__mt__trace_8hh_source.html b/develop/vcd__mt__trace_8hh_source.html index 31f5ec65..0fb9fb68 100644 --- a/develop/vcd__mt__trace_8hh_source.html +++ b/develop/vcd__mt__trace_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -232,7 +232,7 @@
SCC SystemC utilities.
A handle to be used be the observed object to notify the observer about a change.
Definition: observer.h:57
The interface defining an observer.
Definition: observer.h:53
- + diff --git a/develop/vcd__pull__trace_8cpp_source.html b/develop/vcd__pull__trace_8cpp_source.html index bc748d2d..58676e9b 100644 --- a/develop/vcd__pull__trace_8cpp_source.html +++ b/develop/vcd__pull__trace_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/vcd__pull__trace_8hh_source.html b/develop/vcd__pull__trace_8hh_source.html index 8e8bcf49..d4f9094a 100644 --- a/develop/vcd__pull__trace_8hh_source.html +++ b/develop/vcd__pull__trace_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -190,7 +190,7 @@
129 #endif // SCC_SC_VCD_TRACE_H
130 // Taf!
SCC SystemC utilities.
- + diff --git a/develop/vcd__push__trace_8cpp_source.html b/develop/vcd__push__trace_8cpp_source.html index ce02165a..47e00ec4 100644 --- a/develop/vcd__push__trace_8cpp_source.html +++ b/develop/vcd__push__trace_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/vcd__push__trace_8hh_source.html b/develop/vcd__push__trace_8hh_source.html index 9a713bfe..f82fb884 100644 --- a/develop/vcd__push__trace_8hh_source.html +++ b/develop/vcd__push__trace_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -230,7 +230,7 @@
SCC SystemC utilities.
A handle to be used be the observed object to notify the observer about a change.
Definition: observer.h:57
The interface defining an observer.
Definition: observer.h:53
- + diff --git a/develop/vcd__trace_8hh_source.html b/develop/vcd__trace_8hh_source.html index a98953d3..5bea88a0 100644 --- a/develop/vcd__trace_8hh_source.html +++ b/develop/vcd__trace_8hh_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
@@ -91,290 +91,286 @@
24 #endif
25 #include <util/ities.h>
26 #include <scc/utilities.h>
-
27 #ifdef FMT_SPDLOG_INTERNAL
-
28 #include <fmt/fmt.h>
-
29 #else
-
30 #include <fmt/format.h>
-
31 #endif
-
32 #include <vector>
-
33 #include <unordered_map>
+
27 #include <fmt/format.h>
+
28 #include <vector>
+
29 #include <unordered_map>
+
30 
+
31 
+
32 namespace scc {
+
33 namespace trace {
34 
-
35 
-
36 namespace scc {
-
37 namespace trace {
-
38 
-
39 inline void vcdEmitValueChange(FPTR os, std::string const& handle, unsigned bits, const char *val) {
-
40  auto buf = bits==1?fmt::format("{}{}\n", *val, handle):fmt::format("b{} {}\n", val, handle);
-
41  FWRITE(buf.c_str(), 1, buf.size(), os);
-
42 }
-
43 
-
44 inline void vcdEmitValueChange32(FPTR os, std::string const& handle, unsigned bits, uint32_t val){
-
45  auto buf = fmt::format("b{:b} {}\n", val&((1ull<<bits)-1), handle);
-
46  FWRITE(buf.c_str(), 1, buf.size(), os);
-
47 }
-
48 
-
49 inline void vcdEmitValueChange64(FPTR os, std::string const& handle, unsigned bits, uint64_t val){
-
50  auto buf = fmt::format("b{:b} {}\n", val&((1ul<<std::min(63u,bits))-1), handle);
-
51  FWRITE(buf.c_str(), 1, buf.size(), os);
-
52 }
-
53 
-
54 template<typename T>
-
55 inline void vcdEmitValueChangeReal(FPTR os, std::string const& handle, unsigned bits, T val){
-
56  auto buf = fmt::format("r{:.16g} {}\n", val, handle);
-
57  FWRITE(buf.c_str(), 1, buf.size(), os);
-
58 }
-
59 
-
60 inline size_t get_buffer_size(int length){
-
61  size_t sz = ( static_cast<size_t>(length) + 4096 ) & (~static_cast<size_t>(4096-1));
-
62  return std::max<uint64_t>(1024UL, sz);
-
63 }
-
64 
-
65 /*******************************************************************************************************
-
66  *
-
67  *******************************************************************************************************/
-
68 template<typename T>
- -
70  void add_trace(T *trace){
-
71  auto hier = util::split(trace->name, '.');
-
72  add_trace_rec(std::begin(hier), std::end(hier), trace);
-
73  }
-
74 
-
75  void print(FPTR os, const char *scope_name = "SystemC"){
-
76  auto buf = fmt::format("$scope module {} $end\n", scope_name);
-
77  FWRITE(buf.c_str(), 1, buf.size(), os);
-
78  for (auto& e : m_traces)
-
79  print_variable_declaration_line(os, e.first.c_str(), e.second);
-
80  for (auto& e : m_scopes)
-
81  e.second->print(os,e.first.c_str());
-
82  std::string end = "$upscope $end\n";
-
83  FWRITE(end.c_str(), 1, end.size(), os);
-
84  }
-
85 
-
86  ~vcd_scope_stack(){
-
87  for (auto& s : m_scopes)
-
88  delete s.second;
-
89  }
-
90 private:
-
91  void add_trace_rec(std::vector<std::string>::iterator beg, std::vector<std::string>::iterator const& end, T *trace){
-
92  if(std::distance(beg, end)==1){
-
93  m_traces.push_back(std::make_pair(*beg, trace));
-
94  } else {
-
95  auto sc = m_scopes.find(*beg);
-
96  if(sc == std::end(m_scopes))
-
97  sc = m_scopes.insert({*beg, new vcd_scope_stack}).first;
-
98  sc->second->add_trace_rec(++beg, end, trace);
-
99  }
-
100  }
-
101  void print_variable_declaration_line(FPTR os, const char* scoped_name, T* trc){
-
102  char buf[2000];
-
103  switch(trc->bits){
-
104  case 0:{
-
105  std::stringstream ss;
-
106  ss << "'" << scoped_name << "' has 0 bits";
-
107  SC_REPORT_ERROR(sc_core::SC_ID_TRACING_OBJECT_IGNORED_, ss.str().c_str() );
-
108  return;
-
109  }
-
110  case 1:
-
111  if(trc->type==WIRE) {
-
112  auto buf = fmt::format("$var wire {} {} {} $end\n", trc->bits, trc->trc_hndl, scoped_name);
-
113  FWRITE(buf.c_str(), 1, buf.size(), os);
-
114  } else {
-
115  auto buf = fmt::format("$var real {} {} {} $end\n", trc->bits, trc->trc_hndl, scoped_name);
-
116  FWRITE(buf.c_str(), 1, buf.size(), os);
-
117  }
-
118  break;
-
119  default: {
-
120  auto buf = fmt::format("$var wire {} {} {} [{}:0] $end\n", trc->bits, trc->trc_hndl, scoped_name, trc->bits-1);
-
121  FWRITE(buf.c_str(), 1, buf.size(), os);
-
122  }
-
123  }
-
124  }
+
35 inline void vcdEmitValueChange(FPTR os, std::string const& handle, unsigned bits, const char *val) {
+
36  auto buf = bits==1?fmt::format("{}{}\n", *val, handle):fmt::format("b{} {}\n", val, handle);
+
37  FWRITE(buf.c_str(), 1, buf.size(), os);
+
38 }
+
39 
+
40 inline void vcdEmitValueChange32(FPTR os, std::string const& handle, unsigned bits, uint32_t val){
+
41  auto buf = fmt::format("b{:b} {}\n", val&((1ull<<bits)-1), handle);
+
42  FWRITE(buf.c_str(), 1, buf.size(), os);
+
43 }
+
44 
+
45 inline void vcdEmitValueChange64(FPTR os, std::string const& handle, unsigned bits, uint64_t val){
+
46  auto buf = fmt::format("b{:b} {}\n", val&((1ul<<std::min(63u,bits))-1), handle);
+
47  FWRITE(buf.c_str(), 1, buf.size(), os);
+
48 }
+
49 
+
50 template<typename T>
+
51 inline void vcdEmitValueChangeReal(FPTR os, std::string const& handle, unsigned bits, T val){
+
52  auto buf = fmt::format("r{:.16g} {}\n", val, handle);
+
53  FWRITE(buf.c_str(), 1, buf.size(), os);
+
54 }
+
55 
+
56 inline size_t get_buffer_size(int length){
+
57  size_t sz = ( static_cast<size_t>(length) + 4096 ) & (~static_cast<size_t>(4096-1));
+
58  return std::max<uint64_t>(1024UL, sz);
+
59 }
+
60 
+
61 /*******************************************************************************************************
+
62  *
+
63  *******************************************************************************************************/
+
64 template<typename T>
+ +
66  void add_trace(T *trace){
+
67  auto hier = util::split(trace->name, '.');
+
68  add_trace_rec(std::begin(hier), std::end(hier), trace);
+
69  }
+
70 
+
71  void print(FPTR os, const char *scope_name = "SystemC"){
+
72  auto buf = fmt::format("$scope module {} $end\n", scope_name);
+
73  FWRITE(buf.c_str(), 1, buf.size(), os);
+
74  for (auto& e : m_traces)
+
75  print_variable_declaration_line(os, e.first.c_str(), e.second);
+
76  for (auto& e : m_scopes)
+
77  e.second->print(os,e.first.c_str());
+
78  std::string end = "$upscope $end\n";
+
79  FWRITE(end.c_str(), 1, end.size(), os);
+
80  }
+
81 
+
82  ~vcd_scope_stack(){
+
83  for (auto& s : m_scopes)
+
84  delete s.second;
+
85  }
+
86 private:
+
87  void add_trace_rec(std::vector<std::string>::iterator beg, std::vector<std::string>::iterator const& end, T *trace){
+
88  if(std::distance(beg, end)==1){
+
89  m_traces.push_back(std::make_pair(*beg, trace));
+
90  } else {
+
91  auto sc = m_scopes.find(*beg);
+
92  if(sc == std::end(m_scopes))
+
93  sc = m_scopes.insert({*beg, new vcd_scope_stack}).first;
+
94  sc->second->add_trace_rec(++beg, end, trace);
+
95  }
+
96  }
+
97  void print_variable_declaration_line(FPTR os, const char* scoped_name, T* trc){
+
98  char buf[2000];
+
99  switch(trc->bits){
+
100  case 0:{
+
101  std::stringstream ss;
+
102  ss << "'" << scoped_name << "' has 0 bits";
+
103  SC_REPORT_ERROR(sc_core::SC_ID_TRACING_OBJECT_IGNORED_, ss.str().c_str() );
+
104  return;
+
105  }
+
106  case 1:
+
107  if(trc->type==WIRE) {
+
108  auto buf = fmt::format("$var wire {} {} {} $end\n", trc->bits, trc->trc_hndl, scoped_name);
+
109  FWRITE(buf.c_str(), 1, buf.size(), os);
+
110  } else {
+
111  auto buf = fmt::format("$var real {} {} {} $end\n", trc->bits, trc->trc_hndl, scoped_name);
+
112  FWRITE(buf.c_str(), 1, buf.size(), os);
+
113  }
+
114  break;
+
115  default: {
+
116  auto buf = fmt::format("$var wire {} {} {} [{}:0] $end\n", trc->bits, trc->trc_hndl, scoped_name, trc->bits-1);
+
117  FWRITE(buf.c_str(), 1, buf.size(), os);
+
118  }
+
119  }
+
120  }
+
121 
+
122  std::vector<std::pair<std::string,T*> > m_traces{0};
+
123  std::unordered_map<std::string, vcd_scope_stack*> m_scopes{0};
+
124 };
125 
-
126  std::vector<std::pair<std::string,T*> > m_traces{0};
-
127  std::unordered_map<std::string, vcd_scope_stack*> m_scopes{0};
-
128 };
-
129 
-
130 struct vcd_trace {
-
131  vcd_trace(std::string const& nm, trace_type t, unsigned bits): name{nm}, bits{bits}, type{t}{}
+
126 struct vcd_trace {
+
127  vcd_trace(std::string const& nm, trace_type t, unsigned bits): name{nm}, bits{bits}, type{t}{}
+
128 
+
129  virtual void record(FPTR os) = 0;
+
130 
+
131  virtual void update() = 0;
132 
-
133  virtual void record(FPTR os) = 0;
+
133  virtual uintptr_t get_hash() = 0;
134 
-
135  virtual void update() = 0;
+
135  virtual ~vcd_trace(){};
136 
-
137  virtual uintptr_t get_hash() = 0;
-
138 
-
139  virtual ~vcd_trace(){};
-
140 
-
141  const std::string name;
-
142  std::string trc_hndl{};
-
143  bool is_alias{false};
-
144  bool is_triggered{false};
-
145  const unsigned bits;
-
146  const trace_type type;
-
147 };
-
148 
-
149 namespace {
-
150 
-
151 inline unsigned get_bits(const char** literals) {
-
152  unsigned nliterals;
-
153  for (nliterals = 0; literals[nliterals]; nliterals++) continue;
-
154  return scc::ilog2(nliterals);
-
155 }
-
156 
-
157 struct vcd_trace_enum : public vcd_trace {
-
158  vcd_trace_enum( const unsigned int& object_,
-
159  const std::string& name, const char** literals)
-
160  : vcd_trace( name, trace::WIRE, get_bits(literals))
-
161  , act_val( object_ )
-
162  , old_val( object_ )
-
163  , literals{literals}
-
164  {}
+
137  const std::string name;
+
138  std::string trc_hndl{};
+
139  bool is_alias{false};
+
140  bool is_triggered{false};
+
141  const unsigned bits;
+
142  const trace_type type;
+
143 };
+
144 
+
145 namespace {
+
146 
+
147 inline unsigned get_bits(const char** literals) {
+
148  unsigned nliterals;
+
149  for (nliterals = 0; literals[nliterals]; nliterals++) continue;
+
150  return scc::ilog2(nliterals);
+
151 }
+
152 
+
153 struct vcd_trace_enum : public vcd_trace {
+
154  vcd_trace_enum( const unsigned int& object_,
+
155  const std::string& name, const char** literals)
+
156  : vcd_trace( name, trace::WIRE, get_bits(literals))
+
157  , act_val( object_ )
+
158  , old_val( object_ )
+
159  , literals{literals}
+
160  {}
+
161 
+
162  uintptr_t get_hash() override { return reinterpret_cast<uintptr_t>(&act_val);}
+
163 
+
164  inline bool changed() { return !is_alias && old_val!=act_val; }
165 
-
166  uintptr_t get_hash() override { return reinterpret_cast<uintptr_t>(&act_val);}
+
166  void update() override { old_val=act_val; }
167 
-
168  inline bool changed() { return !is_alias && old_val!=act_val; }
+
168  void record(FPTR os) override { vcdEmitValueChange64(os, trc_hndl, bits, old_val); }
169 
-
170  void update() override { old_val=act_val; }
-
171 
-
172  void record(FPTR os) override { vcdEmitValueChange64(os, trc_hndl, bits, old_val); }
-
173 
-
174  unsigned int old_val;
-
175  const unsigned int& act_val;
-
176  const char** literals;
-
177 };
-
178 
-
179 template<typename T, typename OT=T>
-
180 struct vcd_trace_t : public vcd_trace {
-
181  vcd_trace_t( const T& object_,
-
182  const std::string& name)
-
183  : vcd_trace( name, trace::traits<T>::get_type(), trace::traits<T>::get_bits(object_))
-
184  , act_val( object_ )
-
185  , old_val( object_ )
-
186  {}
+
170  unsigned int old_val;
+
171  const unsigned int& act_val;
+
172  const char** literals;
+
173 };
+
174 
+
175 template<typename T, typename OT=T>
+
176 struct vcd_trace_t : public vcd_trace {
+
177  vcd_trace_t( const T& object_,
+
178  const std::string& name)
+
179  : vcd_trace( name, trace::traits<T>::get_type(), trace::traits<T>::get_bits(object_))
+
180  , act_val( object_ )
+
181  , old_val( object_ )
+
182  {}
+
183 
+
184  uintptr_t get_hash() override { return reinterpret_cast<uintptr_t>(&act_val);}
+
185 
+
186  inline bool changed() { return !is_alias && old_val!=act_val; }
187 
-
188  uintptr_t get_hash() override { return reinterpret_cast<uintptr_t>(&act_val);}
+
188  void update() override { old_val=act_val; }
189 
-
190  inline bool changed() { return !is_alias && old_val!=act_val; }
+
190  void record(FPTR os) override;
191 
-
192  void update() override { old_val=act_val; }
-
193 
-
194  void record(FPTR os) override;
+
192  OT old_val;
+
193  const T& act_val;
+
194 };
195 
-
196  OT old_val;
-
197  const T& act_val;
-
198 };
-
199 
-
200 template<typename T, typename OT>
-
201 void vcd_trace_t<T, OT>::record(FPTR os) {
-
202  if(sizeof(T)<=4)
-
203  vcdEmitValueChange32(os, trc_hndl, bits, old_val);
-
204  else
-
205  vcdEmitValueChange64(os, trc_hndl, bits, old_val);
-
206 }
-
207 template<> void vcd_trace_t<sc_core::sc_time, sc_core::sc_time>::record(FPTR os){
-
208  vcdEmitValueChange64(os, trc_hndl, bits, old_val.value());
-
209 }
-
210 template<> void vcd_trace_t<bool, bool>::record(FPTR os){
-
211  vcdEmitValueChange(os, trc_hndl, 1, old_val ? "1" : "0");
-
212 }
-
213 template<> void vcd_trace_t<sc_dt::sc_bit, sc_dt::sc_bit>::record(FPTR os){
-
214  vcdEmitValueChange(os, trc_hndl, 1, old_val ? "1" : "0");
-
215 }
-
216 template<> void vcd_trace_t<sc_dt::sc_logic, sc_dt::sc_logic>::record(FPTR os){
-
217  char buf[2] = {0, 0};
-
218  buf[0]=old_val.to_char();
-
219  vcdEmitValueChange(os, trc_hndl, 1, buf);
-
220 }
-
221 template<> void vcd_trace_t<float, float>::record(FPTR os){
-
222  vcdEmitValueChangeReal(os, trc_hndl, 32, old_val);
-
223 }
-
224 template<> void vcd_trace_t<double, double>::record(FPTR os){
-
225  vcdEmitValueChangeReal(os, trc_hndl, 64, old_val);
-
226 }
-
227 template<> void vcd_trace_t<sc_dt::sc_int_base, sc_dt::sc_int_base>::record(FPTR os){
-
228  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
-
229  char *rawdata_ptr = &rawdata[0];
-
230  for (int bitindex = old_val.length() - 1; bitindex >= 0; --bitindex) {
-
231  *rawdata_ptr++ = '0'+old_val[bitindex].value();
-
232  }
-
233  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
-
234 }
-
235 template<> void vcd_trace_t<sc_dt::sc_uint_base, sc_dt::sc_uint_base>::record(FPTR os){
-
236  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
-
237  char *rawdata_ptr = &rawdata[0];
-
238  for (int bitindex = old_val.length() - 1; bitindex >= 0; --bitindex) {
-
239  *rawdata_ptr++ = '0'+old_val[bitindex].value();
-
240  }
-
241  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
-
242 }
-
243 template<> void vcd_trace_t<sc_dt::sc_signed, sc_dt::sc_signed>::record(FPTR os){
-
244  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
-
245  char *rawdata_ptr = &rawdata[0];
-
246  bool is_started=false;
-
247  int bitindex = old_val.length() - 1;
-
248  *rawdata_ptr++ = '0'+old_val[bitindex--].value();
-
249  for (; bitindex >= 0; --bitindex) {
-
250  auto c = '0'+old_val[bitindex].value();
-
251  if(is_started)
-
252  *rawdata_ptr++ = c;
-
253  else if(c=='1' || *(rawdata_ptr-1)!=c ) {
-
254  *rawdata_ptr++ = c;
-
255  is_started=true;
-
256  }
-
257  }
-
258  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
-
259 }
-
260 template<> void vcd_trace_t<sc_dt::sc_unsigned, sc_dt::sc_unsigned>::record(FPTR os){
-
261  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
-
262  char *rawdata_ptr = &rawdata[0];
-
263  bool is_started=false;
-
264  int bitindex = old_val.length() - 1;
-
265  *rawdata_ptr++ = '0'+old_val[bitindex--].value();
-
266  for (; bitindex >= 0; --bitindex) {
-
267  auto c = '0'+old_val[bitindex].value();
-
268  if(is_started)
-
269  *rawdata_ptr++ = c;
-
270  else if(c=='1' || *(rawdata_ptr-1)!=c ) {
-
271  *rawdata_ptr++ = c;
-
272  is_started=true;
-
273  }
-
274  }
-
275  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
-
276 }
-
277 template<> void vcd_trace_t<sc_dt::sc_fxval, sc_dt::sc_fxval>::record(FPTR os){
-
278  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
-
279 }
-
280 template<> void vcd_trace_t<sc_dt::sc_fxval_fast, sc_dt::sc_fxval_fast>::record(FPTR os){
-
281  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
-
282 }
-
283 template<> void vcd_trace_t<sc_dt::sc_fxnum, sc_dt::sc_fxval>::record(FPTR os){
-
284  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
-
285 }
-
286 template<> void vcd_trace_t<sc_dt::sc_fxnum_fast, sc_dt::sc_fxval_fast>::record(FPTR os){
-
287  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
-
288 }
-
289 template<> void vcd_trace_t<sc_dt::sc_bv_base, sc_dt::sc_bv_base>::record(FPTR os){
-
290  auto str = old_val.to_string();
-
291  auto* cstr = str.c_str();
-
292  auto c=*cstr;
-
293  if(c!='1') while(c == *(cstr+1)) cstr++;
-
294  vcdEmitValueChange(os, trc_hndl, bits, cstr);
-
295 }
-
296 template<> void vcd_trace_t<sc_dt::sc_lv_base, sc_dt::sc_lv_base>::record(FPTR os){
-
297  auto str = old_val.to_string();
-
298  auto* cstr = str.c_str();
-
299  auto c=*cstr;
-
300  if(c!='1') while(c == *(cstr+1)) cstr++;
-
301  vcdEmitValueChange(os, trc_hndl, bits, cstr);
-
302 }
-
303 } // namespace anonymous
-
304 } // namespace trace
-
305 } // namespace scc
-
306 #endif //_SCC_TRACE_VCD_TRACE_HH_
+
196 template<typename T, typename OT>
+
197 void vcd_trace_t<T, OT>::record(FPTR os) {
+
198  if(sizeof(T)<=4)
+
199  vcdEmitValueChange32(os, trc_hndl, bits, old_val);
+
200  else
+
201  vcdEmitValueChange64(os, trc_hndl, bits, old_val);
+
202 }
+
203 template<> void vcd_trace_t<sc_core::sc_time, sc_core::sc_time>::record(FPTR os){
+
204  vcdEmitValueChange64(os, trc_hndl, bits, old_val.value());
+
205 }
+
206 template<> void vcd_trace_t<bool, bool>::record(FPTR os){
+
207  vcdEmitValueChange(os, trc_hndl, 1, old_val ? "1" : "0");
+
208 }
+
209 template<> void vcd_trace_t<sc_dt::sc_bit, sc_dt::sc_bit>::record(FPTR os){
+
210  vcdEmitValueChange(os, trc_hndl, 1, old_val ? "1" : "0");
+
211 }
+
212 template<> void vcd_trace_t<sc_dt::sc_logic, sc_dt::sc_logic>::record(FPTR os){
+
213  char buf[2] = {0, 0};
+
214  buf[0]=old_val.to_char();
+
215  vcdEmitValueChange(os, trc_hndl, 1, buf);
+
216 }
+
217 template<> void vcd_trace_t<float, float>::record(FPTR os){
+
218  vcdEmitValueChangeReal(os, trc_hndl, 32, old_val);
+
219 }
+
220 template<> void vcd_trace_t<double, double>::record(FPTR os){
+
221  vcdEmitValueChangeReal(os, trc_hndl, 64, old_val);
+
222 }
+
223 template<> void vcd_trace_t<sc_dt::sc_int_base, sc_dt::sc_int_base>::record(FPTR os){
+
224  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
+
225  char *rawdata_ptr = &rawdata[0];
+
226  for (int bitindex = old_val.length() - 1; bitindex >= 0; --bitindex) {
+
227  *rawdata_ptr++ = '0'+old_val[bitindex].value();
+
228  }
+
229  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
+
230 }
+
231 template<> void vcd_trace_t<sc_dt::sc_uint_base, sc_dt::sc_uint_base>::record(FPTR os){
+
232  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
+
233  char *rawdata_ptr = &rawdata[0];
+
234  for (int bitindex = old_val.length() - 1; bitindex >= 0; --bitindex) {
+
235  *rawdata_ptr++ = '0'+old_val[bitindex].value();
+
236  }
+
237  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
+
238 }
+
239 template<> void vcd_trace_t<sc_dt::sc_signed, sc_dt::sc_signed>::record(FPTR os){
+
240  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
+
241  char *rawdata_ptr = &rawdata[0];
+
242  bool is_started=false;
+
243  int bitindex = old_val.length() - 1;
+
244  *rawdata_ptr++ = '0'+old_val[bitindex--].value();
+
245  for (; bitindex >= 0; --bitindex) {
+
246  auto c = '0'+old_val[bitindex].value();
+
247  if(is_started)
+
248  *rawdata_ptr++ = c;
+
249  else if(c=='1' || *(rawdata_ptr-1)!=c ) {
+
250  *rawdata_ptr++ = c;
+
251  is_started=true;
+
252  }
+
253  }
+
254  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
+
255 }
+
256 template<> void vcd_trace_t<sc_dt::sc_unsigned, sc_dt::sc_unsigned>::record(FPTR os){
+
257  static std::vector<char> rawdata(get_buffer_size(old_val.length()));
+
258  char *rawdata_ptr = &rawdata[0];
+
259  bool is_started=false;
+
260  int bitindex = old_val.length() - 1;
+
261  *rawdata_ptr++ = '0'+old_val[bitindex--].value();
+
262  for (; bitindex >= 0; --bitindex) {
+
263  auto c = '0'+old_val[bitindex].value();
+
264  if(is_started)
+
265  *rawdata_ptr++ = c;
+
266  else if(c=='1' || *(rawdata_ptr-1)!=c ) {
+
267  *rawdata_ptr++ = c;
+
268  is_started=true;
+
269  }
+
270  }
+
271  vcdEmitValueChange(os, trc_hndl, bits, &rawdata[0]);
+
272 }
+
273 template<> void vcd_trace_t<sc_dt::sc_fxval, sc_dt::sc_fxval>::record(FPTR os){
+
274  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
+
275 }
+
276 template<> void vcd_trace_t<sc_dt::sc_fxval_fast, sc_dt::sc_fxval_fast>::record(FPTR os){
+
277  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
+
278 }
+
279 template<> void vcd_trace_t<sc_dt::sc_fxnum, sc_dt::sc_fxval>::record(FPTR os){
+
280  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
+
281 }
+
282 template<> void vcd_trace_t<sc_dt::sc_fxnum_fast, sc_dt::sc_fxval_fast>::record(FPTR os){
+
283  vcdEmitValueChangeReal(os, trc_hndl, bits, old_val);
+
284 }
+
285 template<> void vcd_trace_t<sc_dt::sc_bv_base, sc_dt::sc_bv_base>::record(FPTR os){
+
286  auto str = old_val.to_string();
+
287  auto* cstr = str.c_str();
+
288  auto c=*cstr;
+
289  if(c!='1') while(c == *(cstr+1)) cstr++;
+
290  vcdEmitValueChange(os, trc_hndl, bits, cstr);
+
291 }
+
292 template<> void vcd_trace_t<sc_dt::sc_lv_base, sc_dt::sc_lv_base>::record(FPTR os){
+
293  auto str = old_val.to_string();
+
294  auto* cstr = str.c_str();
+
295  auto c=*cstr;
+
296  if(c!='1') while(c == *(cstr+1)) cstr++;
+
297  vcdEmitValueChange(os, trc_hndl, bits, cstr);
+
298 }
+
299 } // namespace anonymous
+
300 } // namespace trace
+
301 } // namespace scc
+
302 #endif //_SCC_TRACE_VCD_TRACE_HH_
SCC SystemC utilities.
std::vector< std::string > split(const std::string &s, char separator)
Definition: ities.h:192
- - + + diff --git a/develop/verilator__callbacks_8cpp_source.html b/develop/verilator__callbacks_8cpp_source.html index abb90781..780c9f7d 100644 --- a/develop/verilator__callbacks_8cpp_source.html +++ b/develop/verilator__callbacks_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/watchdog_8cpp_source.html b/develop/watchdog_8cpp_source.html index 0a28cf75..972661b1 100644 --- a/develop/watchdog_8cpp_source.html +++ b/develop/watchdog_8cpp_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library
diff --git a/develop/watchdog_8h_source.html b/develop/watchdog_8h_source.html index d0260cab..09a3f904 100644 --- a/develop/watchdog_8h_source.html +++ b/develop/watchdog_8h_source.html @@ -24,7 +24,7 @@
scc -  2022.4.0 +  2024.03
SystemC components library