]> sigrok.org Git - libsigrok.git/commitdiff
sr: add support for sr_rational and various HWCAPs and DIs
authorBert Vermeulen <redacted>
Tue, 15 May 2012 18:45:46 +0000 (20:45 +0200)
committerBert Vermeulen <redacted>
Wed, 30 May 2012 21:56:12 +0000 (23:56 +0200)
hwdriver.c
sigrok.h.in

index 41e99dedcc44f532021d7819e19c6576b68fb70b..43f0762f0ec8b4e61cb3a0b4b8f5a02eb8049585 100644 (file)
@@ -36,6 +36,12 @@ SR_API struct sr_hwcap_option sr_hwcap_options[] = {
        {SR_HWCAP_CAPTURE_RATIO, SR_T_UINT64, "Pre-trigger capture ratio", "captureratio"},
        {SR_HWCAP_PATTERN_MODE, SR_T_CHAR, "Pattern generator mode", "pattern"},
        {SR_HWCAP_RLE, SR_T_BOOL, "Run Length Encoding", "rle"},
+       {SR_HWCAP_TRIGGER_SLOPE, SR_T_UINT64, "Trigger slope", "triggerslope"},
+       {SR_HWCAP_TRIGGER_SOURCE, SR_T_CHAR, "Trigger source", "triggersource"},
+       {SR_HWCAP_HORIZ_TRIGGERPOS, SR_T_FLOAT, "Horizontal trigger position",
+                       "horiz_triggerpos"},
+       {SR_HWCAP_BUFFERSIZE, SR_T_UINT64, "Buffer size", "buffersize"},
+       {SR_HWCAP_TIMEBASE, SR_T_RATIONAL, "Time base", "timebase"},
        {0, 0, NULL, NULL},
 };
 
index 2b57bcfceeccc7574847d997582983f8d88022d9..d40d72a15408aa41a73b86ef58f2883b6aa93619 100644 (file)
@@ -142,6 +142,15 @@ enum {
        SR_T_UINT64,
        SR_T_CHAR,
        SR_T_BOOL,
+       SR_T_FLOAT,
+       SR_T_RATIONAL,
+};
+
+struct sr_rational {
+       /* numerator */
+       uint64_t p;
+       /* denominator */
+       uint64_t q;
 };
 
 /* sr_datafeed_packet.type values */
@@ -293,7 +302,19 @@ enum {
        SR_HWCAP_RLE,
 
        /** The device supports setting trigger slope. */
-       SR_HWCAP_TRIGGERSLOPE,
+       SR_HWCAP_TRIGGER_SLOPE,
+
+       /** Trigger source. */
+       SR_HWCAP_TRIGGER_SOURCE,
+
+       /** Horizontal trigger position */
+       SR_HWCAP_HORIZ_TRIGGERPOS,
+
+       /** Buffer size. */
+       SR_HWCAP_BUFFERSIZE,
+
+       /** Time base. */
+       SR_HWCAP_TIMEBASE,
 
        /*--- Special stuff -------------------------------------------------*/
 
@@ -389,12 +410,18 @@ enum {
        SR_DI_PROBE_NAMES,
        /* Samplerates supported by this device, (struct sr_samplerates) */
        SR_DI_SAMPLERATES,
-       /* Types of trigger supported, out of "01crf" (char *) */
+       /* Types of logic trigger supported, out of "01crf" (char *) */
        SR_DI_TRIGGER_TYPES,
        /* The currently set samplerate in Hz (uint64_t) */
        SR_DI_CUR_SAMPLERATE,
        /* Supported patterns (in pattern generator mode) */
        SR_DI_PATTERNS,
+       /* Supported buffer sizes */
+       SR_DI_BUFFERSIZES,
+       /* Supported time bases */
+       SR_DI_TIMEBASES,
+       /* Supported trigger sources */
+       SR_DI_TRIGGER_SOURCES,
 };
 
 /*