projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Move signals to views and make Session handle multiple views
[pulseview.git]
/
pv
/
session.hpp
diff --git
a/pv/session.hpp
b/pv/session.hpp
index e113cf4fdb77711d33a4aac0b45cff49521e88ce..83a73f4af7678252dc28b0afee6f25cf2b02b553 100644
(file)
--- a/
pv/session.hpp
+++ b/
pv/session.hpp
@@
-64,6
+64,7
@@
class Analog;
class AnalogSegment;
class Logic;
class LogicSegment;
class AnalogSegment;
class Logic;
class LogicSegment;
+class SignalBase;
class SignalData;
}
class SignalData;
}
@@
-73,8
+74,7
@@
class Device;
namespace view {
class DecodeTrace;
namespace view {
class DecodeTrace;
-class LogicSignal;
-class Signal;
+class View;
}
class Session : public QObject
}
class Session : public QObject
@@
-116,8
+116,12
@@
public:
double get_samplerate() const;
double get_samplerate() const;
- const std::unordered_set< std::shared_ptr<view::Signal> >
- signals() const;
+ void register_view(std::shared_ptr<pv::view::View> view);
+
+ void deregister_view(std::shared_ptr<pv::view::View> view);
+
+ const std::unordered_set< std::shared_ptr<data::SignalBase> >
+ signalbases() const;
#ifdef ENABLE_DECODE
bool add_decoder(srd_decoder *const dec);
#ifdef ENABLE_DECODE
bool add_decoder(srd_decoder *const dec);
@@
-133,7
+137,7
@@
private:
void update_signals();
void update_signals();
- std::shared_ptr<
view::Signal> signal
_from_channel(
+ std::shared_ptr<
data::SignalBase> signalbase
_from_channel(
std::shared_ptr<sigrok::Channel> channel) const;
private:
std::shared_ptr<sigrok::Channel> channel) const;
private:
@@
-158,14
+162,16
@@
private:
DeviceManager &device_manager_;
std::shared_ptr<devices::Device> device_;
DeviceManager &device_manager_;
std::shared_ptr<devices::Device> device_;
+ std::unordered_set< std::shared_ptr<pv::view::View> > views_;
+
std::vector< std::shared_ptr<view::DecodeTrace> > decode_traces_;
mutable std::mutex sampling_mutex_; //!< Protects access to capture_state_.
capture_state capture_state_;
std::vector< std::shared_ptr<view::DecodeTrace> > decode_traces_;
mutable std::mutex sampling_mutex_; //!< Protects access to capture_state_.
capture_state capture_state_;
- mutable boost::shared_mutex signals_mutex_;
- std::unordered_set< std::shared_ptr<
view::Signal> > signal
s_;
- std::set< std::shared_ptr<data::SignalData> > all_signal_data_;
+
+ std::unordered_set< std::shared_ptr<
data::SignalBase> > signalbase
s_;
+ std::
unordered_
set< std::shared_ptr<data::SignalData> > all_signal_data_;
mutable std::recursive_mutex data_mutex_;
std::shared_ptr<data::Logic> logic_data_;
mutable std::recursive_mutex data_mutex_;
std::shared_ptr<data::Logic> logic_data_;