fix bypassing plugins with sidechain i/o
[ardour.git] / libs / ardour / ardour / session_playlist.h
index 925a60182aaf5613410cfb6702856fcc07f17d50..fa1acc58287db3f57ba65515ac37b51420e98064 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2002 Paul Davis 
+    Copyright (C) 2002 Paul Davis
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id$
 */
 
 #ifndef __ardour_session_playlist_h__
 #define __ardour_session_playlist_h__
 
-#include <ardour/session.h>
-#include <ardour/playlist.h>
+#include "ardour/session.h"
+#include "ardour/playlist.h"
+#include "ardour/session_playlists.h"
 
 namespace ARDOUR {
 
-template<class T> void 
-Session::foreach_playlist (T *obj, void (T::*func)(Playlist *)) 
+template<class T> void
+SessionPlaylists::foreach (T *obj, void (T::*func)(boost::shared_ptr<Playlist>))
 {
-       LockMonitor lm (playlist_lock, __LINE__, __FILE__);
-       for (PlaylistList::iterator i = playlists.begin(); i != playlists.end(); i++) {
+       Glib::Threads::Mutex::Lock lm (lock);
+       for (List::iterator i = playlists.begin(); i != playlists.end(); i++) {
                if (!(*i)->hidden()) {
                        (obj->*func) (*i);
                }
        }
-       for (PlaylistList::iterator i = unused_playlists.begin(); i != unused_playlists.end(); i++) {
+       for (List::iterator i = unused_playlists.begin(); i != unused_playlists.end(); i++) {
                if (!(*i)->hidden()) {
                        (obj->*func) (*i);
                }