]> sigrok.org Git - pulseview.git/blobdiff - pv/devices/hardwaredevice.cpp
Various minor whitespace and consistency fixes.
[pulseview.git] / pv / devices / hardwaredevice.cpp
index 953864d589429fb9fb1c20e05d106de5132f55f9..318ce1cab26fa61330563fbdd075a5ab510193be 100644 (file)
@@ -44,19 +44,18 @@ namespace devices {
 HardwareDevice::HardwareDevice(const std::shared_ptr<sigrok::Context> &context,
        std::shared_ptr<sigrok::HardwareDevice> device) :
        context_(context),
-       device_open_(false) {
+       device_open_(false)
+{
        device_ = device;
 }
 
-HardwareDevice::~HardwareDevice() {
-       if (device_open_)
-               device_->close();
-
-       if (session_)
-               session_->remove_devices();
+HardwareDevice::~HardwareDevice()
+{
+       close();
 }
 
-string HardwareDevice::full_name() const {
+string HardwareDevice::full_name() const
+{
        vector<string> parts = {device_->vendor(), device_->model(),
                device_->version(), device_->serial_number()};
        if (device_->connection_id().length() > 0)
@@ -64,12 +63,14 @@ string HardwareDevice::full_name() const {
        return join(parts, " ");
 }
 
-shared_ptr<sigrok::HardwareDevice> HardwareDevice::hardware_device() const {
+shared_ptr<sigrok::HardwareDevice> HardwareDevice::hardware_device() const
+{
        return static_pointer_cast<sigrok::HardwareDevice>(device_);
 }
 
 string HardwareDevice::display_name(
-       const DeviceManager &device_manager) const {
+       const DeviceManager &device_manager) const
+{
        const auto hw_dev = hardware_device();
 
        // If we can find another device with the same model/vendor then
@@ -99,19 +100,33 @@ string HardwareDevice::display_name(
        return join(parts, " ");
 }
 
-void HardwareDevice::create() {
-       // Open the device
-        try {
-                device_->open();
-        } catch(const sigrok::Error &e) {
-                throw QString(e.what());
-        }
+void HardwareDevice::open()
+{
+       if (device_open_)
+               close();
+
+       try {
+               device_->open();
+       } catch (const sigrok::Error &e) {
+               throw QString(e.what());
+       }
+
+       device_open_ = true;
+
+       // Set up the session
+       session_ = context_->create_session();
+       session_->add_device(device_);
+}
+
+void HardwareDevice::close()
+{
+       if (device_open_)
+               device_->close();
 
-        device_open_ = true;
+       if (session_)
+               session_->remove_devices();
 
-        // Set up the session
-        session_ = context_->create_session();
-        session_->add_device(device_);
+       device_open_ = false;
 }
 
 } // namespace devices