/*
- 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);
}