afs: Move some ls-related stuff from afs.h to aft.c.
[paraslash.git] / aft.c
diff --git a/aft.c b/aft.c
index d1c46ba..e643e01 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.
  *