X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fsegment.hpp;h=18f1aed77192978ce1a87cbb86aaf7b929672f73;hb=85a702806a15852f3684645dffdc38cb30274481;hp=db75ef710a285ceb75f795667a0826d34f4b8e1b;hpb=b82243f74a175f621af26aabbc0f32e2ecb125fa;p=pulseview.git diff --git a/pv/data/segment.hpp b/pv/data/segment.hpp index db75ef7..18f1aed 100644 --- a/pv/data/segment.hpp +++ b/pv/data/segment.hpp @@ -58,7 +58,7 @@ private: static const uint64_t MaxChunkSize; public: - Segment(uint64_t samplerate, unsigned int unit_size); + Segment(uint32_t segment_id, uint64_t samplerate, unsigned int unit_size); virtual ~Segment(); @@ -71,6 +71,11 @@ public: unsigned int unit_size() const; + uint32_t segment_id() const; + + void set_complete(); + bool is_complete() const; + void free_unused_memory(); protected: @@ -82,6 +87,7 @@ protected: void continue_raw_sample_iteration(SegmentRawDataIterator* it, uint64_t increase); void end_raw_sample_iteration(SegmentRawDataIterator* it); + uint32_t segment_id_; mutable recursive_mutex mutex_; vector data_chunks_; uint8_t* current_chunk_; @@ -93,6 +99,7 @@ protected: unsigned int unit_size_; int iterator_count_; bool mem_optimization_requested_; + bool is_complete_; friend struct SegmentTest::SmallSize8Single; friend struct SegmentTest::MediumSize8Single;