summaryrefslogtreecommitdiff
path: root/libs/ardour/session_events.cc
AgeCommit message (Collapse)Author
2018-07-09Remove unused AutoLoopDeclick, PendingLoopDeclickRobin Gareus
The flags were set, but not used. They also won't be needed anymore.
2017-09-18globally change all use of "frame" to refer to audio into "sample".Paul Davis
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible
2017-09-18do not queue multiple Locate or LocateRoll eventsPaul Davis
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-06-29noop: fix indentation/whitespacePaul Davis
2015-06-29[Summary] Added possibility to identify IO thread which does not have ↵GZharun
required resources initialized during process callback handling Conflicts: libs/ardour/ardour/audioengine.h libs/backends/wavesaudio/waves_audiobackend.cc libs/pbd/pbd/pool.h
2015-06-12We were 2 more debug "bits" away from overflow, so recast PBD::DEBUG ↵Paul Davis
mechanism away from a 64bit integer and toward std::bitset. Clean up a few minor related PBD::DEBUG issues along the way
2015-03-11fix “no per-thread pool” abortRobin Gareus
For some backends the process thread can change (e.g. switch coreaudio headphone + internal speakers) If there are existing x-thread event calls this can lead to the following situation: 1) SessionEvent::operator new 2) audioengine process thread change 3) SessionEvent::operator delete -> crash, wrong thread SessionEvent::operator delete can safely push the event back to the pool for later cleanup..
2015-02-05do not attempt to call an empty/null boost functor in clear_events()Paul Davis
2015-02-05expand SessionEvent API to allow ::clear_events() to work correctly.Paul Davis
clear_events() must run in realtime context, which is likely to be asynchronous with respect to the thread that calls it. So allow caller to pass in a functor that will be executed (also in realtime context) after the clear is done. Additionally, allow for a cross-thread callback to the event loop/thread which initiated/allocated the clear event request so that it can flush its own pending loop. This part probably isn't necessary but doesn't hurt and is a useful model. The event would be placed back in the free list at the next event allocation by the calling thread anyway.
2014-12-21change SessionEvent::Immediate to -1, and ensure that clear_events() uses it ↵Paul Davis
rather than a hard-coded value This fixes a design error of using zero as the flag for an "Immediate" event's action frame. Zero is a perfectly legitimate action frame for an event (e.g. a Skip event), and using zero was causing skip events with action-frame == 0 to be treated as immediate, not scheduled.
2014-10-10make output of SessionEventManager::dump_events() a bit more readablePaul Davis
2014-03-18Re-validate our iterator after SessionEventManager removes an eventJohn Emmas
2013-07-11Use PBD::pthread_name in debug outputPaul Davis
2012-06-20Declick before the end of seamless loops, not after the end, so that loops ↵Carl Hetherington
are rendered accurately (#4213, #4593). git-svn-id: svn://localhost/ardour2/branches/3.0@12801 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01Fix broken whitespace. I'd apologize for the compile times if it was my ↵David Robillard
fault :D git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04Fix broken whitespace (no functional changes).David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@9288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02deeper debug stracktracePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@9046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02actual debug stracktrace addedPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@9045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02debug stracktrace addedPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@9044 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-08Use DEBUG macros for SessionEvent debugging.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8482 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-06yet more debugging for thread poolsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8451 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-04event pool allocation debuggingPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17megaopus patch #2 for today: remove nframes64_t and sframes_t from sourcePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-22remove a bunch of uses of long (mostly replaced by int32_t)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@7472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07first pass at end-to-end RT operation request (GUI->session->RT ↵Paul Davis
thread->GUI), just for rec-enable git-svn-id: svn://localhost/ardour2/branches/3.0@6324 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07Route::set_meter_point() is now conceptually RT safe, although it still ↵Paul Davis
takes a write lock on the processor list. this allows it to be called when setting rec-enable status on a route. not thoroughly tested, and still incomplete - single route rec-enables should probably use this pathway, and there is still no cross-thread cleanup from an RT route op request git-svn-id: svn://localhost/ardour2/branches/3.0@6320 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04cross-thread handling of SessionEvent allocation/deallocation, with ↵Paul Davis
widespread consequences git-svn-id: svn://localhost/ardour2/branches/3.0@6283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04move Session::Event into SessionEvent class; add SessionEventManager ↵Paul Davis
(Session IS-A SessionEventManager); make session ops to toggle all track rec-enable be atomic with respect to process() git-svn-id: svn://localhost/ardour2/branches/3.0@6273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03more tweaks to MTC slave code (still not functional), including removing ↵Paul Davis
race conditions when resetting slave state; make Session catch on its own saved preferences, which has not been happening; make switching sync sources avoid race conditions git-svn-id: svn://localhost/ardour2/branches/3.0@6269 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30add slave,transport and event debugging tracesPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6215 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-0990% done with external sync design changes (GUI now has toggle switch for ↵Paul Davis
ext/int sync; source chosen separately, currently in ardour prefs dialog ; fix libmidi++ and compilation scripts to correctly build JACK+ALSA support; minor contiuing tweaks on transport stuff git-svn-id: svn://localhost/ardour2/branches/3.0@6048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-08monster commit: transport mgmt changes from 2.X (omnibus edition); make ↵Paul Davis
slave use nframes64_t ; avoid crashes in Drags when commiting reversible transactions that do not exist git-svn-id: svn://localhost/ardour2/branches/3.0@6034 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-30make 3.0 catch up with transport and other changes in 2.X (hand applied, not ↵Paul Davis
merged) git-svn-id: svn://localhost/ardour2/branches/3.0@5989 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-26change the use of "SMPTE" to "Timecode" to reflect the global economy and ↵Paul Davis
the end of american dominance on the world audio production stage git-svn-id: svn://localhost/ardour2/branches/3.0@5924 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-24Move butler methods from Session to Butler.David Robillard
Slay the dragon. A lil' bit. git-svn-id: svn://localhost/ardour2/branches/3.0@5901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14Strip trailing whitespace and fix other whitespace errors (e.g. space/tab ↵David Robillard
mixing). Whitespace changes only. Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent... git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-14First stage of options rework.Carl Hetherington
- Split Configuration into RCConfiguration and SessionConfiguration; the first for options which are saved to .rc files and the second for options which are saved in a session file. - Move some options from the old `master' Configuration object into SessionConfiguration; this needs more refinement. - Reflect many RCConfiguration options in an expanded Edit->Preferences dialog; my intention is to remove the corresponding menu items eventually. git-svn-id: svn://localhost/ardour2/branches/3.0@5075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12Remove most using declarations from header files.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02Fix auto-return, hopefully not at the expense of anything else.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4482 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-03-17merge with 2.0-ongoing @ rev 3147Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-10Merge libs/ardour and gtk2_ardour with 2.0-ongoing R2837.David Robillard
git-svn-id: svn://localhost/ardour2/trunk@2883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-14Fix displaying of notes in auto-created MIDI region when it's the first ↵David Robillard
region in the track. Fix crash after recording long phrases of MIDI. Fix MIDI looping (kinda). Add note-off exposure to MidiModel::iterator. Fix first-note-is-stuck-note problem. Fix resolving long notes while recording. Fix several other things I forget now. MIDI works pretty well..... git-svn-id: svn://localhost/ardour2/trunk@2555 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-11merge from 2.0-ongoing by hand, minus key binding editorPaul Davis
git-svn-id: svn://localhost/ardour2/trunk@2539 d708f5d6-7413-0410-9779-e7cbd77b26cf