X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Frigol-ds%2Fprotocol.h;fp=src%2Fhardware%2Frigol-ds%2Fprotocol.h;h=86669b40de0ebbb6e5727d86340e136b4ad35604;hb=8cd15dd4ce2fdbefbcc6e64632c8006e5404f253;hp=e77797047eac5c160d21ff21e4d1e1b424f5b394;hpb=1aba65727015e298f213c851dbc8d2d57d27d37b;p=libsigrok.git diff --git a/src/hardware/rigol-ds/protocol.h b/src/hardware/rigol-ds/protocol.h index e7779704..86669b40 100644 --- a/src/hardware/rigol-ds/protocol.h +++ b/src/hardware/rigol-ds/protocol.h @@ -74,12 +74,25 @@ 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; uint64_t min_timebase[2]; unsigned int analog_channels; bool has_digital; + const char **trigger_sources; + unsigned int num_trigger_sources; + const struct rigol_ds_command *cmds; }; enum wait_events { @@ -89,9 +102,7 @@ enum wait_events { WAIT_STOP, /* Wait for scope stopping (only single shots) */ }; -/** Private, per-device-instance driver context. */ struct dev_context { - /* Device model */ const struct rigol_ds_model *model; enum data_format format; @@ -120,15 +131,15 @@ struct dev_context { float attenuation[MAX_ANALOG_CHANNELS]; float vdiv[MAX_ANALOG_CHANNELS]; int vert_reference[MAX_ANALOG_CHANNELS]; + float vert_origin[MAX_ANALOG_CHANNELS]; float vert_offset[MAX_ANALOG_CHANNELS]; + float vert_inc[MAX_ANALOG_CHANNELS]; char *trigger_source; float horiz_triggerpos; char *trigger_slope; float trigger_level; char *coupling[MAX_ANALOG_CHANNELS]; - /* Operational state */ - /* Number of frames received in total. */ uint64_t num_frames; /* GSList entry for the current channel. */