Renamed MIDI and audio related classes/files to match new style

Renamed all MIDI and audio related classes/files to match new style.
Additionally various cleanups.
(cherry picked from commit b8ebfbd06a)
This commit is contained in:
Tobias Doerffel
2009-08-13 00:39:26 +02:00
parent fb733051bd
commit 55337ad2be
83 changed files with 1410 additions and 1526 deletions

View File

@@ -1,8 +1,8 @@
/*
* audio_alsa.h - device-class that implements ALSA-PCM-output
* AudioAlsa.h - device-class that implements ALSA-PCM-output
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_ALSA_H
#define _AUDIO_ALSA_H
@@ -35,35 +34,35 @@
#include <alsa/asoundlib.h>
#include "audio_device.h"
#include "AudioDevice.h"
class lcdSpinBox;
class QLineEdit;
class audioALSA : public audioDevice, public QThread
class AudioAlsa : public AudioDevice, public QThread
{
public:
audioALSA( bool & _success_ful, mixer * _mixer );
virtual ~audioALSA();
AudioAlsa( bool & _success_ful, mixer * _mixer );
virtual ~AudioAlsa();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"ALSA (Advanced Linux Sound Architecture)" ) );
return QT_TRANSLATE_NOOP( "setupWidget",
"ALSA (Advanced Linux Sound Architecture)" );
}
static QString probeDevice( void );
static QString probeDevice();
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -73,13 +72,13 @@ public:
private:
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void run( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
virtual void run();
int setHWParams( const ch_cnt_t _channels, snd_pcm_access_t _access );
int setSWParams( void );
int setSWParams();
int handleError( int _err );

View File

@@ -1,8 +1,8 @@
/*
* audio_device.h - base-class for audio-devices, used by LMMS-mixer
* AudioDevice.h - base-class for audio-devices, used by LMMS-mixer
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_DEVICE_H
#define _AUDIO_DEVICE_H
@@ -34,61 +33,60 @@
#include "tab_widget.h"
class audioPort;
class AudioPort;
class audioDevice
class AudioDevice
{
public:
audioDevice( const ch_cnt_t _channels, mixer * _mixer );
virtual ~audioDevice();
AudioDevice( const ch_cnt_t _channels, mixer * _mixer );
virtual ~AudioDevice();
inline void lock( void )
inline void lock()
{
m_devMutex.lock();
}
inline void unlock( void )
inline void unlock()
{
m_devMutex.unlock();
}
// if audio-driver supports ports, classes inherting audioPort
// if audio-driver supports ports, classes inherting AudioPort
// (e.g. channel-tracks) can register themselves for making
// audio-driver able to collect their individual output and provide
// them at a specific port - currently only supported by JACK
virtual void registerPort( audioPort * _port );
virtual void unregisterPort( audioPort * _port );
virtual void renamePort( audioPort * _port );
virtual void registerPort( AudioPort * _port );
virtual void unregisterPort( AudioPort * _port );
virtual void renamePort( AudioPort * _port );
inline bool supportsCapture( void ) const
inline bool supportsCapture() const
{
return( m_supportsCapture );
return m_supportsCapture;
}
inline sample_rate_t sampleRate( void ) const
inline sample_rate_t sampleRate() const
{
return( m_sampleRate );
return m_sampleRate;
}
ch_cnt_t channels( void ) const
ch_cnt_t channels() const
{
return( m_channels );
return m_channels;
}
void processNextBuffer( void );
void processNextBuffer();
virtual void startProcessing( void )
virtual void startProcessing()
{
m_inProcess = TRUE;
m_inProcess = true;
}
virtual void stopProcessing( void );
virtual void stopProcessing();
virtual void applyQualitySettings( void );
virtual void applyQualitySettings();
@@ -106,9 +104,9 @@ public:
{
}
virtual void saveSettings( void ) = 0;
virtual void saveSettings() = 0;
virtual void show( void )
virtual void show()
{
parentWidget()->show();
QWidget::show();
@@ -145,12 +143,13 @@ protected:
m_sampleRate = _new_sr;
}
mixer * getMixer( void )
mixer * getMixer()
{
return( m_mixer );
return m_mixer;
}
bool hqAudio( void ) const;
bool hqAudio() const;
protected:

View File

@@ -1,5 +1,5 @@
/*
* audio_dummy.h - dummy-audio-device
* AudioDummy.h - dummy audio-device
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
@@ -25,37 +25,36 @@
#ifndef _AUDIO_DUMMY_H
#define _AUDIO_DUMMY_H
#include "audio_device.h"
#include "AudioDevice.h"
#include "Cpu.h"
#include "micro_timer.h"
#include "MicroTimer.h"
class audioDummy : public audioDevice, public QThread
class AudioDummy : public AudioDevice, public QThread
{
public:
audioDummy( bool & _success_ful, mixer * _mixer ) :
audioDevice( DEFAULT_CHANNELS, _mixer )
AudioDummy( bool & _success_ful, mixer * _mixer ) :
AudioDevice( DEFAULT_CHANNELS, _mixer )
{
_success_ful = TRUE;
_success_ful = true;
}
virtual ~audioDummy()
virtual ~AudioDummy()
{
stopProcessing();
}
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"Dummy (no sound output)" ) );
return QT_TRANSLATE_NOOP( "setupWidget", "Dummy (no sound output)" );
}
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent ) :
audioDevice::setupWidget( audioDummy::name(), _parent )
AudioDevice::setupWidget( AudioDummy::name(), _parent )
{
}
@@ -93,7 +92,7 @@ private:
virtual void run()
{
microTimer timer;
MicroTimer timer;
while( true )
{
timer.reset();

View File

@@ -1,9 +1,9 @@
/*
* audio_file_device.h - base-class for audio-device-classes which write
* their output into a file
* AudioFileDevice.h - base-class for audio-device-classes which write
* their output into a file
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -26,17 +26,15 @@
#ifndef _AUDIO_FILE_DEVICE_H
#define _AUDIO_FILE_DEVICE_H
#include <QtCore/QFile>
#include "audio_device.h"
#include "AudioDevice.h"
class audioFileDevice : public audioDevice
class AudioFileDevice : public AudioDevice
{
public:
audioFileDevice( const sample_rate_t _sample_rate,
AudioFileDevice( const sample_rate_t _sample_rate,
const ch_cnt_t _channels, const QString & _file,
const bool _use_vbr,
const bitrate_t _nom_bitrate,
@@ -44,45 +42,45 @@ public:
const bitrate_t _max_bitrate,
const int _depth,
mixer * _mixer );
virtual ~audioFileDevice();
virtual ~AudioFileDevice();
QString outputFile( void ) const
QString outputFile() const
{
return( m_outputFile.fileName() );
return m_outputFile.fileName();
}
protected:
Sint32 writeData( const void * _data, Sint32 _len );
inline bool useVBR( void ) const
inline bool useVBR() const
{
return( m_useVbr );
return m_useVbr;
}
inline bitrate_t nominalBitrate( void ) const
inline bitrate_t nominalBitrate() const
{
return( m_nomBitrate );
return m_nomBitrate;
}
inline bitrate_t minBitrate( void ) const
inline bitrate_t minBitrate() const
{
return( m_minBitrate );
return m_minBitrate;
}
inline bitrate_t maxBitrate( void ) const
inline bitrate_t maxBitrate() const
{
return( m_maxBitrate );
return m_maxBitrate;
}
inline int depth( void ) const
inline int depth() const
{
return( m_depth );
return m_depth;
}
inline bool outputFileOpened( void ) const
inline bool outputFileOpened() const
{
return( m_outputFile.isOpen() );
return m_outputFile.isOpen();
}
@@ -100,7 +98,7 @@ private:
} ;
typedef audioFileDevice * ( * audioFileDeviceInstantiaton )
typedef AudioFileDevice * ( * AudioFileDeviceInstantiaton )
( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,

View File

@@ -1,5 +1,5 @@
/*
* audio_file_flac.h - Audio-device which encodes a flac stream and writes it
* AudioFileFlac.h - Audio-device which encodes a flac stream and writes it
* into a flac file. This is used for song-export.
*
* Copyright (c) 2009 Andrew Kelley <superjoe30@gmail.com>
@@ -23,17 +23,16 @@
*
*/
#ifndef _AUDIO_FILE_FLAC_H_
#define _AUDIO_FILE_FLAC_H_
#include <QFile>
#include "audio_file_device.h"
#include "AudioFileDevice.h"
#include "FLAC++/metadata.h"
#include "FLAC++/encoder.h"
class AudioFileFlac : public audioFileDevice
class AudioFileFlac : public AudioFileDevice
{
public:
AudioFileFlac( const sample_rate_t _sample_rate,
@@ -48,7 +47,7 @@ public:
mixer * _mixer );
virtual ~AudioFileFlac();
static audioFileDevice * getInst( const sample_rate_t _sample_rate,
static AudioFileDevice * getInst( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -59,11 +58,11 @@ public:
const int _depth,
mixer * _mixer )
{
return( new AudioFileFlac( _sample_rate, _channels,
return new AudioFileFlac( _sample_rate, _channels,
_success_ful, _file, _use_vbr,
_nom_bitrate, _min_bitrate,
_max_bitrate, _depth,
_mixer ) );
_mixer );
}

View File

@@ -1,6 +1,6 @@
/*
* audio_file_mp3.h - Audio-device which encodes mp3-stream and writes it
* into an mp3-file. This is used for song-export.
* AudioFileMp3.h - Audio-device which encodes mp3-stream and writes it
* into an mp3-file. This is used for song-export.
*
* Copyright (c) 2009 Andrew Kelley <superjoe30@gmail.com>
*
@@ -23,7 +23,6 @@
*
*/
#ifndef _AUDIO_FILE_MP3_H
#define _AUDIO_FILE_MP3_H
@@ -31,9 +30,9 @@
#include "lame_library.h"
#include "lmmsconfig.h"
#include "audio_file_device.h"
#include "AudioFileDevice.h"
class AudioFileMp3 : public audioFileDevice
class AudioFileMp3 : public AudioFileDevice
{
public:
AudioFileMp3( const sample_rate_t _sample_rate,
@@ -48,7 +47,7 @@ public:
mixer * _mixer );
virtual ~AudioFileMp3();
static audioFileDevice * getInst( const sample_rate_t _sample_rate,
static AudioFileDevice * getInst( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -59,11 +58,11 @@ public:
const int _depth,
mixer * _mixer )
{
return( new AudioFileMp3( _sample_rate, _channels,
return new AudioFileMp3( _sample_rate, _channels,
_success_ful, _file, _use_vbr,
_nom_bitrate, _min_bitrate,
_max_bitrate, _depth,
_mixer ) );
_mixer );
}

View File

@@ -1,9 +1,9 @@
/*
* audio_file_ogg.h - Audio-device which encodes wave-stream and writes it
* into an OGG-file. This is used for song-export.
* AudioFileOgg.h - Audio-device which encodes wave-stream and writes it
* into an OGG-file. This is used for song-export.
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,7 +23,6 @@
*
*/
#ifndef _AUDIO_FILE_OGG_H
#define _AUDIO_FILE_OGG_H
@@ -33,14 +32,13 @@
#include <vorbis/codec.h>
#include "audio_file_device.h"
#include "AudioFileDevice.h"
class audioFileOgg : public audioFileDevice
class AudioFileOgg : public AudioFileDevice
{
public:
audioFileOgg( const sample_rate_t _sample_rate,
AudioFileOgg( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -50,9 +48,9 @@ public:
const bitrate_t _max_bitrate,
const int _depth,
mixer * _mixer );
virtual ~audioFileOgg();
virtual ~AudioFileOgg();
static audioFileDevice * getInst( const sample_rate_t _sample_rate,
static AudioFileDevice * getInst( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -63,10 +61,10 @@ public:
const int _depth,
mixer * _mixer )
{
return( new audioFileOgg( _sample_rate, _channels, _success_ful,
return new AudioFileOgg( _sample_rate, _channels, _success_ful,
_file, _use_vbr, _nom_bitrate,
_min_bitrate, _max_bitrate,
_depth, _mixer ) );
_depth, _mixer );
}
@@ -75,9 +73,9 @@ private:
const fpp_t _frames,
const float _master_gain );
bool startEncoding( void );
void finishEncoding( void );
inline Sint32 writePage( void );
bool startEncoding();
void finishEncoding();
inline Sint32 writePage();
bool m_ok;

View File

@@ -1,9 +1,9 @@
/*
* audio_file_wave.h - Audio-device which encodes wave-stream and writes it
* into an WAVE-file. This is used for song-export.
* AudioFileWave.h - AudioDevice which encodes wave-stream and writes it
* into a WAVE-file. This is used for song-export.
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,21 +23,19 @@
*
*/
#ifndef _AUDIO_FILE_WAVE_H
#define _AUDIO_FILE_WAVE_H
#include "lmmsconfig.h"
#include "audio_file_device.h"
#include "AudioFileDevice.h"
#include <sndfile.h>
class audioFileWave : public audioFileDevice
class AudioFileWave : public AudioFileDevice
{
public:
audioFileWave( const sample_rate_t _sample_rate,
AudioFileWave( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -47,9 +45,9 @@ public:
const bitrate_t _max_bitrate,
const int _depth,
mixer * _mixer );
virtual ~audioFileWave();
virtual ~AudioFileWave();
static audioFileDevice * getInst( const sample_rate_t _sample_rate,
static AudioFileDevice * getInst( const sample_rate_t _sample_rate,
const ch_cnt_t _channels,
bool & _success_ful,
const QString & _file,
@@ -60,11 +58,11 @@ public:
const int _depth,
mixer * _mixer )
{
return( new audioFileWave( _sample_rate, _channels,
return new AudioFileWave( _sample_rate, _channels,
_success_ful, _file, _use_vbr,
_nom_bitrate, _min_bitrate,
_max_bitrate, _depth,
_mixer ) );
_mixer );
}
@@ -73,8 +71,8 @@ private:
const fpp_t _frames,
float _master_gain );
bool startEncoding( void );
void finishEncoding( void );
bool startEncoding();
void finishEncoding();
SF_INFO m_si;

View File

@@ -1,8 +1,8 @@
/*
* audio_jack.h - support for JACK-transport
* AudioJack.h - support for JACK-transport
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_JACK_H
#define _AUDIO_JACK_H
@@ -36,35 +35,34 @@
#include <QtCore/QList>
#include <QtCore/QMap>
#include "audio_device.h"
#include "AudioDevice.h"
class QLineEdit;
class lcdSpinBox;
class audioJACK : public QObject, public audioDevice
class AudioJack : public QObject, public AudioDevice
{
Q_OBJECT
public:
audioJACK( bool & _success_ful, mixer * _mixer );
virtual ~audioJACK();
AudioJack( bool & _success_ful, mixer * _mixer );
virtual ~AudioJack();
inline static QString name( void )
inline static QString name()
{
return QT_TRANSLATE_NOOP( "setupWidget",
"JACK (JACK Audio Connection Kit)" );
}
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_clientName;
@@ -74,20 +72,20 @@ public:
private slots:
void restartAfterZombified( void );
void restartAfterZombified();
#ifdef LMMS_HAVE_JACK
private:
bool initJackClient( void );
bool initJackClient();
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
virtual void registerPort( audioPort * _port );
virtual void unregisterPort( audioPort * _port );
virtual void renamePort( audioPort * _port );
virtual void registerPort( AudioPort * _port );
virtual void unregisterPort( AudioPort * _port );
virtual void renamePort( AudioPort * _port );
int processCallback( jack_nframes_t _nframes, void * _udata );
@@ -111,17 +109,17 @@ private:
f_cnt_t m_framesToDoInCurBuf;
struct stereoPort
struct StereoPort
{
jack_port_t * ports[2];
} ;
typedef QMap<audioPort *, stereoPort> jackPortMap;
jackPortMap m_portMap;
typedef QMap<AudioPort *, StereoPort> JackPortMap;
JackPortMap m_portMap;
#endif
signals:
void zombified( void );
void zombified();
} ;

View File

@@ -1,8 +1,8 @@
/*
* audio_oss.h - device-class that implements OSS-PCM-output
* AudioOss.h - device-class that implements OSS-PCM-output
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_OSS_H
#define _AUDIO_OSS_H
@@ -30,35 +29,34 @@
#ifdef LMMS_HAVE_OSS
#include "audio_device.h"
#include "AudioDevice.h"
class lcdSpinBox;
class QLineEdit;
class audioOSS : public audioDevice, public QThread
class AudioOss : public AudioDevice, public QThread
{
public:
audioOSS( bool & _success_ful, mixer * _mixer );
virtual ~audioOSS();
AudioOss( bool & _success_ful, mixer * _mixer );
virtual ~AudioOss();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"OSS (Open Sound System)" ) );
return QT_TRANSLATE_NOOP( "setupWidget", "OSS (Open Sound System)" );
}
static QString probeDevice( void );
static QString probeDevice();
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -68,10 +66,10 @@ public:
private:
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void run( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
virtual void run();
int m_audioFD;

View File

@@ -1,8 +1,8 @@
/*
* audio_port.h - base-class for objects providing sound at a port
* AudioPort.h - base-class for objects providing sound at a port
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_PORT_H
#define _AUDIO_PORT_H
@@ -34,47 +33,47 @@
class effectChain;
class audioPort
class AudioPort
{
public:
audioPort( const QString & _name, bool _has_effect_chain = true );
~audioPort();
AudioPort( const QString & _name, bool _has_effect_chain = true );
~AudioPort();
inline sampleFrameA * firstBuffer( void )
inline sampleFrameA * firstBuffer()
{
return m_firstBuffer;
}
inline sampleFrameA * secondBuffer( void )
inline sampleFrameA * secondBuffer()
{
return m_secondBuffer;
}
inline void lockFirstBuffer( void )
inline void lockFirstBuffer()
{
m_firstBufferLock.lock();
}
inline void lockSecondBuffer( void )
inline void lockSecondBuffer()
{
m_secondBufferLock.lock();
}
inline void unlockFirstBuffer( void )
inline void unlockFirstBuffer()
{
m_firstBufferLock.unlock();
}
inline void unlockSecondBuffer( void )
inline void unlockSecondBuffer()
{
m_secondBufferLock.unlock();
}
void nextPeriod( void );
void nextPeriod();
// indicate whether JACK & Co should provide output-buffer at ext. port
inline bool extOutputEnabled( void ) const
inline bool extOutputEnabled() const
{
return m_extOutputEnabled;
}
@@ -84,12 +83,12 @@ public:
// next effect-channel after this audio-port
// (-1 = none 0 = master)
inline fx_ch_t nextFxChannel( void ) const
inline fx_ch_t nextFxChannel() const
{
return m_nextFxChannel;
}
inline effectChain * getEffects( void )
inline effectChain * getEffects()
{
return m_effects;
}
@@ -100,7 +99,7 @@ public:
}
const QString & name( void ) const
const QString & name() const
{
return m_name;
}
@@ -108,7 +107,7 @@ public:
void setName( const QString & _new_name );
bool processEffects( void );
bool processEffects();
enum bufferUsages

View File

@@ -1,8 +1,8 @@
/*
* audio_portaudio.h - device-class that performs PCM-output via PortAudio
* AudioPortAudio.h - device-class that performs PCM-output via PortAudio
*
* Copyright (c) 2008 Csaba Hruska <csaba.hruska/at/gmail.com>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_PORTAUDIO_H
#define _AUDIO_PORTAUDIO_H
@@ -31,12 +30,12 @@
#include "lmmsconfig.h"
#include "combobox_model.h"
class audioPortAudioSetupUtil : public QObject
class AudioPortAudioSetupUtil : public QObject
{
Q_OBJECT
public slots:
void updateDevices( void );
void updateChannels( void );
void updateDevices();
void updateChannels();
public:
comboBoxModel m_backendModel;
@@ -48,7 +47,7 @@ public:
#include <portaudio.h>
#include "audio_device.h"
#include "AudioDevice.h"
#if defined paNeverDropInput || defined paNonInterleaved
# define PORTAUDIO_V19
@@ -61,16 +60,15 @@ class comboBox;
class lcdSpinBox;
class audioPortAudio : public audioDevice
class AudioPortAudio : public AudioDevice
{
public:
audioPortAudio( bool & _success_ful, mixer * _mixer );
virtual ~audioPortAudio();
AudioPortAudio( bool & _success_ful, mixer * _mixer );
virtual ~AudioPortAudio();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"PortAudio" ) );
return QT_TRANSLATE_NOOP( "setupWidget", "PortAudio" );
}
@@ -79,26 +77,26 @@ public:
unsigned long _framesPerBuffer );
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
comboBox * m_backend;
comboBox * m_device;
lcdSpinBox * m_channels;
audioPortAudioSetupUtil m_setupUtil;
AudioPortAudioSetupUtil m_setupUtil;
} ;
private:
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
#ifdef PORTAUDIO_V19
static int _process_callback( const void *_inputBuffer, void * _outputBuffer,

View File

@@ -1,8 +1,8 @@
/*
* audio_pulseaudio.h - device-class which implements PulseAudio-output
* AudioPulseAudio.h - device-class which implements PulseAudio-output
*
* Copyright (c) 2008-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_PULSEAUDIO_H
#define _AUDIO_PULSEAUDIO_H
@@ -32,35 +31,34 @@
#include <pulse/pulseaudio.h>
#include "audio_device.h"
#include "AudioDevice.h"
class lcdSpinBox;
class QLineEdit;
class audioPulseAudio : public audioDevice, public QThread
class AudioPulseAudio : public AudioDevice, public QThread
{
public:
audioPulseAudio( bool & _success_ful, mixer * _mixer );
virtual ~audioPulseAudio();
AudioPulseAudio( bool & _success_ful, mixer * _mixer );
virtual ~AudioPulseAudio();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"PulseAudio (bad latency!)" ) );
return QT_TRANSLATE_NOOP( "setupWidget", "PulseAudio (bad latency!)" );
}
static QString probeDevice( void );
static QString probeDevice();
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -76,10 +74,10 @@ public:
private:
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void run( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
virtual void run();
bool m_convertEndian;

View File

@@ -1,10 +1,9 @@
/*
* audio_sample_recorder.h - device-class that implements recording
* surround-audio-buffers into RAM, maybe later
* also harddisk
* AudioSampleRecorder.h - device-class that implements recording
* audio-buffers into RAM
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -24,28 +23,25 @@
*
*/
#ifndef _AUDIO_SAMPLE_RECORDER_H
#define _AUDIO_SAMPLE_RECORDER_H
#include <QtCore/QList>
#include <QtCore/QPair>
#include "audio_device.h"
#include "AudioDevice.h"
class sampleBuffer;
class audioSampleRecorder : public audioDevice
class AudioSampleRecorder : public AudioDevice
{
public:
audioSampleRecorder( const ch_cnt_t _channels, bool & _success_ful,
AudioSampleRecorder( const ch_cnt_t _channels, bool & _success_ful,
mixer * _mixer );
virtual ~audioSampleRecorder();
virtual ~AudioSampleRecorder();
f_cnt_t framesRecorded( void ) const;
f_cnt_t framesRecorded() const;
void createSampleBuffer( sampleBuffer * * _sample_buf );
@@ -54,8 +50,8 @@ private:
const fpp_t _frames,
const float _master_gain );
typedef QList<QPair<sampleFrame *, fpp_t> > bufferList;
bufferList m_buffers;
typedef QList<QPair<sampleFrame *, fpp_t> > BufferList;
BufferList m_buffers;
} ;

View File

@@ -1,8 +1,8 @@
/*
* audio_sdl.h - device-class that performs PCM-output via SDL
* AudioSdl.h - device-class that performs PCM-output via SDL
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2004-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _AUDIO_SDL_H
#define _AUDIO_SDL_H
@@ -33,32 +32,31 @@
#include <SDL/SDL.h>
#include <SDL/SDL_audio.h>
#include "audio_device.h"
#include "AudioDevice.h"
class QLineEdit;
class audioSDL : public audioDevice
class AudioSdl : public AudioDevice
{
public:
audioSDL( bool & _success_ful, mixer * _mixer );
virtual ~audioSDL();
AudioSdl( bool & _success_ful, mixer * _mixer );
virtual ~AudioSdl();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"SDL (Simple DirectMedia Layer)" ) );
return QT_TRANSLATE_NOOP( "setupWidget",
"SDL (Simple DirectMedia Layer)" );
}
class setupWidget : public audioDevice::setupWidget
class setupWidget : public AudioDevice::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -67,9 +65,9 @@ public:
private:
virtual void startProcessing( void );
virtual void stopProcessing( void );
virtual void applyQualitySettings( void );
virtual void startProcessing();
virtual void stopProcessing();
virtual void applyQualitySettings();
static void sdlAudioCallback( void * _udata, Uint8 * _buf, int _len );
void sdlAudioCallback( Uint8 * _buf, int _len );

View File

@@ -44,7 +44,7 @@ class groupBox;
class tabWidget;
class lcdSpinBox;
class ledCheckBox;
class midiPortMenu;
class MidiPortMenu;
@@ -80,7 +80,7 @@ private:
lcdSpinBox * m_midiChannelSpinBox;
lcdSpinBox * m_midiControllerSpinBox;
ledCheckBox * m_midiAutoDetectCheckBox;
midiPortMenu * m_readablePorts;
MidiPortMenu * m_readablePorts;
boolModel m_midiAutoDetect;
// User

View File

@@ -1,9 +1,9 @@
/*
* dummy_midi_event_processor.h - implementation of a MidiEventProcessor that
* does nothing besides updating the baseNoteModel.
* DummyMidiEventProcessor.h - implementation of a MidiEventProcessor that
* does nothing besides updating the baseNoteModel.
*
* Copyright (c) 2009 Achim Settelmeier <lmms/at/m1.sirlab.de>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,13 +23,11 @@
*
*/
#ifndef _DUMMY_MIDI_EVENT_PROCESSOR_H
#define _DUMMY_MIDI_EVENT_PROCESSOR_H
#include "midi_event_processor.h"
#include "MidiEventProcessor.h"
// all classes being able to process MIDI-events should inherit from this
class DummyMidiEventProcessor : public MidiEventProcessor
{
public:
@@ -37,11 +35,11 @@ public:
MidiEventProcessor(),
m_updateBaseNote( false )
{
};
}
virtual inline ~DummyMidiEventProcessor()
{
};
}
inline void setUpdateBaseNote( bool _updateBaseNote )
{
@@ -55,16 +53,17 @@ public:
{
baseNoteModel()->setValue( _me.key() );
}
};
}
virtual void processOutEvent( const midiEvent & _me,
const midiTime & _time )
{
// nop
};
}
private:
bool m_updateBaseNote;
} ;
#endif

View File

@@ -1,8 +1,8 @@
/*
* micro_timer.h - simple high-precision timer
* MicroTimer.h - simple high-precision timer
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MICRO_TIMER
#define _MICRO_TIMER
@@ -36,29 +35,29 @@
#include "lmms_basics.h"
class microTimer
class MicroTimer
{
public:
inline microTimer( void )
inline MicroTimer()
{
reset();
}
inline ~microTimer()
inline ~MicroTimer()
{
}
inline void reset( void )
inline void reset()
{
gettimeofday( &begin, NULL );
}
inline int elapsed( void ) const
inline int elapsed() const
{
struct timeval now;
gettimeofday( &now, NULL );
return( ( now.tv_sec - begin.tv_sec ) * 1000 * 1000 +
( now.tv_usec - begin.tv_usec ) );
return ( now.tv_sec - begin.tv_sec ) * 1000 * 1000 +
( now.tv_usec - begin.tv_usec );
}

View File

@@ -1,8 +1,8 @@
/*
* midi_alsa_raw.h - midi-client for RawMIDI via ALSA
* MidiAlsaRaw.h - midi-client for RawMIDI via ALSA
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIDI_ALSA_RAW_H
#define _MIDI_ALSA_RAW_H
@@ -34,36 +33,36 @@
#include <QtCore/QThread>
#include "midi_client.h"
#include "MidiClient.h"
struct pollfd;
class QLineEdit;
class midiALSARaw : public midiClientRaw, public QThread
class MidiAlsaRaw : public MidiClientRaw , public QThread
{
public:
midiALSARaw( void );
virtual ~midiALSARaw();
MidiAlsaRaw();
virtual ~MidiAlsaRaw();
static QString probeDevice( void );
static QString probeDevice();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"ALSA Raw-MIDI (Advanced Linux Sound Architecture)" ) );
return QT_TRANSLATE_NOOP( "setupWidget",
"ALSA Raw-MIDI (Advanced Linux Sound Architecture)" );
}
class setupWidget : public midiClientRaw::setupWidget
class setupWidget : public MidiClientRaw::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -73,7 +72,7 @@ public:
protected:
virtual void sendByte( const Uint8 _c );
virtual void run( void );
virtual void run();
private:

View File

@@ -1,8 +1,8 @@
/*
* midi_alsa_seq.h - ALSA-sequencer-client
* MidiAlsaSeq.h - ALSA-sequencer-client
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIDI_ALSA_SEQ_H
#define _MIDI_ALSA_SEQ_H
@@ -36,60 +35,60 @@
#include <QtCore/QTimer>
#include "midi_client.h"
#include "MidiClient.h"
struct pollfd;
class QLineEdit;
class midiALSASeq : public QThread, public midiClient
class MidiAlsaSeq : public QThread, public MidiClient
{
Q_OBJECT
public:
midiALSASeq( void );
virtual ~midiALSASeq();
MidiAlsaSeq();
virtual ~MidiAlsaSeq();
static QString probeDevice( void );
static QString probeDevice();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
return QT_TRANSLATE_NOOP( "setupWidget",
"ALSA-Sequencer (Advanced Linux Sound "
"Architecture)" ) );
"Architecture)" );
}
virtual void processOutEvent( const midiEvent & _me,
const midiTime & _time,
const midiPort * _port );
const MidiPort * _port );
virtual void applyPortMode( midiPort * _port );
virtual void applyPortName( midiPort * _port );
virtual void applyPortMode( MidiPort * _port );
virtual void applyPortName( MidiPort * _port );
virtual void removePort( midiPort * _port );
virtual void removePort( MidiPort * _port );
// list seq-ports from ALSA
virtual QStringList readablePorts( void ) const
virtual QStringList readablePorts() const
{
return m_readablePorts;
}
virtual QStringList writablePorts( void ) const
virtual QStringList writablePorts() const
{
return m_writablePorts;
}
// (un)subscribe given midiPort to/from destination-port
virtual void subscribeReadablePort( midiPort * _port,
// (un)subscribe given MidiPort to/from destination-port
virtual void subscribeReadablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
virtual void subscribeWritablePort( midiPort * _port,
bool _subscribe = true );
virtual void subscribeWritablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
bool _subscribe = true );
virtual void connectRPChanged( QObject * _receiver,
const char * _member )
{
@@ -105,13 +104,13 @@ public:
}
class setupWidget : public midiClient::setupWidget
class setupWidget : public MidiClient::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -121,21 +120,21 @@ public:
private slots:
void changeQueueTempo( bpm_t _bpm );
void updatePortList( void );
void updatePortList();
private:
virtual void run( void );
virtual void run();
#ifdef LMMS_HAVE_ALSA
snd_seq_t * m_seqHandle;
struct ports
struct Ports
{
ports() { p[0] = -1; p[1] = -1; }
int & operator[]( const int _i ) { return( p[_i] ); }
Ports() { p[0] = -1; p[1] = -1; }
int & operator[]( const int _i ) { return p[_i]; }
private: int p[2];
} ;
QMap<midiPort *, ports> m_portIDs;
QMap<MidiPort *, Ports> m_portIDs;
#endif
int m_queueID;
@@ -150,8 +149,8 @@ private:
signals:
void readablePortsChanged( void );
void writablePortsChanged( void );
void readablePortsChanged();
void writablePortsChanged();
} ;

View File

@@ -1,8 +1,8 @@
/*
* midi_client.h - base-class for MIDI-clients like ALSA-sequencer-client
* MidiClient.h - base-class for MIDI clients like ALSA-sequencer-client
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIDI_CLIENT_H
#define _MIDI_CLIENT_H
@@ -31,60 +30,60 @@
#include "midi.h"
#include "midi_event_processor.h"
#include "MidiEventProcessor.h"
#include "tab_widget.h"
class midiPort;
class MidiPort;
// base-class for all MIDI-clients
class midiClient
class MidiClient
{
public:
midiClient( void );
virtual ~midiClient();
MidiClient();
virtual ~MidiClient();
// to be implemented by sub-classes
virtual void processOutEvent( const midiEvent & _me,
const midiTime & _time,
const midiPort * _port ) = 0;
const MidiPort * _port ) = 0;
// inheriting classes can re-implement this for being able to update
// their internal port-structures etc.
virtual void applyPortMode( midiPort * _port );
virtual void applyPortName( midiPort * _port );
virtual void applyPortMode( MidiPort * _port );
virtual void applyPortName( MidiPort * _port );
virtual void addPort( midiPort * _port );
virtual void addPort( MidiPort * _port );
// re-implemented methods HAVE to call removePort() of base-class!!
virtual void removePort( midiPort * _port );
virtual void removePort( MidiPort * _port );
// returns whether client works with raw-MIDI, only needs to be
// re-implemented by midiClientRaw for returning TRUE
virtual bool isRaw( void ) const
// re-implemented by MidiClientRaw for returning true
virtual bool isRaw() const
{
return( FALSE );
return false;
}
// if not raw-client, return all readable/writable ports
virtual QStringList readablePorts( void ) const
virtual QStringList readablePorts() const
{
return QStringList();
}
virtual QStringList writablePorts( void ) const
virtual QStringList writablePorts() const
{
return QStringList();
}
// (un)subscribe given midiPort to/from destination-port
virtual void subscribeReadablePort( midiPort * _port,
// (un)subscribe given MidiPort to/from destination-port
virtual void subscribeReadablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
virtual void subscribeWritablePort( midiPort * _port,
bool _subscribe = true );
virtual void subscribeWritablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
bool _subscribe = true );
// qobject-derived classes can use this for make a slot being
// connected to signal of non-raw-MIDI-client if port-lists change
@@ -98,7 +97,7 @@ public:
// tries to open either MIDI-driver from config-file or (if it fails)
// any other working
static midiClient * openMidiClient( void );
static MidiClient * openMidiClient();
class setupWidget : public tabWidget
@@ -115,9 +114,9 @@ public:
{
}
virtual void saveSettings( void ) = 0;
virtual void saveSettings() = 0;
virtual void show( void )
virtual void show()
{
parentWidget()->show();
QWidget::show();
@@ -127,7 +126,7 @@ public:
protected:
QVector<midiPort *> m_midiPorts;
QVector<MidiPort *> m_midiPorts;
} ;
@@ -137,16 +136,16 @@ protected:
const Uint8 RAW_MIDI_PARSE_BUF_SIZE = 16;
class midiClientRaw : public midiClient
class MidiClientRaw : public MidiClient
{
public:
midiClientRaw( void );
virtual ~midiClientRaw();
MidiClientRaw();
virtual ~MidiClientRaw();
// we are raw-clients for sure!
virtual bool isRaw( void ) const
virtual bool isRaw() const
{
return( TRUE );
return true;
}
@@ -163,7 +162,7 @@ private:
void processParsedEvent();
virtual void processOutEvent( const midiEvent & _me,
const midiTime & _time,
const midiPort * _port );
const MidiPort * _port );
// small helper function returning length of a certain event - this
// is neccessary for parsing raw-MIDI-data

View File

@@ -1,7 +1,7 @@
/*
* midi_control_listener.h - listens to MIDI source(s) for commands that
* start/stops LMMS' transportation,
* or toggles loop
* MidiControlListener.h - listens to MIDI source(s) for commands that
* start/stops LMMS' transportation,
* or toggles loop
*
* Copyright (c) 2009 Achim Settelmeier <lmms/at/m1.sirlab.de>
*
@@ -27,8 +27,8 @@
#ifndef _MIDI_CONTROL_LISTENER_H
#define _MIDI_CONTROL_LISTENER_H
#include "midi_event_processor.h"
#include "midi_port.h"
#include "MidiEventProcessor.h"
#include "MidiPort.h"
#include "note.h"
#include <QtCore/QString>
#include <QtCore/QPair>
@@ -68,8 +68,8 @@ public:
static void rememberConfiguration( QDomDocument &doc );
public:
MidiControlListener( void );
virtual ~MidiControlListener( void );
MidiControlListener();
virtual ~MidiControlListener();
virtual void processInEvent( const midiEvent & _me,
const midiTime & _time );
@@ -80,9 +80,9 @@ public:
void saveConfiguration( QDomDocument &doc );
void readConfiguration( void );
void readConfiguration();
inline bool getEnabled( void )
inline bool getEnabled()
{
return m_listenerEnabled;
}
@@ -93,7 +93,7 @@ public:
m_controlKeyCount = 0;
}
inline bool getUseControlKey( void )
inline bool getUseControlKey()
{
return m_useControlKey;
}
@@ -104,7 +104,7 @@ public:
m_controlKeyCount = 0;
}
inline int getChannel( void )
inline int getChannel()
{
return m_channel;
}
@@ -115,7 +115,7 @@ public:
m_controlKeyCount = 0;
}
inline ActionMap getActionMapKeys( void )
inline ActionMap getActionMapKeys()
{
return m_actionMapKeys;
}
@@ -126,7 +126,7 @@ public:
m_controlKeyCount = 0;
}
inline ActionMap getActionMapControllers( void )
inline ActionMap getActionMapControllers()
{
return m_actionMapControllers;
}
@@ -137,7 +137,7 @@ public:
m_controlKeyCount = 0;
}
inline midiPort * getMidiPort( void )
inline MidiPort * midiPort()
{
return &m_port;
}
@@ -149,7 +149,7 @@ private:
void act( EventAction _action );
midiPort m_port;
MidiPort m_port;
int m_controlKeyCount; // 0: no control key(s) pressed, 1-n: control keys pressed

View File

@@ -29,11 +29,11 @@
#include "automatable_model.h"
#include "Controller.h"
#include "midi_event_processor.h"
#include "midi_port.h"
#include "MidiEventProcessor.h"
#include "MidiPort.h"
class midiPort;
class MidiPort;
class MidiController : public Controller, public MidiEventProcessor
@@ -57,7 +57,7 @@ public:
virtual QString nodeName( void ) const;
// Used by controllerConnectionDialog to copy
void subscribeReadablePorts( const midiPort::map & _map );
void subscribeReadablePorts( const MidiPort::Map & _map );
public slots:
@@ -70,7 +70,7 @@ protected:
virtual float value( int _offset );
midiPort m_midiPort;
MidiPort m_midiPort;
float m_lastValue;

View File

@@ -1,8 +1,8 @@
/*
* midi_dummy.h - dummy MIDI-driver
* MidiDummy.h - dummy MIDI-driver
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,36 +22,34 @@
*
*/
#ifndef _MIDI_DUMMY_H
#define _MIDI_DUMMY_H
#include "midi_client.h"
#include "MidiClient.h"
class midiDummy : public midiClientRaw
class MidiDummy : public MidiClientRaw
{
public:
midiDummy( void )
MidiDummy()
{
}
virtual ~midiDummy()
virtual ~MidiDummy()
{
}
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"Dummy (no MIDI support)" ) );
}
class setupWidget : public midiClient::setupWidget
class setupWidget : public MidiClient::setupWidget
{
public:
setupWidget( QWidget * _parent ) :
midiClientRaw::setupWidget( midiDummy::name(), _parent )
MidiClientRaw::setupWidget( MidiDummy::name(), _parent )
{
}
@@ -59,11 +57,11 @@ public:
{
}
virtual void saveSettings( void )
virtual void saveSettings()
{
}
virtual void show( void )
virtual void show()
{
parentWidget()->hide();
QWidget::show();

View File

@@ -1,6 +1,5 @@
/*
* midi_event_processor.h - class MidiEventProcessor, a base class for all
* midi-processing classes
* MidiEventProcessor.h - base-class for midi-processing classes
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
@@ -23,7 +22,6 @@
*
*/
#ifndef _MIDI_EVENT_PROCESSOR_H
#define _MIDI_EVENT_PROCESSOR_H

View File

@@ -1,8 +1,8 @@
/*
* midi_oss.h - OSS-raw-midi-client
* MidiOss.h - OSS raw MIDI client
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIDI_OSS_H
#define _MIDI_OSS_H
@@ -33,35 +32,35 @@
#include <QtCore/QThread>
#include <QtCore/QFile>
#include "midi_client.h"
#include "MidiClient.h"
class QLineEdit;
class midiOSS : public midiClientRaw, public QThread
class MidiOss : public MidiClientRaw, public QThread
{
public:
midiOSS( void );
virtual ~midiOSS();
MidiOss();
virtual ~MidiOss();
static QString probeDevice( void );
static QString probeDevice();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget",
"OSS Raw-MIDI (Open Sound System)" ) );
}
class setupWidget : public midiClientRaw::setupWidget
class setupWidget : public MidiClientRaw::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void );
virtual void saveSettings();
private:
QLineEdit * m_device;
@@ -71,7 +70,7 @@ public:
protected:
virtual void sendByte( const Uint8 _c );
virtual void run( void );
virtual void run();
private:

View File

@@ -1,9 +1,9 @@
/*
* midi_port.h - abstraction of MIDI-ports which are part of LMMS's MIDI-
* sequencing system
* MidiPort.h - abstraction of MIDI ports which are part of LMMS's MIDI-
* sequencing system
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,7 +23,6 @@
*
*/
#ifndef _MIDI_PORT_H
#define _MIDI_PORT_H
@@ -35,14 +34,14 @@
#include "automatable_model.h"
class midiClient;
class MidiClient;
class MidiEventProcessor;
class midiPortMenu;
class MidiPortMenu;
class midiTime;
// class for abstraction of MIDI-port
class midiPort : public model, public serializingObject
class MidiPort : public model, public serializingObject
{
Q_OBJECT
mapPropertyFromModel(int,inputChannel,setInputChannel,
@@ -62,7 +61,7 @@ class midiPort : public model, public serializingObject
mapPropertyFromModel(bool,isReadable,setReadable,m_readableModel);
mapPropertyFromModel(bool,isWritable,setWritable,m_writableModel);
public:
typedef QMap<QString, bool> map;
typedef QMap<QString, bool> Map;
enum Modes
{
@@ -72,12 +71,12 @@ public:
Duplex // both directions
} ;
midiPort( const QString & _name,
midiClient * _mc,
MidiPort( const QString & _name,
MidiClient * _mc,
MidiEventProcessor * _mep,
model * _parent = NULL,
Modes _mode = Disabled );
virtual ~midiPort();
virtual ~MidiPort();
void setName( const QString & _name );
@@ -120,12 +119,12 @@ public:
void subscribeWritablePort( const QString & _port,
bool _subscribe = TRUE );
const map & readablePorts() const
const Map & readablePorts() const
{
return m_readablePorts;
}
const map & writablePorts() const
const Map & writablePorts() const
{
return m_writablePorts;
}
@@ -138,8 +137,8 @@ public:
unsubscribeAllWriteablePorts();
}
midiPortMenu * m_readablePortsMenu;
midiPortMenu * m_writablePortsMenu;
MidiPortMenu * m_readablePortsMenu;
MidiPortMenu * m_writablePortsMenu;
public slots:
@@ -153,7 +152,7 @@ private slots:
private:
midiClient * m_midiClient;
MidiClient * m_midiClient;
MidiEventProcessor * m_midiEventProcessor;
Modes m_mode;
@@ -168,8 +167,8 @@ private:
boolModel m_readableModel;
boolModel m_writableModel;
map m_readablePorts;
map m_writablePorts;
Map m_readablePorts;
Map m_writablePorts;
friend class ControllerConnectionDialog;
@@ -185,7 +184,7 @@ signals:
} ;
typedef QList<midiPort *> midiPortList;
typedef QList<MidiPort *> MidiPortList;
#endif

View File

@@ -1,9 +1,9 @@
/*
* midi_port_menu.h - a menu for subscribing a midiPort to several external
* MIDI ports
* MidiPortMenu.h - a menu for subscribing a MidiPort to several external
* MIDI ports
*
* Copyright (c) 2008-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,36 +23,35 @@
*
*/
#ifndef _MIDI_PORT_MENU_H
#define _MIDI_PORT_MENU_H
#include <QtGui/QMenu>
#include "mv_base.h"
#include "midi_port.h"
#include "MidiPort.h"
class QAction;
class midiPortMenu : public QMenu, public modelView
class MidiPortMenu : public QMenu, public modelView
{
Q_OBJECT
public:
midiPortMenu( midiPort::Modes _mode );
virtual ~midiPortMenu();
MidiPortMenu( MidiPort::Modes _mode );
virtual ~MidiPortMenu();
protected slots:
void activatedPort( QAction * _item );
void updatePorts( void );
void updatePorts();
private:
virtual void modelChanged( void );
virtual void modelChanged();
midiPort::Modes m_mode;
MidiPort::Modes m_mode;
} ;

View File

@@ -1,8 +1,8 @@
/*
* midi_winmm.h - WinMM MIDI client
* MidiWinMM.h - WinMM MIDI client
*
* Copyright (c) 2008-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIDI_WINMM_H
#define _MIDI_WINMM_H
@@ -33,58 +32,58 @@
#include <mmsystem.h>
#endif
#include "midi_client.h"
#include "midi_port.h"
#include "MidiClient.h"
#include "MidiPort.h"
class QLineEdit;
class midiWinMM : public QObject, public midiClient
class MidiWinMM : public QObject, public MidiClient
{
Q_OBJECT
public:
midiWinMM( void );
virtual ~midiWinMM();
MidiWinMM();
virtual ~MidiWinMM();
static QString probeDevice( void );
static QString probeDevice();
inline static QString name( void )
inline static QString name()
{
return( QT_TRANSLATE_NOOP( "setupWidget", "WinMM MIDI" ) );
return QT_TRANSLATE_NOOP( "setupWidget", "WinMM MIDI" );
}
virtual void processOutEvent( const midiEvent & _me,
const midiTime & _time,
const midiPort * _port );
const MidiPort * _port );
virtual void applyPortMode( midiPort * _port );
virtual void removePort( midiPort * _port );
virtual void applyPortMode( MidiPort * _port );
virtual void removePort( MidiPort * _port );
#ifdef LMMS_BUILD_WIN32
// list devices as ports
virtual QStringList readablePorts( void ) const
virtual QStringList readablePorts() const
{
return( m_inputDevices.values() );
return m_inputDevices.values();
}
virtual QStringList writeblePorts( void ) const
virtual QStringList writeblePorts() const
{
return( m_outputDevices.values() );
return m_outputDevices.values();
}
#endif
// (un)subscribe given midiPort to/from destination-port
virtual void subscribeReadablePort( midiPort * _port,
// (un)subscribe given MidiPort to/from destination-port
virtual void subscribeReadablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
virtual void subscribeWritablePort( midiPort * _port,
bool _subscribe = true );
virtual void subscribeWritablePort( MidiPort * _port,
const QString & _dest,
bool _subscribe = TRUE );
bool _subscribe = true );
virtual void connectRPChanged( QObject * _receiver,
const char * _member )
{
@@ -99,19 +98,19 @@ public:
_receiver, _member );
}
virtual bool isRaw( void ) const
virtual bool isRaw() const
{
return( FALSE );
return false;
}
class setupWidget : public midiClient::setupWidget
class setupWidget : public MidiClient::setupWidget
{
public:
setupWidget( QWidget * _parent );
virtual ~setupWidget();
virtual void saveSettings( void )
virtual void saveSettings()
{
}
@@ -119,12 +118,12 @@ public:
private:// slots:
void updateDeviceList( void );
void updateDeviceList();
private:
void openDevices( void );
void closeDevices( void );
void openDevices();
void closeDevices();
#ifdef LMMS_BUILD_WIN32
static void WINAPI CALLBACK inputCallback( HMIDIIN _hm, UINT _msg,
@@ -138,14 +137,14 @@ private:
#endif
// subscriptions
typedef QMap<QString, midiPortList> subMap;
subMap m_inputSubs;
subMap m_outputSubs;
typedef QMap<QString, MidiPortList> SubMap;
SubMap m_inputSubs;
SubMap m_outputSubs;
signals:
void readablePortsChanged( void );
void writablePortsChanged( void );
void readablePortsChanged();
void writablePortsChanged();
} ;

View File

@@ -1,8 +1,8 @@
/*
* project_renderer.h - projectRenderer-class for easily rendering projects
* ProjectRenderer.h - ProjectRenderer class for easily rendering projects
*
* Copyright (c) 2008-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -25,12 +25,12 @@
#ifndef _PROJECT_RENDERER_H
#define _PROJECT_RENDERER_H
#include "audio_file_device.h"
#include "AudioFileDevice.h"
#include "lmmsconfig.h"
class QTimer;
class projectRenderer : public QThread
class ProjectRenderer : public QThread
{
Q_OBJECT
public:
@@ -53,14 +53,14 @@ public:
NumDepths
} ;
struct outputSettings
struct OutputSettings
{
sample_rate_t samplerate;
bool vbr;
int bitrate;
Depths depth;
outputSettings( sample_rate_t _sr, bool _vbr, int _bitrate,
OutputSettings( sample_rate_t _sr, bool _vbr, int _bitrate,
Depths _d ) :
samplerate( _sr ),
vbr( _vbr ),
@@ -71,13 +71,13 @@ public:
} ;
projectRenderer( const mixer::qualitySettings & _qs,
const outputSettings & _os,
ProjectRenderer( const mixer::qualitySettings & _qs,
const OutputSettings & _os,
ExportFileFormats _file_format,
const QString & _out_file );
virtual ~projectRenderer();
virtual ~ProjectRenderer();
bool isReady( void ) const
bool isReady() const
{
return m_fileDev != NULL;
}
@@ -91,10 +91,10 @@ public:
}
public slots:
void startProcessing( void );
void abortProcessing( void );
void startProcessing();
void abortProcessing();
void updateConsoleProgress( void );
void updateConsoleProgress();
signals:
@@ -102,9 +102,9 @@ signals:
private:
virtual void run( void );
virtual void run();
audioFileDevice * m_fileDev;
AudioFileDevice * m_fileDev;
mixer::qualitySettings m_qualitySettings;
mixer::qualitySettings m_oldQualitySettings;
@@ -116,16 +116,16 @@ private:
} ;
struct fileEncodeDevice
struct FileEncodeDevice
{
projectRenderer::ExportFileFormats m_fileFormat;
ProjectRenderer::ExportFileFormats m_fileFormat;
const char * m_description;
const char * m_extension;
audioFileDeviceInstantiaton m_getDevInst;
AudioFileDeviceInstantiaton m_getDevInst;
} ;
extern fileEncodeDevice __fileEncodeDevices[];
extern FileEncodeDevice __fileEncodeDevices[];
#endif

View File

@@ -31,7 +31,7 @@
#include "ui_export_project.h"
class projectRenderer;
class ProjectRenderer;
class exportProjectDialog : public QDialog, public Ui::ExportProjectDialog
@@ -54,7 +54,7 @@ private slots:
private:
QString m_fileName;
projectRenderer * m_renderer;
ProjectRenderer * m_renderer;
} ;

View File

@@ -3,7 +3,7 @@
* which holds an instrument-plugin
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,17 +23,16 @@
*
*/
#ifndef _INSTRUMENT_TRACK_H
#define _INSTRUMENT_TRACK_H
#include <QtGui/QPushButton>
#include "audio_port.h"
#include "AudioPort.h"
#include "instrument_functions.h"
#include "instrument_sound_shaping.h"
#include "midi_event_processor.h"
#include "midi_port.h"
#include "MidiEventProcessor.h"
#include "MidiPort.h"
#include "note_play_handle.h"
#include "piano.h"
#include "track.h"
@@ -86,13 +85,13 @@ public:
// filter and so on
void playNote( notePlayHandle * _n, sampleFrame * _working_buffer );
QString instrumentName( void ) const;
inline const instrument * getInstrument( void ) const
QString instrumentName() const;
inline const instrument * getInstrument() const
{
return m_instrument;
}
inline instrument * getInstrument( void )
inline instrument * getInstrument()
{
return m_instrument;
}
@@ -107,7 +106,7 @@ public:
int masterKey( int _midi_key ) const;
// translate pitch to midi-pitch [0,16383]
inline int midiPitch( void ) const
inline int midiPitch() const
{
return (int)( ( m_pitchModel.value()+100 ) * 16383 ) / 200;
}
@@ -134,22 +133,22 @@ public:
// load instrument whose name matches given one
instrument * loadInstrument( const QString & _instrument_name );
inline audioPort * getAudioPort( void )
inline AudioPort * audioPort()
{
return &m_audioPort;
}
inline midiPort * getMidiPort( void )
inline MidiPort * midiPort()
{
return &m_midiPort;
}
Piano * pianoModel( void )
Piano * pianoModel()
{
return &m_piano;
}
bool arpeggiatorEnabled( void ) const
bool arpeggiatorEnabled() const
{
return m_arpeggiator.m_arpEnabledModel.value();
}
@@ -157,56 +156,56 @@ public:
// simple helper for removing midiport-XML-node when loading presets
static void removeMidiPortNode( multimediaProject & _mmp );
floatModel * volumeModel( void )
floatModel * volumeModel()
{
return &m_volumeModel;
}
floatModel * panningModel( void )
floatModel * panningModel()
{
return &m_panningModel;
}
floatModel * pitchModel( void )
floatModel * pitchModel()
{
return &m_pitchModel;
}
intModel * pitchRangeModel( void )
intModel * pitchRangeModel()
{
return &m_pitchRangeModel;
}
intModel * effectChannelModel( void )
intModel * effectChannelModel()
{
return &m_effectChannelModel;
}
signals:
void instrumentChanged( void );
void newNote( void );
void instrumentChanged();
void newNote();
void noteOn( const note & _n );
void noteOff( const note & _n );
void nameChanged( void );
void nameChanged();
protected:
virtual QString nodeName( void ) const
virtual QString nodeName() const
{
return "instrumenttrack";
}
protected slots:
void updateBaseNote( void );
void updatePitch( void );
void updatePitchRange( void );
void updateBaseNote();
void updatePitch();
void updatePitchRange();
private:
audioPort m_audioPort;
midiPort m_midiPort;
AudioPort m_audioPort;
MidiPort m_midiPort;
notePlayHandle * m_notes[NumKeys];
int m_runningMidiNotes[NumKeys];
@@ -246,27 +245,27 @@ public:
instrumentTrackView( instrumentTrack * _it, trackContainerView * _tc );
virtual ~instrumentTrackView();
instrumentTrackWindow * getInstrumentTrackWindow( void );
instrumentTrackWindow * getInstrumentTrackWindow();
instrumentTrack * model( void )
instrumentTrack * model()
{
return castModel<instrumentTrack>();
}
const instrumentTrack * model( void ) const
const instrumentTrack * model() const
{
return castModel<instrumentTrack>();
}
QMenu * midiMenu( void )
QMenu * midiMenu()
{
return m_midiMenu;
}
void freeInstrumentTrackWindow( void );
void freeInstrumentTrackWindow();
static void cleanupWindowPool( void );
static void cleanupWindowPool();
protected:
@@ -276,12 +275,12 @@ protected:
private slots:
void toggleInstrumentWindow( bool _on );
void activityIndicatorPressed( void );
void activityIndicatorReleased( void );
void activityIndicatorPressed();
void activityIndicatorReleased();
void midiInSelected( void );
void midiOutSelected( void );
void midiConfigChanged( void );
void midiInSelected();
void midiOutSelected();
void midiConfigChanged();
private:
@@ -319,17 +318,17 @@ public:
virtual ~instrumentTrackWindow();
// parent for all internal tab-widgets
tabWidget * tabWidgetParent( void )
tabWidget * tabWidgetParent()
{
return m_tabWidget;
}
instrumentTrack * model( void )
instrumentTrack * model()
{
return castModel<instrumentTrack>();
}
const instrumentTrack * model( void ) const
const instrumentTrack * model() const
{
return castModel<instrumentTrack>();
}
@@ -348,8 +347,8 @@ public:
public slots:
void textChanged( const QString & _new_name );
void toggleVisibility( bool _on );
void updateName( void );
void updateInstrumentView( void );
void updateName();
void updateInstrumentView();
protected:
@@ -362,11 +361,11 @@ protected:
protected slots:
void saveSettingsBtnClicked( void );
void saveSettingsBtnClicked();
private:
virtual void modelChanged( void );
virtual void modelChanged();
instrumentTrack * m_track;
instrumentTrackView * m_itv;

View File

@@ -2,7 +2,7 @@
* mixer.h - audio-device-independent mixer for LMMS
*
* Copyright (c) 2004-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _MIXER_H
#define _MIXER_H
@@ -50,9 +49,9 @@
#include "fifo_buffer.h"
class audioDevice;
class midiClient;
class audioPort;
class AudioDevice;
class MidiClient;
class AudioPort;
const fpp_t DEFAULT_BUFFER_SIZE = 256;
@@ -138,7 +137,7 @@ public:
{
}
int sampleRateMultiplier( void ) const
int sampleRateMultiplier() const
{
switch( oversampling )
{
@@ -150,7 +149,7 @@ public:
return 1;
}
int libsrcInterpolation( void ) const
int libsrcInterpolation() const
{
switch( interpolation )
{
@@ -167,45 +166,45 @@ public:
}
} ;
void initDevices( void );
void clear( void );
void initDevices();
void clear();
// audio-device-stuff
inline const QString & audioDevName( void ) const
inline const QString & audioDevName() const
{
return m_audioDevName;
}
void setAudioDevice( audioDevice * _dev );
void setAudioDevice( audioDevice * _dev,
void setAudioDevice( AudioDevice * _dev );
void setAudioDevice( AudioDevice * _dev,
const struct qualitySettings & _qs,
bool _needs_fifo );
void restoreAudioDevice( void );
inline audioDevice * audioDev( void )
void restoreAudioDevice();
inline AudioDevice * audioDev()
{
return m_audioDev;
}
// audio-port-stuff
inline void addAudioPort( audioPort * _port )
inline void addAudioPort( AudioPort * _port )
{
lock();
m_audioPorts.push_back( _port );
unlock();
}
void removeAudioPort( audioPort * _port );
void removeAudioPort( AudioPort * _port );
// MIDI-client-stuff
inline const QString & midiClientName( void ) const
inline const QString & midiClientName() const
{
return m_midiClientName;
}
inline midiClient * getMidiClient( void )
inline MidiClient * midiClient()
{
return m_midiClient;
}
@@ -227,7 +226,7 @@ public:
void removePlayHandle( playHandle * _ph );
inline PlayHandleList & playHandles( void )
inline PlayHandleList & playHandles()
{
return m_playHandles;
}
@@ -235,42 +234,42 @@ public:
void removePlayHandles( track * _track,
playHandle::Type _type = playHandle::NumPlayHandleTypes );
inline bool hasPlayHandles( void ) const
inline bool hasPlayHandles() const
{
return !m_playHandles.empty();
}
// methods providing information for other classes
inline fpp_t framesPerPeriod( void ) const
inline fpp_t framesPerPeriod() const
{
return m_framesPerPeriod;
}
inline const surroundSampleFrame * currentReadBuffer( void ) const
inline const surroundSampleFrame * currentReadBuffer() const
{
return m_readBuf;
}
inline int cpuLoad( void ) const
inline int cpuLoad() const
{
return m_cpuLoad;
}
const qualitySettings & currentQualitySettings( void ) const
const qualitySettings & currentQualitySettings() const
{
return m_qualitySettings;
}
sample_rate_t baseSampleRate( void ) const;
sample_rate_t outputSampleRate( void ) const;
sample_rate_t inputSampleRate( void ) const;
sample_rate_t processingSampleRate( void ) const;
sample_rate_t baseSampleRate() const;
sample_rate_t outputSampleRate() const;
sample_rate_t inputSampleRate() const;
sample_rate_t processingSampleRate() const;
inline float masterGain( void ) const
inline float masterGain() const
{
return m_masterGain;
}
@@ -296,22 +295,22 @@ public:
// methods needed by other threads to alter knob values, waveforms, etc
void lock( void )
void lock()
{
m_globalMutex.lock();
}
void unlock( void )
void unlock()
{
m_globalMutex.unlock();
}
void lockInputFrames( void )
void lockInputFrames()
{
m_inputFramesMutex.lock();
}
void unlockInputFrames( void )
void unlockInputFrames()
{
m_inputFramesMutex.unlock();
}
@@ -321,7 +320,7 @@ public:
const fpp_t _frames,
const f_cnt_t _offset,
stereoVolumeVector _volume_vector,
audioPort * _port );
AudioPort * _port );
static void clearAudioBuffer( sampleFrame * _ab,
const f_cnt_t _frames,
@@ -336,26 +335,26 @@ public:
static float peakValueRight( sampleFrame * _ab, const f_cnt_t _frames );
bool criticalXRuns( void ) const;
bool criticalXRuns() const;
inline bool hasFifoWriter( void ) const
inline bool hasFifoWriter() const
{
return m_fifoWriter != NULL;
}
void pushInputFrames( sampleFrame * _ab, const f_cnt_t _frames );
inline const sampleFrame * inputBuffer( void )
inline const sampleFrame * inputBuffer()
{
return m_inputBuffer[ m_inputBufferRead ];
}
inline f_cnt_t inputBufferFrames( void ) const
inline f_cnt_t inputBufferFrames() const
{
return m_inputBufferFrames[ m_inputBufferRead ];
}
inline surroundSampleFrame * nextBuffer( void )
inline surroundSampleFrame * nextBuffer()
{
return hasFifoWriter() ? m_fifo->read() : renderNextBuffer();
}
@@ -364,9 +363,9 @@ public:
signals:
void qualitySettingsChanged( void );
void sampleRateChanged( void );
void nextAudioBuffer( void );
void qualitySettingsChanged();
void sampleRateChanged();
void nextAudioBuffer();
private:
@@ -377,7 +376,7 @@ private:
public:
fifoWriter( mixer * _mixer, fifo * _fifo );
void finish( void );
void finish();
private:
@@ -385,27 +384,27 @@ private:
fifo * m_fifo;
volatile bool m_writing;
virtual void run( void );
virtual void run();
} ;
mixer( void );
mixer();
virtual ~mixer();
void startProcessing( bool _needs_fifo = true );
void stopProcessing( void );
void stopProcessing();
audioDevice * tryAudioDevices( void );
midiClient * tryMidiClients( void );
AudioDevice * tryAudioDevices();
MidiClient * tryMidiClients();
surroundSampleFrame * renderNextBuffer( void );
surroundSampleFrame * renderNextBuffer();
QVector<audioPort *> m_audioPorts;
QVector<AudioPort *> m_audioPorts;
fpp_t m_framesPerPeriod;
@@ -444,12 +443,12 @@ private:
float m_masterGain;
audioDevice * m_audioDev;
audioDevice * m_oldAudioDev;
AudioDevice * m_audioDev;
AudioDevice * m_oldAudioDev;
QString m_audioDevName;
midiClient * m_midiClient;
MidiClient * m_midiClient;
QString m_midiClientName;

View File

@@ -34,7 +34,7 @@ class bbTrack;
class pattern;
class sampleTCO;
class track;
class audioPort;
class AudioPort;
class samplePlayHandle : public playHandle
@@ -85,7 +85,7 @@ private:
f_cnt_t m_frame;
sampleBuffer::handleState m_state;
audioPort * m_audioPort;
AudioPort * m_audioPort;
const bool m_ownAudioPort;
floatModel m_defaultVolumeModel;

View File

@@ -2,8 +2,8 @@
* sample_track.h - class sampleTrack, a track which provides arrangement of
* samples
*
* Copyright (c) 2005-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -23,13 +23,12 @@
*
*/
#ifndef _SAMPLE_TRACK_H
#define _SAMPLE_TRACK_H
#include <QtGui/QDialog>
#include "audio_port.h"
#include "AudioPort.h"
#include "track.h"
class effectRackView;
@@ -46,21 +45,21 @@ public:
virtual ~sampleTCO();
virtual void changeLength( const midiTime & _length );
const QString & sampleFile( void ) const;
const QString & sampleFile() const;
virtual void saveSettings( QDomDocument & _doc, QDomElement & _parent );
virtual void loadSettings( const QDomElement & _this );
inline virtual QString nodeName( void ) const
inline virtual QString nodeName() const
{
return( "sampletco" );
return "sampletco";
}
sampleBuffer * getSampleBuffer( void )
sampleBuffer * getSampleBuffer()
{
return( m_sampleBuffer );
return m_sampleBuffer;
}
midiTime sampleLength( void ) const;
midiTime sampleLength() const;
virtual trackContentObjectView * createView( trackView * _tv );
@@ -69,7 +68,7 @@ public slots:
void setSampleBuffer( sampleBuffer * _sb );
void setSampleFile( const QString & _sf );
void updateLength( bpm_t = 0 );
void toggleRecord( void );
void toggleRecord();
private:
@@ -81,7 +80,7 @@ private:
signals:
void sampleChanged( void );
void sampleChanged();
} ;
@@ -96,7 +95,7 @@ public:
public slots:
void updateSample( void );
void updateSample();
protected:
@@ -134,19 +133,19 @@ public:
QDomElement & _parent );
virtual void loadTrackSpecificSettings( const QDomElement & _this );
inline audioPort * getAudioPort( void )
inline AudioPort * audioPort()
{
return( &m_audioPort );
return &m_audioPort;
}
virtual QString nodeName( void ) const
virtual QString nodeName() const
{
return( "sampletrack" );
return "sampletrack";
}
private:
audioPort m_audioPort;
AudioPort m_audioPort;
floatModel m_volumeModel;
@@ -165,7 +164,7 @@ public:
public slots:
void showEffects( void );
void showEffects();
private:

View File

@@ -1,8 +1,8 @@
/*
* setup_dialog.h - dialog for setting up LMMS
*
* Copyright (c) 2005-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
@@ -22,7 +22,6 @@
*
*/
#ifndef _SETUP_DIALOG_H
#define _SETUP_DIALOG_H
@@ -30,13 +29,12 @@
#include <QtCore/QMap>
#include "lmmsconfig.h"
#include "audio_device.h"
#include "midi_client.h"
#include "midi_port.h"
#include "midi_port_menu.h"
#include "dummy_midi_event_processor.h"
#include "midi_control_listener.h"
#include "AudioDevice.h"
#include "MidiClient.h"
#include "MidiPort.h"
#include "MidiPortMenu.h"
#include "DummyMidiEventProcessor.h"
#include "MidiControlListener.h"
class QComboBox;
@@ -173,16 +171,16 @@ private:
bool m_disableChActInd;
bool m_manualChPiano;
typedef QMap<QString, audioDevice::setupWidget *> aswMap;
typedef QMap<QString, midiClient::setupWidget *> mswMap;
typedef QMap<QString, AudioDevice::setupWidget *> AswMap;
typedef QMap<QString, MidiClient::setupWidget *> MswMap;
typedef QMap<QString, QString> trMap;
QComboBox * m_audioInterfaces;
aswMap m_audioIfaceSetupWidgets;
AswMap m_audioIfaceSetupWidgets;
trMap m_audioIfaceNames;
QComboBox * m_midiInterfaces;
mswMap m_midiIfaceSetupWidgets;
MswMap m_midiIfaceSetupWidgets;
trMap m_midiIfaceNames;
bool m_mclEnabled;
@@ -193,9 +191,9 @@ private:
QList< QPair <char, int> > m_mclActionTableMap;
QTableWidget * m_mclActionTable;
midiPortMenu m_mclMidiPortMenu;
MidiPortMenu m_mclMidiPortMenu;
DummyMidiEventProcessor m_mclMep;
midiPort m_mclMidiPort;
MidiPort m_mclMidiPort;
};

View File

@@ -22,13 +22,12 @@
*
*/
#ifndef _SETUP_DIALOG_MCL_H
#define _SETUP_DIALOG_MCL_H
#include <QtGui/QDialog>
#include "dummy_midi_event_processor.h"
#include "DummyMidiEventProcessor.h"
#include "piano.h"
class setupDialog;
@@ -38,15 +37,15 @@ class setupDialogMCL : public QDialog
Q_OBJECT
public:
setupDialogMCL( setupDialog * _parent );
virtual ~setupDialogMCL( void );
virtual ~setupDialogMCL();
protected slots:
virtual void accept( void );
virtual void accept();
private slots:
void clickedKeyBox( void );
void clickedControllerBox( void );
void clickedKeyBox();
void clickedControllerBox();
private:
setupDialog * m_parent;