Anyway, I was wondering how foobar stored information in it's database. More specifically, what data structures does it use?
For example, say you wanted to store tag information. You need to store the name of the tag (e.g. "Artist"), the data the tag contains (e.g. "Jeff Buckley"), and In my case I want to store another value (e.g. "blah"). Now this could be done with a multi-dimensional array. In C# this would look like:
CODE
private string[,] tagInfo = new string[30,3];
In this case, you could store 30 different tags, with 3 collumns in the array.
Here's my (very) crude ASCII table (feature request for next IPB
-------------------------------
Artist | Jeff Buckley | Blah
Title | Halleluiah | Blah
-------------------------------
And on it goes...
Problems:
1. Multi-dimensional arrays are slow in C#. Very slow, at least compared to C++.
2. No Type Checking as such. All values have to be strings. This isn't to bad, but would still require some casting.
3. Probably about a million other reasons why this is a bad idea.
So my questions:
1. What sort of data structure does foobar use in it's database?
2. Is it still suitable if another value needs to be stored?
