Spin off the VFS into it's own library.
#1
XBMC currently implements it's own VFS (the CFILE/IFILE structures)

It might be rather useful to split this off into it's own library, with the aim of making it an independently maintained project from XBMC. This would a) benefit XBMC in making a clean API and code base for VFS, b) benefit everyone else by making a standalone C++ VFS library.

(This is not something that can be done by "submitting a patch", and probably not a one person job.)
Reply
#2
We'd welcome work on this, primarily for selfish reasons (the clean API bit). While it's not a one person job, it could be a one person job to take the time to isolate the code and define the interface (the other people would be involved in reviewing/suggesting improvements etc). ATM the dependencies run quite deep, so I'd suggest that would would be needed is:

1. An independent, clear, concise definition of a fileitem to replace CFileItem (which contains lots of stuff you don't need).

2. Removing dependencies. I suspect this would be difficult in general, but I'd propose having the CURL class be a part of the filesystem library, and alter any string processing in turn to use that primarily rather than anything else (i.e. move a bunch of the URIUtils stuff to operate directly on CURLs). Reducing the dependencies within CURL is relatively straight forward - you can drop the CStdString dependency pretty quickly for example.

If I were doing it, I'd start by sketching out the interface and (re)defining IFile/IDirectory and CURL and getting that building independently of XBMC. Then pull in class by class, reducing dependency where you can.

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply

Logout Mark Read Team Forum Stats Members Help
Spin off the VFS into it's own library.0