public IGATProcessedSample GetProcessedSample(GATData sourceSample, double pitch, GATEnvelope envelope) { if (envelope == null) { envelope = GATEnvelope.nullEnvelope; } int i; List <ProcessedAudioChunk> chunks = _processedChunksInMemory[sourceSample]; ProcessedAudioChunk sample; for (i = 0; i < chunks.Count; i++) { if (chunks[i].envelope == envelope && chunks[i].Pitch == pitch) { sample = chunks[i]; return(sample); } } sample = new ProcessedAudioChunk(sourceSample, envelope, this, pitch); //Here is the main dif with base class chunks.Add(sample); return(sample); }
void RemoveChunkFromCache(ProcessedAudioChunk chunk) { if (_processedChunksInMemory.Count == 0) { return; } List <ProcessedAudioChunk> chunks; chunks = _processedChunksInMemory[chunk.sourceSample]; chunks.Remove(chunk); }
public IGATProcessedSample GetProcessedSample( GATData sourceSample, double pitch, GATEnvelope envelope ) { if( envelope == null ) envelope = GATEnvelope.nullEnvelope; int i; List<ProcessedAudioChunk> chunks = _processedChunksInMemory[ sourceSample ]; ProcessedAudioChunk sample; for( i = 0; i < chunks.Count; i++ ) { if( chunks[i].envelope == envelope && chunks[i].Pitch == pitch ) { sample = chunks[i]; return sample; } } sample = new ProcessedAudioChunk( sourceSample, envelope, this, pitch ); //Here is the main dif with base class chunks.Add( sample ); return sample; }
void RemoveChunkFromCache( ProcessedAudioChunk chunk ) { if( _processedChunksInMemory.Count == 0 ) return; List<ProcessedAudioChunk> chunks; chunks = _processedChunksInMemory[ chunk.sourceSample ]; chunks.Remove( chunk ); }