Mixxx

/home/maxime/Projets/Mixxx/1.10/mixxx/src/vinylcontrol/vinylcontrolmanager.h

Go to the documentation of this file.
00001 
00007 #ifndef VINYLCONTROLMANAGER_H
00008 #define VINYLCONTROLMANAGER_H
00009 
00010 #include <QtCore>
00011 #include "soundmanagerutil.h"
00012 #include "configobject.h"
00013 
00014 class VinylControlProxy;
00015 class SoundManager;
00016 class ControlPushButton;
00017 
00018 class VinylControlManager : public QObject, public AudioDestination {
00019     Q_OBJECT;
00020   public:
00021     VinylControlManager(QObject *pParent, ConfigObject<ConfigValue> *pConfig);
00022     virtual ~VinylControlManager();
00023     virtual void receiveBuffer(AudioInput input, const short *pBuffer, unsigned int nFrames);
00024     virtual void onInputConnected(AudioInput input);
00025     virtual void onInputDisconnected(AudioInput input);
00026     QList<VinylControlProxy*> vinylControlProxies();
00027     bool vinylInputEnabled(int deck);
00028     VinylControlProxy* getVinylControlProxyForChannel(QString);
00029   public slots:
00030     void reloadConfig();
00031   signals:
00032   private slots:
00033     void toggleDeck(double value);
00034   private:
00035     ConfigObject<ConfigValue> *m_pConfig;
00036     QVector<VinylControlProxy*> m_proxies;
00037     QReadWriteLock m_proxiesLock;
00038     ControlPushButton *m_pToggle;
00039 };
00040 
00041 #endif // VINYLCONTROLMANAGER_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines