| 534 | } |
| 535 | |
| 536 | reader_t *clone_reader(const reader_t *const reader_in) { |
| 537 | reader_t *reader = setup_reader(reader_in->trace_path, reader_in->trace_type, |
| 538 | &reader_in->init_params); |
| 539 | reader->n_total_req = reader_in->n_total_req; |
| 540 | |
| 541 | if (reader->trace_format != TXT_TRACE_FORMAT) { |
| 542 | munmap(reader->mapped_file, reader->file_size); |
| 543 | reader->mapped_file = reader_in->mapped_file; |
| 544 | } |
| 545 | reader->cloned = true; |
| 546 | return reader; |
| 547 | } |
| 548 | |
| 549 | int close_reader(reader_t *const reader) { |
| 550 | /* close the file in the reader or unmmap the memory in the file |