]> sigrok.org Git - pulseview.git/blobdiff - pv/data/logic.cpp
Renamed pv::data::Analog::get_snapshots and Logic::get_snapshots
[pulseview.git] / pv / data / logic.cpp
index 4d2254428dee22f44a9ca1bd1efd5a8d25103458..8b864f7672fb352f65a8cf1ffd59693f4cf210cf 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#include "logic.h"
-#include "logicsnapshot.h"
+#include <cassert>
 
-using namespace boost;
-using namespace std;
+#include "logic.hpp"
+#include "logicsnapshot.hpp"
+
+using std::deque;
+using std::max;
+using std::shared_ptr;
 
 namespace pv {
 namespace data {
 
-Logic::Logic(unsigned int num_probes, uint64_t samplerate) :
-       SignalData(samplerate),
-       _num_probes(num_probes)
+Logic::Logic(unsigned int num_channels) :
+       SignalData(),
+       num_channels_(num_channels)
 {
-       assert(_num_probes > 0);
+       assert(num_channels_ > 0);
 }
 
-int Logic::get_num_probes() const
+int Logic::get_num_channels() const
 {
-       return _num_probes;
+       return num_channels_;
 }
 
 void Logic::push_snapshot(
        shared_ptr<LogicSnapshot> &snapshot)
 {
-       _snapshots.push_front(snapshot);
+       snapshots_.push_front(snapshot);
+}
+
+const deque< shared_ptr<LogicSnapshot> >& Logic::logic_snapshots() const
+{
+       return snapshots_;
+}
+
+void Logic::clear()
+{
+       snapshots_.clear();
 }
 
-deque< shared_ptr<LogicSnapshot> >& Logic::get_snapshots()
+uint64_t Logic::get_max_sample_count() const
 {
-       return _snapshots;
+       uint64_t l = 0;
+       for (std::shared_ptr<LogicSnapshot> s : snapshots_) {
+               assert(s);
+               l = max(l, s->get_sample_count());
+       }
+       return l;
 }
 
 } // namespace data