increased set state speed
This commit is contained in:
parent
c519f11990
commit
68ac036203
@ -35,7 +35,7 @@ class MyStatus(CellState):
|
|||||||
|
|
||||||
def get_state_draw_color(self, iteration):
|
def get_state_draw_color(self, iteration):
|
||||||
red = 0
|
red = 0
|
||||||
if self._state[iteration % 2][0]:
|
if self._state_slots[iteration % 2][0]:
|
||||||
red = 255
|
red = 255
|
||||||
return [red, 0, 0]
|
return [red, 0, 0]
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ class CellState:
|
|||||||
"""
|
"""
|
||||||
def __init__(self, initial_state, state_save_slot_count=2):
|
def __init__(self, initial_state, state_save_slot_count=2):
|
||||||
self._state_save_slot_count = state_save_slot_count
|
self._state_save_slot_count = state_save_slot_count
|
||||||
self._state = [[initial_state]] * state_save_slot_count
|
self._state_slots = [[initial_state]] * state_save_slot_count
|
||||||
|
|
||||||
def set_status_of_iteration(self, new_status, iteration):
|
def set_status_of_iteration(self, new_status, iteration):
|
||||||
""" Will set the new status for the iteration modulo number of saved states.
|
""" Will set the new status for the iteration modulo number of saved states.
|
||||||
@ -13,17 +13,20 @@ class CellState:
|
|||||||
:param iteration: Uses the iteration index, to differ between concurrent states.
|
:param iteration: Uses the iteration index, to differ between concurrent states.
|
||||||
:return True if status has changed.
|
:return True if status has changed.
|
||||||
"""
|
"""
|
||||||
self._state[iteration % self._state_save_slot_count] = new_status
|
slot_count = self._state_save_slot_count
|
||||||
|
states = self._state_slots
|
||||||
|
|
||||||
return self._state[(iteration - 1) % self._state_save_slot_count] \
|
states[iteration % slot_count] = new_status
|
||||||
!= self._state[iteration % self._state_save_slot_count]
|
|
||||||
|
return states[(iteration - 1) % slot_count] \
|
||||||
|
!= states[iteration % slot_count]
|
||||||
|
|
||||||
def get_status_of_iteration(self, iteration):
|
def get_status_of_iteration(self, iteration):
|
||||||
""" Will return the status for the iteration modulo number of saved states.
|
""" Will return the status for the iteration modulo number of saved states.
|
||||||
:param iteration: Uses the iteration index, to differ between concurrent states.
|
:param iteration: Uses the iteration index, to differ between concurrent states.
|
||||||
:return The status for this iteration.
|
:return The status for this iteration.
|
||||||
"""
|
"""
|
||||||
return self._state[iteration % self._state_save_slot_count]
|
return self._state_slots[iteration % self._state_save_slot_count]
|
||||||
|
|
||||||
def get_state_draw_color(self, iteration):
|
def get_state_draw_color(self, iteration):
|
||||||
raise NotImplementedError
|
raise NotImplementedError
|
||||||
|
Loading…
Reference in New Issue
Block a user