+void Snapshot::set_capacity(const uint64_t new_capacity)
+{
+ lock_guard<recursive_mutex> lock(_mutex);
+
+ assert(_capacity >= _sample_count);
+ if (new_capacity > _capacity) {
+ _capacity = new_capacity;
+ _data.resize((new_capacity * _unit_size) + sizeof(uint64_t));
+ }
+}
+
+uint64_t Snapshot::capacity() const
+{
+ lock_guard<recursive_mutex> lock(_mutex);
+ return _data.size();
+}
+