Move waveform generation away from main
This commit is contained in:
@@ -174,6 +174,8 @@ public:
|
||||
|
||||
|
||||
static void generateWaves();
|
||||
|
||||
static bool s_wavesGenerated;
|
||||
|
||||
static WaveMipMap s_waveforms [NumBLWaveforms];
|
||||
};
|
||||
|
||||
@@ -1026,6 +1026,10 @@ MonstroInstrument::MonstroInstrument( InstrumentTrack * _instrument_track ) :
|
||||
m_sub3lfo2( 0.0f, -1.0f, 1.0f, 0.001f, this, tr( "Sub3-LFO2" ) )
|
||||
|
||||
{
|
||||
// make sure the wavetables exist:
|
||||
// generate bandlimited wavetables
|
||||
BandLimitedWave::generateWaves();
|
||||
|
||||
// setup waveboxes
|
||||
setwavemodel( m_osc2Wave )
|
||||
setwavemodel( m_osc3Wave1 )
|
||||
|
||||
@@ -27,10 +27,13 @@
|
||||
|
||||
|
||||
WaveMipMap BandLimitedWave::s_waveforms[4] = { };
|
||||
|
||||
bool BandLimitedWave::s_wavesGenerated = false;
|
||||
|
||||
void BandLimitedWave::generateWaves()
|
||||
{
|
||||
// don't generate if they already exist
|
||||
if( s_wavesGenerated ) return;
|
||||
|
||||
int i;
|
||||
|
||||
// saw wave - BLSaw
|
||||
@@ -144,4 +147,6 @@ void BandLimitedWave::generateWaves()
|
||||
}
|
||||
}
|
||||
|
||||
s_wavesGenerated = true;
|
||||
|
||||
}
|
||||
|
||||
@@ -65,7 +65,6 @@
|
||||
#include "ProjectRenderer.h"
|
||||
#include "DataFile.h"
|
||||
#include "song.h"
|
||||
#include "BandLimitedWave.h"
|
||||
|
||||
static inline QString baseName( const QString & _file )
|
||||
{
|
||||
@@ -120,9 +119,6 @@ int main( int argc, char * * argv )
|
||||
new QCoreApplication( argc, argv ) :
|
||||
new QApplication( argc, argv ) ;
|
||||
|
||||
// generate bandlimited wavetables for instruments to use
|
||||
BandLimitedWave::generateWaves();
|
||||
|
||||
Mixer::qualitySettings qs( Mixer::qualitySettings::Mode_HighQuality );
|
||||
ProjectRenderer::OutputSettings os( 44100, false, 160,
|
||||
ProjectRenderer::Depth_16Bit );
|
||||
|
||||
Reference in New Issue
Block a user