diff options
author | David Robillard <d@drobilla.net> | 2011-06-03 18:14:32 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2011-06-03 18:14:32 +0000 |
commit | 48eff0da05d4203013835ed500bade593f842557 (patch) | |
tree | c9d6f863b8105faee0a1a02e4bf1fb447e105ac6 /src/AlsaDriver.cpp | |
parent | 352137726820a7313a6a64fa0a8e276b490ad932 (diff) | |
download | patchage-48eff0da05d4203013835ed500bade593f842557.tar.gz patchage-48eff0da05d4203013835ed500bade593f842557.tar.bz2 patchage-48eff0da05d4203013835ed500bade593f842557.zip |
Remove use of boost::enable_shared_from_this<Canvas>.
Instead, just store a pointer to the containing canvas in Items, since it should not be possible for an Item to outlive its containing Canvas anyway. Shrinks Item memory overhead a tad and gives a minor performance boost as an added bonus.
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3354 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/AlsaDriver.cpp')
-rw-r--r-- | src/AlsaDriver.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/AlsaDriver.cpp b/src/AlsaDriver.cpp index f744b5f..56bef22 100644 --- a/src/AlsaDriver.cpp +++ b/src/AlsaDriver.cpp @@ -218,10 +218,8 @@ AlsaDriver::create_port(boost::shared_ptr<PatchageModule> parent, new PatchagePort(parent, ALSA_MIDI, name, is_input, _app->state_manager()->get_port_color(ALSA_MIDI))); - boost::shared_ptr<PatchageCanvas> canvas - = boost::dynamic_pointer_cast<PatchageCanvas>(parent->canvas().lock()); - if (canvas) - canvas->index_port(PortID(addr, is_input), ret); + dynamic_cast<PatchageCanvas*>(parent->canvas())->index_port( + PortID(addr, is_input), ret); ret->alsa_addr(addr); return ret; |