Files
@ f125391c937d
Branch filter:
Location: OneEye/src/analyzer/framecache.py - annotation
f125391c937d
527 B
text/x-python
corners: order canonization moved to the add method
f4097dbb3757 f4097dbb3757 f4097dbb3757 f4097dbb3757 f4097dbb3757 f4097dbb3757 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 f4097dbb3757 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 6f9ec51a8142 | from collections import deque
class FrameCache:
def __init__(self,capacity=600): # 600 is enough for 10 min of 1 fps
self._capacity=capacity
self._keys=deque()
self._values=dict()
self._i=0
def put(self,item):
self._i+=1
if len(self._keys)>=self._capacity:
k=self._keys.popleft()
del self._values[k]
self._values[self._i]=item
self._keys.append(self._i)
return self._i
def get(self,k):
return self._values.get(k)
def getRelative(self,k):
return (self._keys[k], self._values[self._keys[k]])
|