audiod: move af_status to struct status_task.
authorAndre <maan@p133.(none)>
Thu, 8 Jun 2006 03:01:05 +0000 (05:01 +0200)
committerAndre <maan@p133.(none)>
Thu, 8 Jun 2006 03:01:05 +0000 (05:01 +0200)
Also add some documentation of struct status_task.

audiod.c
audiod.h

index bcead91..032f9cd 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -71,8 +71,7 @@ struct slot_info slot[MAX_STREAM_SLOTS];
 int audiod_status = AUDIOD_ON;
 
 struct gengetopt_args_info conf;
-static char *af_status, /* the audio format announced in server status */
-       *socket_name;
+static char *socket_name;
 static FILE *logfile;
 static struct audio_format_info afi[NUM_AUDIO_FORMATS];
 
@@ -451,9 +450,9 @@ static int open_current_receiver(struct sched *s)
        int i;
        struct timeval diff;
 
-       if (!af_status)
+       if (!stat_task->af_status)
                return 0;
-       i = get_audio_format_num(af_status);
+       i = get_audio_format_num(stat_task->af_status);
        if (i < 0)
                return 0;
        if (decoder_running(i))
@@ -529,8 +528,8 @@ static void check_stat_line(char *line)
                stat_task->playing = strstr(line, "playing")? 1 : 0;
                break;
        case SI_FORMAT:
-               free(af_status);
-               af_status = para_strdup(line + ilen + 1);
+               free(stat_task->af_status);
+               stat_task->af_status = para_strdup(line + ilen + 1);
                break;
        case SI_OFFSET:
                stat_task->offset_seconds = atoi(line + ilen + 1);
index 7e2e276..f77ebcd 100644 (file)
--- a/audiod.h
+++ b/audiod.h
@@ -37,6 +37,7 @@ struct slot_info {
        /** the active writer node group */
        struct writer_node_group *wng;
 };
+
 /**
  * the main task of audiod
  *
@@ -46,6 +47,7 @@ struct audiod_task {
        struct timeval *now;
        struct task task;
 };
+
 /**
  * the task for audiod's child (para_client stat)
  *
@@ -58,18 +60,28 @@ struct status_task {
        char buf[STRINGSIZE];
        /** number of bytes loaded in \a buf */
        unsigned loaded;
+       /** the array of status items sent by para_server */
+       char *stat_item_values[NUM_STAT_ITEMS];
        /** the associated task structure */
        struct task task;
        /** do not restart client command until this time */
        struct timeval restart_barrier;
-       int playing;
+       /** the offset value announced by para_server */
        int offset_seconds;
+       /** the length of the current audio file as announced by para_server */
        int length_seconds;
-       int sa_time_diff_sign;
-       char *stat_item_values[NUM_STAT_ITEMS];
+       /** the start of the current stream from the view of para_server */
        struct timeval server_stream_start;
+       /** the averaged time deviation between para_server and para_audiod */
        struct timeval sa_time_diff;
+       /** whether client time is ahead of server time */
+       int sa_time_diff_sign;
+       /** the audio format announced in server status */
+       char *af_status;
+       /** non-zero if \a af_status is "playing" */
+       int playing;
 };
+
 extern struct status_task *stat_task;
 extern struct slot_info slot[MAX_STREAM_SLOTS];
 extern struct gengetopt_args_info conf;