Read generic pointers through boost::ptree::property_tree