libsigrok  0.4.0
sigrok hardware access and backend library
Data Structures | Macros | Enumerations | Functions
scpi.h File Reference
#include <stdint.h>
#include <glib.h>
#include <libsigrok/libsigrok.h>
#include "libsigrok-internal.h"
+ Include dependency graph for scpi.h:

Go to the source code of this file.

Data Structures

struct  scpi_command
 
struct  sr_scpi_hw_info
 
struct  sr_scpi_dev_inst
 

Macros

#define SCPI_CMD_IDN   "*IDN?"
 
#define SCPI_CMD_OPC   "*OPC?"
 

Enumerations

enum  {
  SCPI_CMD_SET_TRIGGER_SOURCE = 1,
  SCPI_CMD_SET_TIMEBASE,
  SCPI_CMD_SET_VERTICAL_DIV,
  SCPI_CMD_SET_TRIGGER_SLOPE,
  SCPI_CMD_SET_COUPLING,
  SCPI_CMD_SET_HORIZ_TRIGGERPOS,
  SCPI_CMD_GET_ANALOG_CHAN_STATE,
  SCPI_CMD_GET_DIG_CHAN_STATE,
  SCPI_CMD_GET_TIMEBASE,
  SCPI_CMD_GET_VERTICAL_DIV,
  SCPI_CMD_GET_VERTICAL_OFFSET,
  SCPI_CMD_GET_TRIGGER_SOURCE,
  SCPI_CMD_GET_HORIZ_TRIGGERPOS,
  SCPI_CMD_GET_TRIGGER_SLOPE,
  SCPI_CMD_GET_COUPLING,
  SCPI_CMD_SET_ANALOG_CHAN_STATE,
  SCPI_CMD_SET_DIG_CHAN_STATE,
  SCPI_CMD_GET_DIG_POD_STATE,
  SCPI_CMD_SET_DIG_POD_STATE,
  SCPI_CMD_GET_ANALOG_DATA,
  SCPI_CMD_GET_DIG_DATA,
  SCPI_CMD_GET_SAMPLE_RATE,
  SCPI_CMD_GET_SAMPLE_RATE_LIVE
}
 

Functions

SR_PRIV GSList * sr_scpi_scan (struct drv_context *drvc, GSList *options, struct sr_dev_inst *(*probe_device)(struct sr_scpi_dev_inst *scpi))
 
SR_PRIV struct sr_scpi_dev_instscpi_dev_inst_new (struct drv_context *drvc, const char *resource, const char *serialcomm)
 
