#include <glib.h>
#include <stdint.h>
#include <string.h>
-#include "libsigrok.h"
+#include <libsigrok/libsigrok.h>
#include "libsigrok-internal.h"
#define LOG_PREFIX "hameg-hmo"
#define MAX_INSTRUMENT_VERSIONS 10
-#define MAX_COMMAND_SIZE 31
+#define MAX_COMMAND_SIZE 48
+#define MAX_ANALOG_CHANNEL_COUNT 4
+#define MAX_DIGITAL_CHANNEL_COUNT 16
+#define MAX_DIGITAL_GROUP_COUNT 2
struct scope_config {
const char *name[MAX_INSTRUMENT_VERSIONS];
const char *(*analog_names)[];
const char *(*digital_names)[];
- const int32_t (*hw_caps)[];
- const uint8_t num_hwcaps;
+ const uint32_t (*devopts)[];
+ const uint8_t num_devopts;
- const int32_t (*analog_hwcaps)[];
- const uint8_t num_analog_hwcaps;
+ const uint32_t (*analog_devopts)[];
+ const uint8_t num_analog_devopts;
const char *(*coupling_options)[];
const uint8_t num_coupling_options;
float vertical_offset;
gboolean state;
+ char probe_unit;
};
struct scope_state {
/** Private, per-device-instance driver context. */
struct dev_context {
- void *model_config;
+ const void *model_config;
void *model_state;
struct sr_channel_group **analog_groups;
uint64_t num_frames;
uint64_t frame_limit;
+
+ size_t pod_count;
+ GByteArray *logic_data;
};
SR_PRIV int hmo_init_device(struct sr_dev_inst *sdi);