Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        void RemoveChunkFromCache(ProcessedAudioChunk chunk)
        {
            if (_processedChunksInMemory.Count == 0)
            {
                return;
            }

            List <ProcessedAudioChunk> chunks;

            chunks = _processedChunksInMemory[chunk.sourceSample];
            chunks.Remove(chunk);
        }
Ejemplo n.º 3
0
		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;
		}
Ejemplo n.º 4
0
		void RemoveChunkFromCache( ProcessedAudioChunk chunk )
		{
			if( _processedChunksInMemory.Count == 0 )
				return;
			
			List<ProcessedAudioChunk> chunks;
			chunks = _processedChunksInMemory[ chunk.sourceSample ];
			chunks.Remove( chunk );
		}