X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhardware%2Frigol-ds%2Fprotocol.h;h=a40c7ac178805e9225292fe07cc75a167d91daf5;hp=b8eb54e7a15f16264af4e67f2656d082b77c6ef5;hb=HEAD;hpb=6b04525ba2ffe72742e5cbe25da8bc3dc65b2453 diff --git a/src/hardware/rigol-ds/protocol.h b/src/hardware/rigol-ds/protocol.h index b8eb54e7..e2efffa2 100644 --- a/src/hardware/rigol-ds/protocol.h +++ b/src/hardware/rigol-ds/protocol.h @@ -42,6 +42,7 @@ enum protocol_version { PROTOCOL_V2, /* DS1000 */ PROTOCOL_V3, /* DS2000, DSO1000 */ PROTOCOL_V4, /* DS1000Z */ + PROTOCOL_V5, /* MSO5000 */ }; enum data_format { @@ -74,6 +75,16 @@ struct rigol_ds_series { int buffer_samples; }; +enum cmds { + CMD_GET_HORIZ_TRIGGERPOS, + CMD_SET_HORIZ_TRIGGERPOS, +}; + +struct rigol_ds_command { + int cmd; + const char *str; +}; + struct rigol_ds_model { const struct rigol_ds_series *series; const char *name; @@ -82,6 +93,7 @@ struct rigol_ds_model { bool has_digital; const char **trigger_sources; unsigned int num_trigger_sources; + const struct rigol_ds_command *cmds; }; enum wait_events { @@ -117,6 +129,7 @@ struct dev_context { gboolean digital_channels[MAX_DIGITAL_CHANNELS]; gboolean la_enabled; float timebase; + float sample_rate; float attenuation[MAX_ANALOG_CHANNELS]; float vdiv[MAX_ANALOG_CHANNELS]; int vert_reference[MAX_ANALOG_CHANNELS]; @@ -131,6 +144,8 @@ struct dev_context { /* Number of frames received in total. */ uint64_t num_frames; + /* Number of frames available from the Segmented data source */ + uint64_t num_frames_segmented; /* GSList entry for the current channel. */ GSList *channel_entry; /* Number of bytes received for current channel. */