
Leif.Reichert wrote:
- The application is multithreaded, so access to the property tree must be thread-safe and iterators from different threads must not interfere (usually done by ref-counting techniques) - It must be possible to navigate towards the root of the tree - In case of acess errors, it must be possible to retrieve the name of the file, from which the data was loaded - The component must have an abstract base class interface
Three of these requirements are possible by wrapping the accessors. The get_child equivalent of your class retrieves a node from the property_tree and then wraps it in your own node wrapper. Your root wrapper stores the file from which the data was loaded. And so on. What's not possible with this, however, is navigating towards the root. It's possible to navigate /to/ the root, but not towards it, without replacing the complete lookup. Sebastian Redl