X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fdata%2Fsegment.hpp;h=9bdc17dd6f1c54fa854fd823eb12685e40763c7e;hb=5eb9d1c43e387cb399b3582388cff1ab38973c70;hp=54d236eb05c6abb66636124131891d05f22d258b;hpb=1f3033cb3e63de7cfe98dab537460443917fece3;p=pulseview.git diff --git a/pv/data/segment.hpp b/pv/data/segment.hpp index 54d236eb..9bdc17dd 100644 --- a/pv/data/segment.hpp +++ b/pv/data/segment.hpp @@ -25,12 +25,12 @@ #include #include -#include +#include #include using std::recursive_mutex; -using std::vector; +using std::deque; namespace SegmentTest { struct SmallSize8Single; @@ -84,6 +84,7 @@ public: protected: void append_single_sample(void *data); void append_samples(void *data, uint64_t samples); + 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); @@ -94,7 +95,7 @@ protected: uint32_t segment_id_; mutable recursive_mutex mutex_; - vector data_chunks_; + deque data_chunks_; uint8_t* current_chunk_; uint64_t used_samples_, unused_samples_; uint64_t sample_count_; @@ -121,6 +122,8 @@ protected: } // namespace data } // namespace pv -Q_DECLARE_METATYPE(pv::data::Segment); +typedef std::shared_ptr SharedPtrToSegment; + +Q_DECLARE_METATYPE(SharedPtrToSegment); #endif // PULSEVIEW_PV_DATA_SEGMENT_HPP