* *************************************************************************/
epggrab_module_t *epggrab_module_create
- ( epggrab_module_t *skel, const char *id, const char *name,
+ ( epggrab_module_t *skel, const char *id, const char *name, int priority,
epggrab_channel_tree_t *channels )
{
assert(skel);
/* Setup */
skel->id = strdup(id);
skel->name = strdup(name);
+ skel->priority = priority;
skel->channels = channels;
if (channels) {
skel->ch_save = epggrab_module_ch_save;
epggrab_module_int_t *epggrab_module_int_create
( epggrab_module_int_t *skel,
- const char *id, const char *name, const char *path,
+ const char *id, const char *name, int priority,
+ const char *path,
char* (*grab) (void*m),
int (*parse) (void *m, htsmsg_t *data, epggrab_stats_t *sta),
htsmsg_t* (*trans) (void *mod, char *data),
if (!skel) skel = calloc(1, sizeof(epggrab_module_int_t));
/* Pass through */
- epggrab_module_create((epggrab_module_t*)skel, id, name, channels);
+ epggrab_module_create((epggrab_module_t*)skel, id, name, priority, channels);
/* Int data */
skel->type = EPGGRAB_INT;
*/
epggrab_module_ext_t *epggrab_module_ext_create
( epggrab_module_ext_t *skel,
- const char *id, const char *name, const char *sockid,
+ const char *id, const char *name, int priority, const char *sockid,
int (*parse) (void *m, htsmsg_t *data, epggrab_stats_t *sta),
htsmsg_t* (*trans) (void *mod, char *data),
epggrab_channel_tree_t *channels )
snprintf(path, 512, "%s/epggrab/%s.sock",
hts_settings_get_root(), sockid);
epggrab_module_int_create((epggrab_module_int_t*)skel,
- id, name, path,
+ id, name, priority, path,
NULL, parse, trans,
channels);
epggrab_module_ota_t *epggrab_module_ota_create
( epggrab_module_ota_t *skel,
- const char *id, const char *name,
+ const char *id, const char *name, int priority,
void (*start) (epggrab_module_ota_t*m,
struct th_dvb_mux_instance *tdmi),
int (*enable) (void *m, uint8_t e ),
if (!skel) skel = calloc(1, sizeof(epggrab_module_ota_t));
/* Pass through */
- epggrab_module_create((epggrab_module_t*)skel, id, name, channels);
+ epggrab_module_create((epggrab_module_t*)skel, id, name, priority, channels);
/* Setup */
skel->type = EPGGRAB_OTA;
void eit_init ( void )
{
- epggrab_module_ota_create(NULL, "eit", "EIT: DVB Grabber",
+ epggrab_module_ota_create(NULL, "eit", "EIT: DVB Grabber", 1,
_eit_start, NULL, NULL);
}
sprintf(nbuf, "OpenTV: %s", name);
mod = (opentv_module_t*)
epggrab_module_ota_create(calloc(1, sizeof(opentv_module_t)),
- ibuf, nbuf,
+ ibuf, nbuf, 2,
_opentv_start, _opentv_enable,
NULL);
void pyepg_init ( void )
{
/* Internal module */
- epggrab_module_int_create(NULL, "/usr/bin/pyepg", "PyEPG", "/usr/bin/pyepg",
+ epggrab_module_int_create(NULL, "/usr/bin/pyepg", "PyEPG", 4,
+ "/usr/bin/pyepg",
NULL, _pyepg_parse, NULL, NULL);
/* External module */
_pyepg_module = (epggrab_module_t*)
- epggrab_module_ext_create(NULL, "pyepg", "PyEPG", "pyepg",
+ epggrab_module_ext_create(NULL, "pyepg", "PyEPG", 4, "pyepg",
_pyepg_parse, NULL,
&_pyepg_channels);
}
if ( outbuf[i] == '\n' || outbuf[i] == '\0' ) {
outbuf[i] = '\0';
sprintf(name, "XMLTV: %s", &outbuf[n]);
- epggrab_module_int_create(NULL, &outbuf[p], name, &outbuf[p],
+ epggrab_module_int_create(NULL, &outbuf[p], name, 3, &outbuf[p],
NULL, _xmltv_parse, NULL, NULL);
p = n = i + 1;
} else if ( outbuf[i] == '|' ) {
{
/* External module */
_xmltv_module = (epggrab_module_t*)
- epggrab_module_ext_create(NULL, "xmltv", "XMLTV", "xmltv",
+ epggrab_module_ext_create(NULL, "xmltv", "XMLTV", 3, "xmltv",
_xmltv_parse, NULL,
&_xmltv_channels);
epggrab_module_t *epggrab_module_create
( epggrab_module_t *skel,
- const char *id, const char *name, epggrab_channel_tree_t *channels );
+ const char *id, const char *name, int priority,
+ epggrab_channel_tree_t *channels );
char *epggrab_module_grab_spawn ( void *m );
htsmsg_t *epggrab_module_trans_xml ( void *m, char *data );
epggrab_module_int_t *epggrab_module_int_create
( epggrab_module_int_t *skel,
- const char *id, const char *name, const char *path,
+ const char *id, const char *name, int priority,
+ const char *path,
char* (*grab) (void*m),
int (*parse) (void *m, htsmsg_t *data, epggrab_stats_t *sta),
htsmsg_t* (*trans) (void *mod, char *data),
epggrab_module_ext_t *epggrab_module_ext_create
( epggrab_module_ext_t *skel,
- const char *id, const char *name, const char *sockid,
+ const char *id, const char *name, int priority,
+ const char *sockid,
int (*parse) (void *m, htsmsg_t *data, epggrab_stats_t *sta),
htsmsg_t* (*trans) (void *mod, char *data),
epggrab_channel_tree_t *channels );
epggrab_module_ota_t *epggrab_module_ota_create
( epggrab_module_ota_t *skel,
- const char *id, const char *name,
+ const char *id, const char *name, int priority,
void (*start) (epggrab_module_ota_t*m,
struct th_dvb_mux_instance *tdmi),
int (*enable) (void *m, uint8_t e ),