2 * - configuration, and global structures built from config
4 * $Id: cfgparse.h,v 1.6 2003/12/22 14:01:09 karl Exp $
6 * Copyright (c) 2001 Michael Smith <msmith@labyrinth.net.au>
8 * This program is distributed under the terms of the GNU General
9 * Public License, version 2. You may use, modify, and redistribute
10 * it under the terms of this license. A copy should be included
18 #include "inputmodule.h"
20 typedef struct _module_param_tag
25 struct _module_param_tag
*next
;
28 /* FIXME: orward declaraction because my headers are a mess. */
31 typedef struct _instance_tag
39 int reconnect_attempts
;
50 char *stream_description
;
53 /* Parameters for re-encoding */
55 int min_br
, nom_br
, max_br
;
67 int wait_for_critical
;
69 struct buffer_queue
*queue
;
71 struct _instance_tag
*next
;
74 typedef struct _config_tag
89 char *stream_description
;
94 char *playlist_module
;
95 module_param_t
*module_params
;
99 instance_t
*instances
;
104 char *metadata_filename
;
106 cond_t event_pending_cond
;
107 mutex_t refcount_lock
;
109 input_module_t
*inmod
;
110 struct _config_tag
*next
;
113 extern config_t
*ices_config
;
115 void config_initialize(void);
116 void config_shutdown(void);
118 int config_read(const char *filename
);
119 void config_dump(void);
121 void config_free_instance(instance_t
*instance
);
123 #endif /* __CONFIG_H__ */