MultiLogIterator: remove wraparound mode (#23360)

This commit is contained in:
Adeeb Shihadeh
2022-01-02 15:16:44 -08:00
committed by GitHub
parent 9d3a821f37
commit 92f194decc
6 changed files with 7 additions and 12 deletions
+1 -1
Submodule panda updated: 6f95a096e6...224736b22a
+1 -1
View File
@@ -41,5 +41,5 @@ if __name__ == "__main__":
sys.exit(1)
route = Route(sys.argv[1])
lr = MultiLogIterator(route.log_paths()[:5], wraparound=False)
lr = MultiLogIterator(route.log_paths()[:5])
get_fingerprint(lr)
+1 -1
View File
@@ -17,7 +17,7 @@ if __name__ == "__main__":
cfg = [c for c in CONFIGS if c.proc_name == args.process][0]
route = Route(args.route)
lr = MultiLogIterator(route.log_paths(), wraparound=False)
lr = MultiLogIterator(route.log_paths())
inputs = list(lr)
outputs = replay_process(cfg, inputs)
+1 -1
View File
@@ -59,6 +59,6 @@ def get_eps_factor(lr, plot=False):
if __name__ == "__main__":
r = Route(sys.argv[1])
lr = MultiLogIterator(r.log_paths(), wraparound=False)
lr = MultiLogIterator(r.log_paths())
n = get_eps_factor(lr, plot="--plot" in sys.argv)
print("EPS torque factor: ", n)
+2 -7
View File
@@ -13,9 +13,8 @@ from cereal import log as capnp_log
# this is an iterator itself, and uses private variables from LogReader
class MultiLogIterator:
def __init__(self, log_paths, wraparound=False, sort_by_time=False):
def __init__(self, log_paths, sort_by_time=False):
self._log_paths = log_paths
self._wraparound = wraparound
self._first_log_idx = next(i for i in range(len(log_paths)) if log_paths[i] is not None)
self._current_log = self._first_log_idx
@@ -42,12 +41,8 @@ class MultiLogIterator:
self._idx = 0
self._current_log = next(i for i in range(self._current_log + 1, len(self._log_readers) + 1)
if i == len(self._log_readers) or self._log_paths[i] is not None)
# wraparound
if self._current_log == len(self._log_readers):
if self._wraparound:
self._current_log = self._first_log_idx
else:
raise StopIteration
raise StopIteration
def __next__(self):
while 1:
+1 -1
View File
@@ -35,7 +35,7 @@ def main(argv):
args.data_dir = os.path.dirname(args.data_dir)
route = Route(args.route_name, args.data_dir)
lr = MultiLogIterator(route.log_paths(), wraparound=False)
lr = MultiLogIterator(route.log_paths())
with open(args.out_path, 'wb') as f:
try: