From 4ddbdebae4689a75984ff1e408807e9ab9631746 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Fri, 2 Aug 2019 00:10:38 +0300 Subject: [PATCH] Specify cache getter in getters --- gui/builtinGraphs/base.py | 6 +++--- gui/builtinGraphs/fitWarpTime.py | 14 ++++++++------ 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/gui/builtinGraphs/base.py b/gui/builtinGraphs/base.py index 2950de96d..adb6e624d 100644 --- a/gui/builtinGraphs/base.py +++ b/gui/builtinGraphs/base.py @@ -232,13 +232,13 @@ class FitGraph(metaclass=ABCMeta): def _getPoints(self, mainParam, miscParams, xSpec, ySpec, fit, tgt): try: - fullGetter, singleGetter = self._getters[(xSpec.handle, ySpec.handle)] + fullGetter, singleGetter, cacheGetter = self._getters[(xSpec.handle, ySpec.handle)] except KeyError: return [], [] else: return fullGetter( - self, singleGetter=singleGetter, mainParam=mainParam, - miscParams=miscParams, fit=fit, tgt=tgt) + self, cacheGetter=cacheGetter, singleGetter=singleGetter, + mainParam=mainParam, miscParams=miscParams, fit=fit, tgt=tgt) _denormalizers = {} diff --git a/gui/builtinGraphs/fitWarpTime.py b/gui/builtinGraphs/fitWarpTime.py index 3212d2bc6..da9bc9bca 100644 --- a/gui/builtinGraphs/fitWarpTime.py +++ b/gui/builtinGraphs/fitWarpTime.py @@ -68,19 +68,21 @@ class FitWarpTimeGraph(FitGraph): 'subwarpSpeed': self._subspeedCache.getSubwarpSpeed(fit), 'warpSpeed': fit.warpSpeed} - def _distance2timeFull(self, singleGetter, mainParam, miscParams, fit, tgt): + def _distance2timeFull(self, cacheGetter, singleGetter, mainParam, miscParams, fit, tgt): xs = [] ys = [] - cache = self._distance2timeCache(miscParams=miscParams, fit=fit, tgt=tgt) + cache = cacheGetter(self, miscParams=miscParams, fit=fit, tgt=tgt) for distance in self._iterLinear(mainParam[1]): - time = singleGetter(self, mainParam=distance, miscParams=miscParams, fit=fit, tgt=tgt, cache=cache) + time = singleGetter( + self, cacheGetter=cacheGetter, mainParam=distance, miscParams=miscParams, + fit=fit, tgt=tgt, cache=cache) xs.append(distance) ys.append(time) return xs, ys - def _distance2timeSingle(self, mainParam, miscParams, fit, tgt, cache=None): + def _distance2timeSingle(self, cacheGetter, mainParam, miscParams, fit, tgt, cache=None): if cache is None: - cache = self._distance2timeCache(miscParams=miscParams, fit=fit, tgt=tgt) + cache = cacheGetter(self, miscParams=miscParams, fit=fit, tgt=tgt) time = calculate_time_in_warp( max_subwarp_speed=cache['subwarpSpeed'], max_warp_speed=cache['warpSpeed'], @@ -88,7 +90,7 @@ class FitWarpTimeGraph(FitGraph): return time _getters = { - ('distance', 'time'): (_distance2timeFull, _distance2timeSingle)} + ('distance', 'time'): (_distance2timeFull, _distance2timeSingle, _distance2timeCache)} class SubwarpSpeedCache(FitDataCache):