- uint8_t* get_raw_samples(uint64_t start, uint64_t count) const;
-
- SegmentRawDataIterator* begin_raw_sample_iteration(uint64_t start) const;
- void continue_raw_sample_iteration(SegmentRawDataIterator* it, uint64_t increase) const;
- void end_raw_sample_iteration(SegmentRawDataIterator* it) const;
-
- mutable std::recursive_mutex mutex_;
- std::vector<uint8_t*> data_chunks_;
+ const uint8_t* get_raw_sample(uint64_t sample_num) const;
+ void get_raw_samples(uint64_t start, uint64_t count, uint8_t *dest) const;
+
+ SegmentDataIterator* begin_sample_iteration(uint64_t start);
+ void continue_sample_iteration(SegmentDataIterator* it, uint64_t increase);
+ void end_sample_iteration(SegmentDataIterator* it);
+ uint8_t* get_iterator_value(SegmentDataIterator* it);
+ uint64_t get_iterator_valid_length(SegmentDataIterator* it);
+
+ uint32_t segment_id_;
+ mutable recursive_mutex mutex_;
+ deque<uint8_t*> data_chunks_;