Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Add support renaming of DVB networks
  • Loading branch information
andoma committed Mar 31, 2013
1 parent 9414fd4 commit bc0d93d
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/dvb/dvb.h
Expand Up @@ -110,6 +110,8 @@ typedef struct dvb_network {
uint32_t dn_nitoid;
uint32_t dn_skip_checksubscr;

char *dn_name; // User configured name

struct th_dvb_adapter_list dn_adapters;

} dvb_network_t;
Expand Down
20 changes: 20 additions & 0 deletions src/dvb/dvb_network.c
Expand Up @@ -37,14 +37,20 @@ const static struct strtab typetab[] = {
struct dvb_network_list dvb_networks;

static idnode_t **dvb_network_get_childs(struct idnode *self);
static const char *dvb_network_get_title(struct idnode *self);
static void dvb_network_save(idnode_t *in);

static const idclass_t dvb_network_class = {
.ic_class = "dvbnetwork",
.ic_get_childs = dvb_network_get_childs,
.ic_get_title = dvb_network_get_title,
.ic_save = dvb_network_save,
.ic_properties = (const property_t[]){
{
"name", "Name", PT_STR,
offsetof(dvb_network_t, dn_name),
.notify = &idnode_notify_title_changed,
}, {
"autodiscovery", "Auto discovery", PT_BOOL,
offsetof(dvb_network_t, dn_autodiscovery)
}, {
Expand All @@ -62,6 +68,7 @@ static const idclass_t dvb_network_class = {
dvb_network_t *
dvb_network_create(int fe_type, const char *uuid)
{
char defname[64];
dvb_network_t *dn = calloc(1, sizeof(dvb_network_t));
if(idnode_insert(&dn->dn_id, uuid, &dvb_network_class)) {
free(dn);
Expand All @@ -73,12 +80,25 @@ dvb_network_create(int fe_type, const char *uuid)
TAILQ_INIT(&dn->dn_initial_scan_current_queue);

dn->dn_autodiscovery = fe_type != FE_QPSK;
snprintf(defname, sizeof(defname), "%s network", val2str(fe_type, typetab));
dn->dn_name = strdup(defname);
LIST_INSERT_HEAD(&dvb_networks, dn, dn_global_link);
return dn;
}



/**
*
*/
static const char *
dvb_network_get_title(struct idnode *self)
{
dvb_network_t *dn = (dvb_network_t *)self;
return dn->dn_name;
}


/**
*
*/
Expand Down

0 comments on commit bc0d93d

Please sign in to comment.