summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/nl_factory.h
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2019-11-13 07:41:20 +0100
committer couriersud <couriersud@gmx.org>2019-11-13 07:41:20 +0100
commitf4cf0cc86a06f07f4df18fbf521abf3126721d24 (patch)
tree49d760d161a5a3c981f7ab02c39e6101a535b92c /src/lib/netlist/nl_factory.h
parent6a57025550e2898954fe10b5796ad55513a21049 (diff)
netlist: code maintenance. (nw)
- move memory pool to netlist_state_t removing one static allocation. - add memory allocation stats to verbose output - nl_assert no longer throws, first step to remove NL_EXCEPT macro.
Diffstat (limited to 'src/lib/netlist/nl_factory.h')
-rw-r--r--src/lib/netlist/nl_factory.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/lib/netlist/nl_factory.h b/src/lib/netlist/nl_factory.h
index ec53eb3bde7..e03989d860d 100644
--- a/src/lib/netlist/nl_factory.h
+++ b/src/lib/netlist/nl_factory.h
@@ -54,7 +54,10 @@ namespace factory {
COPYASSIGNMOVE(element_t, default)
- virtual unique_pool_ptr<device_t> Create(netlist_state_t &anetlist, const pstring &name) = 0;
+ virtual unique_pool_ptr<device_t> Create(nlmempool &pool,
+ netlist_state_t &anetlist,
+ const pstring &name) = 0;
+
virtual void macro_actions(nlparse_t &nparser, const pstring &name)
{
plib::unused_var(nparser);
@@ -84,9 +87,11 @@ namespace factory {
const pstring &def_param, const pstring &sourcefile)
: element_t(name, classname, def_param, sourcefile) { }
- unique_pool_ptr<device_t> Create(netlist_state_t &anetlist, const pstring &name) override
+ unique_pool_ptr<device_t> Create(nlmempool &pool,
+ netlist_state_t &anetlist,
+ const pstring &name) override
{
- return pool().make_unique<C>(anetlist, name);
+ return pool.make_unique<C>(anetlist, name);
}
};
@@ -146,7 +151,9 @@ namespace factory {
{
}
- unique_pool_ptr<device_t> Create(netlist_state_t &anetlist, const pstring &name) override;
+ unique_pool_ptr<device_t> Create(nlmempool &pool,
+ netlist_state_t &anetlist,
+ const pstring &name) override;
void macro_actions(nlparse_t &nparser, const pstring &name) override;