l?rdag 16. juli 2005, 01:49, skrev Kenneth Aafl?y: [snip] > int dvbcfg_create_parser(struct dvbcfg_parser **); > > Which allocates a new backend parser, then: > > int dvbcfg_get_multiplexes(struct dvbcfg_parser *, struct dvb_multiplexes **); > int dvbcfg_get_next_multiplex(struct dvbcfg_parser *, struct dvb_multiplex **); > int dvbcfg_get_next_service(struct dvbcfg_parser *, struct dvb_service **); > > A -EOVERFLOW or NULL value in the ptr-ptr parameter says end of list. > The backend can then choose to pre-parse the multiplexes in get_multiplexes, > and only keep track of where it is via the parser context. > > The parsing in the backend itself can be helped with the string parsers > already present in dvbcfg, but it is actually free to store the data > in any format it chooses. Just making something clear: I think the backend parser should keep track of where the configuration is stored. The library is then just a frontend for *any* configuration _when_ it's used by an application _in_ the current domain (computer). Basically I want the configuration to be just that, configuration, and nothing else, that is presented to the library user. In the default (desktop) parser that parses the file-format invented we could have a compile-time option that gives the location of where to store _all_ data. This gives the distros the freedom of choosing where to store the data. Optionally the backend parser should have a default _url_, but the user of the library is free to set an url where configuration should be retrieved/stored. Kenneth