Use shared_ptr for managing core_file_system