#include "pbd/pthread_utils.h"
#include "pbd/stacktrace.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/audioengine.h"
#include "ardour/butler.h"
-#include "ardour/configuration.h"
-#include "ardour/crossfade.h"
-#include "ardour/io.h"
-#include "ardour/midi_diskstream.h"
+#include "ardour/route.h"
#include "ardour/session.h"
-#include "ardour/timestamps.h"
+#include "ardour/session_event.h"
#include "ardour/track.h"
+#include "ardour/types.h"
#include "i18n.h"
BUTLER THREAD
---------------------------------------------------------------------------*/
+void
+Session::adjust_playback_buffering ()
+{
+ request_stop (false, false);
+ SessionEvent *ev = new SessionEvent (SessionEvent::AdjustPlaybackBuffering, SessionEvent::Add, SessionEvent::Immediate, 0, 0, 0.0);
+ queue_event (ev);
+}
+
+void
+Session::adjust_capture_buffering ()
+{
+ request_stop (false, false);
+ SessionEvent *ev = new SessionEvent (SessionEvent::AdjustCaptureBuffering, SessionEvent::Add, SessionEvent::Immediate, 0, 0, 0.0);
+ queue_event (ev);
+}
+
+void
+Session::schedule_playback_buffering_adjustment ()
+{
+ add_post_transport_work (PostTransportAdjustPlaybackBuffering);
+ _butler->schedule_transport_work ();
+}
+
+void
+Session::schedule_capture_buffering_adjustment ()
+{
+ add_post_transport_work (PostTransportAdjustCaptureBuffering);
+ _butler->schedule_transport_work ();
+}
+
void
Session::schedule_curve_reallocation ()
{
{
return (uint32_t) g_atomic_int_get (&_capture_load);
}
-
-uint32_t
-Session::playback_load_min ()
-{
- return (uint32_t) g_atomic_int_get (&_playback_load_min);
-}
-
-uint32_t
-Session::capture_load_min ()
-{
- return (uint32_t) g_atomic_int_get (&_capture_load_min);
-}
-
-void
-Session::reset_capture_load_min ()
-{
- g_atomic_int_set (&_capture_load_min, 100);
-}
-
-void
-Session::reset_playback_load_min ()
-{
- g_atomic_int_set (&_playback_load_min, 100);
-}
-