1/* 2 * Copyright 2018 Google, Inc. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: redistributions of source code must retain the above copyright 7 * notice, this list of conditions and the following disclaimer; 8 * redistributions in binary form must reproduce the above copyright --- 18 unchanged lines hidden (view full) --- 27 * Authors: Gabe Black 28 */ 29 30#include <memory> 31#include <vector> 32 33#include "base/logging.hh" 34#include "systemc/core/module.hh" |
35#include "systemc/core/process.hh" |
36#include "systemc/ext/core/sc_module.hh" 37#include "systemc/ext/core/sc_module_name.hh" 38 |
39namespace sc_gem5 40{ 41 42Process * 43newMethodProcess(const char *name, ProcessFuncWrapper *func) 44{ 45 return new Method(name, func); 46} 47 48Process * 49newThreadProcess(const char *name, ProcessFuncWrapper *func) 50{ 51 return new Thread(name, func); 52} 53 54Process * 55newCThreadProcess(const char *name, ProcessFuncWrapper *func) 56{ 57 return new CThread(name, func); 58} 59 60} // namespace sc_gem5 61 |
62namespace sc_core 63{ 64 65sc_bind_proxy::sc_bind_proxy(const sc_interface &_interface) : 66 _interface(&_interface), _port(nullptr) 67{} 68 69sc_bind_proxy::sc_bind_proxy(const sc_port_base &_port) : --- 83 unchanged lines hidden (view full) --- 153 154const std::vector<sc_event *> & 155sc_module::get_child_events() const 156{ 157 return _gem5_module->obj()->get_child_events(); 158} 159 160sc_module::sc_module() : |
161 sc_object(sc_gem5::newModule()->name()), |
162 _gem5_module(sc_gem5::currentModule()) 163{} 164 165sc_module::sc_module(const sc_module_name &) : sc_module() {} 166sc_module::sc_module(const char *_name) : sc_module(sc_module_name(_name)) {} 167sc_module::sc_module(const std::string &_name) : 168 sc_module(sc_module_name(_name.c_str())) 169{} --- 476 unchanged lines hidden --- |