From 260a84b94bcc2881ddb6a05646fc7c55ee08d492 Mon Sep 17 00:00:00 2001 From: Patrick Niklaus Date: Thu, 9 Mar 2017 22:57:47 +0000 Subject: [PATCH] Simplify write/read code --- include/extractor/io.hpp | 20 ++++++++++---------- include/storage/io.hpp | 2 ++ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/include/extractor/io.hpp b/include/extractor/io.hpp index 55f1645d1..7497a02ee 100644 --- a/include/extractor/io.hpp +++ b/include/extractor/io.hpp @@ -28,11 +28,11 @@ template <> void read(const boost::filesystem::path &path, SegmentDataContainer segment_data.fwd_durations.resize(num_entries); segment_data.rev_durations.resize(num_entries); - reader.ReadInto(segment_data.nodes.data(), segment_data.nodes.size()); - reader.ReadInto(segment_data.fwd_weights.data(), segment_data.fwd_weights.size()); - reader.ReadInto(segment_data.rev_weights.data(), segment_data.rev_weights.size()); - reader.ReadInto(segment_data.fwd_durations.data(), segment_data.fwd_durations.size()); - reader.ReadInto(segment_data.rev_durations.data(), segment_data.rev_durations.size()); + reader.ReadInto(segment_data.nodes); + reader.ReadInto(segment_data.fwd_weights); + reader.ReadInto(segment_data.rev_weights); + reader.ReadInto(segment_data.fwd_durations); + reader.ReadInto(segment_data.rev_durations); } template <> @@ -48,11 +48,11 @@ void write(const boost::filesystem::path &path, const SegmentDataContainer &segm writer.WriteElementCount32(segment_data.nodes.size()); writer.WriteElementCount32(segment_data.nodes.size()); - writer.WriteFrom(segment_data.nodes.data(), segment_data.nodes.size()); - writer.WriteFrom(segment_data.fwd_weights.data(), segment_data.fwd_weights.size()); - writer.WriteFrom(segment_data.rev_weights.data(), segment_data.rev_weights.size()); - writer.WriteFrom(segment_data.fwd_durations.data(), segment_data.fwd_durations.size()); - writer.WriteFrom(segment_data.rev_durations.data(), segment_data.rev_durations.size()); + writer.WriteFrom(segment_data.nodes); + writer.WriteFrom(segment_data.fwd_weights); + writer.WriteFrom(segment_data.rev_weights); + writer.WriteFrom(segment_data.fwd_durations); + writer.WriteFrom(segment_data.rev_durations); } } } diff --git a/include/storage/io.hpp b/include/storage/io.hpp index 47f0bfd21..d6ca446e1 100644 --- a/include/storage/io.hpp +++ b/include/storage/io.hpp @@ -284,6 +284,8 @@ class FileWriter } } + template void WriteFrom(const std::vector &src) { WriteFrom(src.data(), src.size()); } + template void WriteFrom(const T &src) { WriteFrom(&src, 1); } template void WriteOne(const T tmp) { WriteFrom(tmp); }