Add num_played mood method.
authorAndre Noll <maan@systemlinux.org>
Sun, 19 Jul 2009 16:47:23 +0000 (18:47 +0200)
committerAndre Noll <maan@systemlinux.org>
Sun, 19 Jul 2009 16:47:23 +0000 (18:47 +0200)
README.afs
mm.c

index edd2d17..46e30c4 100644 (file)
@@ -178,18 +178,19 @@ is not set, the empty string is matched against the pattern.
        bitrate ~ <num>
        frequency ~ <num>
        channels ~ <num>
+       num_played ~ <num>
 
 Takes a comparator ~ of the set {<, =, <=, >, >=, !=} and a number
 <num>. Matches an audio file iff the condition <val> ~ <num> is
 satisfied where val is the corresponding value of the audio file
-(bitrate in kbit/s, frequency in Hz, channel count, value of the
-year tag).
+(value of the year tag, bitrate in kbit/s, frequency in Hz, channel
+count, play count).
 
 The year tag is special as its value is undefined if the audio file
 has no year tag or the content of the year tag is not a number. Such
 audio files never match. Another difference is the special treatment
 if the year tag is a two-digit number. In this case either 1900 or
-2000 are added to the tag value, depending on whether the number is
+2000 are added to the tag value depending on whether the number is
 greater than 2000 plus the current year.
 
 
diff --git a/mm.c b/mm.c
index 4f76d40..885b630 100644 (file)
--- a/mm.c
+++ b/mm.c
@@ -187,6 +187,14 @@ static int mm_channels_score_function(__a_unused const char *path,
        return mm_compare_num_score_function(afhi->channels, private);
 }
 
+static int mm_num_played_score_function(__a_unused const char *path,
+               const struct afs_info *afsi,
+               __a_unused const struct afh_info *afhi,
+               const void *private)
+{
+       return mm_compare_num_score_function(afsi->num_played, private);
+}
+
 struct mm_year_data {
        /** Comparator and year given at the mood line. */
        struct mm_compare_num_data *cnd;
@@ -343,5 +351,6 @@ const struct mood_method mood_methods[] = {
        {DEFINE_COMPARE_NUM_MOOD_METHOD(bitrate)},
        {DEFINE_COMPARE_NUM_MOOD_METHOD(frequency)},
        {DEFINE_COMPARE_NUM_MOOD_METHOD(channels)},
+       {DEFINE_COMPARE_NUM_MOOD_METHOD(num_played)},
        {.parser = NULL}
 };