public override boolean open( int block_size, int sample_rate )
{
boolean ret = base.open( block_size, sample_rate );
#if DEBUG
sout.println( "VocaloidDriver#open; dllHandle=0x" + PortUtil.toHexString( dllHandle.ToInt32() ).ToUpper() );
#endif
g_pEvents = new Vector<MidiEvent>();
g_midiPrepared0 = false;
g_midiPrepared1 = false;
g_tcCurrent = 0;
g_tcPrevious = 0;
g_saProcessed = 0;
g_saTotalSamples = 0;
g_tempoList = new Vector<TempoInfo>();
g_numTempoList = 0;
//g_cancelRequired = false;
g_progress = 0.0;
s_track_events = new Vector<Vector<MidiEvent>>();
s_track_events.add( new Vector<MidiEvent>() );
s_track_events.add( new Vector<MidiEvent>() );
return ret;
}