* This file is part of the libsigrok project.
*
* Copyright (C) 2012 Martin Ling <martin-git@earth.li>
+ * Copyright (C) 2013 Bert Vermeulen <bert@biot.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/** Private, per-device-instance driver context. */
struct dev_context {
- /** The current frame limit */
+ /* Acquisition settings */
+ GSList *enabled_probes;
uint64_t limit_frames;
-
- /** 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 frames. */
- uint64_t num_frames;
-
- /** The current number of already received samples. */
- uint64_t num_samples;
-
- /** Current scale setting. */
- float scale;
-
- /** Current offset setting. */
- float offset;
-
- /** USBTMC character device file descriptor. */
+ /* Device settings */
+ gboolean channels[2];
+ float timebase;
+ float vdiv[2];
+ float vert_offset[2];
+ char *trigger_source;
+ float horiz_triggerpos;
+ char *trigger_slope;
+ char *coupling[2];
+
+ /* Operational state */
+ char *device;
int fd;
+ uint64_t num_frames;
+ uint64_t num_frame_samples;
+ struct sr_probe *channel_frame;
};
-SR_PRIV int rigol_ds1xx2_receive_data(int fd, int revents, void *cb_data);
-
-SR_PRIV int rigol_ds1xx2_send_data(int fd, const char *format, ...);
+SR_PRIV int rigol_ds1xx2_receive(int fd, int revents, void *cb_data);
+SR_PRIV int rigol_ds1xx2_send(struct dev_context *devc, const char *format, ...);
+SR_PRIV int rigol_ds1xx2_get_dev_cfg(const struct sr_dev_inst *sdi);
#endif