X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=afs.h;h=b16f32ced38440fafb3a068e502341aa6ca57a0e;hp=d0c162fb376278c021b0f1092ae763bf615e4392;hb=8769ef42c84de55cea4cd6820802e8b8f53393c8;hpb=d9f939fe8a68267a62b68546b17e1ec9a34aab0b diff --git a/afs.h b/afs.h index d0c162fb..b16f32ce 100644 --- a/afs.h +++ b/afs.h @@ -90,10 +90,32 @@ 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;