diff --git a/libs/util/include/psemek/util/binary_stream.hpp b/libs/util/include/psemek/util/binary_stream.hpp index 8c8aafa0..93e41bf4 100644 --- a/libs/util/include/psemek/util/binary_stream.hpp +++ b/libs/util/include/psemek/util/binary_stream.hpp @@ -77,6 +77,18 @@ namespace psemek::util return detail::read_helper::read(data); } + template + T const * read_ptr(std::size_t count) + { + std::size_t size = sizeof(T) * count; + if (data.size() < size) + detail::unexpected_end(); + + auto p = data.data(); + data.remove_prefix(size); + return reinterpret_cast(p); + } + char const * read_raw(std::size_t count) { if (data.size() < count)