#define LOG_PREFIX "scpi-pps"
enum pps_scpi_cmds {
- SCPI_CMD_KEY_UNLOCK,
+ SCPI_CMD_REMOTE,
+ SCPI_CMD_LOCAL,
+ SCPI_CMD_BEEPER,
+ SCPI_CMD_BEEPER_ENABLE,
+ SCPI_CMD_BEEPER_DISABLE,
+ SCPI_CMD_SELECT_CHANNEL,
SCPI_CMD_GET_MEAS_VOLTAGE,
SCPI_CMD_GET_MEAS_CURRENT,
SCPI_CMD_GET_MEAS_POWER,
unsigned int num_channel_groups;
struct scpi_command *commands;
unsigned int num_commands;
+ int (*probe_channels) (struct sr_dev_inst *sdi, struct sr_scpi_hw_info *hwinfo,
+ struct channel_spec **channels, unsigned int *num_channels,
+ struct channel_group_spec **channel_groups, unsigned int *num_channel_groups);
};
struct channel_spec {
void *cb_data;
/* Operational state */
+ gboolean beeper_was_set;
+ struct channel_spec *channels;
+ struct channel_group_spec *channel_groups;
/* Temporary state across callbacks */
struct sr_channel *cur_channel;
SR_PRIV int scpi_cmd(const struct sr_dev_inst *sdi, int command, ...);
SR_PRIV int scpi_cmd_resp(const struct sr_dev_inst *sdi, GVariant **gvar,
const GVariantType *gvtype, int command, ...);
+SR_PRIV int select_channel(const struct sr_dev_inst *sdi, struct sr_channel *ch);
+SR_PRIV struct sr_channel *next_enabled_channel(const struct sr_dev_inst *sdi,
+ struct sr_channel *cur_channel);
SR_PRIV int scpi_pps_receive_data(int fd, int revents, void *cb_data);
#endif