using boost::lock_guard;
using boost::mutex;
using boost::shared_ptr;
+using std::list;
using std::map;
using std::set;
using std::string;
{
// TODO: This should not be necessary
_session = this;
+
+ set_default_device();
}
SigSession::~SigSession()
capture_state_changed(state);
}
+void SigSession::set_default_device()
+{
+ shared_ptr<pv::device::DevInst> default_device;
+ const list< shared_ptr<device::Device> > &devices =
+ _device_manager.devices();
+
+ if (!devices.empty()) {
+ // Fall back to the first device in the list.
+ default_device = devices.front();
+
+ // Try and find the demo device and select that by default
+ BOOST_FOREACH (shared_ptr<pv::device::Device> dev, devices)
+ if (strcmp(dev->dev_inst()->driver->name,
+ "demo") == 0) {
+ default_device = dev;
+ break;
+ }
+ }
+
+ set_device(default_device);
+}
+
void SigSession::update_signals(shared_ptr<device::DevInst> dev_inst)
{
assert(dev_inst);