X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=afs.h;h=f9a44893db741e5ac7eabb9d52175c804d2f75bd;hp=d0c162fb376278c021b0f1092ae763bf615e4392;hb=05382250dd4d68b4fa32c229104f613c455f5ea6;hpb=a3dc441fc0219d417923b04e863ceca5a1427c0e diff --git a/afs.h b/afs.h index d0c162fb..f9a44893 100644 --- a/afs.h +++ b/afs.h @@ -90,10 +90,31 @@ struct afs_table { enum play_mode {PLAY_MODE_MOOD, PLAY_MODE_PLAYLIST}; +/** + * Data about one audio file. + * + * Needed to produce ls and stat output. + */ +struct ls_data { + /** Usual audio format handler information. */ + struct afh_info afhi; + /** Audio file selector information. */ + struct afs_info afsi; + /** The full path of the audio file. */ + char *path; + /** The score value (if -a was given). */ + long score; + /** The sha1 hash of audio file. */ + HASH_TYPE *hash; +}; +int make_status_items(struct ls_data *d, struct para_buffer *pb); + +#define AFS_STATUS_INFO_SIZE 4096 + struct audio_file_data { enum play_mode current_play_mode; - char attributes_string[MAXLINE]; char path[_POSIX_PATH_MAX]; + char afs_status_info[AFS_STATUS_INFO_SIZE]; int fd; long score; struct afs_info afsi;