make MemoryQueryMaker use new matcher classes instead of old private ones
[amarok.git] / src / mediadevicemanager.h
blob6e9e6ea9f4d8ad1ec924152b6d6273ad7a6cb1c6
1 //
2 // C++ Interface: mediadevicemanager
3 //
4 // Description: Controls device/medium object handling, providing
5 // helper functions for other objects
6 //
7 //
8 // Author: Jeff Mitchell <kde-dev@emailgoeshere.com>, (C) 2006
9 //
10 // Copyright: See COPYING file that comes with this distribution
15 #ifndef AMAROK_MEDIA_DEVICE_MANAGER_H
16 #define AMAROK_MEDIA_DEVICE_MANAGER_H
18 #include "medium.h"
20 #include <QMap>
22 typedef QMap<QString, Medium*> MediumMap;
24 class MediaDeviceManager : public QObject
27 //static const uint GENERIC = 0;
28 //static const uint APPLE = 1;
29 //static const uint IFP = 2;
31 Q_OBJECT
32 public:
33 MediaDeviceManager();
34 ~MediaDeviceManager();
35 static MediaDeviceManager *instance();
37 Medium* getDevice( QString name );
38 MediumMap getMediumMap() { return m_mediumMap; }
40 void addManualDevice( Medium* added );
41 void removeManualDevice( Medium* removed );
44 signals:
45 void mediumAdded( const Medium*, QString );
46 void mediumChanged( const Medium*, QString );
47 void mediumRemoved( const Medium*, QString );
49 public slots:
50 void slotMediumAdded( const Medium*, QString );
51 void slotMediumChanged( const Medium*, QString );
52 void slotMediumRemoved( const Medium*, QString );
54 private slots:
55 void reinitDevices();
57 private:
59 MediumMap m_mediumMap;
63 #endif