X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Funi-t-dmm%2Fprotocol.h;h=4258d413d4a3bad72fee264d3f4adb56b2c5cc78;hb=eaa8c6597b880d018731c36922ed4013e34813e1;hp=141414a71ca5ddbbd207796550ea9d2a6d46bda7;hpb=f3cde30904b2bc5ac5b1782d5e65d1ec8ce60ed6;p=libsigrok.git
diff --git a/src/hardware/uni-t-dmm/protocol.h b/src/hardware/uni-t-dmm/protocol.h
index 141414a7..4258d413 100644
--- a/src/hardware/uni-t-dmm/protocol.h
+++ b/src/hardware/uni-t-dmm/protocol.h
@@ -14,8 +14,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ * along with this program; if not, see .
*/
#ifndef LIBSIGROK_HARDWARE_UNI_T_DMM_PROTOCOL_H
@@ -24,68 +23,30 @@
#include
#include
#include
-#include "libsigrok.h"
+#include
#include "libsigrok-internal.h"
#define LOG_PREFIX "uni-t-dmm"
-enum {
- TECPEL_DMM_8061,
- UNI_T_UT372,
- UNI_T_UT60A,
- UNI_T_UT60E,
- UNI_T_UT60G,
- UNI_T_UT61B,
- UNI_T_UT61C,
- UNI_T_UT61D,
- UNI_T_UT61E,
- UNI_T_UT71A,
- UNI_T_UT71B,
- UNI_T_UT71C,
- UNI_T_UT71D,
- UNI_T_UT71E,
- VOLTCRAFT_VC820,
- VOLTCRAFT_VC830,
- VOLTCRAFT_VC840,
- VOLTCRAFT_VC920,
- VOLTCRAFT_VC940,
- VOLTCRAFT_VC960,
- TENMA_72_7745,
- TENMA_72_7750,
-};
-
struct dmm_info {
- char *vendor;
- char *device;
+ struct sr_dev_driver di;
+ const char *vendor;
+ const char *device;
uint32_t baudrate;
int packet_size;
gboolean (*packet_valid)(const uint8_t *);
int (*packet_parse)(const uint8_t *, float *,
struct sr_datafeed_analog *, void *);
void (*dmm_details)(struct sr_datafeed_analog *, void *);
- struct sr_dev_driver *di;
- int (*receive_data)(int, int, void *);
+ gsize info_size;
};
#define CHUNK_SIZE 8
#define DMM_BUFSIZE 256
-/** Private, per-device-instance driver context. */
struct dev_context {
- /** The current sampling limit (in number of samples). */
- uint64_t limit_samples;
-
- /** The current sampling limit (in ms). */
- uint64_t limit_msec;
-
- /** Opaque pointer passed in by the frontend. */
- void *cb_data;
-
- /** The current number of already received samples. */
- uint64_t num_samples;
-
- int64_t starttime;
+ struct sr_sw_limits limits;
gboolean first_run;
@@ -94,27 +55,6 @@ struct dev_context {
uint8_t buflen;
};
-SR_PRIV int receive_data_TECPEL_DMM_8061(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT372(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT60A(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT60E(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT60G(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT61B(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT61C(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT61D(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT61E(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT71A(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT71B(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT71C(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT71D(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_UNI_T_UT71E(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC820(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC830(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC840(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC920(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC940(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_VOLTCRAFT_VC960(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_TENMA_72_7745(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_TENMA_72_7750(int fd, int revents, void *cb_data);
+SR_PRIV int uni_t_dmm_receive_data(int fd, int revents, void *cb_data);
#endif