libseed-list Making libseed reentrant and some API cleanup modifications proposition



Hi everyone,

One of the requirements for the WebKit integration and the
Evince/poppler js work (PDF specification define a JS API usable within
a document) is to be able to create multiple SeedEngines, one per
page/document.

Seed currently uses a lot of global state in static constants (mostly in
the importer), disallowing the creation of several engines without
side-effects.

I'd like to work on encapsulating those globals per instance, but that
might imply some API breakage. What do you think about it ?

In the longer term, we could also make SeedEngine and SeedImporter
GObjects and using GError in the C API instead of the SeedException.

Also, the public API could be streamlined by making all the SeedValue
related symbol private and exposing higher level methods.

Finally, SeedContext should be hidden to client code, passing around the
SeedEngine instead.

What do you think ?



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]