X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fsnapshot.hpp;fp=pv%2Fdata%2Fsnapshot.hpp;h=0000000000000000000000000000000000000000;hb=f3d66e52ed6b454ea7a0662d5e6367e230116a2b;hp=6015de9e65a9a367f7f29e52af84b274f83316fe;hpb=ff008de665c7990d5f3408f918ff090d8e6c60b2;p=pulseview.git diff --git a/pv/data/snapshot.hpp b/pv/data/snapshot.hpp deleted file mode 100644 index 6015de9..0000000 --- a/pv/data/snapshot.hpp +++ /dev/null @@ -1,90 +0,0 @@ -/* - * This file is part of the PulseView project. - * - * Copyright (C) 2012 Joel Holdsworth - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef PULSEVIEW_PV_DATA_SNAPSHOT_H -#define PULSEVIEW_PV_DATA_SNAPSHOT_H - -#include -#include -#include - -namespace pv { -namespace data { - -class Snapshot -{ -public: - Snapshot(uint64_t samplerate, unsigned int unit_size); - - virtual ~Snapshot(); - - uint64_t get_sample_count() const; - - double start_time() const; - - double samplerate() const; - void set_samplerate(double samplerate); - - unsigned int unit_size() const; - - /** - * @brief Increase the capacity of the snapshot. - * - * Increasing the capacity allows samples to be appended without needing - * to reallocate memory. - * - * For the best efficiency @c set_capacity() should be called once before - * @c append_data() is called to set up the snapshot with the expected number - * of samples that will be appended in total. - * - * @note The capacity will automatically be increased when @c append_data() - * is called if there is not enough capacity in the buffer to store the samples. - * - * @param[in] new_capacity The new capacity of the snapshot. If this value is - * smaller or equal than the current capacity then the method has no effect. - */ - void set_capacity(uint64_t new_capacity); - - /** - * @brief Get the current capacity of the snapshot. - * - * The capacity can be increased by calling @c set_capacity(). - * - * @return The current capacity of the snapshot. - */ - uint64_t capacity() const; - -protected: - void append_data(void *data, uint64_t samples); - -protected: - mutable std::recursive_mutex mutex_; - std::vector data_; - uint64_t sample_count_; - double start_time_; - double samplerate_; - uint64_t capacity_; - unsigned int unit_size_; -}; - -} // namespace data -} // namespace pv - -#endif // PULSEVIEW_PV_DATA_SNAPSHOT_H