]> sigrok.org Git - libsigrok.git/blobdiff - device.c
uni-t-dmm: Make driver more similar to serial-dmm.
[libsigrok.git] / device.c
index 62395be57f3de405f6522e327d458d74f345d8c4..f26a1431d7df077f72a188f0dcd86fa1729a052f 100644 (file)
--- a/device.c
+++ b/device.c
@@ -1,5 +1,5 @@
 /*
- * This file is part of the sigrok project.
+ * This file is part of the libsigrok project.
  *
  * Copyright (C) 2013 Bert Vermeulen <bert@biot.com>
  *
@@ -243,6 +243,7 @@ SR_PRIV struct sr_dev_inst *sr_dev_inst_new(int index, int status,
        sdi->model = model ? g_strdup(model) : NULL;
        sdi->version = version ? g_strdup(version) : NULL;
        sdi->probes = NULL;
+       sdi->conn = NULL;
        sdi->priv = NULL;
 
        return sdi;
@@ -344,7 +345,7 @@ SR_PRIV void sr_serial_dev_inst_free(struct sr_serial_dev_inst *serial)
        g_free(serial);
 }
 
-SR_API GSList *sr_dev_inst_list(const struct sr_dev_driver *driver)
+SR_API GSList *sr_dev_list(const struct sr_dev_driver *driver)
 {
        if (driver && driver->dev_list)
                return driver->dev_list();
@@ -352,7 +353,7 @@ SR_API GSList *sr_dev_inst_list(const struct sr_dev_driver *driver)
                return NULL;
 }
 
-SR_API int sr_dev_inst_clear(const struct sr_dev_driver *driver)
+SR_API int sr_dev_clear(const struct sr_dev_driver *driver)
 {
        if (driver && driver->dev_clear)
                return driver->dev_clear();
@@ -360,4 +361,28 @@ SR_API int sr_dev_inst_clear(const struct sr_dev_driver *driver)
                return SR_OK;
 }
 
+SR_API int sr_dev_open(struct sr_dev_inst *sdi)
+{
+       int ret;
+
+       if (!sdi || !sdi->driver || !sdi->driver->dev_open)
+               return SR_ERR;
+
+       ret = sdi->driver->dev_open(sdi);
+
+       return ret;
+}
+
+SR_API int sr_dev_close(struct sr_dev_inst *sdi)
+{
+       int ret;
+
+       if (!sdi || !sdi->driver || !sdi->driver->dev_close)
+               return SR_ERR;
+
+       ret = sdi->driver->dev_close(sdi);
+
+       return ret;
+}
+
 /** @} */