MCPcopy Index your code
hub / github.com/DeepLabCut/DeepLabCut / BackgroundPlayer

Class BackgroundPlayer

deeplabcut/gui/tracklet_toolbox.py:173–242  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

171
172
173class BackgroundPlayer:
174 def __init__(self, viz):
175 self.viz = viz
176 self.can_run = Event()
177 self.can_run.clear()
178 self.running = True
179 self.paused = True
180 self.speed = "F"
181
182 def run(self):
183 while self.running:
184 self.can_run.wait()
185 i = self.viz.curr_frame
186 if "F" in self.speed:
187 if len(self.speed) == 1:
188 i += 1
189 else:
190 i += 2 * (len(self.speed) - 1)
191 elif "R" in self.speed:
192 if len(self.speed) == 1:
193 i -= 1
194 else:
195 i -= 2 * (len(self.speed) - 1)
196 if i >= self.viz.manager.nframes:
197 i = 0
198 elif i < 0:
199 i = self.viz.manager.nframes - 1
200 self.viz.slider.set_val(i)
201
202 def pause(self):
203 self.can_run.clear()
204 self.paused = True
205
206 def resume(self):
207 self.can_run.set()
208 self.paused = False
209
210 def toggle(self):
211 if self.paused:
212 self.resume()
213 else:
214 self.pause()
215
216 def forward(self):
217 speed = self.speed
218 if "R" in speed:
219 speed = "F"
220 elif len(speed) < 5:
221 speed += "F"
222 elif len(speed) == 5:
223 speed = "F"
224 print(speed)
225 self.speed = speed
226 self.resume()
227
228 def rewind(self):
229 speed = self.speed
230 if "F" in speed:

Callers 1

__init__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected