![]() |
Mixxx
|
00001 /*************************************************************************** 00002 enginedeck.h - description 00003 ------------------- 00004 begin : Sun Apr 28 2002 00005 copyright : (C) 2002 by 00006 email : 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #ifndef ENGINEDECK_H 00019 #define ENGINEDECK_H 00020 00021 #include "engine/engineobject.h" 00022 #include "engine/enginechannel.h" 00023 #include "configobject.h" 00024 00025 class EngineBuffer; 00026 class EnginePregain; 00027 class EngineBuffer; 00028 class EngineFilterBlock; 00029 class EngineClipping; 00030 class EngineFlanger; 00031 class EngineVuMeter; 00032 class EngineVinylSoundEmu; 00033 class ControlPushButton; 00034 00035 class EngineDeck : public EngineChannel { 00036 Q_OBJECT 00037 public: 00038 EngineDeck(const char *group, ConfigObject<ConfigValue>* pConfig, 00039 EngineChannel::ChannelOrientation defaultOrientation = CENTER); 00040 virtual ~EngineDeck(); 00041 00042 virtual void process(const CSAMPLE *pIn, const CSAMPLE *pOut, const int iBufferSize); 00043 00044 // TODO(XXX) This hack needs to be removed. 00045 virtual EngineBuffer* getEngineBuffer(); 00046 00047 virtual bool isActive(); 00048 private: 00049 ConfigObject<ConfigValue>* m_pConfig; 00050 EngineBuffer* m_pBuffer; 00051 EngineClipping* m_pClipping; 00052 EngineFilterBlock* m_pFilter; 00053 EngineFlanger* m_pFlanger; 00054 EnginePregain* m_pPregain; 00055 EngineVinylSoundEmu* m_pVinylSoundEmu; 00056 EngineVuMeter* m_pVUMeter; 00057 }; 00058 00059 #endif