diff options
author | Johannes Stoelp <johannes.stoelp@gmail.com> | 2023-08-27 21:18:53 +0200 |
---|---|---|
committer | Johannes Stoelp <johannes.stoelp@gmail.com> | 2023-08-27 21:18:53 +0200 |
commit | f396fab26611d6107e223a6a3f41c9dff3e2ee9e (patch) | |
tree | d1b22fd265f883404d7e484b7f7c460367a136be /browse.cc | |
parent | 7a0f884c6b11db6a59cfafce7b53158ad59a365e (diff) | |
download | sysc-playground-f396fab26611d6107e223a6a3f41c9dff3e2ee9e.tar.gz sysc-playground-f396fab26611d6107e223a6a3f41c9dff3e2ee9e.zip |
move sources into src/ subdir
Diffstat (limited to 'browse.cc')
-rw-r--r-- | browse.cc | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/browse.cc b/browse.cc deleted file mode 100644 index afc132e..0000000 --- a/browse.cc +++ /dev/null @@ -1,74 +0,0 @@ -#include <systemc> -#include "utils.h" - -using sc_core::sc_module; -using sc_core::sc_module_name; -using sc_core::sc_object; - -struct leaf_a : public sc_module { - explicit leaf_a(sc_module_name nm) : sc_module(nm) {} -}; - -struct leaf_b : public sc_module { - explicit leaf_b(sc_module_name nm) : sc_module(nm) {} -}; - -struct processor : public sc_module { - explicit processor(sc_module_name nm) : sc_module(nm), m_a("a"), m_b("b") {} - - leaf_a m_a; - leaf_b m_b; -}; - -struct memory : public sc_module { - explicit memory(sc_module_name nm) : sc_module(nm), m_a("a") {} - - leaf_a m_a; -}; - -struct soc : public sc_module { - explicit soc(sc_module_name nm) - : sc_module(nm), - m_mem0{"mem0"}, - m_mem1{"mem1"}, - m_mem2{"mem2"}, - m_mem3{"mem3"}, - m_proc0{"proc0"}, - m_proc1{"proc1"} {} - - memory m_mem0, m_mem1, m_mem2, m_mem3; - processor m_proc0, m_proc1; -}; - -// -- WALKER ------------------------------------------------------------------- - -void walk(const std::vector<sc_object*>& objs, unsigned indent = 0) { - for (const auto* obj : objs) { - if (indent) { - printf("%*c", indent, ' '); - } - printf("BASENAME=" YELLOW "%s" RESET " NAME=" MAGENTA "%s" RESET - " HAS_PARENT=%d\n", - obj->basename(), obj->name(), obj->get_parent_object() != nullptr); - - walk(obj->get_child_objects(), indent + 2); - } -} - -// -- SC_MAIN ------------------------------------------------------------------ - -extern "C" int sc_main(int, char*[]) { - soc s("soc"); - - walk(sc_core::sc_get_top_level_objects()); - - const auto* obj = sc_core::sc_find_object("soc.mem0"); - if (obj != nullptr) { - puts(obj->name()); - } - - std::cout << sc_core::sc_hierarchical_name_exists("soc") << std::endl; - std::cout << sc_core::sc_hierarchical_name_exists(obj, "a") << std::endl; - - return 0; -} |