in src/pipemode_op/Dataset/src/pipemode_dataset_op_kernel.cpp [170:185]
explicit Iterator(const Params& params, const std::string& record_format,
const std::string& channel_directory, const std::string& channel, const bool benchmark,
const uint32_t pipe_index, const uint64_t benchmark_records_interval,
const uint32_t max_corrupted_records_to_skip)
: DatasetIterator<Dataset>(params), read_time_(0), read_bytes_(0),
benchmark_(benchmark), benchmark_records_interval_(benchmark_records_interval) {
std::string pipe_path = BuildPipeName(channel_directory, channel, pipe_index);
if (record_format == "RecordIO") {
record_reader_ = std::unique_ptr<RecordReader>(new RecordIOReader(pipe_path));
} else if (record_format == "TFRecord") {
record_reader_ = std::unique_ptr<RecordReader>(
new TFRecordReader(pipe_path, max_corrupted_records_to_skip));
} else { // required to be TextLine
record_reader_ = std::unique_ptr<RecordReader>(new TextLineRecordReader(pipe_path));
}
}