should my read and write function be like "virtual void write(FileStorage& fs) const" and "virtual void read(const FileNode& fn);". I'm planning to have them in this fashion "virtual void read(string& filename);" and "virtual void write(string& filename");". The read function will fill in the values in the object after reading. Similar like save and load function. But, I guess after doing this "save" and "load" function alias won't work. What do you think?