linuxdvb_frontend_network_list ( mpegts_input_t *mi )
{
linuxdvb_frontend_t *lfe = (linuxdvb_frontend_t*)mi;
- const idclass_t *idc;
tvhtrace("linuxdvb", "%s: network list for %s",
mi->mi_name ?: "", dvb_type2str(lfe->lfe_type));
- if (lfe->lfe_type == DVB_TYPE_T)
- idc = &dvb_network_dvbt_class;
- else if (lfe->lfe_type == DVB_TYPE_C)
- idc = &dvb_network_dvbc_class;
- else if (lfe->lfe_type == DVB_TYPE_S)
- idc = &dvb_network_dvbs_class;
- else if (lfe->lfe_type == DVB_TYPE_ATSC)
- idc = &dvb_network_atsc_class;
- else
- return NULL;
-
- return idnode_find_all(idc, NULL);
+ return dvb_network_list_by_fe_type(lfe->lfe_type);
}
/* **************************************************************************
const idclass_t *dvb_network_class_by_fe_type(dvb_fe_type_t type);
dvb_fe_type_t dvb_fe_type_by_network_class(const idclass_t *idc);
+idnode_set_t *dvb_network_list_by_fe_type(dvb_fe_type_t type);
+
dvb_network_t *dvb_network_create0
( const char *uuid, const idclass_t *idc, htsmsg_t *conf );
return DVB_TYPE_NONE;
}
+idnode_set_t *dvb_network_list_by_fe_type(dvb_fe_type_t type)
+{
+ const idclass_t *idc = dvb_network_class_by_fe_type(type);
+
+ if (!idc)
+ return NULL;
+
+ return idnode_find_all(idc, NULL);
+}
+
int dvb_network_get_orbital_pos(mpegts_network_t *mn)
{
dvb_network_t *ln = (dvb_network_t *)mn;
satip_frontend_network_list ( mpegts_input_t *mi )
{
satip_frontend_t *lfe = (satip_frontend_t*)mi;
- const idclass_t *idc;
-
- if (lfe->sf_type == DVB_TYPE_T)
- idc = &dvb_network_dvbt_class;
- else if (lfe->sf_type == DVB_TYPE_S)
- idc = &dvb_network_dvbs_class;
- else if (lfe->sf_type == DVB_TYPE_C)
- idc = &dvb_network_dvbc_class;
- else if (lfe->sf_type == DVB_TYPE_ATSC)
- idc = &dvb_network_atsc_class;
- else
- return NULL;
- return idnode_find_all(idc, NULL);
+ return dvb_network_list_by_fe_type(lfe->sf_type);
}
/* **************************************************************************
tvhdhomerun_frontend_network_list ( mpegts_input_t *mi )
{
tvhdhomerun_frontend_t *hfe = (tvhdhomerun_frontend_t*)mi;
- const idclass_t *idc;
-
- if (hfe->hf_type == DVB_TYPE_T)
- idc = &dvb_network_dvbt_class;
- else if (hfe->hf_type == DVB_TYPE_C)
- idc = &dvb_network_dvbc_class;
- else if (hfe->hf_type == DVB_TYPE_ATSC)
- idc = &dvb_network_atsc_class;
- else
- return NULL;
- return idnode_find_all(idc, NULL);
+ return dvb_network_list_by_fe_type(hfe->hf_type);
}
static void