diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2010-03-02 00:00:00 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2010-03-02 00:00:00 +0000 |
commit | db8b575c30845bafc34b87bacd52129c95d1c478 (patch) | |
tree | 7a521b7795cc6cc4e41d717a0feabd1aefb83e1f /libs/ardour/ardour/region_factory.h | |
parent | 3540594dc53137eb9e857f9e3c1309382a6d7bef (diff) |
the mega-properties/SequenceProperty patch. split is broken at present (right hand starts has start-in-source of zero)
git-svn-id: svn://localhost/ardour2/branches/3.0@6718 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/region_factory.h')
-rw-r--r-- | libs/ardour/ardour/region_factory.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/ardour/ardour/region_factory.h b/libs/ardour/ardour/region_factory.h index 16e48828d4..a01103603a 100644 --- a/libs/ardour/ardour/region_factory.h +++ b/libs/ardour/ardour/region_factory.h @@ -21,6 +21,7 @@ #define __ardour_region_factory_h__ #include <map> +#include <glibmm/thread.h> #include "pbd/id.h" @@ -37,8 +38,10 @@ class AudioRegion; class RegionFactory { public: + typedef std::map<PBD::ID,boost::shared_ptr<Region> > RegionMap; static boost::shared_ptr<Region> region_by_id (const PBD::ID&); + static const RegionMap all_regions() { return region_map; } static void clear_map (); /** This is emitted only when a new id is assigned. Therefore, @@ -75,8 +78,10 @@ class RegionFactory { static boost::shared_ptr<Region> create (SourceList& srcs, const XMLNode&); private: - static std::map<PBD::ID,boost::weak_ptr<Region> > region_map; + static Glib::StaticMutex region_map_lock; + static RegionMap region_map; static void map_add (boost::shared_ptr<Region>); + static void map_remove (boost::shared_ptr<Region>); }; } |