The Flagship http://ardour.org
Go to file
Tim Mayberry e7b8e98db2 Replace static PBD::Signal in NoteBase with direct call to MidiRegionView
NoteBaseDeleted signal is static so each MidiRegionView(MRV) gets notified
about the deletion of each NodeBase instance even if it is contained in another
MRV

The NoteBase and MRV classes are currently coupled anyway, so this change uses
the reference to the MRV parent to directly call the parent when the NoteBase
is deleted. This is all in the GUI thread so I'm not sure why a PBD::Signal was
being used?

If the MRV class is the only reference holder to the NoteBase class
then I'm not sure if a callback is needed, perhaps the MRV should just remove
the note from the selection before deleting it but I'm not that familiar with
the code.

Signal emission/calls static NoteBaseDeleted signal vs direct with 10540
NoteBase instances.

static:

After Load Session: 6360638
After Unload Session: 12221026(5860388)

direct:

After load Session: 10540
After unload Session: 21080

Session Load/Unload time in master, debug/release with ~10000 Notes(seconds)

Load Debug: 32, 26
Unload Debug: 83
Load Release 32, 20, 42
Unload Release 26, 25

Session Load/Unload time with direct call debug/release(seconds)

Load Debug: 21.7, 18.1
Unload Debug: 69.4, 71
Load Release: 22.6, 13.4, 17.7
Unload Release: 24, 23.5

This is not a large Session, 1500 regions, 10000 notes so there is probably
some other funky stuff going on that needs fixing.
2015-10-17 22:15:07 -04:00
cfgtool
doc
export
gtk2_ardour Replace static PBD::Signal in NoteBase with direct call to MidiRegionView 2015-10-17 22:15:07 -04:00
headless NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
icons
libs Remove all the now unused functions in the MidiModel class. 2015-10-17 22:12:55 -04:00
mcp introduce separate-meters concept for Mackie. 2015-10-13 10:04:58 -04:00
midi_maps
msvc_extra_headers
MSVCardour3
MSVCMixbus3
MSVCvst_scan
patches
patchfiles
templates
tools linux wrapper script: load session with spaces - #6395 2015-10-17 02:01:02 +02:00
vst globally remove all trailing whitespace from ardour code base. 2015-10-04 14:51:05 -04:00
.dir-locals.el
.gitignore
ardour-3.ttl
ardour.1
ardour.1.es
ardour.1.fr
ardour.1.ru
COPYING
foo.cc
instant.xml
instant.xml.sae
Makefile
msvc32-fixup.pl
PACKAGER_README
README
system_config
testfile.flac
testfile.ogg
TRANSLATORS
waf
wscript

Please see the Ardour web site at http://ardour.org/ for all documentation..

For information on building ardour: 
      
     http://ardour.org/development.html