SR_PRIV int sr_scpi_open (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_source_add (struct sr_session *session, struct sr_scpi_dev_inst *scpi, int events, int timeout, sr_receive_data_callback cb, void *cb_data)
 
SR_PRIV int sr_scpi_source_remove (struct sr_session *session, struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_send (struct sr_scpi_dev_inst *scpi, const char *format,...)
 
SR_PRIV int sr_scpi_send_variadic (struct sr_scpi_dev_inst *scpi, const char *format, va_list args)
 
SR_PRIV int sr_scpi_read_begin (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_read_data (struct sr_scpi_dev_inst *scpi, char *buf, int maxlen)
 
SR_PRIV int sr_scpi_read_complete (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_close (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV void sr_scpi_free (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_get_string (struct sr_scpi_dev_inst *scpi, const char *command, char **scpi_response)
 
SR_PRIV int sr_scpi_get_bool (struct sr_scpi_dev_inst *scpi, const char *command, gboolean *scpi_response)
 
SR_PRIV int sr_scpi_get_int (struct sr_scpi_dev_inst *scpi, const char *command, int *scpi_response)
 
SR_PRIV int sr_scpi_get_float (struct sr_scpi_dev_inst *scpi, const char *command, float *scpi_response)
 
SR_PRIV int sr_scpi_get_double (struct sr_scpi_dev_inst *scpi, const char *command, double *scpi_response)
 
SR_PRIV int sr_scpi_get_opc (struct sr_scpi_dev_inst *scpi)
 
SR_PRIV int sr_scpi_get_floatv (struct sr_scpi_dev_inst *scpi, const char *command, GArray **scpi_response)
 
SR_PRIV int sr_scpi_get_uint8v (struct sr_scpi_dev_inst *scpi, const char *command, GArray **scpi_response)
 
SR_PRIV int sr_scpi_get_hw_id (struct sr_scpi_dev_inst *scpi, struct sr_scpi_hw_info **scpi_response)
 
SR_PRIV void sr_scpi_hw_info_free (struct sr_scpi_hw_info *hw_info)
 
SR_PRIV const char * sr_vendor_alias (const char *raw_vendor)
 
SR_PRIV const char * scpi_cmd_get (const struct scpi_command *cmdtable, int command)
 
SR_PRIV int scpi_cmd (const struct sr_dev_inst *sdi, const struct scpi_command *cmdtable, int command,...)
 
SR_PRIV int scpi_cmd_resp (const struct sr_dev_inst *sdi, const struct scpi_command *cmdtable, GVariant **gvar, const GVariantType *gvtype, int command,...)
 

Macro Definition Documentation

#define SCPI_CMD_IDN   "*IDN?"

Definition at line 32 of file scpi.h.

#define SCPI_CMD_OPC   "*OPC?"

Definition at line 33 of file scpi.h.

Enumeration Type Documentation

anonymous enum
Enumerator
SCPI_CMD_SET_TRIGGER_SOURCE 
SCPI_CMD_SET_TIMEBASE 
SCPI_CMD_SET_VERTICAL_DIV 
SCPI_CMD_SET_TRIGGER_SLOPE 
SCPI_CMD_SET_COUPLING 
SCPI_CMD_SET_HORIZ_TRIGGERPOS 
SCPI_CMD_GET_ANALOG_CHAN_STATE 
SCPI_CMD_GET_DIG_CHAN_STATE 
SCPI_CMD_GET_TIMEBASE 
SCPI_CMD_GET_VERTICAL_DIV 
SCPI_CMD_GET_VERTICAL_OFFSET 
SCPI_CMD_GET_TRIGGER_SOURCE 
SCPI_CMD_GET_HORIZ_TRIGGERPOS 
SCPI_CMD_GET_TRIGGER_SLOPE 
SCPI_CMD_GET_COUPLING 
SCPI_CMD_SET_ANALOG_CHAN_STATE 
SCPI_CMD_SET_DIG_CHAN_STATE 
SCPI_CMD_GET_DIG_POD_STATE 
SCPI_CMD_SET_DIG_POD_STATE 
SCPI_CMD_GET_ANALOG_DATA 
SCPI_CMD_GET_DIG_DATA 
SCPI_CMD_GET_SAMPLE_RATE 
SCPI_CMD_GET_SAMPLE_RATE_LIVE 

Definition at line 35 of file scpi.h.

Function Documentation

SR_PRIV int scpi_cmd ( const struct sr_dev_inst *  sdi,
const struct scpi_command cmdtable,
int  command,
  ... 
)
SR_PRIV const char* scpi_cmd_get ( const struct scpi_command cmdtable,
int  command 
)
SR_PRIV int scpi_cmd_resp ( const struct sr_dev_inst *  sdi,
const struct scpi_command cmdtable,
GVariant **  gvar,
const GVariantType *  gvtype,
int  command,
  ... 
)
SR_PRIV struct sr_scpi_dev_inst* scpi_dev_inst_new ( struct drv_context *  drvc,
const char *  resource,
const char *  serialcomm 
)
SR_PRIV int sr_scpi_close ( struct sr_scpi_dev_inst scpi)
SR_PRIV void sr_scpi_free ( struct sr_scpi_dev_inst scpi)
SR_PRIV int sr_scpi_get_bool ( struct sr_scpi_dev_inst scpi,
const char *  command,
gboolean *  scpi_response 
)
SR_PRIV int sr_scpi_get_double ( struct sr_scpi_dev_inst scpi,
const char *  command,
double *  scpi_response 
)
SR_PRIV int sr_scpi_get_float ( struct sr_scpi_dev_inst scpi,
const char *  command,
float *  scpi_response 
)
SR_PRIV int sr_scpi_get_floatv ( struct sr_scpi_dev_inst scpi,
const char *  command,
GArray **  scpi_response 
)
SR_PRIV int sr_scpi_get_hw_id ( struct sr_scpi_dev_inst scpi,
struct sr_scpi_hw_info **  scpi_response 
)
SR_PRIV int sr_scpi_get_int ( struct sr_scpi_dev_inst scpi,
const char *  command,
int *  scpi_response 
)
SR_PRIV int sr_scpi_get_opc ( struct sr_scpi_dev_inst scpi)
SR_PRIV int sr_scpi_get_string ( struct sr_scpi_dev_inst scpi,
const char *  command,
char **  scpi_response 
)
SR_PRIV int sr_scpi_get_uint8v ( struct sr_scpi_dev_inst scpi,
const char *  command,
GArray **  scpi_response 
)
SR_PRIV void sr_scpi_hw_info_free ( struct sr_scpi_hw_info hw_info)
SR_PRIV int sr_scpi_open ( struct sr_scpi_dev_inst scpi)
SR_PRIV int sr_scpi_read_begin ( struct sr_scpi_dev_inst scpi)
SR_PRIV int sr_scpi_read_complete ( struct sr_scpi_dev_inst scpi)
SR_PRIV int sr_scpi_read_data ( struct sr_scpi_dev_inst scpi,
char *  buf,
int  maxlen 
)
SR_PRIV GSList* sr_scpi_scan ( struct drv_context *  drvc,
GSList *  options,
struct sr_dev_inst *(*)(struct sr_scpi_dev_inst *scpi)  probe_device 
)
SR_PRIV int sr_scpi_send ( struct sr_scpi_dev_inst scpi,
const char *  format,
  ... 
)
SR_PRIV int sr_scpi_send_variadic ( struct sr_scpi_dev_inst scpi,
const char *  format,
va_list  args 
)
SR_PRIV int sr_scpi_source_add ( struct sr_session session,
struct sr_scpi_dev_inst scpi,
int  events,
int  timeout,
sr_receive_data_callback  cb,
void *  cb_data 
)
SR_PRIV int sr_scpi_source_remove ( struct sr_session session,
struct sr_scpi_dev_inst scpi 
)
SR_PRIV const char* sr_vendor_alias ( const char *  raw_vendor)