afs: Move some ls-related stuff from afs.h to aft.c.
authorAndre Noll <maan@systemlinux.org>
Tue, 25 Sep 2007 09:53:58 +0000 (11:53 +0200)
committerAndre Noll <maan@systemlinux.org>
Tue, 25 Sep 2007 09:53:58 +0000 (11:53 +0200)
Also, add GPL header and documentation of struct afs_info to afs.h.

afs.h
aft.c

diff --git a/afs.h b/afs.h
index 623cd1453b26d16c38f3b70b97bd0c2bdc5802b9..2f192c65e06d9eed8741294d91855726c1e43667 100644 (file)
--- a/afs.h
+++ b/afs.h
@@ -1,13 +1,26 @@
+/*
+ * Copyright (C) 2007 Andre Noll <maan@systemlinux.org>
+ *
+ * Licensed under the GPL v2. For licencing details see COPYING.
+ */
+
 #include <regex.h>
 #include "osl.h"
 #include "hash.h"
 
+/** Audio file selector data stored in the audio file table. */
 struct afs_info {
+       /** Seconds since the epoch. */
        uint64_t last_played;
+       /** Bitfield of set attributes. */
        uint64_t attributes;
+       /** Counts how many times the file was selected. */
        uint32_t num_played;
+       /** Image blob associated with this file (foreign key). */
        uint32_t image_id;
+       /** Lyrics blob associated with this file (foreign key). */
        uint32_t lyrics_id;
+       /** Mp3, ogg or aac. */
        uint8_t audio_format_id;
 };
 
@@ -20,62 +33,30 @@ struct table_info {
 };
 
 enum ls_sorting_method {
-       LS_SORT_BY_PATH, /* -sp (default) */
-       LS_SORT_BY_SCORE, /* -ss */
-       LS_SORT_BY_LAST_PLAYED, /* -sl */
-       LS_SORT_BY_NUM_PLAYED, /* -sn */
-       LS_SORT_BY_FREQUENCY, /* -sf */
-       LS_SORT_BY_CHANNELS, /* -sc */
-       LS_SORT_BY_IMAGE_ID, /* -si */
-       LS_SORT_BY_LYRICS_ID, /* -sy */
-       LS_SORT_BY_BITRATE, /* -sb */
-       LS_SORT_BY_DURATION, /* -sd */
-       LS_SORT_BY_AUDIO_FORMAT, /* -sa */
-       LS_SORT_BY_HASH, /* -sh */
-};
-
-enum ls_listing_mode {
-       LS_MODE_SHORT,
-       LS_MODE_LONG,
-       LS_MODE_VERBOSE,
-       LS_MODE_MBOX
-};
-
-enum ls_flags {
-       LS_FLAG_FULL_PATH = 1,
-       LS_FLAG_ADMISSIBLE_ONLY = 2,
-       LS_FLAG_REVERSE = 4,
-};
-
-struct ls_widths {
-       unsigned short score_width;
-       unsigned short image_id_width;
-       unsigned short lyrics_id_width;
-       unsigned short bitrate_width;
-       unsigned short frequency_width;
-       unsigned short duration_width;
-       unsigned short num_played_width;
-};
-
-struct ls_data {
-       struct audio_format_info afhi;
-       struct afs_info afsi;
-       char *path;
-       long score;
-       HASH_TYPE *hash;
-};
-
-struct ls_options {
-       unsigned flags;
-       enum ls_sorting_method sorting;
-       enum ls_listing_mode mode;
-       char **patterns;
-       int num_patterns;
-       struct ls_widths widths;
-       uint32_t array_size;
-       uint32_t num_matching_paths;
-       struct ls_data *data;
-       struct ls_data **data_ptr;
+       /** -sp (default) */
+       LS_SORT_BY_PATH,
+       /** -ss */
+       LS_SORT_BY_SCORE,
+       /** -sl */
+       LS_SORT_BY_LAST_PLAYED,
+       /** -sn */
+       LS_SORT_BY_NUM_PLAYED,
+       /** -sf */
+       LS_SORT_BY_FREQUENCY,
+       /** -sc */
+       LS_SORT_BY_CHANNELS,
+       /** -si */
+       LS_SORT_BY_IMAGE_ID,
+       /** -sy */
+       LS_SORT_BY_LYRICS_ID,
+       /** -sb */
+       LS_SORT_BY_BITRATE,
+       /** -sd */
+       LS_SORT_BY_DURATION,
+       /** -sa */
+       LS_SORT_BY_AUDIO_FORMAT,
+       /** -sh */
+       LS_SORT_BY_HASH,
 };
 
 enum play_mode {PLAY_MODE_MOOD, PLAY_MODE_PLAYLIST};
diff --git a/aft.c b/aft.c
index d1c46ba0255da44bf5d42a4fa83aa1c4db53a7c8..e643e01a18b1121703ddac0445421cc6f910195b 100644 (file)
--- a/aft.c
+++ b/aft.c
 
 static struct osl_table *audio_file_table;
 
+enum ls_listing_mode {
+       LS_MODE_SHORT,
+       LS_MODE_LONG,
+       LS_MODE_VERBOSE,
+       LS_MODE_MBOX
+};
+
+enum ls_flags {
+       LS_FLAG_FULL_PATH = 1,
+       LS_FLAG_ADMISSIBLE_ONLY = 2,
+       LS_FLAG_REVERSE = 4,
+};
+
+struct ls_widths {
+       unsigned short score_width;
+       unsigned short image_id_width;
+       unsigned short lyrics_id_width;
+       unsigned short bitrate_width;
+       unsigned short frequency_width;
+       unsigned short duration_width;
+       unsigned short num_played_width;
+};
+
+struct ls_data {
+       struct audio_format_info afhi;
+       struct afs_info afsi;
+       char *path;
+       long score;
+       HASH_TYPE *hash;
+};
+
+struct ls_options {
+       unsigned flags;
+       enum ls_sorting_method sorting;
+       enum ls_listing_mode mode;
+       char **patterns;
+       int num_patterns;
+       struct ls_widths widths;
+       uint32_t array_size;
+       uint32_t num_matching_paths;
+       struct ls_data *data;
+       struct ls_data **data_ptr;
+};
+
 /**
  * Describes the layout of the mmapped-afs info struct.
  *