83d82
<
86a86,91
> static Module *
> fromScModule(::sc_core::sc_module *mod)
> {
> return mod->_gem5_module;
> }
>
133,134c138,157
< void callbackModule(Module *m);
< Module *callbackModule();
---
> static inline Module *
> pickParentModule()
> {
> ::sc_core::sc_object *obj = pickParentObj();
> auto mod = dynamic_cast<::sc_core::sc_module *>(obj);
> if (!mod)
> return nullptr;
> return Module::fromScModule(mod);
> }
> static inline void
> pushParentModule(Module *m)
> {
> pushParentObj(m->obj()->sc_obj());
> }
> static inline void
> popParentModule()
> {
> assert(pickParentModule());
> popParentObj();
> }