comparison layer/SpectrogramLayer.h @ 920:e39d5d2734ed osx-retina

Fix crash caused by using proxy (of unknown lifecycle) instead of view as cache key
author Chris Cannam
date Wed, 18 Mar 2015 15:10:36 +0000
parents 4fe7a09be0fe
children 98827470ada2
comparison
equal deleted inserted replaced
919:a5488775f880 920:e39d5d2734ed
311 QImage image; 311 QImage image;
312 QRect validArea; 312 QRect validArea;
313 sv_frame_t startFrame; 313 sv_frame_t startFrame;
314 int zoomLevel; 314 int zoomLevel;
315 }; 315 };
316 typedef std::map<const LayerGeometryProvider *, ImageCache> ViewImageCache; 316 typedef std::map<const View *, ImageCache> ViewImageCache;
317 void invalidateImageCaches(); 317 void invalidateImageCaches();
318 void invalidateImageCaches(sv_frame_t startFrame, sv_frame_t endFrame); 318 void invalidateImageCaches(sv_frame_t startFrame, sv_frame_t endFrame);
319 mutable ViewImageCache m_imageCaches; 319 mutable ViewImageCache m_imageCaches;
320 320
321 /** 321 /**
372 FFTModel *getFFTModel(const LayerGeometryProvider *v) const; 372 FFTModel *getFFTModel(const LayerGeometryProvider *v) const;
373 Dense3DModelPeakCache *getPeakCache(const LayerGeometryProvider *v) const; 373 Dense3DModelPeakCache *getPeakCache(const LayerGeometryProvider *v) const;
374 void invalidateFFTModels(); 374 void invalidateFFTModels();
375 375
376 typedef std::pair<FFTModel *, sv_frame_t> FFTFillPair; // model, last fill 376 typedef std::pair<FFTModel *, sv_frame_t> FFTFillPair; // model, last fill
377 typedef std::map<const LayerGeometryProvider *, FFTFillPair> ViewFFTMap; 377 typedef std::map<const View *, FFTFillPair> ViewFFTMap;
378 typedef std::map<const LayerGeometryProvider *, Dense3DModelPeakCache *> PeakCacheMap; 378 typedef std::map<const View *, Dense3DModelPeakCache *> PeakCacheMap;
379 mutable ViewFFTMap m_fftModels; 379 mutable ViewFFTMap m_fftModels;
380 mutable PeakCacheMap m_peakCaches; 380 mutable PeakCacheMap m_peakCaches;
381 mutable Model *m_sliceableModel; 381 mutable Model *m_sliceableModel;
382 382
383 class MagnitudeRange { 383 class MagnitudeRange {