Mixxx

/home/maxime/Projets/Mixxx/1.10/mixxx/src/engine/enginevinylsoundemu.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                           enginevinylsoundemu.h  -  description
00003                              -------------------
00004     copyright            : (C) 2007 by Albert Santoni
00005     email                :
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *   This program is free software; you can redistribute it and/or modify  *
00011  *   it under the terms of the GNU General Public License as published by  *
00012  *   the Free Software Foundation; either version 2 of the License, or     *
00013  *   (at your option) any later version.                                   *
00014  *                                                                         *
00015  ***************************************************************************/
00016 
00017 #ifndef ENGINEVINYLSOUNDEMU_H
00018 #define ENGINEVINYLSOUNDEMU_H
00019 
00020 #include "engineobject.h"
00021 
00022 #define NOISE_BUFFER_SIZE 1000
00023 class EngineVinylSoundEmu : public EngineObject
00024 {
00025 public:
00026     EngineVinylSoundEmu(ConfigObject<ConfigValue> *pConfig, const char *group);
00027     ~EngineVinylSoundEmu();
00028     void process(const CSAMPLE *pIn, const CSAMPLE *pOut, const int iBufferSize);
00029 private:
00030     ConfigObject<ConfigValue> *m_pConfig;
00031     ControlObject *m_pRateEngine;
00032     float m_fSpeed, m_fOldSpeed;
00033     float m_fGainFactor;
00034     
00035     float m_fNoise[NOISE_BUFFER_SIZE];
00036     int m_iNoisePos;
00037 };
00038 
00039 
00040 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines