59 bool open(const
std::
string& filepath);
66 [[nodiscard]]
bool is_open() const;
71 [[nodiscard]] const
std::vector<
std::
string>& get_stream_names() const;
77 [[nodiscard]]
std::optional<Portal::Graphics::PrimitiveTopology> get_topology(
78 const
std::
string& stream_name) const;
83 [[nodiscard]]
size_t get_sample_count(const
std::
string& stream_name) const;
89 [[nodiscard]]
std::unordered_map<
std::
string,
std::
string> get_metadata(
90 const
std::
string& stream_name) const;
107 const
std::
string& stream_name,
size_t index) const;
113 [[nodiscard]]
std::optional<
double> sample_time(
114 const
std::
string& stream_name,
size_t index) const;
116 [[nodiscard]]
std::
string get_last_error()
const {
return m_last_error; }
124 void set_error(std::string msg)
const { m_last_error = std::move(msg); }
SpatialReader & operator=(const SpatialReader &)=delete
void set_error(std::string msg) const
std::unique_ptr< Impl > m_impl
SpatialReader(const SpatialReader &)=delete
SpatialReader(SpatialReader &&) noexcept
Reads back the time-sampled streams a SpatialCache wrote, in the same SpatialSample format it writes.
One sample's worth of data for one named stream.