]> git.alsa-project.org Git - alsa-gobject.git/commitdiff
seq: enums: add rest of entries for remove filter flags
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Tue, 28 Jun 2022 21:45:49 +0000 (06:45 +0900)
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>
Tue, 28 Jun 2022 21:45:49 +0000 (06:45 +0900)
It's planned to rewrite ALSASeq.RemoveFilter for flexible configuration of
filter condition.

This commit adds the reset of entries for the flags.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
src/seq/alsaseq-enum-types.h
tests/alsaseq-enums

index d7ba4946fba818a3996bd2622779b488f635ef3d..d637311cb15cf09149ca44c4ffc06e8b9cd6a23c 100644 (file)
@@ -336,15 +336,33 @@ typedef enum {
 
 /**
  * ALSASeqRemoveFilterFlag:
- * @ALSASEQ_REMOVE_FILTER_FLAG_INPUT:   Flush of input queues.
- * @ALSASEQ_REMOVE_FILTER_FLAG_OUTPUT:  Flush of output queues.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_INPUT:           Flush events in input queues.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_OUTPUT:          Flush events in output queues.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_DEST:            Flush events towards the given destination.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_DEST_CHANNEL:    Flush events with the given channel, available for
+ *                                              NOTE, NOTEON, NOTEOFF, KEYPRESS, CONTROLLER, PGMCHANGE, CHANPRESS,
+ *                                              PITCHBEND, CONTROL14, NONREGPARAM, REGPARAM.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_TIME_BEFORE:     Flush events scheduled before the given time.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_TIME_AFTER:      Flush events scheduled after the given time.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_TIME_TICK:       The given time is for tick time.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_EVENT_TYPE:      Flush events with the type.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_IGNORE_OFF:      Flush events except for NOTEOFF.
+ * @ALSASEQ_REMOVE_FILTER_FLAG_TAG_MATCH:       Flush events with the given tag.
  *
  * A set of flags of the mode of removal event.
  */
 typedef enum /*< flags >*/
 {
-    ALSASEQ_REMOVE_FILTER_FLAG_INPUT    = SNDRV_SEQ_REMOVE_INPUT,
-    ALSASEQ_REMOVE_FILTER_FLAG_OUTPUT   = SNDRV_SEQ_REMOVE_OUTPUT,
+    ALSASEQ_REMOVE_FILTER_FLAG_INPUT        = SNDRV_SEQ_REMOVE_INPUT,
+    ALSASEQ_REMOVE_FILTER_FLAG_OUTPUT       = SNDRV_SEQ_REMOVE_OUTPUT,
+    ALSASEQ_REMOVE_FILTER_FLAG_DEST         = SNDRV_SEQ_REMOVE_DEST,
+    ALSASEQ_REMOVE_FILTER_FLAG_DEST_CHANNEL = SNDRV_SEQ_REMOVE_DEST_CHANNEL,
+    ALSASEQ_REMOVE_FILTER_FLAG_TIME_BEFORE  = SNDRV_SEQ_REMOVE_TIME_BEFORE,
+    ALSASEQ_REMOVE_FILTER_FLAG_TIME_AFTER   = SNDRV_SEQ_REMOVE_TIME_AFTER,
+    ALSASEQ_REMOVE_FILTER_FLAG_TIME_TICK    = SNDRV_SEQ_REMOVE_TIME_TICK,
+    ALSASEQ_REMOVE_FILTER_FLAG_EVENT_TYPE   = SNDRV_SEQ_REMOVE_EVENT_TYPE,
+    ALSASEQ_REMOVE_FILTER_FLAG_IGNORE_OFF   = SNDRV_SEQ_REMOVE_IGNORE_OFF,
+    ALSASEQ_REMOVE_FILTER_FLAG_TAG_MATCH    = SNDRV_SEQ_REMOVE_TAG_MATCH,
 } ALSASeqRemoveFilterFlag;
 
 /**
index 0c03d19c7ce5b01d9d66d052a4d1f3117162dd82..cd0179d12c0a310fe94ef1552f760cf1e57be047 100644 (file)
@@ -159,6 +159,14 @@ queue_timer_types = (
 remove_filter_flags = (
     'INPUT',
     'OUTPUT',
+    'DEST',
+    'DEST_CHANNEL',
+    'TIME_BEFORE',
+    'TIME_AFTER',
+    'TIME_TICK',
+    'EVENT_TYPE',
+    'IGNORE_OFF',
+    'TAG_MATCH',
 )
 
 user_client_error_types = (