static engine, chunked audio buffer, pat fix, MIME type
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@472 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* arp_and_chords_tab_widget.h - declaration of class arpAndChordWidget which
|
||||
* provides code for using arpeggio and chords
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -45,7 +45,6 @@
|
||||
|
||||
#include "journalling_object.h"
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QPixmap;
|
||||
|
||||
@@ -100,7 +100,6 @@ private:
|
||||
snd_pcm_sw_params_t * m_swParams;
|
||||
|
||||
bool m_convertEndian;
|
||||
volatile bool m_quit;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -97,15 +97,13 @@ public:
|
||||
return( m_channels );
|
||||
}
|
||||
|
||||
void processNextBuffer( void );
|
||||
bool processNextBuffer( void );
|
||||
|
||||
virtual void startProcessing( void )
|
||||
{
|
||||
}
|
||||
|
||||
virtual void stopProcessing( void )
|
||||
{
|
||||
}
|
||||
virtual void stopProcessing( void );
|
||||
|
||||
|
||||
class setupWidget : public tabWidget
|
||||
|
||||
@@ -35,8 +35,7 @@ class audioDummy : public audioDevice, public QThread
|
||||
public:
|
||||
audioDummy( const sample_rate_t _sample_rate, bool & _success_ful,
|
||||
mixer * _mixer ) :
|
||||
audioDevice( _sample_rate, DEFAULT_CHANNELS, _mixer ),
|
||||
m_quit( FALSE )
|
||||
audioDevice( _sample_rate, DEFAULT_CHANNELS, _mixer )
|
||||
{
|
||||
_success_ful = TRUE;
|
||||
}
|
||||
@@ -82,7 +81,6 @@ private:
|
||||
{
|
||||
if( isRunning() )
|
||||
{
|
||||
m_quit = TRUE;
|
||||
wait( 1000 );
|
||||
terminate();
|
||||
}
|
||||
@@ -91,10 +89,13 @@ private:
|
||||
virtual void run( void )
|
||||
{
|
||||
microTimer timer;
|
||||
while( m_quit == FALSE )
|
||||
while( TRUE )
|
||||
{
|
||||
timer.reset();
|
||||
processNextBuffer();
|
||||
if ( !processNextBuffer() )
|
||||
{
|
||||
break;
|
||||
}
|
||||
const Sint32 microseconds = static_cast<Sint32>(
|
||||
getMixer()->framesPerAudioBuffer() *
|
||||
1000000.0f / getMixer()->sampleRate() -
|
||||
@@ -106,9 +107,6 @@ private:
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
volatile bool m_quit;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
@@ -107,9 +107,11 @@ private:
|
||||
|
||||
jack_client_t * m_client;
|
||||
|
||||
bool m_active;
|
||||
bool m_stopped;
|
||||
|
||||
QMutex m_processCallbackMutex;
|
||||
// QMutex m_processCallbackMutex;
|
||||
QSemaphore m_stop_semaphore;
|
||||
|
||||
vvector<jack_port_t *> m_outputPorts;
|
||||
surroundSampleFrame * m_outBuf;
|
||||
|
||||
@@ -83,7 +83,6 @@ private:
|
||||
int m_audioFD;
|
||||
|
||||
bool m_convertEndian;
|
||||
volatile bool m_quit;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* audio_port.h - base-class for objects providing sound at a port
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -43,10 +43,10 @@
|
||||
#include "effect_chain.h"
|
||||
|
||||
|
||||
class audioPort : public engineObject
|
||||
class audioPort
|
||||
{
|
||||
public:
|
||||
audioPort( const QString & _name, engine * _engine );
|
||||
audioPort( const QString & _name );
|
||||
~audioPort();
|
||||
|
||||
inline surroundSampleFrame * firstBuffer( void )
|
||||
|
||||
@@ -92,6 +92,9 @@ private:
|
||||
|
||||
bool m_convertEndian;
|
||||
|
||||
bool m_stopped;
|
||||
QSemaphore m_stop_semaphore;
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* automatable_button.h - class automatableButton, the base for all buttons
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -51,7 +51,7 @@ class automatableButton : public QWidget, public automatableObject<bool,
|
||||
Q_OBJECT
|
||||
public:
|
||||
automatableButton( QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~automatableButton();
|
||||
|
||||
|
||||
@@ -109,7 +109,7 @@ class automatableButtonGroup : public QWidget, public automatableObject<int>
|
||||
Q_OBJECT
|
||||
public:
|
||||
automatableButtonGroup( QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~automatableButtonGroup();
|
||||
|
||||
void addButton( automatableButton * _btn );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* automatable_object.h - declaration of class automatableObject
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "qt3support.h"
|
||||
#include "automation_editor.h"
|
||||
#include "automation_pattern.h"
|
||||
#include "engine.h"
|
||||
#include "journalling_object.h"
|
||||
#include "templates.h"
|
||||
#include "midi_time.h"
|
||||
@@ -57,11 +58,9 @@ class automatableObject : public journallingObject, public levelObject
|
||||
public:
|
||||
typedef automatableObject<T, EDIT_STEP_TYPE> autoObj;
|
||||
|
||||
automatableObject( engine * _engine, track * _track = NULL,
|
||||
const T _val = 0, const T _min = 0,
|
||||
const T _max = 0,
|
||||
automatableObject( track * _track = NULL, const T _val = 0,
|
||||
const T _min = 0, const T _max = 0,
|
||||
const T _step = defaultRelStep() ) :
|
||||
journallingObject( _engine ),
|
||||
m_value( _val ),
|
||||
m_minValue( _min ),
|
||||
m_maxValue( _max ),
|
||||
@@ -372,9 +371,9 @@ public:
|
||||
return( m_track == NULL );
|
||||
}
|
||||
|
||||
void initAutomationPattern( engine * _engine )
|
||||
void initAutomationPattern( void )
|
||||
{
|
||||
m_automation_pattern = new automationPattern( _engine, this );
|
||||
m_automation_pattern = new automationPattern( NULL, this );
|
||||
}
|
||||
|
||||
|
||||
@@ -432,11 +431,11 @@ protected:
|
||||
{
|
||||
m_automation_pattern->putValue( midiTime( 0 ),
|
||||
m_curLevel, FALSE );
|
||||
if( eng()->getAutomationEditor() &&
|
||||
eng()->getAutomationEditor()->currentPattern()
|
||||
if( engine::getAutomationEditor() &&
|
||||
engine::getAutomationEditor()->currentPattern()
|
||||
== m_automation_pattern )
|
||||
{
|
||||
eng()->getAutomationEditor()->update();
|
||||
engine::getAutomationEditor()->update();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* automatable_slider.h - class automatableSlider, a QSlider with automation
|
||||
*
|
||||
* Copyright (c) 2006 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -48,7 +48,7 @@ class automatableSlider : public QSlider
|
||||
Q_OBJECT
|
||||
public:
|
||||
automatableSlider( QWidget * _parent, const QString & _name,
|
||||
engine * _engine, class track * _track );
|
||||
class track * _track );
|
||||
virtual ~automatableSlider();
|
||||
|
||||
virtual void setRange( int _min, int _max );
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* automation_editor.h - declaration of class automationEditor which is a window
|
||||
* where you can edit dynamic values in an easy way
|
||||
*
|
||||
* Copyright (c) 2006 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -45,7 +45,6 @@
|
||||
|
||||
#include "types.h"
|
||||
#include "note.h"
|
||||
#include "engine.h"
|
||||
#include "journalling_object.h"
|
||||
#include "automation_pattern.h"
|
||||
|
||||
@@ -168,7 +167,7 @@ private:
|
||||
|
||||
static const int VALUES_WIDTH = 64;
|
||||
|
||||
automationEditor( engine * _engine );
|
||||
automationEditor( void );
|
||||
automationEditor( const automationEditor & );
|
||||
virtual ~automationEditor();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* automation_pattern.h - declaration of class automationPattern, which contains
|
||||
* all information about an automation pattern
|
||||
*
|
||||
* Copyright (c) 2006 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -52,7 +52,6 @@ public:
|
||||
#endif
|
||||
|
||||
automationPattern( track * _track, levelObject * _object );
|
||||
automationPattern( engine * _engine, levelObject * _object );
|
||||
automationPattern( const automationPattern & _pat_to_copy );
|
||||
automationPattern( const automationPattern & _pat_to_copy,
|
||||
levelObject * _object );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* bb_editor.h - declaration of class bbEditor, a basic-component of LMMS
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -89,7 +89,7 @@ protected:
|
||||
|
||||
|
||||
private:
|
||||
bbEditor( engine * _engine );
|
||||
bbEditor( void );
|
||||
//bbEditor( const bbEditor & );
|
||||
virtual ~bbEditor();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* bb_track.h - class bbTrack, a wrapper for using bbEditor
|
||||
* (which is a singleton-class) as track
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -113,7 +113,7 @@ public:
|
||||
virtual void FASTCALL loadTrackSpecificSettings( const QDomElement &
|
||||
_this );
|
||||
|
||||
static bbTrack * FASTCALL findBBTrack( csize _bb_num, engine * _engine );
|
||||
static bbTrack * FASTCALL findBBTrack( csize _bb_num );
|
||||
static csize FASTCALL numOfBBTrack( track * _track );
|
||||
static void FASTCALL swapBBTracks( track * _track1, track * _track2 );
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* combobox.h - class comboBox, a very cool combo-box
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -56,8 +56,7 @@ class comboBox : public QWidget, public automatableObject<int>
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
comboBox( QWidget * _parent, const QString & _name, engine * _engine,
|
||||
track * _track );
|
||||
comboBox( QWidget * _parent, const QString & _name, track * _track );
|
||||
virtual ~comboBox();
|
||||
|
||||
void addItem( const QString & _item, const QPixmap & _pixmap =
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* cpuload_widget.h - widget for displaying CPU-load (partly based on
|
||||
* Hydrogen's CPU-load-widget)
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -44,14 +44,13 @@
|
||||
#endif
|
||||
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class cpuloadWidget : public QWidget, public engineObject
|
||||
class cpuloadWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
cpuloadWidget( QWidget * _parent, engine * _engine );
|
||||
cpuloadWidget( QWidget * _parent );
|
||||
virtual ~cpuloadWidget();
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* dummy_plugin.h - empty plugin which is used as fallback if a plugin couldn't
|
||||
* be found
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
class dummyPlugin : public plugin
|
||||
{
|
||||
public:
|
||||
inline dummyPlugin( engine * _engine = NULL ) :
|
||||
plugin( NULL, _engine )
|
||||
inline dummyPlugin( void ) :
|
||||
plugin( NULL )
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* effect.h - base class for effects
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -57,14 +57,8 @@ class track;
|
||||
class effect : public plugin
|
||||
{
|
||||
public:
|
||||
struct constructionData
|
||||
{
|
||||
engine * eng;
|
||||
descriptor::subPluginFeatures::key key;
|
||||
} ;
|
||||
|
||||
|
||||
effect( const plugin::descriptor * _desc, constructionData * _cdata );
|
||||
effect( const plugin::descriptor * _desc,
|
||||
const descriptor::subPluginFeatures::key * _key );
|
||||
virtual ~effect();
|
||||
|
||||
virtual bool FASTCALL processAudioBuffer(
|
||||
@@ -196,7 +190,7 @@ public:
|
||||
virtual effectControlDialog * createControlDialog( track * _track ) = 0;
|
||||
|
||||
static effect * FASTCALL instantiate( const QString & _plugin_name,
|
||||
constructionData & _cdata );
|
||||
descriptor::subPluginFeatures::key * _key );
|
||||
|
||||
|
||||
private:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* effect_chain.h - class for processing and effects chain
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -37,15 +37,14 @@
|
||||
|
||||
#include "qt3support.h"
|
||||
|
||||
#include "engine.h"
|
||||
#include "effect.h"
|
||||
|
||||
typedef vvector<effect *> effect_list_t;
|
||||
|
||||
class effectChain: public engineObject
|
||||
class effectChain
|
||||
{
|
||||
public:
|
||||
effectChain( engine * _engine );
|
||||
effectChain( void );
|
||||
virtual ~effectChain();
|
||||
|
||||
void FASTCALL appendEffect( effect * _effect );
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* effect_label.h - a label which is renamable by double-clicking it and
|
||||
* offers access to an effect rack
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -54,9 +54,8 @@ class effectLabel: public QWidget, public journallingObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
effectLabel( const QString & _initial_name,
|
||||
QWidget * _parent, engine * _engine,
|
||||
sampleTrack * _track );
|
||||
effectLabel( const QString & _initial_name, QWidget * _parent,
|
||||
sampleTrack * _track );
|
||||
virtual ~effectLabel();
|
||||
|
||||
inline const QString & text( void )
|
||||
|
||||
@@ -43,15 +43,14 @@
|
||||
|
||||
#endif
|
||||
|
||||
#include "engine.h"
|
||||
#include "effect.h"
|
||||
|
||||
|
||||
class effectSelectDialog : public QDialog, public engineObject
|
||||
class effectSelectDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
effectSelectDialog( QWidget * _parent, engine * _engine );
|
||||
effectSelectDialog( QWidget * _parent );
|
||||
virtual ~effectSelectDialog();
|
||||
|
||||
effect * instantiateSelectedPlugin( void );
|
||||
@@ -68,11 +67,11 @@ private:
|
||||
|
||||
|
||||
|
||||
class effectList : public QWidget, public engineObject
|
||||
class effectList : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
effectList( QWidget * _parent, engine * _engine );
|
||||
effectList( QWidget * _parent );
|
||||
|
||||
virtual ~effectList();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* effect_tab_widget.h - tab-widget in channel-track-window for setting up
|
||||
* effects
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -50,7 +50,6 @@
|
||||
#endif
|
||||
|
||||
#include "journalling_object.h"
|
||||
#include "engine.h"
|
||||
#include "rack_plugin.h"
|
||||
#include "rack_view.h"
|
||||
#include "audio_port.h"
|
||||
|
||||
125
include/engine.h
125
include/engine.h
@@ -55,142 +55,97 @@ class ladspa2LMMS;
|
||||
class engine
|
||||
{
|
||||
public:
|
||||
engine( const bool _has_gui = true );
|
||||
engine( const engine & _engine );
|
||||
~engine();
|
||||
static void init( const bool _has_gui = true );
|
||||
static void destroy( void );
|
||||
|
||||
engine * duplicate( const engine * _engine )
|
||||
static bool hasGUI( void )
|
||||
{
|
||||
return( new engine( *_engine ) );
|
||||
return( s_hasGUI );
|
||||
}
|
||||
|
||||
inline bool hasGUI( void ) const
|
||||
static mixer * getMixer( void )
|
||||
{
|
||||
return( m_hasGUI );
|
||||
return( s_mixer );
|
||||
}
|
||||
|
||||
inline mixer * getMixer( void )
|
||||
static mainWindow * getMainWindow( void )
|
||||
{
|
||||
return( m_mixer );
|
||||
return( s_mainWindow );
|
||||
}
|
||||
|
||||
inline const mixer * getMixer( void ) const
|
||||
static songEditor * getSongEditor( void )
|
||||
{
|
||||
return( m_mixer );
|
||||
return( s_songEditor );
|
||||
}
|
||||
|
||||
inline mainWindow * getMainWindow( void )
|
||||
static bbEditor * getBBEditor( void )
|
||||
{
|
||||
return( m_mainWindow );
|
||||
return( s_bbEditor );
|
||||
}
|
||||
|
||||
inline songEditor * getSongEditor( void )
|
||||
static pianoRoll * getPianoRoll( void )
|
||||
{
|
||||
return( m_songEditor );
|
||||
return( s_pianoRoll );
|
||||
}
|
||||
|
||||
inline const songEditor * getSongEditor( void ) const
|
||||
static projectNotes * getProjectNotes( void )
|
||||
{
|
||||
return( m_songEditor );
|
||||
return( s_projectNotes );
|
||||
}
|
||||
|
||||
inline bbEditor * getBBEditor( void )
|
||||
static projectJournal * getProjectJournal( void )
|
||||
{
|
||||
return( m_bbEditor );
|
||||
return( s_projectJournal );
|
||||
}
|
||||
|
||||
inline pianoRoll * getPianoRoll( void )
|
||||
static automationEditor * getAutomationEditor( void )
|
||||
{
|
||||
return( m_pianoRoll );
|
||||
}
|
||||
|
||||
inline projectNotes * getProjectNotes( void )
|
||||
{
|
||||
return( m_projectNotes );
|
||||
}
|
||||
|
||||
inline projectJournal * getProjectJournal( void )
|
||||
{
|
||||
return( m_projectJournal );
|
||||
}
|
||||
|
||||
inline automationEditor * getAutomationEditor( void )
|
||||
{
|
||||
return( m_automationEditor );
|
||||
return( s_automationEditor );
|
||||
}
|
||||
|
||||
#ifdef LADSPA_SUPPORT
|
||||
inline ladspa2LMMS * getLADSPAManager( void )
|
||||
static ladspa2LMMS * getLADSPAManager( void )
|
||||
{
|
||||
return( m_ladspaManager );
|
||||
return( s_ladspaManager );
|
||||
}
|
||||
#endif
|
||||
|
||||
void close( void );
|
||||
|
||||
float framesPerTact64th( void ) const
|
||||
static float framesPerTact64th( void )
|
||||
{
|
||||
return( m_frames_per_tact64th );
|
||||
return( s_frames_per_tact64th );
|
||||
}
|
||||
void updateFramesPerTact64th( void );
|
||||
static void updateFramesPerTact64th( void );
|
||||
|
||||
const QMap<QString, QString> & sampleExtensions( void )
|
||||
static const QMap<QString, QString> & sampleExtensions( void )
|
||||
{
|
||||
return( m_sample_extensions );
|
||||
return( s_sample_extensions );
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
bool m_hasGUI;
|
||||
float m_frames_per_tact64th;
|
||||
static bool s_hasGUI;
|
||||
static float s_frames_per_tact64th;
|
||||
|
||||
mixer * m_mixer;
|
||||
mainWindow * m_mainWindow;
|
||||
songEditor * m_songEditor;
|
||||
automationEditor * m_automationEditor;
|
||||
bbEditor * m_bbEditor;
|
||||
pianoRoll * m_pianoRoll;
|
||||
projectNotes * m_projectNotes;
|
||||
projectJournal * m_projectJournal;
|
||||
static mixer * s_mixer;
|
||||
static mainWindow * s_mainWindow;
|
||||
static songEditor * s_songEditor;
|
||||
static automationEditor * s_automationEditor;
|
||||
static bbEditor * s_bbEditor;
|
||||
static pianoRoll * s_pianoRoll;
|
||||
static projectNotes * s_projectNotes;
|
||||
static projectJournal * s_projectJournal;
|
||||
|
||||
#ifdef LADSPA_SUPPORT
|
||||
ladspa2LMMS * m_ladspaManager;
|
||||
static ladspa2LMMS * s_ladspaManager;
|
||||
#endif
|
||||
|
||||
QMap<QString, QString> m_sample_extensions;
|
||||
static QMap<QString, QString> s_sample_extensions;
|
||||
|
||||
void load_extensions( void );
|
||||
static void load_extensions( void );
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
class engineObject
|
||||
{
|
||||
public:
|
||||
engineObject( engine * _engine );
|
||||
~engineObject();
|
||||
|
||||
inline engine * eng( void )
|
||||
{
|
||||
return( m_engine );
|
||||
}
|
||||
|
||||
inline const engine * eng( void ) const
|
||||
{
|
||||
return( m_engine );
|
||||
}
|
||||
|
||||
inline bool hasGUI( void ) const
|
||||
{
|
||||
return( m_engine->hasGUI() );
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
engine * m_engine;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* is used by envelope/lfo/filter-tab of
|
||||
* channel-window
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -37,13 +37,11 @@
|
||||
#ifdef QT4
|
||||
|
||||
#include <QtGui/QWidget>
|
||||
#include <QtCore/QMap>
|
||||
#include <QtCore/QVector>
|
||||
|
||||
#else
|
||||
|
||||
#include <qwidget.h>
|
||||
#include <qmap.h>
|
||||
#include <qvaluevector.h>
|
||||
|
||||
#endif
|
||||
@@ -76,7 +74,7 @@ class envelopeAndLFOWidget : public QWidget, public journallingObject,
|
||||
Q_OBJECT
|
||||
public:
|
||||
envelopeAndLFOWidget( float _value_for_zero_amount, QWidget * _parent,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~envelopeAndLFOWidget();
|
||||
|
||||
static inline float expKnobVal( float val )
|
||||
@@ -84,8 +82,8 @@ public:
|
||||
return( ( ( val < 0 ) ? -1 : 1 ) * val*val );
|
||||
}
|
||||
|
||||
static void triggerLFO( engine * _engine );
|
||||
static void resetLFO( engine * _engine );
|
||||
static void triggerLFO( void );
|
||||
static void resetLFO( void );
|
||||
|
||||
void FASTCALL fillLevel( float * _buf, f_cnt_t _frame,
|
||||
const f_cnt_t _release_begin,
|
||||
@@ -140,7 +138,7 @@ private:
|
||||
static QPixmap * s_envGraph;
|
||||
static QPixmap * s_lfoGraph;
|
||||
|
||||
static QMap<engine *, vvector<envelopeAndLFOWidget *> > s_EaLWidgets;
|
||||
static vvector<envelopeAndLFOWidget *> s_EaLWidgets;
|
||||
|
||||
bool m_used;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* export_project_dialog.h - declaration of class exportProjectDialog which is
|
||||
* responsible for exporting project
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -44,7 +44,6 @@
|
||||
#endif
|
||||
|
||||
#include "export.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QLabel;
|
||||
@@ -56,12 +55,11 @@ class ledCheckBox;
|
||||
class pixmapButton;
|
||||
|
||||
|
||||
class exportProjectDialog : public QDialog, public engineObject
|
||||
class exportProjectDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
exportProjectDialog( const QString & _file_name, QWidget * _parent,
|
||||
engine * _engine );
|
||||
exportProjectDialog( const QString & _file_name, QWidget * _parent );
|
||||
virtual ~exportProjectDialog();
|
||||
|
||||
|
||||
|
||||
97
include/fifo_buffer.h
Normal file
97
include/fifo_buffer.h
Normal file
@@ -0,0 +1,97 @@
|
||||
/*
|
||||
* fifo_buffer.h - FIFO fixed-size buffer
|
||||
*
|
||||
* Copyright (c) 2007 Javier Serrano Polo <jasp00/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
|
||||
* modify it under the terms of the GNU General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this program (see COPYING); if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301 USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _FIFO_BUFFER_H
|
||||
#define _FIFO_BUFFER_H
|
||||
|
||||
|
||||
#ifdef QT4
|
||||
|
||||
#include <QtCore/QSemaphore>
|
||||
|
||||
#else
|
||||
|
||||
#include <qsemaphore.h>
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
template<typename T>
|
||||
class fifoBuffer
|
||||
{
|
||||
public:
|
||||
fifoBuffer( int _size ) :
|
||||
m_reader_sem( _size ),
|
||||
m_writer_sem( _size ),
|
||||
m_reader_index( 0 ),
|
||||
m_writer_index( 0 ),
|
||||
m_size( _size )
|
||||
{
|
||||
m_buffer = new T[_size];
|
||||
m_reader_sem += _size;
|
||||
}
|
||||
|
||||
~fifoBuffer()
|
||||
{
|
||||
delete[] m_buffer;
|
||||
m_reader_sem -= m_size;
|
||||
}
|
||||
|
||||
void write( T _element )
|
||||
{
|
||||
m_writer_sem++;
|
||||
m_buffer[m_writer_index++] = _element;
|
||||
m_writer_index %= m_size;
|
||||
m_reader_sem--;
|
||||
}
|
||||
|
||||
T read( void )
|
||||
{
|
||||
m_reader_sem++;
|
||||
T element = m_buffer[m_reader_index++];
|
||||
m_reader_index %= m_size;
|
||||
m_writer_sem--;
|
||||
return( element );
|
||||
}
|
||||
|
||||
bool available( void )
|
||||
{
|
||||
return( m_reader_sem.available() );
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
QSemaphore m_reader_sem;
|
||||
QSemaphore m_writer_sem;
|
||||
int m_reader_index;
|
||||
int m_writer_index;
|
||||
int m_size;
|
||||
T * m_buffer;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
@@ -48,7 +48,6 @@
|
||||
|
||||
|
||||
#include "side_bar_widget.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class fileItem;
|
||||
@@ -59,13 +58,13 @@ class trackContainer;
|
||||
|
||||
|
||||
|
||||
class fileBrowser : public sideBarWidget, public engineObject
|
||||
class fileBrowser : public sideBarWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
fileBrowser( const QString & _directories, const QString & _filter,
|
||||
const QString & _title, const QPixmap & _pm,
|
||||
QWidget * _parent, engine * _engine );
|
||||
QWidget * _parent );
|
||||
virtual ~fileBrowser();
|
||||
|
||||
static bool isDirWithContent( const QString & _path,
|
||||
@@ -107,11 +106,11 @@ private:
|
||||
|
||||
|
||||
|
||||
class listView : public Q3ListView, public engineObject
|
||||
class listView : public Q3ListView
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
listView( QWidget * _parent, engine * _engine );
|
||||
listView( QWidget * _parent );
|
||||
virtual ~listView();
|
||||
|
||||
|
||||
@@ -133,15 +132,13 @@ private:
|
||||
|
||||
|
||||
|
||||
class directory : public Q3ListViewItem, public engineObject
|
||||
class directory : public Q3ListViewItem
|
||||
{
|
||||
public:
|
||||
directory( Q3ListView * _parent, const QString & _filename,
|
||||
const QString & _path, const QString & _filter,
|
||||
engine * _engine );
|
||||
const QString & _path, const QString & _filter );
|
||||
directory( directory * _parent, const QString & _filename,
|
||||
const QString & _path, const QString & _filter,
|
||||
engine * _engine );
|
||||
const QString & _path, const QString & _filter );
|
||||
|
||||
void setOpen( bool );
|
||||
void setup( void );
|
||||
@@ -189,15 +186,13 @@ private:
|
||||
|
||||
|
||||
|
||||
class fileItem : public Q3ListViewItem, public engineObject
|
||||
class fileItem : public Q3ListViewItem
|
||||
{
|
||||
public:
|
||||
fileItem( Q3ListView * _parent, const QString & _name,
|
||||
const QString & _path,
|
||||
engine * _engine );
|
||||
const QString & _path );
|
||||
fileItem( Q3ListViewItem * _parent, const QString & _name,
|
||||
const QString & _path,
|
||||
engine * _engine );
|
||||
const QString & _path );
|
||||
|
||||
inline QString fullName( void ) const
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* group_box.h - LMMS-groupbox
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -44,12 +44,11 @@
|
||||
class QPixmap;
|
||||
|
||||
|
||||
class groupBox : public QWidget, public engineObject
|
||||
class groupBox : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
groupBox( const QString & _caption, QWidget * _parent,
|
||||
engine * _engine, track * _track );
|
||||
groupBox( const QString & _caption, QWidget * _parent, track * _track );
|
||||
virtual ~groupBox();
|
||||
|
||||
bool isActive( void ) const
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* import_filter.h - declaration of class importFilter, the base-class for all
|
||||
* file import filters
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -55,7 +55,7 @@ class importFilter : public plugin
|
||||
{
|
||||
public:
|
||||
importFilter( const QString & _file_name,
|
||||
const descriptor * _descriptor, engine * _eng );
|
||||
const descriptor * _descriptor );
|
||||
virtual ~importFilter();
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* instrument.h - declaration of class instrument, which provides a
|
||||
* standard interface for all instrument plugins
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -48,6 +48,7 @@
|
||||
#endif
|
||||
|
||||
|
||||
#include "engine.h"
|
||||
#include "plugin.h"
|
||||
#include "mixer.h"
|
||||
|
||||
@@ -140,7 +141,7 @@ protected:
|
||||
inline void invalidate( void )
|
||||
{
|
||||
m_valid = FALSE;
|
||||
eng()->getMixer()->checkValidityOfPlayHandles();
|
||||
engine::getMixer()->checkValidityOfPlayHandles();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* instrument_track.h - declaration of class instrumentTrack, a track + window
|
||||
* which holds an instrument-plugin
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -50,7 +50,6 @@
|
||||
#include "midi_event_processor.h"
|
||||
#include "gui_templates.h"
|
||||
#include "tab_widget.h"
|
||||
#include "engine.h"
|
||||
#include "volume_knob.h"
|
||||
#include "instrument.h"
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* journalling_object.h - declaration of class journallingObject
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -31,7 +31,6 @@
|
||||
#endif
|
||||
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
#include "qt3support.h"
|
||||
|
||||
#ifndef QT3
|
||||
@@ -110,10 +109,10 @@ typedef vvector<journalEntry> journalEntryVector;
|
||||
|
||||
|
||||
|
||||
class journallingObject : public engineObject
|
||||
class journallingObject
|
||||
{
|
||||
public:
|
||||
journallingObject( engine * _engine );
|
||||
journallingObject( void );
|
||||
virtual ~journallingObject();
|
||||
|
||||
inline const jo_id_t id( void ) const
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* This file is based on the knob-widget of the Qwt Widget Library by
|
||||
* Josef Wilgen
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -44,7 +44,6 @@
|
||||
#endif
|
||||
|
||||
|
||||
#include "engine.h"
|
||||
#include "automatable_object.h"
|
||||
|
||||
|
||||
@@ -64,7 +63,7 @@ class knob : public QWidget, public automatableObject<float>
|
||||
Q_OBJECT
|
||||
public:
|
||||
knob( int _knob_num, QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~knob();
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* lcd_spinbox.h - class lcdSpinBox, an improved QLCDNumber
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -52,8 +52,7 @@ class lcdSpinBox : public QWidget, public automatableObject<int>
|
||||
Q_OBJECT
|
||||
public:
|
||||
lcdSpinBox( int _min, int _max, int _num_digits, QWidget * _parent,
|
||||
const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
const QString & _name, track * _track );
|
||||
virtual ~lcdSpinBox();
|
||||
|
||||
virtual void setStep( const int _step );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* led_checkbox.h - class ledCheckBox, an improved QCheckBox
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -42,8 +42,8 @@ public:
|
||||
} ;
|
||||
|
||||
ledCheckBox( const QString & _txt, QWidget * _parent,
|
||||
const QString & _name, engine * _engine,
|
||||
track * _track, ledColors _color = YELLOW );
|
||||
const QString & _name, track * _track,
|
||||
ledColors _color = YELLOW );
|
||||
virtual ~ledCheckBox();
|
||||
|
||||
|
||||
|
||||
@@ -49,7 +49,6 @@
|
||||
|
||||
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QDomElement;
|
||||
@@ -61,7 +60,7 @@ class tool;
|
||||
class toolButton;
|
||||
|
||||
|
||||
class mainWindow : public QMainWindow, public engineObject
|
||||
class mainWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@@ -138,7 +137,7 @@ protected:
|
||||
|
||||
|
||||
private:
|
||||
mainWindow( engine * _engine );
|
||||
mainWindow( void );
|
||||
mainWindow( const mainWindow & );
|
||||
virtual ~mainWindow();
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ class QLineEdit;
|
||||
class midiALSARaw : public midiClientRaw, public QThread
|
||||
{
|
||||
public:
|
||||
midiALSARaw( engine * _engine );
|
||||
midiALSARaw( void );
|
||||
virtual ~midiALSARaw();
|
||||
|
||||
static QString probeDevice( void );
|
||||
|
||||
@@ -71,7 +71,7 @@ class midiALSASeq :
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
midiALSASeq( engine * _engine );
|
||||
midiALSASeq( void );
|
||||
virtual ~midiALSASeq();
|
||||
|
||||
static QString probeDevice( void );
|
||||
|
||||
@@ -44,17 +44,16 @@
|
||||
#include "midi.h"
|
||||
#include "midi_event_processor.h"
|
||||
#include "tab_widget.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class midiPort;
|
||||
|
||||
|
||||
// base-class for all MIDI-clients
|
||||
class midiClient : public engineObject
|
||||
class midiClient
|
||||
{
|
||||
public:
|
||||
midiClient( engine * _engine );
|
||||
midiClient( void );
|
||||
virtual ~midiClient();
|
||||
|
||||
// to be implemented by sub-classes
|
||||
@@ -144,7 +143,7 @@ const Uint8 RAW_MIDI_PARSE_BUF_SIZE = 16;
|
||||
class midiClientRaw : public midiClient
|
||||
{
|
||||
public:
|
||||
midiClientRaw( engine * _engine );
|
||||
midiClientRaw( void );
|
||||
virtual ~midiClientRaw();
|
||||
|
||||
// we are raw-clients for sure!
|
||||
|
||||
@@ -35,8 +35,7 @@
|
||||
class midiDummy : public midiClientRaw
|
||||
{
|
||||
public:
|
||||
midiDummy( engine * _engine ) :
|
||||
midiClientRaw( _engine )
|
||||
midiDummy( void )
|
||||
{
|
||||
}
|
||||
virtual ~midiDummy()
|
||||
|
||||
@@ -43,7 +43,7 @@ class QLineEdit;
|
||||
class midiOSS : public midiClientRaw, public QThread
|
||||
{
|
||||
public:
|
||||
midiOSS( engine * _engine );
|
||||
midiOSS( void );
|
||||
virtual ~midiOSS();
|
||||
|
||||
static QString probeDevice( void );
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* midi_tab_widget.h - tab-widget in channel-track-window for setting up
|
||||
* MIDI-related stuff
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -44,7 +44,6 @@
|
||||
#endif
|
||||
|
||||
#include "journalling_object.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QMenu;
|
||||
|
||||
@@ -35,12 +35,14 @@
|
||||
#ifdef QT4
|
||||
|
||||
#include <QtCore/QMutex>
|
||||
#include <QtCore/QThread>
|
||||
#include <QtCore/QVector>
|
||||
|
||||
#else
|
||||
|
||||
#include <qobject.h>
|
||||
#include <qmutex.h>
|
||||
#include <qthread.h>
|
||||
#include <qvaluevector.h>
|
||||
|
||||
#endif
|
||||
@@ -52,7 +54,7 @@
|
||||
#include "note.h"
|
||||
#include "play_handle.h"
|
||||
#include "effect_board.h"
|
||||
#include "engine.h"
|
||||
#include "fifo_buffer.h"
|
||||
|
||||
|
||||
class audioDevice;
|
||||
@@ -106,7 +108,7 @@ const octaves BASE_OCTAVE = OCTAVE_4;
|
||||
|
||||
|
||||
|
||||
class mixer : public QObject, public engineObject
|
||||
class mixer : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@@ -285,7 +287,10 @@ public:
|
||||
|
||||
bool criticalXRuns( void ) const;
|
||||
|
||||
const surroundSampleFrame * renderNextBuffer( void );
|
||||
const surroundSampleFrame * nextBuffer( void )
|
||||
{
|
||||
return( m_fifo->read() );
|
||||
}
|
||||
|
||||
|
||||
public slots:
|
||||
@@ -299,7 +304,27 @@ signals:
|
||||
|
||||
|
||||
private:
|
||||
mixer( engine * _engine );
|
||||
typedef fifoBuffer<surroundSampleFrame *> fifo;
|
||||
|
||||
class fifoWriter : public QThread
|
||||
{
|
||||
public:
|
||||
fifoWriter( mixer * _mixer, fifo * _fifo );
|
||||
|
||||
void finish( void );
|
||||
|
||||
|
||||
private:
|
||||
mixer * m_mixer;
|
||||
fifo * m_fifo;
|
||||
bool m_writing;
|
||||
|
||||
virtual void run( void );
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
mixer( void );
|
||||
virtual ~mixer();
|
||||
|
||||
void startProcessing( void );
|
||||
@@ -307,8 +332,7 @@ private:
|
||||
|
||||
|
||||
// we don't allow to create mixer by using copy-ctor
|
||||
mixer( const mixer & ) :
|
||||
engineObject( NULL )
|
||||
mixer( const mixer & )
|
||||
{
|
||||
}
|
||||
|
||||
@@ -322,6 +346,8 @@ private:
|
||||
|
||||
void FASTCALL scaleClip( fpab_t _frame, ch_cnt_t _chnl );
|
||||
|
||||
const surroundSampleFrame * renderNextBuffer( void );
|
||||
|
||||
vvector<audioPort *> m_audioPorts;
|
||||
|
||||
fpab_t m_framesPerAudioBuffer;
|
||||
@@ -366,7 +392,12 @@ private:
|
||||
Uint8 m_mixMutexLockLevel;
|
||||
|
||||
|
||||
fifo * m_fifo;
|
||||
fifoWriter * m_fifo_writer;
|
||||
|
||||
|
||||
friend class engine;
|
||||
friend class fifoWriter;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* name_label.h - class nameLabel, a label which is renamable by
|
||||
* double-clicking it
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -41,15 +41,12 @@
|
||||
|
||||
#endif
|
||||
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class nameLabel : public QLabel, public engineObject
|
||||
class nameLabel : public QLabel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
nameLabel( const QString & _initial_name, QWidget * _parent,
|
||||
engine * _engine );
|
||||
nameLabel( const QString & _initial_name, QWidget * _parent );
|
||||
virtual ~nameLabel();
|
||||
|
||||
const QPixmap & pixmap( void ) const
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* note.h - declaration of class note which contains all informations about a
|
||||
* note + definitions of several constants and enums
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -95,13 +95,13 @@ class knob;
|
||||
class note : public journallingObject
|
||||
{
|
||||
public:
|
||||
note( engine * _engine = NULL,
|
||||
const midiTime & _length = 0,
|
||||
note( const midiTime & _length = 0,
|
||||
const midiTime & _pos = 0,
|
||||
tones _tone = A,
|
||||
octaves _octave = DEFAULT_OCTAVE,
|
||||
volume _volume = DEFAULT_VOLUME,
|
||||
panning _panning = DEFAULT_PANNING ) FASTCALL;
|
||||
panning _panning = DEFAULT_PANNING,
|
||||
knob * _detuning = NULL ) FASTCALL;
|
||||
note( const note & _note );
|
||||
virtual ~note();
|
||||
|
||||
@@ -112,7 +112,6 @@ public:
|
||||
void FASTCALL setKey( const int _key );
|
||||
void FASTCALL setVolume( const volume _volume = DEFAULT_VOLUME );
|
||||
void FASTCALL setPanning( const panning _panning = DEFAULT_PANNING );
|
||||
void FASTCALL setDetuning( knob * _detuning );
|
||||
void FASTCALL quantizeLength( const int _q_grid );
|
||||
void FASTCALL quantizePos( const int _q_grid );
|
||||
|
||||
@@ -208,6 +207,7 @@ private:
|
||||
knob * m_detuning;
|
||||
|
||||
void createDetuning( void );
|
||||
void FASTCALL setDetuning( knob * _detuning );
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* oscillator.h - header-file for oscillator.cpp, a powerful oscillator-class
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -183,10 +183,33 @@ private:
|
||||
const ch_cnt_t _chnl );
|
||||
inline bool syncOk( float _osc_coeff );
|
||||
|
||||
template<waveShapes W>
|
||||
void updateNoSub( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
template<waveShapes W>
|
||||
void updatePM( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
template<waveShapes W>
|
||||
void updateAM( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
template<waveShapes W>
|
||||
void updateMix( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
template<waveShapes W>
|
||||
void updateSync( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
template<waveShapes W>
|
||||
void updateFM( sampleFrame * _ab, const fpab_t _frames,
|
||||
const ch_cnt_t _chnl );
|
||||
|
||||
template<waveShapes W>
|
||||
inline sample_t getSample( const float _sample );
|
||||
|
||||
inline void FASTCALL recalcPhase( void );
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -273,7 +273,7 @@ signals:
|
||||
|
||||
|
||||
|
||||
class patternFreezeThread : public QThread, public engineObject
|
||||
class patternFreezeThread : public QThread
|
||||
{
|
||||
public:
|
||||
patternFreezeThread( pattern * _pattern );
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* piano_roll.h - declaration of class pianoRoll which is a window where you
|
||||
* can set and edit notes in an easy way
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -45,7 +45,6 @@
|
||||
|
||||
#include "types.h"
|
||||
#include "note.h"
|
||||
#include "engine.h"
|
||||
#include "journalling_object.h"
|
||||
|
||||
|
||||
@@ -173,7 +172,7 @@ private:
|
||||
} ;
|
||||
|
||||
|
||||
pianoRoll( engine * _engine );
|
||||
pianoRoll( void );
|
||||
pianoRoll( const pianoRoll & );
|
||||
virtual ~pianoRoll();
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* pixmap_button.h - declaration of class pixmapButton
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -47,7 +47,7 @@ class pixmapButton : public automatableButton
|
||||
Q_OBJECT
|
||||
public:
|
||||
pixmapButton( QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~pixmapButton();
|
||||
|
||||
void setActiveGraphic( const QPixmap & _pm );
|
||||
|
||||
@@ -134,12 +134,11 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
virtual void fillDescriptionWidget(
|
||||
QWidget *, engine *, const key & )
|
||||
virtual void fillDescriptionWidget( QWidget *,
|
||||
const key * )
|
||||
{
|
||||
}
|
||||
virtual void listSubPluginKeys( engine *,
|
||||
plugin::descriptor *,
|
||||
virtual void listSubPluginKeys( plugin::descriptor *,
|
||||
keyList & )
|
||||
{
|
||||
}
|
||||
@@ -159,7 +158,7 @@ public:
|
||||
} ;
|
||||
|
||||
// contructor of a plugin
|
||||
plugin( const descriptor * _descriptor, engine * _engine );
|
||||
plugin( const descriptor * _descriptor );
|
||||
virtual ~plugin();
|
||||
|
||||
// returns public-name out of descriptor
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* plugin_browser.h - include file for pluginBrowser
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -55,11 +55,11 @@
|
||||
class trackContainer;
|
||||
|
||||
|
||||
class pluginBrowser : public sideBarWidget, public engineObject
|
||||
class pluginBrowser : public sideBarWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
pluginBrowser( QWidget * _parent, engine * _engine );
|
||||
pluginBrowser( QWidget * _parent );
|
||||
virtual ~pluginBrowser();
|
||||
|
||||
|
||||
@@ -73,12 +73,11 @@ private:
|
||||
|
||||
|
||||
|
||||
class pluginDescWidget : public QWidget, public engineObject
|
||||
class pluginDescWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
pluginDescWidget( const plugin::descriptor & _pd, QWidget * _parent,
|
||||
engine * _engine );
|
||||
pluginDescWidget( const plugin::descriptor & _pd, QWidget * _parent );
|
||||
virtual ~pluginDescWidget();
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* preset_preview_play_handle.h - play-handle for playing a short preview-sound
|
||||
* of a preset
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -29,19 +29,8 @@
|
||||
|
||||
#include "qt3support.h"
|
||||
|
||||
#ifdef QT4
|
||||
|
||||
#include <QtCore/QMap>
|
||||
|
||||
#else
|
||||
|
||||
#include <qmap.h>
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#include "note_play_handle.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class instrumentTrack;
|
||||
@@ -49,27 +38,21 @@ class notePlayHandle;
|
||||
class previewTrackContainer;
|
||||
|
||||
|
||||
class presetPreviewPlayHandle : public playHandle, public engineObject
|
||||
class presetPreviewPlayHandle : public playHandle
|
||||
{
|
||||
public:
|
||||
presetPreviewPlayHandle( const QString & _preset_file,
|
||||
engine * _engine );
|
||||
presetPreviewPlayHandle( const QString & _preset_file );
|
||||
virtual ~presetPreviewPlayHandle();
|
||||
|
||||
virtual void play( bool _try_parallelizing );
|
||||
virtual bool done( void ) const;
|
||||
|
||||
static void cleanUp( engine * _engine );
|
||||
static void cleanUp( void );
|
||||
static constNotePlayHandleVector nphsOfInstrumentTrack(
|
||||
const instrumentTrack * _ct );
|
||||
|
||||
private:
|
||||
inline previewTrackContainer * previewTC( void )
|
||||
{
|
||||
return( s_previewTCs[eng()] );
|
||||
}
|
||||
|
||||
static QMap<const engine *, previewTrackContainer *> s_previewTCs;
|
||||
static previewTrackContainer * s_previewTC;
|
||||
|
||||
notePlayHandle * m_previewNote;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* project_journal.h - declaration of class projectJournal
|
||||
*
|
||||
* Copyright (c) 2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -27,7 +27,6 @@
|
||||
#define _PROJECT_JOURNAL_H
|
||||
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
#include "qt3support.h"
|
||||
|
||||
#ifndef QT3
|
||||
@@ -48,10 +47,10 @@
|
||||
class journallingObject;
|
||||
|
||||
|
||||
class projectJournal : public engineObject
|
||||
class projectJournal
|
||||
{
|
||||
public:
|
||||
projectJournal( engine * _engine );
|
||||
projectJournal( void );
|
||||
virtual ~projectJournal();
|
||||
|
||||
void undo( void );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* project_notes.h - header for project-notes-editor
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -40,7 +40,6 @@
|
||||
#endif
|
||||
|
||||
#include "journalling_object.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QAction;
|
||||
@@ -52,7 +51,7 @@ class projectNotes : public QMainWindow, public journallingObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
projectNotes( engine * _engine );
|
||||
projectNotes( void );
|
||||
virtual ~projectNotes();
|
||||
|
||||
void clear( void );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* right_frame.h - provides the display for the rackInsert instances
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn@netscape.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn@netscape.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -56,8 +56,7 @@ class rackView: public QWidget, public journallingObject
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
rackView( QWidget * _parent, engine * _engine,
|
||||
track * _track, audioPort * _port );
|
||||
rackView( QWidget * _parent, track * _track, audioPort * _port );
|
||||
~rackView();
|
||||
|
||||
void addEffect( effect * _e );
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
class QPainter;
|
||||
|
||||
|
||||
class sampleBuffer : public QObject, public engineObject, public sharedObject
|
||||
class sampleBuffer : public QObject, public sharedObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@@ -92,11 +92,10 @@ public:
|
||||
|
||||
// constructor which either loads sample _audio_file or decodes
|
||||
// base64-data out of string
|
||||
sampleBuffer( engine * _engine, const QString & _audio_file = "",
|
||||
sampleBuffer( const QString & _audio_file = "",
|
||||
bool _is_base64_data = FALSE );
|
||||
sampleBuffer( const sampleFrame * _data, const f_cnt_t _frames,
|
||||
engine * _engine );
|
||||
sampleBuffer( const f_cnt_t _frames, engine * _engine );
|
||||
sampleBuffer( const sampleFrame * _data, const f_cnt_t _frames );
|
||||
sampleBuffer( const f_cnt_t _frames );
|
||||
|
||||
virtual ~sampleBuffer();
|
||||
|
||||
@@ -164,6 +163,11 @@ public:
|
||||
m_frequency = _freq;
|
||||
}
|
||||
|
||||
inline void setSampleRate( sample_rate_t _rate )
|
||||
{
|
||||
m_sample_rate = _rate;
|
||||
}
|
||||
|
||||
inline const sampleFrame * data( void ) const
|
||||
{
|
||||
return( m_data );
|
||||
@@ -177,8 +181,7 @@ public:
|
||||
static sampleBuffer * FASTCALL resample( sampleFrame * _data,
|
||||
const f_cnt_t _frames,
|
||||
const sample_rate_t _src_sr,
|
||||
const sample_rate_t _dst_sr,
|
||||
engine * _engine );
|
||||
const sample_rate_t _dst_sr );
|
||||
|
||||
static inline sampleBuffer * FASTCALL resample(
|
||||
sampleBuffer * _buf,
|
||||
@@ -186,7 +189,7 @@ public:
|
||||
const sample_rate_t _dst_sr )
|
||||
{
|
||||
return( resample( _buf->m_data, _buf->m_frames, _src_sr,
|
||||
_dst_sr, _buf->eng() ) );
|
||||
_dst_sr ) );
|
||||
}
|
||||
|
||||
void normalize_sample_rate( const sample_rate_t _src_sr,
|
||||
@@ -270,6 +273,7 @@ private:
|
||||
float m_amplification;
|
||||
bool m_reversed;
|
||||
float m_frequency;
|
||||
sample_rate_t m_sample_rate;
|
||||
QMutex m_dataMutex;
|
||||
|
||||
#ifdef HAVE_SAMPLERATE_H
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
#include "play_handle.h"
|
||||
#include "sample_buffer.h"
|
||||
#include "types.h"
|
||||
#include "engine.h"
|
||||
|
||||
class bbTrack;
|
||||
class pattern;
|
||||
@@ -40,11 +39,11 @@ class track;
|
||||
class audioPort;
|
||||
|
||||
|
||||
class samplePlayHandle : public QObject, public playHandle, public engineObject
|
||||
class samplePlayHandle : public QObject, public playHandle
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
samplePlayHandle( const QString & _sample_file, engine * _engine );
|
||||
samplePlayHandle( const QString & _sample_file );
|
||||
samplePlayHandle( sampleBuffer * _sample_buffer );
|
||||
samplePlayHandle( sampleTCO * _tco );
|
||||
samplePlayHandle( pattern * _pattern );
|
||||
|
||||
@@ -53,7 +53,7 @@ class QSlider;
|
||||
class tabBar;
|
||||
|
||||
|
||||
class setupDialog : public QDialog, public engineObject
|
||||
class setupDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@@ -63,8 +63,7 @@ public:
|
||||
AUDIO_SETTINGS, MIDI_SETTINGS
|
||||
} ;
|
||||
|
||||
setupDialog( engine * _engine,
|
||||
configTabs _tab_to_open = GENERAL_SETTINGS );
|
||||
setupDialog( configTabs _tab_to_open = GENERAL_SETTINGS );
|
||||
virtual ~setupDialog();
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* song_editor.h - declaration of class songEditor, a window where you can
|
||||
* setup your songs
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -230,7 +230,7 @@ protected slots:
|
||||
|
||||
|
||||
private:
|
||||
songEditor( engine * _engine );
|
||||
songEditor( void );
|
||||
songEditor( const songEditor & );
|
||||
virtual ~songEditor();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* string_pair_drag.h - class stringPairDrag which provides general support
|
||||
* for drag'n'drop of string-pairs
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -39,23 +39,19 @@
|
||||
#endif
|
||||
|
||||
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
class QPixmap;
|
||||
|
||||
|
||||
class stringPairDrag : public
|
||||
#ifdef QT4
|
||||
QDrag,
|
||||
QDrag
|
||||
#else
|
||||
QStoredDrag,
|
||||
QStoredDrag
|
||||
#endif
|
||||
public engineObject
|
||||
{
|
||||
public:
|
||||
stringPairDrag( const QString & _key, const QString & _value,
|
||||
const QPixmap & _icon, QWidget * _w, engine * _engine );
|
||||
const QPixmap & _icon, QWidget * _w );
|
||||
~stringPairDrag();
|
||||
|
||||
static bool processDragEnterEvent( QDragEnterEvent * _dee,
|
||||
@@ -63,6 +59,11 @@ public:
|
||||
static QString decodeKey( QDropEvent * _de );
|
||||
static QString decodeValue( QDropEvent * _de );
|
||||
|
||||
static const char * mimeType( void )
|
||||
{
|
||||
return( "application/x-lmms-stringpair" );
|
||||
}
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* position of a channel + calculation of volume for each
|
||||
* speaker
|
||||
*
|
||||
* Copyright (c) 2004-2005 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -57,7 +57,7 @@ class surroundArea : public QWidget
|
||||
Q_OBJECT
|
||||
public:
|
||||
surroundArea( QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~surroundArea();
|
||||
volumeVector getVolumeVector( float _v_scale = 0.0f ) const;
|
||||
inline const QPoint & value( void ) const
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* tempo_sync_knob.h - adds bpm to ms conversion for knob class
|
||||
*
|
||||
* Copyright (c) 2005 Danny McRae <khjklujn/at/yahoo.com>
|
||||
* Copyright (c) 2005-2007 Danny McRae <khjklujn/at/yahoo.com>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -63,8 +63,7 @@ public:
|
||||
|
||||
|
||||
tempoSyncKnob( int _knob_num, QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track,
|
||||
float _scale = 1.0f );
|
||||
track * _track, float _scale = 1.0f );
|
||||
virtual ~tempoSyncKnob();
|
||||
|
||||
virtual void FASTCALL saveSettings( QDomDocument & _doc,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* timeline.h - class timeLine, representing a time-line with position marker
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -68,7 +68,7 @@ public:
|
||||
|
||||
|
||||
timeLine( int _xoff, int _yoff, float _ppt, songEditor::playPos & _pos,
|
||||
const midiTime & _begin, QWidget * _parent, engine * _engine );
|
||||
const midiTime & _begin, QWidget * _parent );
|
||||
virtual ~timeLine();
|
||||
|
||||
inline songEditor::playPos & pos( void )
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* track.h - declaration of classes concerning tracks -> neccessary for all
|
||||
* track-like objects (beat/bassline, sample-track...)
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -55,7 +55,6 @@
|
||||
#include "types.h"
|
||||
#include "midi_time.h"
|
||||
#include "rubberband.h"
|
||||
#include "engine.h"
|
||||
#include "journalling_object.h"
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* track_container.h - base-class for all track-containers like Song-Editor,
|
||||
* BB-Editor...
|
||||
*
|
||||
* Copyright (c) 2004-2006 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
* Copyright (c) 2004-2007 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -47,7 +47,6 @@
|
||||
#include "track.h"
|
||||
#include "journalling_object.h"
|
||||
#include "rubberband.h"
|
||||
#include "engine.h"
|
||||
|
||||
|
||||
|
||||
@@ -60,7 +59,7 @@ class trackContainer : public QMainWindow, public journallingObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
trackContainer( engine * _engine );
|
||||
trackContainer( void );
|
||||
virtual ~trackContainer();
|
||||
|
||||
inline QWidget * containerWidget( void )
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* visualization_widget.h - widget for visualization of sound-data
|
||||
*
|
||||
* Copyright (c) 2005-2006 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
|
||||
*
|
||||
@@ -47,7 +47,7 @@
|
||||
class QTimer;
|
||||
|
||||
|
||||
class visualizationWidget : public QWidget, public engineObject
|
||||
class visualizationWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@@ -56,7 +56,6 @@ public:
|
||||
SIMPLE // add more here
|
||||
} ;
|
||||
visualizationWidget( const QPixmap & _bg, QWidget * _parent,
|
||||
engine * _engine,
|
||||
visualizationTypes _vtype = SIMPLE );
|
||||
virtual ~visualizationWidget();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* volume_knob.h - defines a knob that display it's value as either a
|
||||
* percentage or in dbV.
|
||||
*
|
||||
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
||||
*
|
||||
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
||||
*
|
||||
@@ -45,7 +45,7 @@ class volumeKnob: public knob
|
||||
Q_OBJECT
|
||||
public:
|
||||
volumeKnob( int _knob_num, QWidget * _parent, const QString & _name,
|
||||
engine * _engine, track * _track );
|
||||
track * _track );
|
||||
virtual ~volumeKnob();
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user