headers/bsd: Add sys/queue.h.
[haiku.git] / src / kits / media / TimeSourceObjectManager.h
blob5c056d1bd7eca6709a8ad327a369df363a572146
1 /*
2 * Copyright 2002 Marcus Overhagen. All Rights Reserved.
3 * This file may be used under the terms of the MIT License.
4 */
5 #ifndef TIME_SOURCE_OBJECT_MANAGER_H
6 #define TIME_SOURCE_OBJECT_MANAGER_H
9 #include <map>
11 #include <Locker.h>
12 #include <MediaDefs.h>
15 class BTimeSource;
18 namespace BPrivate {
19 namespace media {
22 class TimeSourceObjectManager : BLocker {
23 public:
24 TimeSourceObjectManager();
25 ~TimeSourceObjectManager();
27 BTimeSource* GetTimeSource(const media_node& node);
28 void ObjectDeleted(BTimeSource* timeSource);
30 private:
31 typedef std::map<media_node_id, BTimeSource*> NodeMap;
33 NodeMap fMap;
37 extern TimeSourceObjectManager* gTimeSourceObjectManager;
40 } // namespace media
41 } // namespace BPrivate
44 using BPrivate::media::gTimeSourceObjectManager;
47 #endif // _TIME_SOURCE_OBJECT_MANAGER_H_