]> sigrok.org Git - pulseview.git/blobdiff - pv/devicemanager.h
icons: Renamed probe.svg to channels.svg
[pulseview.git] / pv / devicemanager.h
index 891ba3d2c1ac28a254917a7da49def32828779d2..ca86a7fe9c15c69f727ccbf3b04711a8650e8250 100644 (file)
 #include <glib.h>
 
 #include <list>
-#include <map>
+#include <memory>
 #include <string>
 
-#include <boost/shared_ptr.hpp>
-
 struct sr_context;
 struct sr_dev_driver;
 
 namespace pv {
 
-class DevInst;
 class SigSession;
 
+namespace device {
+class Device;
+}
+
 class DeviceManager
 {
 public:
@@ -44,14 +45,10 @@ public:
 
        ~DeviceManager();
 
-       const std::list< boost::shared_ptr<pv::DevInst> >& devices() const;
-
-       void use_device(boost::shared_ptr<pv::DevInst> dev_inst,
-               SigSession *owner);
-
-       void release_device(boost::shared_ptr<pv::DevInst> dev_inst);
+       const std::list< std::shared_ptr<pv::device::Device> >&
+               devices() const;
 
-       std::list< boost::shared_ptr<DevInst> > driver_scan(
+       std::list< std::shared_ptr<pv::device::Device> > driver_scan(
                struct sr_dev_driver *const driver,
                GSList *const drvopts = NULL);
 
@@ -64,14 +61,12 @@ private:
 
        void release_driver(struct sr_dev_driver *const driver);
 
-       static bool compare_devices(boost::shared_ptr<DevInst> a,
-               boost::shared_ptr<DevInst> b);
+       static bool compare_devices(std::shared_ptr<device::Device> a,
+               std::shared_ptr<device::Device> b);
 
 private:
        struct sr_context *const _sr_ctx;
-       std::list< boost::shared_ptr<pv::DevInst> > _devices;
-       std::map< boost::shared_ptr<pv::DevInst>, pv::SigSession*>
-               _used_devices;
+       std::list< std::shared_ptr<pv::device::Device> > _devices;
 };
 
 } // namespace pv